Continuando a dare assistenza alle diverse richieste pervenute attraverso i vari social network, assieme ad alcuni amici abbiamo pensato di sperimentare un semplice script per gestire facilmente la posizione geografica (APRS), da un sistema linux. Oggi sono diventati molti gli OM che hanno desiderato e continuano a sperimentare, installare e utilizzare gli hotspot per i diversi sistemi radio digitali, che utilizzano i vari protocolli DMR, YSF, DSTAR, ecc. con i dispositivi installati sul Raspberry Pi.
La richiesta di poter utilizzare una soluzione alternativa da quella esistente (ad esempio negli hotspot pi-star e nei server DVSwitch, connessi alla rete DMR BrandMeister), è stata generata dalla sospensione temporanea del flusso dati APRS dai master server di BM verso la rete APRS-IS mondiale.
Ho desiderato pubblicare questo articolo per dare la possibilità a tutti di poter installare facilmente un nuovo servizio APRS AUTONOMO, anche se NON È OBBLIGATORIO INSTALLARLO nei propri dispositivi.
Questo servizio APRS è installabile su tutti i dispositivi che utilizzano o vengono comandati da un computer con il sistema operativo linux, e permette (ai programmatori con una certa esperienza) di controllare e gestire autonomamente la trasmissione dei vari parametri APRS del dispositivo (con POSIZIONE STATICA).
A seguito delle specifiche richieste tecniche e dopo aver controllato a lungo il funzionamento del nuovo sistema assieme ad altri colleghi OM sperimentatori, si è deciso di pubblicare questa guida dettagliata.
NOTA: Questo servizio che descriviamo di seguito, è stato installato e testato inizialmente con una distribuzione pi-direct (che non ha installato un servizio APRS), ma è installabile facilmente anche nelle distribuzioni pi-star (versione inglese e americana) e nel server DVSwitch.
Per effettuare l’installazione nel server DVSwitch, è raccomandata la versione del sistema operativo Debian 10 (Buster) , o superiore.
ATTENZIONE: Dal contenuto di questo articolo, verrà estratta una GUIDA che verrà inserita nel sito di dmrbrescia.it .
Eventuale posizionamento manuale di un waipoint APRS
Nel portale di aprs.fi, dopo aver effettuato il login, esiste anche la possibilità di inserire manualmente un nuovo waipoint, per segnalare una posizione geografica statica. Non è il nostro caso, in quanto utilizzando questo script il posizionamento verrà effettuato direttamente dal dispositivo attivo (aggiornando la data / ora dell’ultimo beacon inviato), ovviamente connesso alla rete internet.
Come installare il software di questo nuovo servizio?
Il nostro gruppo di lavoro ha realizzato e testato questo semplice script, utilizzando i parametri delle variabili che vengono inviate abitualmente al servizio di APRS-IS dai vari programmi radioamatoriali.
Proseguendo la lettura di questo articolo, trovate tutte le informazioni per installare e configurare il software necessario per il funzionamento del servizio.
Il progetto dello script
È un semplice script Bash, che viene utilizzato per inserire un singolo oggetto APRS nel backbone di del servizio di APRS-IS.
Gli oggetti sono un modo importante per pubblicizzare e individuare servizi locali di valore per altri radioamatori che monitorano la rete APRS. Esempi di cose che possono essere incluse come oggetti includono i ripetitori, le implementazioni di eventi speciali, ecc.
Questo script è stato progettato per essere eseguito da uno scheduler di sistema come il demone ‘cron‘ di Unix, utilizzato per inviare ripetutamente (con un tempo a vostra scelta) una descrizione di un singolo oggetto. Questo beacon APRS verrà inviato solo al backbone Internet di APRS-IS.
Questo script deve essere utilizzato nel proprio sistema solo quando l’utente non può giustificare la distribuzione di un client APRS più adatto.
Una volta fatto, aggiungete una riga alla tabella del servizio cron, pianificando l’esecuzione periodica (a vostra scelta…) di questo script.
AVVISO per chi installa questo servizio negli hotspot pi-star (WPSD e UK)
AGGIORNAMENTO hotspot WPSD (14 febbraio 2024): Agli Hotspot WPSD, è stato effettuato un aggiornamento al software interno di questo modello di hotspot, che permette di pubblicare la posizione dell’Hotspot DMR direttamente nelle mappe di APRS-IS.
Inoltre, l’amministratore ha messo a disposizione un proprio servizio di posizionamento (da abilitare manualmente nella pagina di configurazione dell’hotspot), per visualizzare su una sua mappa SOLO i nodi che utilizzano il software WPSD. Link alla mappa dei nodi WPSD.
Disattivazione del servizio APRS interno degli hotspot pi-star
Prima di procedere all’installazione e all’avvio del servizio APRS di questo articolo, è necessario accertarsi che nella configurazione DMR dei vostri dispositivi pi-star il servizio APRS interno non sia attivo (deve rimanere impostato a 0).
Dalla pagina di configurazione principale dell’hotspot, sarà sufficiente lasciare posizionato su OFF, il selettore APRS Host Enable.
Agendo dai files di configurazione, l’attivazione del servizio riguardante la parte DMR, la trovate all’interno della configurazione del file DMRGateway.
Esempio:
[APRS]
Enable=0
Address=127.0.0.1
Port=8673
… ecc. ecc.
C’è anche un altro servizio APRS che riguarda la parte YSF dell’hotspot (se lo utilizzate); la trovate all’interno della configurazione del file YSFGateway). Lascio a voi la scelta se abilitarlo o meno.
NOTA: I dispositivi hotspot pi-direct e i server DVSwitch non hanno installato un proprio servizio APRS, e quindi non troverete questo paragrafo.
Programmazione in locale dello script del servizio APRS
Per utilizzare il servizio di questo script, sarà necessario installare in locale nel sistema linux anche il software ncat, utilizzando i seguenti comandi di terminale:
sudo apt update
sudo apt upgrade
sudo apt install ncat
NOTA: Nel caso in cui il pacchetto ncat non sia direttamente disponibile, provate ad installare il pacchetto nmap, che contiene e installa a sua volta il pacchetto ncat.
Creazione dello script
Successivamente, copiate nella cartella home utente del vostro sistema linux, il seguente file dello script, (che per questa spiegazione abbiamo nominato posizione_aprs_hotspot.sh). Il file può avere qualsiasi nome con estensione .sh, ma da questo punto in poi dovrete deciderne il nome e utilizzare sempre lo stesso.
Per farlo, si utilizzerà il seguente script:

