Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
gr-qradiolink — Modulo GNU Radio out-of-tree (OOT) per blocchi QRadioLink. | Kitploit
Strumenti/GitHubGitHub/supermagnum/gr-qradiolink
Reverse EngineeringFuzzingSicurezza di ReteSicurezza WirelessDigital ForensicsCrittografiaPenetration TestingSicurezza HardwareUtilità e FrameworkApprendimento e Formazione
GitHubsupermagnum/gr-qradiolink

gr-qradiolink

143 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →

Modulo GNU Radio out-of-tree (OOT) per blocchi QRadioLink.

Vedi Repository
Condividi

gr-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).

Validazione della modulazione

L'IQ di riferimento per i blocchi modulatore è stato verificato con (31-05-2026). Riepilogo: — 6/19 blocchi superati, 13 soft fail, , 3 saltati.

radio-modulation-validator
SOFT FAIL
0 hard fail

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

Pubblicazione

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.


Panoramica

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:

  • QRadioLink (Codeberg) è l'origine delle seguenti modalità (validate rispetto a codeberg.org/qradiolink/qradiolink branch 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.
  • Blocchi non provenienti da QRadioLink (nessuna fonte 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.
  • Aggiunte in questo modulo (non da QRadioLink): (1) Miglioramenti DSSS (metriche a decisione soft, AFC, soglia di correlazione adattiva, acquisizione grossolana-fine, recupero del temporizzatore) sopra la base di spreading/despreading DSSS; (2) GDSS (spreader/despreader a spettro espanso a distribuzione gaussiana), implementato da Shakeel et al., Sensors 2023 (vedi Riferimenti di seguito).

Origine dei blocchi (validazione / attribuzione):

Blocco(i)OrigineNote
2FSK, 4FSK, GMSK, BPSK, QPSK, AM, SSB, NBFM, WBFM, FreeDV, M17, DMRQRadioLinkValidato 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_discriminatorQRadioLinkValidato rispetto a QRadioLink src/gr/.
8FSKImplementato per questo moduloNessun gr_demod_8fsk/gr_mod_8fsk in QRadioLink. Estensione del design stile 4FSK.
SOQPSKImplementato per questo moduloNessun gr_demod_soqpsk/gr_mod_soqpsk in QRadioLink. Dalla letteratura/specifiche SOQPSK.
CPM-4FSKImplementato per questo moduloNessun gr_mod_cpm_4fsk in QRadioLink.
dPMRImplementato per questo moduloNessun gr_* in QRadioLink. Da ETSI TS 102 658 (vettori di test e commenti del codice).
NXDNImplementato per questo moduloNessun gr_* in QRadioLink. Dalle specifiche NXDN Forum; il mapping dei simboli fa riferimento alla convenzione MMDVM.
POCSAGImplementato per questo moduloNessun gr_* in QRadioLink. Da POCSAG/ITU-R M.584-2; protocollo compatibile con MMDVMHost.
D-STARImplementato per questo moduloNessun gr_* in QRadioLink. Dalla specifica D-STAR/JARL (Golay FEC); compatibile con MMDVMHost.
YSFImplementato per questo moduloNessun gr_* in QRadioLink. Dalla documentazione del protocollo YSF; compatibile con MMDVMHost.
P25Implementato per questo moduloNessun gr_* in QRadioLink. Da P25 Phase 1 TIA-102; compatibile con MMDVMHost.
DSSS (base)QRadioLinkValidato rispetto a QRadioLink gr_demod_dsss/gr_mod_dsss.
DSSS (miglioramenti), GDSSQuesto moduloDSSS: miglioramenti sopra la base QRadioLink. GDSS: da Shakeel et al., Sensors 2023.
Routing ZMQ gr-identQuesto moduloInteroperabilità 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.

Caratteristiche

Blocchi di Modulazione/Demodulazione

  • Modulazioni Digitali: 2FSK, 4FSK, 8FSK, CPM-4FSK, GMSK, BPSK, QPSK, SOQPSK, DSSS, GDSS
    • 2FSK: Modulatore/demodulatore a spostamento di frequenza binario (vedi Blocco GRC, Esempi)
    • 4FSK: Modulatore/demodulatore a spostamento di frequenza a 4 livelli (vedi Blocco GRC, Esempi)
    • 8FSK: Modulatore/demodulatore a spostamento di frequenza a 8 livelli con 3 bit per simbolo (vedi Blocco GRC, Esempi)
    • CPM-4FSK: Modulatore 4FSK a modulazione di fase continua (vedi Blocco GRC)
    • GMSK: Modulatore/demodulatore a spostamento minimo gaussiano (vedi Blocco GRC, Esempi)
    • BPSK: Modulatore/demodulatore a spostamento di fase binario (vedi Blocco GRC, Esempi)
    • QPSK: Modulatore/demodulatore a spostamento di fase in quadratura (vedi Blocco GRC, Esempi)
    • SOQPSK: Modulatore/demodulatore a spostamento di fase in quadratura offset sagomato (vedi Blocco GRC, Dettagli)
    • DSSS: Spettro espanso a sequenza diretta con blocchi spreader/despreader potenziati, generazione di sequenze PN (m-sequenze, codici Gold), recupero del temporizzatore, rilevamento del lock, metriche a decisione soft, supporto AFC, soglia di correlazione adattiva e acquisizione grossolana-fine (vedi Guida Blocchi DSSS, Blocchi GRC)
    • DSSS-CDMA: Trasmettitore e ricevitore ad accesso multiplo a divisione di codice con supporto multi-utente, fattori di spreading configurabili (32, 64, 128, 256, 512) e supporto per molteplici schemi di modulazione (2FSK, 4FSK, 8FSK, GMSK, BPSK, QPSK, SOQPSK) (vedi Blocchi GRC)
    • GDSS: Spettro espanso a distribuzione gaussiana con blocchi spreader/despreader che utilizzano sequenze a distribuzione gaussiana; metriche a decisione soft, supporto AFC, soglia adattiva e acquisizione grossolana-fine. Lo schema GDSS segue Shakeel et al., Gaussian-Distributed Spread-Spectrum for Covert Communications, Sensors 2023, 23(8), 4081; doi:10.3390/s23084081. (Vedi Guida Blocchi GDSS, Blocchi GRC)
  • Modulazioni Analogiche: AM, SSB (USB/LSB), NBFM, WBFM
    • AM: Modulatore/demodulatore di ampiezza (vedi Blocco GRC, Esempi)
    • SSB: Modulatore/demodulatore a banda laterale unica (USB/LSB) (vedi Blocco GRC, Esempi)
    • NBFM: Modulatore/demodulatore di frequenza a banda stretta (vedi Blocco GRC, Esempi)
    • WBFM: Modulatore/demodulatore di frequenza a banda larga (vedi Blocco GRC, Demodulatore WBFM)
  • Voce Digitale: FreeDV, M17, DMR (Tier I/II/III), dPMR, NXDN, MMDVM
    • FreeDV: Codec vocale digitale FreeDV (vedi Esempi)
    • M17: Protocollo vocale digitale M17 con supporto a livello fisico e di protocollo (vedi Blocchi GRC, Esempi)
    • DMR: Modulatore/demodulatore radio mobile digitale (Tier I/II/III) (vedi Blocchi GRC, Esempi)
    • dPMR: Radio mobile privata digitale (ETSI TS 102 658), 2400 baud, spaziatura canale 6,25 kHz (vedi Blocco GRC, Esempi)
    • NXDN: Banda stretta digitale di nuova generazione, supporta le modalità NXDN48 (2400 baud) e NXDN96 (4800 baud) (vedi Blocco GRC, Esempi)
    • Protocolli MMDVM: POCSAG, D-STAR, YSF (Yaesu System Fusion), P25 (Phase 1 C4FM)
      • POCSAG: Protocollo di paging (ITU-R M.584-2) con FEC BCH(31,21), supporta 512/1200/2400 bps (vedi Blocchi GRC, Esempi)
      • D-STAR: Tecnologie digitali intelligenti per radioamatori con FEC Golay(24,12) (vedi Blocchi GRC, Esempi)
      • YSF: Protocollo C4FM con FEC Golay(20,8) e Golay(23,12) (vedi , )
  • Routing modalità gr-ident (opzionale, richiede gr-ident o preambolo PUB compatibile): sottoscrivi mode_id decodificato su tcp://127.0.0.1:5560 e seleziona la famiglia di blocchi demod/mod corrispondente (vedi GRIDENT_ZMQ.md, CODE_MAP.md)
    • grident_preamble_sub: ZMQ SUB al preambolo PUB di gr-ident (necessita di libzmq)
    • grident_mode_control: analizza JSON, pubblica demod_block / mod_block sulla porta messaggi route_out
  • Blocchi di Supporto: Audio source/sink, RSSI, FFT, deframer, CESSB, M17 deframer, MMDVM source/sink, clipper, stretcher, raffiche inattive zero (vedi Blocco GRC)
  • Blocchi FEC: Correzione d'errore in avanti con codificatore/decodificatore LDPC a decisione soft e interleaver a blocchi
    • Codificatore/Decodificatore LDPC: Supporta codici LDPC regolari e irregolari
    • Code rate configurabili: 1/2, 2/3, 3/4, o personalizzati
    • Lunghezze di blocco configurabili: 576, 1152, 2304 bit, o personalizzate
    • Selezione automatica: Seleziona automaticamente il codice migliore tra i file AList disponibili
    • Vedi Blocchi GRC
    • Interleaver (HF Burst): Interleaver a blocchi per la mitigazione degli errori a raffica sui canali HF; distribuisce gli errori a raffica tra le posizioni dei simboli per migliori prestazioni FEC (vedi Blocco GRC)
  • Blocchi DSSS: Spreader/despreader potenziato con generazione di sequenze PN, recupero del temporizzatore, acquisizione, supporto a decisione soft, AFC, soglia adattiva e ricerca del codice grossolana-fine (vedi Guida Blocchi DSSS, Blocchi GRC)
  • Blocchi DSSS-CDMA: Trasmettitore e ricevitore CDMA multi-utente con fattori di spreading configurabili, supporto codici Gold e stima dell'interferenza multi-utente (vedi Blocchi GRC)
  • Blocchi GDSS: Spreader e despreader a spettro espanso a distribuzione gaussiana con decisione soft, AFC, soglia adattiva e acquisizione grossolana-fine. GDSS è basato su Shakeel et al., Sensors 2023, doi:10.3390/s23084081. (Vedi Guida Blocchi GDSS, Blocchi GRC)

SOQPSK (Shaped Offset Quadrature Phase Shift Keying)

SOQPSK è uno schema di modulazione efficiente in banda che offre una migliore efficienza spettrale rispetto al QPSK standard. L'implementazione supporta due modalità operative:

Modalità 1: Singolo canale VHF/UHF

  • 1 portante a 14.400 bps
  • Banda: ~10 kHz
  • Si inserisce in un'allocazione di 12,5 kHz

Modalità 2: Multi-portante VHF/UHF (resistente allo sbiadimento)

  • 3 portanti a 4.800 bps ciascuna
  • Spaziatura: 4 kHz l'una dall'altra
  • Banda totale: ~12 kHz
  • Migliore resistenza al multipercorso

Capacità massima HF

Segmenti di banda massima disponibili:

  • Maggior parte delle bande HF: 2.700 Hz max (segmenti standard per modalità digitali)
  • Banda 10m (sopra 29 MHz): 6.000 Hz max

Efficienza SOQPSK: ~1,5 bps/Hz

Capacità per portante:

  • Bande HF standard (2.700 Hz): 2.700 Hz × 1,5 bps/Hz = ~4.000 bps per portante
  • Banda 10m (6.000 Hz): 6.000 Hz × 1,5 bps/Hz = ~9.000 bps per portante

Specifiche VHF/UHF

Specifiche della portante:

  • Velocità di simbolo: ~9.600 simboli/secondo (per 14.400 bps a 1,5 bps/Hz)
  • Banda occupata: ~9,6 kHz
  • Si inserisce comodamente in un canale da 12,5 kHz con bande di guardia
  • Lascia ~2,9 kHz per il rolloff del filtraggio e le bande di guardia

Python Bindings

Tutti i blocchi sono disponibili tramite binding Python, inclusi:

  • Tutti i blocchi di modulazione/demodulazione (2FSK, 4FSK, 8FSK, CPM-4FSK, GMSK, BPSK, QPSK, SOQPSK, DSSS, AM, SSB, NBFM, WBFM)
  • Tutti i blocchi di voce digitale (FreeDV, M17, DMR, dPMR, NXDN, MMDVM)
  • Blocchi FEC (codificatore/decodificatore LDPC, interleaver)
  • Blocchi di supporto (RSSI, M17 deframer, MMDVM source/sink, clipper, stretcher, ecc.)

I binding Python consentono l'uso nei flowgraph di GNU Radio Companion e negli script Python.

Struttura delle Directory```

gr-qradiolink/ ├── CMakeLists.txt # Top-level CMake configuration ├── include/ # Public header files │ └── gnuradio/ │ └── qradiolink/ ├── lib/ # Implementation files ├── python/ # Python bindings │ └── qradiolink/ │ └── bindings/ ├── grc/ # GNU Radio Companion block definitions ├── docs/ # Documentation │ ├── doxygen/ │ ├── CODE_MAP.md # Code and function map (all modules) │ ├── GRIDENT_ZMQ.md # gr-ident ZMQ mode routing guide │ ├── DSSS_BLOCKS.md # DSSS spreader/despreader guide │ ├── GDSS_BLOCKS.md # GDSS spreader/despreader guide │ └── PTT_CONTROL.md # PTT control with gr-osmosdr ├── examples/ # Example flowgraphs ├── tests/ # Unit tests └── cmake/ # CMake modules └── Modules/

root@kitploit:~
## Dipendenze

Vedi [DEPENDENCIES.md](https://github.com/supermagnum/gr-qradiolink/blob/main/DEPENDENCIES.md) per un elenco completo delle dipendenze richieste e opzionali.

**Riepilogo rapido:**
- Clona con `git clone --recursive` (o esegui `git submodule update --init --recursive` dopo la clonazione)
- GNU Radio >= 3.10 (con il componente vocoder compilato con supporto Codec2)
- CMake >= 3.16
- Librerie Boost
- Volk (Vector-Optimized Library of Kernels)
- ZeroMQ (opzionale, per i blocchi MMDVM e il SUB preambolo gr-ident)
- Python 3.x con NumPy (per i binding Python)
- Libreria fmt (per i test)

## Testing

Il modulo include test unitari completi per tutti i blocchi. I test vengono eseguiti utilizzando i framework CTest e Boost.Test.

### Risultati dei test

Tutti i test vengono superati con successo. Vedi [tests/results.md](https://github.com/supermagnum/gr-qradiolink/blob/main/tests/results.md) per i test unitari C++, il test harness Python e i risultati dei casi limite. Vedi [fuzzing-results/results.md](https://github.com/supermagnum/gr-qradiolink/blob/main/fuzzing-results/results.md) per i dettagli dei test di fuzzing e del protocollo MMDVM.

**Test unitari C++:**```
100% tests passed

Test Breakdown:
- 12 Manual tests (with int main): test_mod_2fsk, test_mod_4fsk, test_mod_8fsk,
  test_mod_am, test_mod_gmsk, test_mod_bpsk, test_mod_mmdvm, test_mod_freedv,
  test_gdss_spreader_cc, test_gdss_despreader_cc, test_dsss_cdma_transmitter_cc,
  test_dsss_cdma_receiver_cc
- Boost.Test tests: mod_ssb, mod_qpsk, mod_nbfm, mod_wbfm, mod_dsss, all
  demodulators, rssi_tag_block (8 tests), interleaver_bb (13 tests with edge cases)
- gr-ident: test_grident_zmq (JSON parse and mode_id to demod mapping)

Test Coverage:
- Modulators: 2FSK, 4FSK, 8FSK, AM, GMSK, BPSK, SSB, QPSK, NBFM, WBFM, DSSS, M17, DMR, dPMR, NXDN
- Demodulators: 2FSK, 4FSK, 8FSK, AM, GMSK, BPSK, SSB, QPSK, NBFM, WBFM, DSSS, M17, DMR, dPMR, NXDN
- FEC: interleaver_bb (HF burst error handling, 13 tests including edge cases)
- Note: SOQPSK and CPM-4FSK blocks are implemented and available but unit tests are planned for future releases

Test del protocollo MMDVM (Python):``` 41 tests passed, 0 tests failed

  • Protocol validation: 28 tests (all passed)
    • POCSAG: 10 tests (all passed)
    • D-STAR: 9 tests (all passed)
    • YSF: 4 tests (all passed)
    • P25: 5 tests (all passed)
  • Block integration: 13 tests (all passed)
    • POCSAG: 4 tests (encoder/decoder creation, output, roundtrip)
    • D-STAR: 3 tests (encoder/decoder creation, output)
    • YSF: 3 tests (encoder/decoder creation, output)
    • P25: 3 tests (encoder/decoder creation, output)
root@kitploit:~
Vedi [fuzzing-results/results.md](https://github.com/supermagnum/gr-qradiolink/blob/main/fuzzing-results/results.md) per i risultati completi dei test del protocollo MMDVM.

Una **simulazione BER DSSS** ([examples/dsss_ber_simulation.py](https://github.com/supermagnum/gr-qradiolink/blob/main/examples/dsss_ber_simulation.py)) esegue spreader -> AWGN -> despreader e traccia BER vs SNR per N=64, 128, 256, sovrapponendo la curva teorica 0.5*erfc(sqrt(N*Es/N0/2)); le curve coincidono entro il rumore di simulazione, confermando il corretto comportamento del DSSS.

### Esecuzione dei test

Per compilare ed eseguire la suite di test:```bash
cd build
cmake ..
make
ctest --output-on-failure

Risultati del Fuzzing

Il modulo include una copertura completa di fuzzing tramite libFuzzer. Vedi fuzzing-results/results.md per i risultati completi della campagna di fuzzing, inclusi:

  • Statistiche di copertura (757 archi, 893 caratteristiche scoperte)
  • Metriche di esecuzione (oltre 104 milioni di esecuzioni)
  • Analisi delle prestazioni
  • Valutazione della sicurezza (0 crash, 0 perdite di memoria)

Test di Validazione Python

Il modulo include test di validazione basati su Python per tutti i tipi di modulazione. Vedi fuzzing-results/results.md per i risultati dei test di validazione. Tutte le modalità voce digitale (FreeDV, M17, DMR, dPMR, NXDN) ora hanno binding Python e supporto per la validazione. I blocchi SOQPSK hanno binding Python e sono disponibili per l'uso; i test di validazione sono pianificati per rilasci futuri.

Documentazione

Documentazione dei Blocchi

  • Code and Function Map: Indice dei file sorgente, API pubbliche, tabelle delle funzioni gr-ident e collegamenti ai moduli mod/demod/DSSS.
  • gr-ident ZMQ Integration: Formato wire, endpoint, cablaggio GRC e cambio banchi demod/mod da gr-ident mode_id.
  • Guida al Controllo PTT: Guida completa al controllo del PTT (Push-To-Talk) con gr-osmosdr e hardware SDR simile quando si utilizzano i blocchi gr-qradiolink.
  • Guida ai Blocchi DSSS: Blocchi spreader e despreader DSSS: generazione di sequenze PN, recupero del tempo, metriche a decisione soft, AFC, soglia di correlazione adattativa, acquisizione da grossolana a fine ed esempi di integrazione.
  • Guida ai Blocchi GDSS: Blocchi spreader e despreader GDSS: generazione di sequenze, recupero del tempo, metriche a decisione soft, AFC, soglia adattativa, acquisizione da grossolana a fine e vantaggi rispetto alle sequenze PN binarie.
  • Directory degli Esempi: Flowgraph di esempio e script Python che dimostrano l'uso di vari blocchi.

Collegamenti di Riferimento dei Blocchi

Tutti i blocchi hanno definizioni di blocchi GRC (GNU Radio Companion) nella directory grc/. Blocchi chiave:

Modulazioni Digitali:

  • 2FSK Modulator / 2FSK Demodulator
  • 4FSK Modulator / 4FSK Demodulator
  • 8FSK Modulator / 8FSK Demodulator
  • CPM-4FSK Modulator
  • GMSK Modulator / GMSK Demodulator
  • BPSK Modulator / BPSK Demodulator
  • QPSK Modulator / QPSK Demodulator
  • SOQPSK Modulator / SOQPSK Demodulator
  • DSSS Spreader / DSSS Despreader
  • DSSS-CDMA Transmitter / DSSS-CDMA Receiver
  • GDSS Spreader / GDSS Despreader

Modulazioni Analogiche:

  • AM Modulator / AM Demodulator
  • SSB Modulator / SSB Demodulator
  • NBFM Modulator / NBFM Demodulator
  • WBFM Modulator / WBFM Demodulator

Voce Digitale:

  • M17 Coder / M17 Decoder / M17 Deframer
  • DMR Modulator / DMR Demodulator
  • dPMR Modulator / dPMR Demodulator
  • NXDN Modulator / NXDN Demodulator

Protocolli MMDVM:

  • POCSAG Encoder / POCSAG Decoder
  • D-STAR Encoder / D-STAR Decoder
  • YSF Encoder / YSF Decoder
  • P25 Encoder / P25 Decoder

gr-ident (facoltativo, libzmq):

  • gr-ident Preamble SUB / gr-ident Mode Control

FEC:

  • LDPC Encoder / LDPC Decoder (Soft-Decision)
    • Supporta codici LDPC regolari e irregolari
    • Rapporti di codifica configurabili: 1/2, 2/3, 3/4 o personalizzati
    • Lunghezze di blocco configurabili: 576, 1152, 2304 bit o personalizzate
    • Selezione automatica del codice più adatto tra i file AList disponibili
  • Interleaver (HF Burst) - Interleaver/deinterleaver a blocchi per la gestione degli errori burst HF

Per l'elenco completo di tutti i blocchi, vedere la directory grc/.

Riferimenti

  • GDSS (Gaussian-Distributed Spread-Spectrum): Shakeel, I.; Hilliard, J.; Zhang, W.; Rice, M. Gaussian-Distributed Spread-Spectrum for Covert Communications. Sensors 2023, 23(8), 4081. doi:10.3390/s23084081. I blocchi spreader/despreader GDSS in questo modulo implementano lo schema di mascheratura I/Q che preserva i quadranti (Sezione 3) di questo articolo: ogni chip utilizza campioni gaussiani indipendenti U, V con mascheratura elemento per elemento I = R(S)|U|, Q = Im(S)|V|.

Licenza

Questo progetto è concesso in licenza secondo i termini della GNU General Public License v3.0 o successiva (GPL-3.0-or-later).

Fare riferimento al file LICENSE nel repository QRadioLink per i dettagli.

Scarica lo strumento
Blocchi GRC
Esempi
  • P25: Project 25 Phase 1 C4FM con codifica BCH(63,16) e Trellis (vedi Blocchi GRC, Esempi)