Un piccolissimo server AMBE per un hotspot “a distanza”

Usiamo il nostro PC per collegarci alla rete D-Star

Un aspetto estremamente affascinante di queste tecnologie radio digitali è la possibilità di sperimentare nuove soluzioni e di collegare sistemi che, all’apparenza, possono sembrare molto lontani tra loro. Vediamo quindi come realizzare un hotspot casalingo (un accesso alla rete senza la necessità di utilizzare ponti ripetitori ma usando il computer) che si connette alla rete D-Star italiana degli XLX. Ovviamente non è l’unica soluzione poichè di realizzazioni di hotspot “già pronti all’uso” ve ne sono molte (dv4mini, DVMega, SharkRF, etc.), ma questa è interessante anche per l’ingegnerizzazione dei sistemi e la possibilità di avere il “server” che si occupa della codifica analogico-digitale in un posto diverso da dove operiamo, offrendo quindi la possibilità anche ad altri colleghi di utilizzare il sistema installato.

Cosa occorre per la realizzazione del server AMBE

Il software che dialoga con il chip AMBE3000 (componente integrato che si occupa della compressione e codifica digitale della voce), scritto in C da K7VE, è presente nel file che viene allegato a questo articolo, sia “da compilare” (AMBEserver.c) che già compilato per raspberry (AMBEserver). La parte hardware necessaria per questa specifica realizzazione, oltre ad un minipc rapsberry pi versione 3 con installata per praticità una distribuzione raspbian (derivata Debian) scaricabile da questo link, è una “chiavina” o dongle USB con a bordo il chip AMBE3000 chiamata ThumbDV. Si può ordinare dal sito del produttore su questo link.

 

 

Infine, per la parte che dialoga con l’operatore radio è necessario il software DummyRepeater e ircDDBGateway (entrambi girano su Windows e su Linux) scaricabili direttamente dal gruppo Yahoo dedicato, a questo link per la parte repeater (interfaccia di connessione al microfono e casse del pc) e a quest’altro per la parte gateway ovvero la connessione alla rete D-Star. Le prove eseguite sono state fatte su Windows proprio per evidenziare i due sistemi separati fra loro (da un lato l’AMBEserver su Linux e dall’altro il PC dell’operatore). Vero è che tutto può essere gestito anche su Windows inserendo la chiavina USB direttamente nel PC, con diversa configurazione dei programmi, ma in questo caso si perde l’obiettivo che ci eravamo proposti, ovvero posizionare il server in una diversa collocazione. I sistemi durante le prove sono collegati sulla stessa rete locale LAN.

Lato Linux, verifichiamo il corretto funzionamento del server

Dopo aver aggiornato il software del nostro raspberry (sudo apt-get update e sudo apt-get upgrade) e compilato il codice AMBEserver.c con il compilatore gcc (sudo gcc -o AMBEserver AMBEserver.c) nella cartella, per esempio, /home/pi/DV3000 dove abbiamo messo tutto il contenuto del file ZIP in allegato, possiamo mandare in esecuzione il server AMBE con il comando sudo AMBEserver -d -s 460800 -x (la nuova versione della chiavina USB richiede la velocità di 460800 Baud).

Si vede che il nostro server rimane in ascolto sulla porta di default 2460 (può essere cambiata con l’opzione -p NUMEROPORTA in fase di esecuzione del demone) con protocollo UDP. Si può tornare alla shell premendo CTRL-C, il demone rimane comunque in ascolto fino all’esecuzione di un comando kill (con il comando sudo netstat -lnp si possono vedere le applicazioni che sono in ascolto sul server, sudo ps – aux | grep AMBE invece per vedere il numero del processo da “killare” con il comando sudo kill -9 NUMEROPROCESSO). Per verificare che il server “risponda” possiamo eseguire lo script sudo python ambesocktest.py (se il linguaggio python non è presente sul server occorre installarlo con il comando sudo apt-get install python) e l’output sarà:

 

Lasciamo quindi il server Linux operativo e concentriamoci sul pc Windows dove andremo ad installare e configurare i software necessari per la connessione alla rete D-Star via internet (ircDDBGateway) connettendo un modulo di un reflector XLX e all’interfacciamento tra microfono del PC e server AMBE (DummyRepeater).

Il PC con Windows per la gestione della connessione alla rete D-Star

Abbiamo detto che è possibile utilizzare il microfono e le casse audio del PC per parlare ed ascoltare il traffico digitale D-Star. Il programma che si preoccupa di dialogare con il server AMBE è DummyRepeater di Jonathan G4KLX. Dopo averlo installato occorre procedere con la configurazione specificando i dispositivi di input ed output presenti nel PC e dove il server AMBE (DV3000) è ubicato, indicando l’indirizzo di rete (IP) e la porta che abbiamo definito durante l’esecuzione di AMBEserver su Linux. Se il nostro server fosse presente in altro loco, fuori dalla rete LAN, indicare l’indirizzo IP pubblico relativo alla connessione e verificare che la porta sia aperta sul firewall.

Premendo il bottoneTransmit sul software DummyRepeater, a configurazione salvata,  si dovrebbero vedere i dati passare sulla finestra del terminale del server AMBE. Questo significa che c’è comunicazione tra i due programmi; viene inviato l’audio acquisito dal microfono e restituito “trattato” dal chip AMBE 3000.

La configurazione del software ircDDBGateway è oltremodo semplice e rientra nella impostazione classica utilizzata per un normale ponte ripetitore. Come primo passo verificheremo le configurazioni relative alla comunicazione tra i due software su Windows utilizzando ircDDBGateway Config. Occorre indicare il nome del gateway (lo stesso inserito in DummyRepeater nel box relativo a RPT2 e il reflector/modulo da collegare all’avvio del programma. Come tipo di ripetitore indicare “homebrew”. Proseguiamo poi nelle altre impostazioni utilizzando i valori di default o quelli preferiti. Verificare se nei file di configurazione (es. DExtra_hosts.txt) sono presenti i record DNS aggiornati per il reflector che ci interessa connettere (XRF077 xrf077.duckdns.org).

Salviamo la configurazione ed eseguiamo ircDDBGateway. Dovremmo avere conferma di connessione al reflector indicato sia sul software che sulla dashboard del reflector stesso (in questa prova XLX077 modulo R).

 

Bene, non c’è altro. Possiamo utilizzare quindi il nostro PC per inviare la trasmissione e ricevere il traffico dal modulo connesso senza utilizzare un ricetrasmettitore D-Star. Tutti i dati verranno sempre passati al server AMBE configurato e gestiti per la corretta codifica (in questo caso hardware). Voglio precisare che questi programmi possono essere tutti configurati (o compilati) per girare anche sotto Linux, quindi potremmo avere un sistema completo su raspberry. Questo tipo di prova ci è servita forse per capire meglio come un flusso dati può essere acquisito da un ingresso audio analogico (un microfono), inviati ad un server per la codifica nel formato compatibile al protocollo radio digitale radioamatoriale D-Star ed inviati in rete verso i server che smistano i flussi dati verso i vari ponti ripetitori. E nel processo inverso, fino a sentire nelle casse audio del PC quanto trasmesso da un collega che parla con un ricetrasmettitore digitale D-Star.

Buone prove. David IK5XMK [ Gruppo Radio Firenze – ik5xmk@gmail.com ]

Pacchetto contenente AMBE server per linux:

DV3000