L’applicazione python pyUC è un semplice programma front-end GUI (con interfaccia grafica), per gestire l’accesso alle reti digitali dei Radioamatori, direttamente dal proprio PC.
È l’app front-end per la suite del software DVSwitch e si collega al componente interno del server Analog_Bridge.

Il software è disponibile per le varie piattaforme, Windows 10, Linux e Mac, ed è scaricabile dalla pagina del progetto, sul sito GitHub.

 

 

Caratteristiche

Con questo programma, l’utente può:

  • Selezionare la rete digitale desiderata;
  • Selezionare il “gruppo di conversazione” (TG) o il Reflector, da un elenco;
  • Trasmettere e ricevere le comunicazioni sulla rete, utilizzando gli altoparlanti e il microfono del PC;
  • Registrare un elenco delle stazioni radioamatoriali, ricevute nella sessione;
  • Visualizzare le foto dei Radioamatori, presenti su QRZ.com

 

 

Installazione

Scaricate e decomprimete sul vostro PC il file https://github.com/DVSwitch/USRP_Client/archive/master.zip
Posizionate la cartella all’interno del vostro PC, in una posizione a piacere.

Nel mio caso, ho effettuato l’installazione su piattaforma linux, utilizzando dal Terminale i seguenti comandi, che erano previsti inizialmente per essere eseguiti su una piattaforma Raspberry Pi, con sistema operativo Buster e Linux Mint 19.

Aprite un Terminale nel vostro PC e digitate i seguenti comandi, una riga alla volta.
sudo apt-get install python3-pyaudio
sudo apt-get install portaudio19-dev
sudo apt-get install python3-pil.imagetk

 

Configurazione del programma

Editate ora il file pyUC.ini, che avete trovato nella cartella scaricata, utilizzando il vostro editor preferito. Nel mio caso, da Terminale ho utilizzato i seguenti comandi:

cd USRP_Client-master/
nano pyUC.ini

All’interno del file di configurazione del programma, sarà necessario modificare i dati presenti nel paragrafo [DEFAULT]. Questo paragrafo del file definisce le informazioni generali su come configurare l’interfaccia utente di pyUC.
NOTA: DOVETE impostare ALMENO il vostro Nominativo radioamatoriale, ID DMR personale e del DVSwitch, l’ indirizzo IP e le porte del server.

(esempio della parte iniziale del file originale, senza aver apportato alcuna modifica)

[DEFAULTS]
myCall = N0CALL ; You callsign
subscriberID = 3112000 ; Your DMR/CCS7 ID
repeaterID = 311200 ; Your repeater ID
ipAddress = 1.2.3.4 ; IP address or hostname of DVSwitch Server (AB)
usrpTxPort = 12345 ; Port on which AB is listening
usrpRxPort = 12345 ; Local port to listen for packets from AB
defaultServer = DMR ; Start up UI on this mode (AB will override)
slot = 2 ; Slot to transmit on for DMR
in_index = Default ; pyaudio index for input device (0-N or -1 to disable)
out_index = Default ; pyaudio index for output device (0-N or Default)
loopback = 1 ; NOT USED
dongleMode = 1 ; NOT USED
micVol = 50 ; NOT USED
spVol = 50 ; NOT USED
voxEnable = 0 ; Enable = 1, disable = 0
voxThreshold = 200 ; This seems to be a good value for me
voxDelay = 50 ; 50 samples (which is 1 second)
aslMode = 0 ; For VERY limited use with chan_usrp (ASL experimental).
backgroundColor = Default
textColor = Default

 

E qui di seguito, vi inserisco la parte iniziale del mio file di configurazione, con le modifiche da me apportate.

[DEFAULTS]
myCall = IV3BVK ; You callsign
subscriberID = 22244483 ; Il vostro ID DMR/CCS7 a 7 cifre
repeaterID = 222448309 ; Il vostro ID PRIVATO del Ripetitore, con i 2 numeri del SSID (9 cifre)
ipAddress = nomeserver.noip.org ; l’indirizzo IP statico oppure l’hostname a cui è connesso il vostro Server DVSwitch. Ovviamente non è quello da me utilizzato, ma solo un esempio di digitazione.
usrpTxPort = 52500 ; Numero della Porta dove il server  è in ascolto
usrpRxPort = 52500 ; Numero della Porta dove il server trasmette i dati defaultServer = DMR ; Start up UI on this mode (AB will override)
slot = 2 ; Slot su cui trasmettere, quando impostato in modalità DMR
in_index = Default ; pyaudio index for input device (0-N or -1 to disable)
out_index = Default ; pyaudio index for output device (0-N or Default)
loopback = 1 ; NOT USED
dongleMode = 1 ; NOT USED
micVol = 80 ; livello del microfono dell’applicazione, da modificare a vs. piacere
spVol = 95 ; livello dell’uscita audio, agli altoparlanti del PC
voxEnable = 0 ; Enable = 1, disable = 0
voxThreshold = 200 ; This seems to be a good value for me
voxDelay = 50 ; 50 samples (which is 1 second)
aslMode = 0 ; For VERY limited use with chan_usrp (ASL experimental).
backgroundColor = Default
textColor = Default

 

 

Avvio del programma

Presupponendo di aver inserito la cartella scaricata all’interno della propria /home, raggiungetela tramite il Terminale e una volta posizionati all’interno sarà sufficiente digitare il seguente comando:

 python3 ./USRP_Client-master/pyUC.py

Per questi primi test io ho usato la versione 3 stabile di python; poi ognuno utilizzi la versione che più desidera e che utilizza anche per altri progetti.

 

Dal pannello principale (Main), potrete gestire completamente le comunicazioni del vostro server DVSwitch, realizzato su piattaforma Raspberry Pi.  Le immagini degli OM, vengono prese direttamente dal loro profilo di QRZ.com .

 

Utilizzando il pannello secondario (Setting), potrete gestire completamente le connessioni e la gestione audio tra il vostro PC linux e il server DVSwitch.

 

 

Il terzo pannello (About), riguarda le informazioni e la licenza del programma. È stato già visualizzato all’inizio di questo articolo, ma ve lo inserisco ugualmente qui di seguito.

 

 

Creazione del lanciatore su piattaforma linux  Ubuntu

Per lanciare il programma direttamente dal Desktop di un sistema operativo Ubuntu, è sufficiente creare un nuovo file con nome DVSwitch-client.dekstop, con il seguente comando da terminale:

nano DVSwitch-client.dekstop

 

per poi, inserire al suo interno il seguente codice:

#!/usr/bin/env xdg-open

[Desktop Entry] Name=DVSwitch USRP Client
Comment=Programma di avvio USRP client python
Comment[it]=GUI python per DVSwitch server
Exec=python3 /home/paolo/USRP_Client-master/pyUC.py
Icon=/home/paolo/USRP_Client-master/DVSwitch.jpg
Terminal=false
Type=Application
MimeType=text/plain
Keywords=DVSWitch;client;
InitialPreference=6
Categories=HamRadio;DVSwitch
Keywords=Ham Radio;DVSWitch;
Name[it_IT]=DVSwitch Client

 

NOTA: Ricordatevi di modificate il path corretto del percorso per raggiungere la vostra cartella del programma, dove andare ad eseguire il file pyUC.py e selezionare l’immagine da utilizzare per il lanciatore.

Per quanto riguarda l’icona da assegnare al pulsante di avvio sul Destop, potete prelevarla qui affianco ed inserirla nella cartella del programma USRP_Client-master. È una semplice immagine JPG 48x48px, che ho realizzato velocemente prendendo l’immagine originale da internet.

 

 

Contribuire attivamente  al progetto

Incoraggiamo tutti i Radioamatori e gli appassionati ad inviare una richiesta di pull a questo repository, segnalando le varie modifiche da apportare.
NOTA: Vi chiediamo solo di inviare la richiesta pull nel ramo di sviluppo.
Il vostro pull verrà controllato e unito poi al branch master.

 

 

Licenza

Questo software deve essere utilizzato solo su reti radioamatoriali, e deve essere utilizzato solo a scopo didattico. Il suo utilizzo su reti commerciali è rigorosamente proibito. 
Si è autorizzati ad utilizzare, copiare, modificare e/o distribuire questo software qui concesso, a condizione che l’avviso di copyright di cui sopra e questa autorizzazione compaia in tutte le copie distribuite.

IL SOFTWARE VIENE FORNITO “COSI’ COM’È” E DVSWITCH DECLINA OGNI GARANZIA RIGUARDANTE QUESTO SOFTWARE, COMPRESE TUTTE LE GARANZIE IMPLICITE DI COMMERCIABILITÀ.
IN NESSUN CASO N4IRR SARÀ RESPONSABILE PER NESSUNA RESPONSABILITÀ SPECIALE, DIRETTA, DANNI INDIRETTI O CONSEQUENZIALI O QUALSIASI DANNO DERIVANTE DA PERDITA DI UTILIZZO, DATI O GUADAGNO, SIA IN AZIONE CONTRATTUALE, NEGLIGENZA O OGNI ALTRA AZIONE, DERIVANTE DA O IN CONNESSIONE CON L’USO O PRESTAZIONI DI QUESTO SOFTWARE.

Buona sperimentazione continuativa, con le radio digitali e il software libero.

’73 de Paolo IV3BVK

Grazie per aver visitato questo blog, lasciate un vostro commento a questo post...