Visualizzazione post con etichetta GNU Radio. Mostra tutti i post
Visualizzazione post con etichetta GNU Radio. Mostra tutti i post

01 febbraio 2022

SigDigger, il DSP oltre la demodulazione

Se guardo alle applicazioni di signal analysis più recenti, come SigDigger, mi rendo conto che paradossalmente, la comunità globale degli hobby radiofonici ha un'idea abbastanza limitata delle applicazioni SDR. L'elemento chiave per molti è la capacità di demodulare (magari dopo averlo comodamente salvato su disco) i segnali in ampie porzioni dello spettro RF, applicando efficienti filtri digitali, noise blanker e quant'altro. In realtà, tutto questo è solo un sottoinsieme dei risultati che si possono ottenere con l'approccio algoritmico utilizzato dai programmi SDR. È bene ricordare che questo tipo di software si basa su tecniche DSP (digital signal processing) che consentono di andare oltre la demodulazione dei modi più tradizionali (AM, SSB, FM) per entrare appunto nel vasto ambito dell'analisi del segnale. 
Eppure, quando ancora di SDR non si parlava molto, le prime applicazioni emerse dalla stessa comunità radioamatoriale, spesso venivano classificate tra gli strumenti di analisi spettrale, anche se lo spettro in questione era quello delle frequenze audio. Agli inizi degli anni 2000, pionieri come Spectrum Lab e Spectran venivano utilizzati per esplorare visualmente e rielaborare l'audio analogico acquisito con le schede audio del PC, sfruttando fino all'ultimo Hertz la loro striminzita larghezza di banda. I più sofisticati facevano dell'SDR vero e proprio demodulando la banda base del segnale dopo la conversione in frequenza intermedia dei ricevitori analogici.
Poi sono arrivati i ricevitori SDR che hanno aperto la strada a un trattamento più diretto della radiofrequenza e anche gli strumenti di software analysis si sono evoluti. Nel 2012 Radiopassioni dava notizia di un software russo, Signal Analyzer, che ancora oggi rappresenta un punto di riferimento per l'analisi approfondita delle forme d'onda. Nel 2019, annunciando l'arrivo delle prime versioni di SigDigger, il suo autore, l'astrofisico, programmatore e radioamatore spagnolo EA1IYR Gonzalo José Carracedo aka @BatchDrake, elencava una serie di funzionalità presenti e future che solo soluzioni molto più professionali e quasi certamente non free avrebbero potuto svolgere. SigDigger, scriveva BatchDrake «è stato progettato per estrarre informazioni da segnali sconosciuti», un traguardo ottenibile con un arsenale di tool tipici del DSP, messi a disposizione dei più avanzati esploratori delle trasmissioni radio:

  • Both realtime and replay analysis modes
  • Analog audio playback (AM, FM, LSB and USB) 
  • Baseband recording (full spectrum and per-channel)
  • Per-device gain presents
  • Dynamic spectrum browsing
  • ASK, FSK and PSK inspection
  • Gradient-descent SNR calculation
  • Different spectrum sources (cyclostarionary analysis, signal power…)
  • Symbol recording and visualization
  • Transition analysis
Planned features already implemented and just waiting to be exposed to the UI:
  • Parameter estimation (baudrate, constellation order…)
  • Fast symbol autocorrelation analysis
  • Automatic calculation of scrambling polynomials
  • Symbol stream codecs
Possible future features coming soon:
  • Symbol tagging (correspondence between symbols and groups of bits)
  • Automatic symbol tagging guessing
  • Automatic convolutional code detection
  • Viterbi decoding
Il software di BatchDrake è basato sul framework grafico QT e l'interfaccia e il motore del waterfall sono ispirati a GQRX, un'altra alternativa SDR per il mondo Linux/MacOS. A differenza di quest'ultimo, però, SigDigger non si basa su GNU Radio: tutto il DSP è originale. Le release iniziali di questo programma - indicato, come scriverebbe la Settimana Enigmistica, ai solutori più che abili - erano per Linux (e MacOS). In questi giorni su Twitter BatchDrake ha annunciato la disponibilità di un port per il sistema operativo Windows (per averlo bisogna contattare direttamente Carracedo, via Twitter o GitHub). Un buon esempio di ciò che un buon analizzatore di spettro è in grado di fare, è questo video proposto dall'autore del port Windows di SigDigger, arf20, SigDigger viene messo alla prova per estrarre l'informazione RDS da una trasmissione FM, utilizzando un nuova funzione di trattamento delle sottoportanti. Il video mostra come partendo dalla modulazione BPSK della sottoportante a 57kHz, sia possibile estrarre i "simboli" codificati nel segnale, ordinarli e interpretarli.

