Eerste ervaringen met de HackRF Pro (Review)
op
Verbeteringen
In vergelijking met de HackRF One biedt de HackRF Pro een groter frequentiebereik en verbeterde HF-eigenschappen zoals een vlakker overdrachtskarakteristiek en minder fantoomsignalen dankzij interne afscherming. Bovendien is de frequentienauwkeurigheid verbeterd met een TCXO. Daarnaast is het mogelijk om signalen te bemonsteren met 40 MHz bij halve resolutie of met een hogere resolutie van 16 bit en minder bandbreedte.
Voor de HackRF Pro is er momenteel nog geen eigen software-ondersteuning. Je moet hem initialiseren als een HackRF One. Beide apparaten zijn compatibel en alles wat je al voor de One hebt ontwikkeld, werkt ook op de Pro.
Voor de eerste vergelijkingen van beide apparaten heb ik ze met dezelfde instellingen eerst zonder antenne met SDR Sharp gebruikt. De One toont in een 10 MHz breed gebied meerdere fantoomsignalen en precies in het midden de zogenaamde DC-spike, een draaggolf die overeenkomt met het mengproduct bij 0 Hz. Aan beide randen neemt het signaal duidelijk toe.

De HackRF One van 0 MHz tot 10 MHz
De Pro houdt zich bij deze test aanzienlijk beter, er is niet te veel beloofd. De DC-spike is volledig verdwenen. Het signaal aan de randen is minder uitgesproken, zodat je nu al vanaf 100 kHz of zelfs daaronder redelijk goed kunt werken. En er zijn bijna geen fantoom signalen meer. Alleen bij 10 MHz zie je een sterke drager. In alle hogere gebieden heb je een hemelse rust en een vlak verloop.

De HackRF Pro van 0 MHz tot 10 MHz
Vervolgens werd een test uitgevoerd met een 20 m lange buitenantenne. Om oversturing te voorkomen, werd de versterking op 24 dB gehouden. Bij beide apparaten herken je de omroepgebieden en een krachtig CW-signaal in de 40m-amateurband.

De HackRF One aan de antenne
De fantoomdragers en de DC-spike zijn bij de One duidelijk zichtbaar tussen de bruikbare signalen, bij de Pro niet. Opvallend is dat de Pro de bruikbare signalen bij dezelfde instelling gemiddeld 5 dB zwakker weergeeft. Dat zou een gevolg kunnen zijn van de verbeterde beveiliging tegen spanningsimpulsen aan de ingang. Je kunt de versterking indien nodig verhogen om dit te compenseren. Van geval tot geval is een iets andere versterking optimaal, waarbij je een te hoge versterking herkent aan een duidelijke toename van mengproducten. Beide apparaten zijn echter opmerkelijk goed bestand tegen oversturing, zeker als je bedenkt dat hier een lange antenne zonder voorselectie is aangesloten.

De HackRF Pro aan de antenne
Signaleren in het GHz-bereik
Ook al gaat mijn voorkeur vooral uit naar de korte golf, ik heb natuurlijk ook naar andere gebieden gekeken. Het is interessant om te zien welke apparaten zich waar bevinden. Ik had een babyfoon tevergeefs gezocht op de eerder bekende frequenties, om er vervolgens achter te komen dat deze volgens de DECT-standaard op 1,8 GHz werkt. En een walkie-talkie voor kinderen bleek zich te bevinden op 2,4 GHz, 2475 MHz om precies te zijn. Ook de overdracht in data blokken met een interval van ca. 1 ms was interessant. En het spectrum liet vermoeden dat hier een eenvoudige FSK werd gebruikt, zoals sinds mensenheugenis bij telex, maar dan met een veel hogere overdrachtssnelheid.

De walkie-talkie op 2,4 GHz

Het spectrum van de uitzending in SDR Sharp
GNU Radio
Alleen al met het gebruik van SDR Sharp kun je zo lang en intensief door de golven surfen als je wilt en kijken wat er allemaal te ontdekken valt. Het wordt nog spannender als je je eigen software ontwikkelt en daarbij vooral ook de mogelijkheden van je eigen uitzendingen verkent.
Het gratis softwarepakket GNU Radio is hiervoor zeer geschikt. Lange tijd durfde ik het niet aan omdat ik dacht dat het alleen iets was voor Linux-ervaren softwarespecialisten. Maar toen realiseerde ik me dat het ook met Windows kan. Het toverwoord is RadioConda, en dit pakket is er voor Windows, Linux en macOS.

