Negli ultimi giorni mi sono divertito a mettere insieme due mondi che mi affascinano da sempre: la programmazione e la radio. Da questo mix è nato un nuovo progettino che ho deciso di condividere con tutti: TAOSW.DSC_Decoder.
Chi bazzica il mondo delle comunicazioni marittime probabilmente ha già sentito parlare di DSC (Digital Selective Calling). È quel sistema che le navi usano per scambiarsi messaggi digitali via radio, ad esempio per fare chiamate di soccorso, o semplicemente per mandarsi informazioni senza dover stare in ascolto continuo.
L’idea
Volevo costruire una libreria che facesse il “lavoro sporco” di decodifica direttamente dal segnale audio, così da poter essere riutilizzata in altri progetti senza dover reinventare la ruota ogni volta e costatando che online non ci sono molte risorse e librerie da utilizzare.
La libreria prende in ingresso l’audio proveniente da una radio SDR o da un ricevitore HF in modalità USB (SSB), e da lì tira fuori i messaggi DSC in chiaro.
Insomma: SDR → audio → libreria .NET → messaggi DSC belli pronti.
Cosa fa al momento
-
Riesce a sincronizzare e decodificare il bitstream in tempo reale.
-
Interpreta i messaggi secondo lo standard DSC.
-
È scritta in C# e gira in ambiente .NET, quindi facile da integrare in altri software.
-
È open source, quindi migliorabile da chiunque voglia sporcarcisi le mani.
Perché pubblicarla?
Perché so che là fuori ci sono tanti appassionati di SDR e di radio che magari hanno voglia di sperimentare, integrare o semplicemente curiosare dentro il codice. E poi, diciamocelo: i progetti lasciati chiusi in un hard disk non servono a nessuno.
Vuoi provarla?
Il codice è su GitHub:
https://github.com/alemassimo/TAOSW.DSC_Decoder
Se ti va di testarla, dammi feedback, apri issue o, ancora meglio, manda una pull request. Anche solo una ⭐ è benvenuta!
Per me questo è solo l’inizio: l’obiettivo è aggiungere nuove funzioni, magari un’interfaccia grafica con livello del segnale e waterfall, mappa con le posizioni delle stazioni e delle navi, e chissà cos’altro. Intanto, se ti interessa il mondo radio e ti piace smanettare con .NET, fai un giro sul repo e dimmi cosa ne pensi.
E come si dice in radio… 73!