IMPORTANTE: Per scaricare il file dello script nel vostro PC, utilizzate questo link, salvando la destinazione con il nome del file con l’estensione .sh.
ATTENZIONE: Lo script scaricato ha la configurazione standard SENZA DATI PERSONALI; lo script dovrà essere modificato successivamente con i vostri dati personali e quelli del sistema che intendete pubblicare in rete APRS-IS.
Tabelle descrittive per la scelta accurata dell’icona APRS
Se desiderate sostituire / modificare l’icona APRS della posizione del vostro dispositivo, potete consultare le apposite tabelle, scaricabili da questo link. Selezionate il simbolo desiderato, e modificate i parametri dello script.
Invio del file dello script dal vostro PC al dispositivo Raspberry Pi
ATTENZIONE: Per riuscire a scrivere all’interno del sistema operativo del vostro hotspot pi-star, sarà prima necessario impostare la memoria SD in modalità di scrittura!
Per farlo, sarà necessario collegarsi in modalità SSH al vostro raspberry, e dopo la procedura di login, inviate il comando:
rpi-rw
Una volta che avrete abilitato in scrittura la memoria SD del vostro dispositivo pi-star, potete inviare il file appena scaricato, nella home utente del vostro dispositivo Raspberry Pi (utilizzando un programma come PuTTY, WinSCP, o Filezilla).
Ricordatevi che:
- nel sistema pi-direct, la cartella home dell’utente è /home/pi/;
- nel sistema pi-star, la cartella home dell’utente è /home/pi-star/;
- nel sistema DVSwitch, la cartella home dell’utente è /home/dvswitch/;
Configurazione dello script
Modificate il file dello script, dall’interno del vostro dispositivo, tramite un editor di testo, con questo comando da terminale:
nano posizione_aprs_hotspot.sh
modificando solo i campi richiesti.
- user è il vostro nominativo (senza SSID);
- password è la password calcolata sul nominativo radioamatoriale, che potete ottenere facilmente utilizzando il servizio APRS passcode Generator, presente nel sito di Francesco IZ3MEZ;
- senduser è il nominativo-SSID che desiderate far comparire nella mappa APRS (inserite il numero del SSID a vostra scelta, non usando quelli già esistenti);
- lasciate inalterati i dati del server APRS;
- le coordinate, devono essere espresse nel modo corretto; nel mio esempio, le coordinate 45° 59′ 61′ N e 12° 32′ 57′ E, devono essere inserite in questo modo:
lat=4559.61N
lon=01232.57E - lasciate inalterati i dati delle opzioni di visualizzazione APRS; se li volete modificare, prestate molta attenzione al tipo di icona che selezionerete per la vostra posizione! Non inserite codici Icona a caso, potreste creare delle errate interpretazioni nelle carte APRS mondiali! Il codice attuale farà comparire un’icona DIGI nella mappa di APRS-IS;
- nei dati di sistema, modificate il contenuto del campo comment, inserendo tra le virgolette il testo da voi desiderato (non esagerate con la lunghezza del testo).
- lasciate inalterati gli altri dati del sistema!
Una volta editato ed aggiornato il file di configurazione, salvate le modifiche effettuate con i comandi dell’editor.
Rendere eseguibile lo script APRS
Eseguite il seguente comando, dal terminale, per effettuare questa operazione:
sudo chmod +x posizione_aprs_hotspot.sh
Spostare lo script nella sua posizione definitiva
Nel sistema operativo del vostrov Raspberry Pi, digitate i seguenti comandi di terminale (che utilizzano i privilegi di amministratore):
sudo mv posizione_aprs_hotspot.sh /usr/local/bin/posizione_aprs_hotspot.sh
sposterà il file dello script, dalla cartella home dell’utente alla cartella di destinazione del sistema, da dove poi verrà eseguito al bisogno.
Modifica ulteriore delle variabili dello script
Utilizzando il seguente comando, si potranno riconfigurare successivamente (modificare, se necessario) le variabili dello script per personalizzare l’oggetto presente nelle mappe APRS:
sudo nano /usr/local/bin/posizione_aprs_hotspot.sh
Ricordatevi sempre di salvare le modifiche effettuate, con i comandi dell’editor utilizzato.
Controllo del funzionamento dello script
Per verificare che lo script funzioni regolarmente, potete eseguirlo manualmente e vedere il risultato ottenuto.
Spostatevi nella cartella dove avete inserito lo script, con il comando:
cd /usr/local/bin/
ed eseguite lo script, utilizzando il comando:
sudo ./posizione_aprs_hotspot.sh
Dopo il termine dell’esecuzione dello script, vedrete visualizzato nel terminale un testo di output simile a questo:
# aprsc 2.1.19-g730c5c0
# logresp IV3BVK verified, server T2PANAMA
NOTA: La restituzione di questo testo significherà che lo script è riuscito a connettersi via Internet al server APRS di nome T2PANAMA, le credenziali di accesso sono state verificate e la posizione APRS dell’oggetto è stata inviata con successo!
A questo punto potete andare a visualizzare il portale del sito aprs.fi per verificare che la vostra posizione sia stata aggiornata con i nuovi dati da voi inseriti.
Configurazione dell’avvio del servizio locale tramite Cron
Nei sistemi operativi Unix e Unix-like, il comando cron consente la pianificazione di comandi, ovvero consente la registrazione di questi presso il sistema per essere poi mandati in esecuzione periodicamente in maniera automatica dal sistema stesso. Lo stesso nome «crontab» si riferisce anche ai file utilizzati dal comando crontab come «registri» dei comandi pianificati.
Generalmente, crontab usa un demone, chiamato crond, che in quanto tale è costantemente in esecuzione in background e, una volta al minuto, legge i contenuti del registro dei comandi pianificati ed esegue quelli per cui si è esaurito il periodo di attesa.
Un comando mandato in esecuzione da crontab viene chiamato cronjob.
(Cit. Wikipedia)
Utilizzando il seguente comando, editate la tabella di configurazione del servizio cron del sistema linux:
sudo crontab -e
in fondo alla lista del file, nella prima riga libera, aggiungete le seguenti righe di testo. La prima è un commento al comando, la seconda è il comando da utilizzare.
# Invio della posizione APRS dopo il riavvio del sistema operativo
@reboot /usr/local/bin/posizione_aprs_hotspot.sh
Il significato, scritto in queste righe, indica il commento per ricordare che cosa fa l’esecuzione dello script, e il comando per lo script, che verrà eseguito automaticamente ad ogni riavvio del sistema.
Salvate le modifiche effettuate, con i comandi dell’editor utilizzato.
ATTENZIONE: Se avete utilizzato un nome personalizzato del file script, ricordatevi che il nome del file dovrà essere identico anche nella scrittura del comando cron!
Configurazione del servizio Cron nell’hotspot americano WPSD
Le seguente procedura, deve essere utilizzata solo per la versione hotspot (WPSD).
Lo spostamento del file dello script nella posizione di destinazione dovrà avvenire con le stesse modalità descritte sopra.
L’esecuzione del comando crontab deve essere eseguito a livello di amministratore (root), utilizzando, in questo caso, i due comandi uno di seguito all’altro:
sudo su
crontab -e
e procedete all’aggiunta delle righe di comando, come indicato nel paragrafo precedente.
Avete terminato la configurazione dello script e la procedura per la sua esecuzione automatica. Non c’è rimasto altro da fare, se non attendere che il servizio cron avvii in esecuzione lo script, ad ogni riavvio del vostro hotspot.
Una volta riavviato il dispositivo, potrete visualizzare la posizione aggiornata del vostro beacon APRS nel portale di aprs.fi.
ATTENZIONE: Terminate le modifiche delle configurazioni dei vari files all’interno del vostro hotspot pi-star, dovete reimpostare la memoria SD in modalità di sola lettura!
Per farlo, sarà necessario collegarsi in modalità SSH al vostro raspberry, e dopo la procedura di login, inviate il comando:
rpi-ro
oppure sarà sufficiente riavviare il vostro hotspot.
Canale Telegram di assistenza Pi-Direct
Assieme ad alcuni amici OM abbiamo creato un canale Telegram di assistenza ad hoc, per coloro che effettuano l’installazione della distribuzione pi-direct. Per accedere a questo canale, utilizzate questo link d’invito.
Questo canale contiene delle aree, ben distinte tra loro:
- Generale, dove chiedere informazioni sull’installazione e la configurazione, e come utilizzare al meglio tutti i servizi compresi da questa distribuzione;
- Servizio APRS, dove chiedere informazioni sull’installazione e la configurazione del nuovo servizio APRS, descritto in questo articolo.
- Dashboard, dove chiedere informazioni sull’installazione e la configurazione della dashboard aggiuntiva (descritta in un articolo di questo sito);
- Problematiche, dove segnalare i malfunzionamenti e chiedere assistenza;
- Modifiche, dove potrete chiedere ed avere informazioni su tutto ciò che è possibile installare in questa distribuzione (display, controlli remoti, ecc.);
Speriamo di vedervi numerosi a sperimentare con questa e altre ottime distribuzioni, che permette davvero di personalizzare al massimo le proprie connessioni su i vari protocolli radio digitali.
Per ogni domanda diretta sullo script APRS installato su i dispositivi pi-star e DVSwitch, potete anche contattami direttamente su Telegram.
Ringraziamenti ai beta tester
I ringraziamenti vanno al nostro gruppo di lavoro, agli amici radioamatori David IK5XMK, Andrea IW4EHJ, Pericle IK2UIZ e Alessandro IV3GQK, che assieme a noi effettuano molto spesso molteplici test di sistema, suggerendo alcune modifiche e fornendoci dei preziosi consigli che ci hanno permesso di pubblicare rapidamente queste nuove modifiche.
Conclusioni
Come sempre, rimango a vostra disposizione per potervi dare ulteriori informazioni riguardanti gli argomenti trattati in queste guide.
Un augurio a tutti di buone prove e buona sperimentazione!
’73 da Paolo IV3BVK (K1BVK)
Scopri di più da Il mondo di Paolettopn (IV3BVK - K1BVK)
Abbonati per ricevere gli ultimi articoli inviati alla tua e-mail.