De componenten van RadioConda
Het pakket is zeer uitgebreid en vereist enige installatietijd. Met de RadioConda Prompt kun je dan directe opdrachten naar de HackRF sturen. Gqrx is een ontvangersoftware, terwijl GNU Radio Companion de grafische interface van GNU Radio is.
SSB-signalen genereren
De HackRF Pro heeft zich al bewezen als ontvanger, waarbij in het eenvoudigste geval SDR Sharp wordt gebruikt. Het apparaat kan echter ook zenden, en dan staat SSB bovenaan. In GNU Radio gebruik je kant-en-klare blokken, je verbindt ze op de juiste manier en stelt parameters in. Het ontwerp wordt vervolgens gecompileerd naar een Python-programma en uitgevoerd. Voor de introductie heb ik deze cursus bekeken.

SSB-generatie met de Hilbert-transformatie
Na veel andere oefeningen heb ik me gewaagd aan een experiment met SSB. Ik gebruik twee blokken van het type Signal Source, beide zijn sinusgeneratoren. De bovenste genereert de draaggolffrequentie van 10 kHz als complex signaal (blauwe "connectoren") bestaande uit twee signalen (I en Q) met een faseverschil van 90 graden. De onderste levert de modulatiefrequentie van 1 kHz en simuleert het toekomstige microfoonsignaal. Dit signaal is van het type float en bestaat uit reële getallen tot 1 (oranje).
Het modulatiesignaal ondergaat een Hilbert-transformatie. Zo worden de complexe IQ-signalen gegenereerd, waarbij elke frequentie precies 90 graden in fase wordt verschoven. Hier gebeurt wat ik ooit heb geprobeerd met een RC-faseverschuivernetwerk om SSB te genereren, maar het gebeurt veel nauwkeuriger omdat het op pure wiskunde is gebaseerd.
Beide complexe signalen worden vervolgens met elkaar vermenigvuldigd, sample voor sample, met de gemeenschappelijke samplefrequentie van 32 kHz. Op die manier vormt men een mixer, of beter gezegd twee mixers voor I en Q. Het uiteindelijke IQ-SSB-signaal zou hier moeten ontstaan. Om het te zien gebruik ik de QT GUI Frequency Sink, een FFT met grafische weergave.

Het spectrum van het gegenereerde signaal
En inderdaad, bij 11 kHz zie ik het signaal in het bovenste zijband, de draaggolf bij 10 kHz is volledig verdwenen en het onderste zijband is bijna 100 dB onderdrukt. Zo nauwkeurig had ik dat met hardware nooit kunnen bereiken. De volgende stap is dan een echte microfoon en een zender in de 20m-band.

SSB-zender voor 14,150 MHz
Voor de output gebruik ik het blok Osmocom Sink, een data sink die mijn middenfrequentie data met een bandbreedte van 4 MHz via USB naar de HackRF Pro stuurt. Daar wordt het signaal gemengd met 12 MHz. Mijn IF ligt op 2,15 MHz, zodat mijn USB-signaal op 14150 kHz zou moeten verschijnen.
De zaak wordt iets ingewikkelder omdat ik nu met twee verschillende samplefrequenties moet werken. De geluidskaart werkt op 8 kHz. Daarna komt een filterblok voor het gebied van 300 Hz tot 3 kHz. Vervolgens volgen de Hilbert-transformatie en de FFT-uitgang voor controle.
Met het blok Rational Resampler zet ik de samplefrequentie van 8 kHz naar 4 MHz door telkens 500 waarden te interpoleren. Alleen op die manier kan de mixer (vermenigvuldiging) met het IF-draaggolfsignaal van 2,15 MHz werken. Aan de uitgang van het Multiply-blok staat het SSB-signaal op 2150 kHz en kan het aan de HackRF Pro worden doorgegeven. De FFT-weergave bevestigt dat er een goed SSB-signaal in de bovenste zijband is gegenereerd. Dat betekent echter nog niet dat ik al de beste instellingen heb gevonden. Met meer ervaring zal er nog het een en ander worden veranderd.

