
Modulo GNU Radio out-of-tree (OOT) per blocchi QRadioLink.
AVVISO IMPORTANTE: Questo è codice generato da intelligenza artificiale.
Questo codice non è stato revisionato da programmatori professionisti; si tratta di un compito complesso. Nel codice sono disponibili dei test; si prega di esaminarli insieme al loro codice.
Modulo GNU Radio out-of-tree (OOT) per i blocchi QRadioLink.
Branch main: OOT GNU Radio 3.10 (CMake find_package(gnuradio)). Il port sperimentale per
GNU Radio 4 si trova sul branch gnuradio4 (README_gr4.md su quel branch).
Navigazione del codice: docs/CODE_MAP.md (file, funzioni, indice dei blocchi). Routing modalità ZMQ di gr-ident: docs/GRIDENT_ZMQ.md (preambolo gr-ident su :5560).
L'IQ di riferimento per i blocchi modulatore è stato verificato con radio-modulation-validator (31-05-2026). Riepilogo: SOFT FAIL — 6/19 blocchi superati, 13 soft fail, 0 hard fail, 3 saltati.
Tutte le modalità testate sono state identificate nella famiglia di modulazione corretta (FSK, PSK, AM, FM). I soft fail a livello di ordine (ad esempio FSK previsto come CPFSK invece di 4FSK o GMSK) riflettono i limiti del classificatore di ordine del validatore, non prove che questi modulatori producano la famiglia di forme d'onda sbagliata.
La scansione utilizza l'IQ di riferimento integrato (non blocchi OOT compilati); i risultati si applicano alle modalità elencate in questo
README su main e sono rispecchiati su gnuradio4.
Risultati completi per singolo blocco: VALIDATION_REPORT.md
Questo progetto è documentato nel seguente preprint:
Cryptographically Keyed Gaussian-Distributed Spread-Spectrum for Enhanced Covert Communications: Design, Implementation, and Simulated Performance in ITU Channel Models
IACR Cryptology ePrint Archive, Paper 2025/108456
https://eprint.iacr.org/2025/108456
Data di archiviazione: 21 marzo 2026.
Questo modulo fornisce blocchi GNU Radio per vari schemi di modulazione digitale e analogica, specializzati per le comunicazioni radioamatoriali e la voce digitale.
Questo modulo è stato convertito dall'applicazione QRadioLink, che è un ricetrasmettitore SDR multimodo per GNU Radio, ADALM-Pluto, LimeSDR, USRP e altre apparecchiature SDR. Il codice sorgente originale si trova su https://codeberg.org/qradiolink/qradiolink.
Validazione: I blocchi convertiti che hanno una controparte in QRadioLink sono stati validati rispetto al codice QRadioLink originale (branch next, codeberg.org/qradiolink/qradiolink) in modo che i flowgraph, i parametri dei filtri, le costanti di scala e il comportamento dei blocchi corrispondano. I modulatori/demodulatori SSB e AM (inclusa la struttura CESSB e le costanti di clipper/stretcher) sono stati ripristinati per corrispondere all'originale dove si erano discostati. Alcuni blocchi in questo modulo non hanno una fonte corrispondente in src/gr/ di QRadioLink; la loro origine è indicata nella tabella seguente.
Crediti e origini:
next, src/gr/): modulazione/demodulazione (2FSK, 4FSK, GMSK, BPSK, QPSK, AM, SSB, NBFM, WBFM), voce digitale (FreeDV, M17, DMR) e blocchi di supporto (RSSI, M17 deframer, MMDVM source/sink, clipper, stretcher, zero_idle_bursts, gr_4fsk_discriminator, demod_mmdvm_multi, demod_mmdvm_multi2, mod_mmdvm_multi2). Il DSP e il comportamento delle modalità per questi blocchi sono stati derivati o reimplementati dall'applicazione QRadioLink.gr_* in QRadioLink src/gr/): 8FSK, SOQPSK, CPM-4FSK, dPMR, NXDN, POCSAG, D-STAR, YSF, P25. La loro origine è indicata nella tabella Origine dei blocchi di seguito.Origine dei blocchi (validazione / attribuzione):
| Blocco(i) | Origine | Note |
|---|---|---|
| 2FSK, 4FSK, GMSK, BPSK, QPSK, AM, SSB, NBFM, WBFM, FreeDV, M17, DMR | QRadioLink | Validato rispetto a QRadioLink src/gr/ (gr_demod_, gr_mod_). |
| MMDVM source/sink, demod_mmdvm_multi, demod_mmdvm_multi2, mod_mmdvm_multi2, RSSI, clipper, stretcher, zero_idle_bursts, gr_4fsk_discriminator | QRadioLink | Validato rispetto a QRadioLink src/gr/. |
| 8FSK | Implementato per questo modulo | Nessun gr_demod_8fsk/gr_mod_8fsk in QRadioLink. Estensione del design stile 4FSK. |
| SOQPSK | Implementato per questo modulo | Nessun gr_demod_soqpsk/gr_mod_soqpsk in QRadioLink. Dalla letteratura/specifiche SOQPSK. |
| CPM-4FSK | Implementato per questo modulo | Nessun gr_mod_cpm_4fsk in QRadioLink. |
| dPMR | Implementato per questo modulo | Nessun gr_* in QRadioLink. Da ETSI TS 102 658 (vettori di test e commenti del codice). |
| NXDN | Implementato per questo modulo | Nessun gr_* in QRadioLink. Dalle specifiche NXDN Forum; il mapping dei simboli fa riferimento alla convenzione MMDVM. |
| POCSAG | Implementato per questo modulo | Nessun gr_* in QRadioLink. Da POCSAG/ITU-R M.584-2; protocollo compatibile con MMDVMHost. |
| D-STAR | Implementato per questo modulo | Nessun gr_* in QRadioLink. Dalla specifica D-STAR/JARL (Golay FEC); compatibile con MMDVMHost. |
| YSF | Implementato per questo modulo | Nessun gr_* in QRadioLink. Dalla documentazione del protocollo YSF; compatibile con MMDVMHost. |
| P25 | Implementato per questo modulo | Nessun gr_* in QRadioLink. Da P25 Phase 1 TIA-102; compatibile con MMDVMHost. |
| DSSS (base) | QRadioLink | Validato rispetto a QRadioLink gr_demod_dsss/gr_mod_dsss. |
| DSSS (miglioramenti), GDSS | Questo modulo | DSSS: miglioramenti sopra la base QRadioLink. GDSS: da Shakeel et al., Sensors 2023. |
| Routing ZMQ gr-ident | Questo modulo | Interoperabilità con gr-ident preambolo PUB; non da QRadioLink. |
Il codice è stato sottoposto a fuzzing estensivo utilizzando libFuzzer con oltre 104 milioni di esecuzioni su più blocchi, e non sono stati scoperti crash o perdite di memoria. Vedi fuzzing-results/results.md per i dettagli sulla copertura.