When my End Fed Half Wave antenna wire broke I decided to try a new type of HF antenna. I google and many seen happy with the Skyloop (or Deltaloop) antenna so I decided to try that type. I will not go into detail about this antenna, there are tons of articles on Internet – just google and read. My primary source of info for my constructions is from this page at HF-Kits.
The antenna feedpoint is as below. You can also see the MFJ RT-100 remote antenna tuner I’m using. This is needed as the loop only has 50 ohm at 3.5 MHz and 7 MHz without use of 2:1 balun (see the SWR charts below). I’m not sure about the exact length of the wire for the loop, around 84 meter.
It was not possible to tune the WARC bands with this setup so in the next installation I used a 2:1 balun.
Second installation – with 2:1 balun and no Choke
In order to be able to work the WARC band (with my MFJ tuner) I decided to try a 2:1 balun. Balun design can be found at many sites but I used this one:
And in the box:
I skipped the Choke balun this time to see if it should work anyway as I’m only working max 10 watts. I can not see any RF problems without the RF Choke. Below in the SWR graphs you can see the result.
SWR measurements
At antenna feedpoint, without Choke balun. I didn’t need to cut the antenna wire much to get a good match. Strange to see the good SWR at 3.5 and 7 MHz, as the loop has 100 ohm impedance.
Next, with first version of 2:1 balun, antenna has the same length. You can see the much better SWR but the antenna is tuned a little low in frequency. At 3.5 MHz the SWR is now higher but better at all other frequency.
Below is the result after the balun is mounted in enclosure and antenna wire is cut/tuned a little. It is very good for 40m, 20m, 15m band and OK for 10m low end of band. 80m and WARC bands can be tuned with the remote tuner, that was not possible before without balun.
With this setup, the loop antenna can be used without tuner on several bands if needed.
Results and performance
I’m very happy with the result of this antenna! I have not been able to compare with my End Fed Half Wave (EFHW) antenna, so I can not back up my ”feelings” of the antenna result with actual numbers and facts. What I see when running FT8 and looking at PskReporter is:
My signal is heard at the same distance as I can receive, that was not possible with the EFHW antenna.
Received and sent signal reports are more equal now compared to the EFHW antenna.
I you have space for this antenna I highly recommend it. A 7 MHz version is just half the size of the 3.5 MHz version. It can be a little tricky to set up as four (or three for Delta Loop) support points are needed. Also, I recommend to use a 2:1 balun. In my case, the Choke balun was not needed.
Some initial results from PskReporter FT8 and WSPR with the second version with balun:
Results from a 12 hour WSPR night test with new 80 meter Skyloop antenna. Transmitter Zachtek Desktop 200 mWatt. 336 unique spotters on 80, 40, 20 and 15 meter band.
PageFactory för Selenium C# har from. version 3.11 utgått. Det har under en övergångsperiod gått att använda med ett tilläggspaket (NuGet) som heter DotNetSeleniumExtras.PageObjects men från version 4 av Selenium stöds inte heller det.
PageFactory anses av flera inom Selenium-community inte vara ett bra stöd i konceptet Page ObjectModel (POM), även om jag själv inte haft några problem med det. Längst ner i detta inlägg finns några länkar till anledningen bakom att sluta stödja PageFactory, om du vill veta mer.
Vad är då PageFactory? Jo det används för att initiera webbelement i POM-classen och elementen får därför en funktion som liknar cachning. Denna bild från guru99.com visar bra hur man definierar webbelement med PageFactory:
Om man vill uppgradera sitt Selenium-projekt till version 4, vilket är bra för att få nya funktioner och eventuella säkerhetspatchar, krävs det att man konverterar @FindBy till FindElement vilket får till följd att webbelementen letas upp under runtime när testet körs. Det är egentligen ganska lätt att konvertera men kan ta lite tid. I det projekt jag jobbar med nu var det ca. 700 webbelement som fick konverteras manuellt, men egentligen utan några större problem.
Om ett element i PageFactory ”hittades” så här:
[FindsBy(How = How.Id, Using = "account")]
public IWebElement MyAccount { get; set; }
Så får man konvertera det till:
public IWebElement MyAccount => _driver.FindElement(By.Id("account"));
Och sen får man ta bort initieringen av PageFactory och till slut avinstallera NuGet-paketet DotNetSeleniumExtras.PageObjects.
Det jag upptäckt efter konverteringen är att vissa delar av testerna har varit anpassad för PageFactory och beter sig nu lite annorlunda. Ett exempel är om man vill kolla om ett webbelement finns på sidan (i DOM:en), tex. om en knapp ska synas eller inte. Beroende på vilket front-end ramverk som används kanske elementet bara är ”hidden” eller ”not enabled” men det kan även vara så att det inte finns alls. Just det fallet kan man lösa genom följande:
Skapa en generell metod (här i classen BasePage.cs) som sätter ner tiden (här till 5 sekunder) hur länge Seleniums webdriver ska vänta på ett element är tillgängligt i DOM:en. Om du inte sätter ner tiden får du vänta i den tid som gäller generellt för ImplicitWait, i mitt fall 30 sekunder (timeSpan). Om elementet sedan är tillgängligt returneras true, annars false eftersom ett NoSuchElement-exception kan kastas och det tas hand om med catch. Observera att ImplicitWait sätts tillbaka till 30 sekunder när resultatet returneras vilket innebär att resten av testmetoden som exekveras åter har webdrivern med sitt ursprungsvärde.
public bool IsElementDisplayed(string elementToCheck, int time = 5)
{
Driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(time);
var present = false;
try
{
IWebElement element = Driver.FindElement(By.Id(elementToCheck));
present = element.Displayed;
}
catch (Exception)
{
//Set back ImplicitWait to default
Driver.Manage().Timeouts().ImplicitWait = timeSpan;
return present;
}
//Set back ImplicitWait to default
Driver.Manage().Timeouts().ImplicitWait = timeSpan;
return present;
}
Och i din testmetod, anropa metoden med webbelementet som en textsträng. Då får du en snygg assert som du kan hantera som du vill:
Assert.IsTrue(BasePage.IsElementDisplayed("sitelogo"), "Site logo not visible");
Det finns många olika sätt att hantera liknande fall och det aktuella behovet får avgöra hur du väljer att implementera. I mitt projekt var det enklast att göra på detta vis då vi har många tester om element syns (finns) eller inte i DOMen.
Om du överväger att komma bort från PageFactory för att kunna uppgradera till Selenium 4 hoppas jag att du fått lite ideer av mitt inlägg. Till slut kommer här ett antal länkar om du vill läsa mer om bakgrunden till PageFactory och varför den supporten nu upphör.
On YouTube there are several videos about setting up the spectrum scope of the Icom IC-705 and IC-9700. Last in this post I have linked one of these videos and I have actually done every step. It is now much better then the original settings.
I’m using colours like the one in SDR-Console software because that is how I’m used to have it.
The REF adjustment is very good to adjust when needed, to get the best contrast in the scope.
Also adjusting the SPAN to what you would like to see at the moment is a great function.
But, the best improvement for me was to change CENTER Type Display to Carrier Point Center (Abs. Freq.).