30 maggio 2012

RTLSDR-mania, le chiavette SDR low cost ruggiscono grazie a GNU Radio

Le notizie su Elonics, uno dei produttori di silicio rivolto alla sintonia di segnali radiotelevisivi digitali (la proprietà intellettuale del suo chip, il tuner VHF/UHF E4000 è come ho scritto ieri in liquidazione) , possono non essere incoraggianti, ma gli esperimenti di Software Defined Radio a buon mercato che utilizzano le ormai famose chiavette USB per il digitale terrestre sono sempre più numerosi. E il fatto che il chip Elonics sia solo uno dei pezzi del mosaico e forse neppure il più importante, lascia intuire che la sperimentazione continuerà.
Il mio solito assiduo lettore romano, particolarmente versato in materia di silicio e di software di ricezione, mi ha inviato una bella videata relativa ai test effettuati con una chiavetta "LV5 Deluxe" credo acquistata sul circuito GBC e il software SDR SDRsharp, che di suo è già predisposto per controllare i front end SDR Funcube Dongle. Secondo il mio amico SDRsharp, - ma la notizia è confermata nei commenti che trovate oggi sul sito dedicato al programma - ora è già in grado di gestire direttamente le chiavette basate sul demodulatore Realtek che ha scatenato la RTLSDR-mania grazie alla presenza nella directory DLL dei driver RTLSDR e libUSB. L'unica avvertenza, se è la prima volta che state utilizzando una chiavetta sul vostro computer Windows, è installare il driver giusto ricorrendo alla utility di installazione Zadig, che fa parte del progetto "libwdi" Windows Driver Installer per una serie di dispositivi USB (qui c'è la pagina di download di Zadig su Sourceforge, ma la stessa utility si può reperire sul Wiki di Balint Seeber, il programmatore australiano che ha contribuito a scatenare il fenomeno dell'SDR da pochi euro). Mi sembra che valga proprio la pena verificare considerando che SDRsharp è un programma free, ma bisogna assicurarsi di prelevare la versione "in divenire" che lo sviluppatore di SDR#, Youssef, aggiorna continuamente sulla sua pagina dei download.
La stessa fonte romana mi segnala una straordinaria pagina dedicata agli esperimenti delle chiavette USB con la evoluta piattaforma Linux GNU Radio. Il sito di "Superkuh" (non riesco ancora a risalire al nome) fa un lavoro prezioso introducendo il lettore a uno script di installazione di GNU Radio messo a punto da "patchvonbraun" attraverso il nodo Freenode #rtlsdr. Lo shell script è disponibile all'indirizzo http://www.sbrac.org/files/build-gnuradio e permette di ottenere una installazione completa di GNU Radio su Ubuntu/Fedora e a questo punto, come spiega Superkuh, è possibile buttarsi a capofitto nei moduli di GRC, o GNU Radio Companion, dove sono implementati interi sistemi di demodulazione. Superkuh si sofferma su alcuni moduli per la ricezione dell'FM wideband. Ci muoviamo, lo ricordo, sul terreno del progetto GNU Radio, ma esistono anche applicazioni FM compilate direttamente per Linux, come il software jSDR di Jan van Katwijk (il quale tra parentesi ha anche realizzato un visualizzatore di spettro che funziona proprio con le chiavette USB, lo trovate insieme a jSDR nell'area file del gruppo Yahoo! Soft_Radio (evidentemente è necessario essere iscritti).
Tanto per restare in tema chiavette, ma fuori dall'ambito GNU Radio Companion, segnalo per concludere un hack di Michael Feilen, nome già noto ai lettori di questo blog, che ha sviluppato un software, Wavesink SDR, per la demodulazione di segnali DRM+ nella banda VHF. Feilen lavora nell'ambito del progetto Open Digital Radio e non ha ancora rilasciato molti dettagli su Wavesink, se non questo video dimostrativo apparso su YouTube, in cui si vede in azione il software per Linux (ma Feilen precisa che intende rilasciare anche una versione Windows) sintonizzato attraverso la chiavetta Noxon DAB su una trasmissione DRM+ generata a sua volta via software grazie ai tool Open Digital Radio su hardware Ettus USRP: