E’ disponibile la nuova versione del bridge di Antonio IU5JAE, scaricabile dal link:

https://github.com/iu5jae/ysf_bridge

Il software richiede Python versione 3 e permette la connessione (bridge) tra i seguenti sistemi operanti in C4FM con protocollo YSF:

a) reflector YSF <> reflector YSF
b) reflector YSF <> reflector YCS
c) reflector YSF <> reflector XLX
d) reflector YSF <> master BrandMeister (modalità YSF Direct)
…e relative combinazioni.

Si consiglia l’utilizzo del reflector pYSF se non è necessario gestire più flussi, altrimenti pYSF3. Di seguito i link ai rispettivi software:
https://github.com/iu5jae/pYSFReflector
https://github.com/iu5jae/pYSFReflector3

Si consiglia (sotto linux) di eseguire ysf_bridge dalla directory /opt/ysf_bridge2 ed è gestito dal file ysf_bridge.ini
Importante controllare il percorso del file di log e relativo permesso di scrittura.

Se vuoi attivare più bridge, devi eseguire più istanze di ysf_bridge, ciascuna con il proprio file di configurazione e avendo cura di mantenere i flussi separati gli uni dagli altri.

È possibile indicare un Callsign-nn (per gestire connessioni FIXED tra sistemi, es. pYSF3) dove nn = DGID in uso oppure abilitando ycs_connection = 1 specificare il DGID fisso ycs_ID = nn
È necessario specificare indirizzo e porta per ciascun endpoint dei sistemi da connettere tra loro, mentre la connessione in modalità Direct è solo per l’endpoint A e serve per connettere direttamente il BM master, con la stessa password inserita nel self care BM/hotspot.
Nella modalità Direct il TalkGroup da utilizzare (lato DMR) è specificato in options=group=22251 ad esempio e l’ID DMR di autenticazione in ysfgateway_ID.

Per eseguire ysf_bridge la sintassi è: /opt/ysf_bridge2/ysf_bridge.py /opt/ysf_bridge2/ysf_bridge.ini
controlla il percorso corretto, anche nel file . servizio se viene utilizzata questa modalità di esecuzione.

Nota: questo software sperimentale è destinato esclusivamente all’uso radioamatoriale, non si assume alcuna garanzia di buon funzionamento e non viene fornita alcuna forma di supporto. Rispettare le regole indicate dagli amministratori di sistema e non effettuare connessioni tra reti o sistemi senza aver dato preventiva informazione e ricevuto approvazione. Il rispetto reciproco e per ciò che è in atto è fondamentale.

Note tecniche di installazione, esempio per connessione YSF Direct, a cura di Bruno IS0GQX:

Partiamo scaricando il software sulla nostra raspberry e/o VPS nella directory /opt:

pi@raspberrypi:~ $ sudo -s
root@raspberrypi:/home/pi# cd /opt
root@raspberrypi:/opt# git clone https://github.com/iu5jae/ysf_bridge.git

Cloning into ‘ysf_bridge’…
remote: Enumerating objects: 79, done.
remote: Counting objects: 100% (79/79), done.
remote: Compressing objects: 100% (58/58), done.
remote: Total 79 (delta 42), reused 45 (delta 20), pack-reused 0
Unpacking objects: 100% (79/79), done.
root@raspberrypi:/opt#

spostiamoci nella dir ysf_bridge e verifichiamo il contenuto:

root@raspberrypi:/opt#cd ysf_bridge
root@raspberrypi:/opt/ysf_bridge# ls
crc.py LICENSE ysf_bridge.ini ysfconvolution.py ysfutils.py
golay24128.py README.md ysf_bridge.py ysffich.py
gps.py ysfaprs.py ysf_bridge.service ysfpayload.py
root@raspberrypi:/opt/ysf_bridge#

assegniamo le autorizzazioni per rendere eseguibile il file ysf_bridge.py:

root@raspberrypi:/opt/ysf_bridge# chmod +x ysf_bridge.py

modifichiamo il file di configurazione “ysf_bridge.ini”:

root@raspberrypi:/opt/ysf_bridge# nano ysf_bridge.ini

– configurazione suddivisa in 3 sezioni [general], [A] (sorgente del flusso) e [B] (destinazione del flusso);
– nella prima sezione [general] la configurazione è stata già provata e non necessita di modifiche se non per vostre particolari esigenze (controllare path per il log e permessi in scrittura):

[general]
log_file = /opt/ysf_bridge/ysf_bridge.log
log_maxBytes = 1000000
log_backupCount = 5
ack_period = 10.0
ack_tout = 30.0

– nella seconda sezione [A] troviamo già configurato il server e la porta UDP corretta per la connessione su BM (il master italiano), mentre è da modificare il nominativo utilizzato per l’interconnessione, la password e il TG personale da creare, che sarà il nostro ID DMR senza ESSID. Chiaramente se non utilizziamo la modalità YSF Direct, in address = andrà l’indirizzo del sistema da collegare (sorgente), e in port = la relativa porta.

Nota: in relazione alla scelta del nominativo (call = ) è importante che venga utilizzato quello personale se parliamo di connessione YSF Direct.

[A]
address = bm2222.dmrbrescia.it
port = 42001

# this option allow the removal of the prefix
# on a YCS connection managed as YSF
remove_prefix = 0
ycs_connection = 0
# used in Options (YSFO) when ycs_connection = 1
# valid for YCS and XLX patched
ycs_ID = 88
call = CALL_A ← PROPRIO NOMINATIVO
# YSFI data for YCS connection
rx_freq =
tx_freq =
locator =
location =
hs_type = ysfbridge
ysfgateway_ID = 1354225 (non utilizzato al momento dal protocollo)

# BM YSF Direct
# available only on endpoint “A”
auth = 1
password = xxxxx ← la vostra psw utilizza con l’HS sul master BM
options = group=BMTG ← il vostro ID DMR (7 cifre) se utilizzato come TG oppure il TG BM da collegare

– la terza sezione [B] è dedicata alla semplice configurazione del reflector destinatario del flusso prelevato da BM con il bridge, ovvero il vostro reflector ad uso personale. Particolare attenzione va data al suffisso utilizzato, se per una connessione su un reflector pYSF è accettato (selezionando così il DG-ID di default), in quella verso un XLX non deve essere utilizzato:

[B]
address = ysf.mioserver.it ← IP o DNS Reflector del vostro reflector YSF
port = 42000 ← porta UDP come configurata nel registry mondiale, quella dove il vostro reflector fa ascolto
remove_prefix = 1 (serve per rimuovere nn/callsign sul display della radio se viene inviato dal link)
ycs_connection = 0
ycs_ID = 21 (DGID se il reflector destinatario lo prevede)
call = CALL_B ← NOMINATIVO che si presenterà sulla dashboard del vostro sistema
rx_freq =
tx_freq =
locator =
location =
hs_type = ysfbridge
ysfgateway_ID = 1354225 (non utilizzato al momento dal protocollo)

Non ci rimane ora che avviare il servizio.
Nella directory ysf_bridge troviamo già pronto il file ysf_bridge.service configurato e adibito a tale scopo. Dobbiamo solo copiarlo nella directory /lib/systemd/system, avviarlo e renderlo avviabile anche dopo un reboot della RPI/VPS

root@raspberrypi:/opt/ysf_bridge# cp ysf_bridge.service /lib/systemd/system
root@raspberrypi:/opt/ysf_bridge# systemctl enable ysf_bridge.service
root@raspberrypi:/opt/ysf_bridge# systemctl start ysf_bridge.service

73, IS0GQX Bruno

Di ik5xmk