Het gegenereerde SSB-signaal in de bovenste zijband
Het antennesignaal werd ontvangen met het Elektor SDR-shield en SDR#. Ik kan mezelf goed horen omdat het signaal door alle buffers en verwerkingstappen ongeveer een seconde vertraagd verschijnt. Of dit nog verbeterd kan worden, weet ik nog niet. Maar ik ken het fenomeen uit de echte amateurwereld. Wie digitaal werkt, heeft altijd een langere reactietijd bij het omschakelen van ontvangst naar uitzending.
Verder ziet het signaal er heel goed uit en klinkt het ook perfect. Misschien zou je nog iets moeten bouwen om het microfoonniveau met een ALC te optimaliseren.

Het ontvangen signaal
AM-zender met GNU Radio
Het gaat om deze oude buizenradio. Ik wilde een AM-zender programmeren met de HackRF Pro en daarmee mijn eigen programma's uitzenden op middengolf en kortegolf. Als modulatiebron gebruik ik de microfooningang van de PC. Hier kan een microfoon of een andere bron worden aangesloten. Om te testen gebruikte ik eerst de hoofdtelefoonuitgang van een draagbare FM-radio.

De gebruikte buizenradio
Het Audio Source Block haalt de gegevens van de geluidskaart. Deze keer gebruik ik een samplefrequentie van 20 kHz, die is vastgelegd in de variabele samp_rate_AF. Het programma gebruikt een tweede samplefrequentie van samp_rate = 4 MHz voor het doorgeven van gegevens aan de HackRF Pro. In de Osmocom Sink wordt de uitgangsfrequentie ingesteld. Het werkt vanaf 500 kHz, maar hier is de ISM-frequentie van 6,78 MHz ingesteld, die is toegestaan voor wetenschappelijke experimenten van deze aard. In dit bereik hoor je soms ook fanatieke zwartzenders, maar hier wordt helemaal zonder eindtrap gewerkt.
De experimenten hebben aangetoond dat de beperkte bandbreedte van de buizenradio leidt tot een dof geluid als je alle lage tonen volledig overdraagt. Daarom is het ingangsspectrum beperkt tot het gebied van 200 Hz tot 4,5 kHz. Voor het Band Pass Filter is een flanksteilheid van 200 Hz ingesteld. Dit geeft de modulatie een evenwichtig geluid.
Nu moet je een gelijkspanningscomponent van 0,5 toevoegen aan het NF-signaal, die de draaggolf vormt. Als het modulatiesignaal in de pieken tot 0,5 reikt, is de zender volledig uitgestuurd. Het juiste niveau stel ik in met de volumeregelaar van de audiobron. Tot slot werd de VB Virtual Audio Cable gebruikt, zodat audiobestanden rechtstreeks vanaf de PC kunnen worden overgedragen. Voor verdere verwerking moet het signaal de typeconversie Float to Complex ondergaan. Daarna volgt de Rational Resampler, die door interpolatie van elk NF-sample 200 nieuwe samples genereert om de HF-samplefrequentie van 4 MHz te bereiken.

De AM-zender voor 6,78 MHz
Bij het doorgeven aan de HackRF Pro worden de zendfrequentie en de versterking ingesteld. IF Gain gaat tot 47 dB. Hier is 20 dB ingesteld, wat passend is voor een verbinding met de antenne-ingang van de buizenradio. RF Gain betreft de inschakelbare TX-versterker, die in feite alleen een constante versterking kan leveren. Bij 0 dB is hij uitgeschakeld.
Met de oude buizenradio kon je altijd al verre zenders op kortegolf horen. De interessantere zenders vind je tegenwoordig op FM of op internet. Ik luister graag naar stations uit Afrika via het internet. Nu kan dat ook met de nostalgische buizenradio en zijn prachtige klank.
Tot nu toe is slechts een klein deel van de ontelbare toepassingen met de HackRF Pro getest. Er wachten nog veel spannende experimenten en ontwikkelingen. Maar één ding is nu al duidelijk: de HackRF Pro brengt in veel toepassingen een duidelijke verbetering ten opzichte van het vorige model. Het wachten is de moeite waard geweest: HackRF Pro is een geslaagde verdere ontwikkeling.

Discussie (0 opmerking(en))