Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
gr-qradiolink — Module GNU Radio out-of-tree (OOT) pour les blocs QRadioLink. | Kitploit
Outils/GitHubGitHub/supermagnum/gr-qradiolink
Rétro-ingénierieFuzzingSécurité RéseauSécurité Sans FilCriminalistique NumériqueCryptographieTests d'IntrusionSécurité MatérielleUtilitaires et FrameworksApprentissage et Éducation
GitHubsupermagnum/gr-qradiolink

gr-qradiolink

1il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Module GNU Radio out-of-tree (OOT) pour les blocs QRadioLink.

Voir le dépôt

gr-qradiolink

AVIS IMPORTANT: Ce code est généré par IA.

Ce code n'a pas été examiné par des codeurs professionnels, c'est une tâche importante. Des tests sont disponibles dans la base de code, veuillez les consulter ainsi que leur code.


Module GNU Radio out-of-tree (OOT) pour les blocs QRadioLink.

Branche main: GNU Radio 3.10 OOT (CMake find_package(gnuradio)). Le port expérimental GNU Radio 4 se trouve sur la branche gnuradio4 (README_gr4.md sur cette branche).

Navigation dans le code: docs/CODE_MAP.md (fichiers, fonctions, index des blocs). Routage de mode ZMQ gr-ident: docs/GRIDENT_ZMQ.md (préambule gr-ident sur :5560).

Validation de la modulation

Les IQ de référence pour les blocs modulateurs ont été vérifiés avec radio-modulation-validator (2026-05-31). Résumé : ÉCHEC LÉGER — 6/19 blocs réussis, 13 échecs légers, 0 échec dur, 3 ignorés.

Tous les modes testés ont été identifiés dans la bonne famille de modulation (FSK, PSK, AM, FM). Les échecs légers au niveau de l'ordre (par exemple FSK prédit comme CPFSK au lieu de 4FSK ou GMSK) reflètent les limites du classificateur d'ordre du validateur, et non une preuve que ces modulateurs produisent la mauvaise famille de forme d'onde.

Le scan utilise des IQ de référence intégrés (pas de blocs OOT construits) ; les résultats s'appliquent aux modes listés dans ce README sur main et sont reflétés sur gnuradio4.

Résultats complets par bloc : VALIDATION_REPORT.md

Publication

Ce projet est documenté dans le préprint suivant :

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

Horodatage d'archivage : 21 mars 2026.


Aperçu

Ce module fournit des blocs GNU Radio pour divers schémas de modulation numérique et analogique, spécialisés pour la radio amateur et les communications vocales numériques.

Ce module a été converti à partir de l'application QRadioLink, qui est un émetteur-récepteur SDR multimode pour GNU Radio, ADALM-Pluto, LimeSDR, USRP et autres matériels SDR. Le code source original se trouve à https://codeberg.org/qradiolink/qradiolink.

Validation : Les blocs convertis qui ont un équivalent dans QRadioLink ont été validés par rapport à la source QRadioLink originale (branche next, codeberg.org/qradiolink/qradiolink) afin que les graphes de flux, les paramètres de filtre, les constantes d'échelle et le comportement des blocs correspondent. Les chaînes de modulateur/démodulateur SSB et AM (y compris la structure CESSB et les constantes de clipper/stretcher) ont été restaurées pour correspondre à l'original là où elles avaient divergé. Certains blocs de ce module n'ont pas de source correspondante dans src/gr/ de QRadioLink ; leur origine est indiquée dans le tableau ci-dessous.

Crédits et origine :

  • QRadioLink (Codeberg) est à l'origine des modes suivants (validés par rapport à codeberg.org/qradiolink/qradiolink branche next, src/gr/) : modulation/démodulation (2FSK, 4FSK, GMSK, BPSK, QPSK, AM, SSB, NBFM, WBFM), voix numérique (FreeDV, M17, DMR), et blocs de support (RSSI, déframeur M17, source/puits MMDVM, clipper, stretcher, zero_idle_bursts, gr_4fsk_discriminator, demod_mmdvm_multi, demod_mmdvm_multi2, mod_mmdvm_multi2). Le DSP et le comportement de mode pour ces blocs ont été dérivés ou réimplémentés à partir de l'application QRadioLink.
  • Blocs ne provenant pas de QRadioLink (aucune source gr_* dans QRadioLink src/gr/) : 8FSK, SOQPSK, CPM-4FSK, dPMR, NXDN, POCSAG, D-STAR, YSF, P25. Leur origine est donnée dans le tableau d'origine des blocs ci-dessous.
  • Ajouts dans ce module (non issus de QRadioLink) : (1) Améliorations DSSS (métriques de décision douce, AFC, seuil de corrélation adaptatif, acquisition grossière à fine, récupération de synchronisation) en plus de l'étalement/désétalement DSSS de base ; (2) GDSS (étaleur/désétaleur à spectre étalé à distribution gaussienne), implémenté d'après Shakeel et al., Sensors 2023 (voir les références ci-dessous).

Origine des blocs (validation / attribution) :

Le code a été fuzzé de manière extensive avec libFuzzer avec plus de 104 millions d'exécutions à travers plusieurs blocs, et aucun crash ou fuite mémoire n'a été découvert. Voir fuzzing-results/results.md pour les détails de couverture.

Fonctionnalités

Blocs de modulation/démodulation

  • Modulations numériques : 2FSK, 4FSK, 8FSK, CPM-4FSK, GMSK, BPSK, QPSK, SOQPSK, DSSS, GDSS
    • 2FSK : modulateur/démodulateur à déplacement de fréquence binaire (voir Bloc GRC, Exemples)
    • 4FSK : modulateur/démodulateur à déplacement de fréquence à 4 niveaux (voir Bloc GRC, Exemples)
    • 8FSK : modulateur/démodulateur à déplacement de fréquence à 8 niveaux avec 3 bits par symbole (voir Bloc GRC, Exemples)
    • CPM-4FSK : modulateur 4FSK à modulation de phase continue (voir Bloc GRC)
    • GMSK : modulateur/démodulateur à déplacement minimum gaussien (voir Bloc GRC, Exemples)
    • BPSK : modulateur/démodulateur à déplacement de phase binaire (voir Bloc GRC, Exemples)
    • QPSK : modulateur/démodulateur à déplacement de phase en quadrature (voir Bloc GRC, Exemples)
    • SOQPSK : modulateur/démodulateur à déplacement de phase en quadrature offset façonné (voir Bloc GRC, )

SOQPSK (Shaped Offset Quadrature Phase Shift Keying)

SOQPSK est un schéma de modulation efficace en bande passante qui offre une efficacité spectrale améliorée par rapport au QPSK standard. L'implémentation supporte deux modes opérationnels :

Mode 1 : canal unique VHF/UHF

  • 1 porteuse à 14 400 bps
  • Bande passante : ~10 kHz
  • Tient dans une allocation de 12,5 kHz

Mode 2 : multi-porteuse VHF/UHF (résistant à l'évanouissement)

  • 3 porteuses à 4 800 bps chacune
  • Espacement : 4 kHz entre elles
  • Bande passante totale : ~12 kHz
  • Meilleure résistance aux trajets multiples

Capacité maximale HF

Segments de bande passante maximale disponibles :

  • La plupart des bandes HF : 2 700 Hz max (segments de mode numérique standard)
  • Bande 10 m (au-dessus de 29 MHz) : 6 000 Hz max

Efficacité SOQPSK : ~1,5 bps/Hz

Capacité par porteuse :

  • Bandes HF standard (2 700 Hz) : 2 700 Hz × 1,5 bps/Hz = ~4 000 bps par porteuse
  • Bande 10 m (6 000 Hz) : 6 000 Hz × 1,5 bps/Hz = ~9 000 bps par porteuse

Spécifications VHF/UHF

Spécifications de la porteuse :

  • Débit de symboles : ~9 600 symboles/seconde (pour 14 400 bps à 1,5 bps/Hz)
  • Bande passante occupée : ~9,6 kHz
  • Tient confortablement dans un canal de 12,5 kHz avec bandes de garde
  • Laisse ~2,9 kHz pour le rolloff du filtrage et les bandes de garde

Liaisons Python

Tous les blocs sont disponibles via les liaisons Python, y compris :

  • Tous les blocs de modulation/démodulation (2FSK, 4FSK, 8FSK, CPM-4FSK, GMSK, BPSK, QPSK, SOQPSK, DSSS, AM, SSB, NBFM, WBFM)
  • Tous les blocs de voix numérique (FreeDV, M17, DMR, dPMR, NXDN, MMDVM)
  • Blocs FEC (codeur/décodeur LDPC, entrelaceur)
  • Blocs de support (RSSI, déframeur M17, source/puits MMDVM, clipper, stretcher, etc.)

Les liaisons Python permettent une utilisation dans les graphes de flux GNU Radio Companion et les scripts Python.

Structure du répertoire```

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:~
## Dépendances

Voir [DEPENDENCIES.md](https://github.com/supermagnum/gr-qradiolink/blob/HEAD/DEPENDENCIES.md) pour une liste complète des dépendances requises et optionnelles.

**Résumé rapide:**
- Cloner avec `git clone --recursive` (ou exécuter `git submodule update --init --recursive` après le clonage)
- GNU Radio >= 3.10 (avec le composant vocoder construit avec le support Codec2)
- CMake >= 3.16
- Bibliothèques Boost
- Volk (Bibliothèque de noyaux optimisée vectorielle)
- ZeroMQ (optionnel, pour les blocs MMDVM et le préambule SUB gr-ident)
- Python 3.x avec NumPy (pour les liaisons Python)
- Bibliothèque fmt (pour les tests)

## Tests

Le module comprend des tests unitaires complets pour tous les blocs. Les tests sont exécutés à l'aide de CTest et du framework Boost.Test.

### Résultats des tests

Tous les tests réussissent. Voir [tests/results.md](https://github.com/supermagnum/gr-qradiolink/blob/HEAD/tests/results.md) pour les tests unitaires C++, le harnais de test Python et les résultats de cas limites. Voir [fuzzing-results/results.md](https://github.com/supermagnum/gr-qradiolink/blob/HEAD/fuzzing-results/results.md) pour les détails des tests de fuzzing et du protocole MMDVM.

**Tests unitaires 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

Tests du protocole 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:~
Voir [fuzzing-results/results.md](https://github.com/supermagnum/gr-qradiolink/blob/HEAD/fuzzing-results/results.md) pour les résultats complets des tests du protocole MMDVM.

Une **simulation BER DSSS** ([examples/dsss_ber_simulation.py](https://github.com/supermagnum/gr-qradiolink/blob/HEAD/examples/dsss_ber_simulation.py)) exécute l'étaleur -> AWGN -> le désétaleur et trace le BER en fonction du SNR pour N=64, 128, 256, en superposant la courbe théorique 0.5*erfc(sqrt(N*Es/N0/2)) ; les courbes correspondent dans les limites du bruit de simulation, confirmant un comportement DSSS correct.

### Exécution des tests

Pour compiler et exécuter la suite de tests :```bash
cd build
cmake ..
make
ctest --output-on-failure

Résultats du fuzzing

Le module inclut une couverture de fuzzing complète utilisant libFuzzer. Voir fuzzing-results/results.md pour les résultats complets de la campagne de fuzzing, incluant :

  • Statistiques de couverture (757 arêtes, 893 caractéristiques découvertes)
  • Métriques d'exécution (plus de 104 millions d'exécutions)
  • Analyse des performances
  • Évaluation de la sécurité (0 crash, 0 fuite mémoire)

Tests de validation Python

Le module inclut des tests de validation basés sur Python pour tous les types de modulation. Voir fuzzing-results/results.md pour les résultats des tests de validation. Tous les modes vocaux numériques (FreeDV, M17, DMR, dPMR, NXDN) disposent désormais de liaisons Python et d'un support de validation. Les blocs SOQPSK ont des liaisons Python et sont disponibles ; des tests de validation sont prévus pour les versions futures.

Documentation

Documentation des blocs

  • Plan du code et des fonctions : Index des fichiers source, API publiques, tables de fonctions gr-ident et liens vers les modules mod/demod/DSSS.
  • Guide de contrôle PTT : Guide complet sur le contrôle PTT (Push-To-Talk) avec gr-osmosdr et du matériel SDR similaire lors de l'utilisation des blocs gr-qradiolink.
  • Guide des blocs DSSS : Blocs d'étalement et de désétalement DSSS : génération de séquences PN, récupération de synchronisation, métriques de décision souple, AFC, seuil de corrélation adaptatif, acquisition grossière à fine et exemples d'intégration.
  • Guide des blocs GDSS : Blocs d'étalement et de désétalement GDSS : génération de séquences, récupération de synchronisation, métriques de décision souple, AFC, seuil adaptatif, acquisition grossière à fine et avantages par rapport aux séquences PN binaires.
  • Répertoire d'exemples : Graphes de flux et scripts Python d'exemple démontrant l'utilisation de divers blocs.

Liens de référence des blocs

Tous les blocs ont des définitions de blocs GRC (GNU Radio Companion) dans le répertoire grc/. Blocs clés :

Modulations numériques :

  • Modulateur 2FSK / Démodulateur 2FSK
  • Modulateur 4FSK / Démodulateur 4FSK
  • Modulateur 8FSK / Démodulateur 8FSK
  • Modulateur CPM-4FSK
  • Modulateur GMSK / Démodulateur GMSK
  • Modulateur BPSK / Démodulateur BPSK
  • Modulateur QPSK / Démodulateur QPSK
  • Modulateur SOQPSK / Démodulateur SOQPSK
  • Étaleur DSSS / Désétaleur DSSS
  • Émetteur DSSS-CDMA / Récepteur DSSS-CDMA

Modulations analogiques :

  • Modulateur AM / Démodulateur AM
  • Modulateur SSB / Démodulateur SSB
  • Modulateur NBFM / Démodulateur NBFM
  • Modulateur WBFM / Démodulateur WBFM

Voix numérique :

  • Codeur M17 / Décodeur M17 / Déframeur M17
  • Modulateur DMR / Démodulateur DMR
  • Modulateur dPMR / Démodulateur dPMR
  • Modulateur NXDN / Démodulateur NXDN

Protocoles MMDVM :

  • Encodeur POCSAG / Décodeur POCSAG
  • Encodeur D-STAR / Décodeur D-STAR
  • Encodeur YSF / Décodeur YSF
  • Encodeur P25 / Décodeur P25

gr-ident (optionnel, libzmq) :

  • Préambule SUB gr-ident / Contrôle de mode gr-ident

FEC :

  • Encodeur LDPC / Décodeur LDPC (décision souple)
    • Prend en charge les codes LDPC réguliers et irréguliers
    • Taux de code configurables : 1/2, 2/3, 3/4 ou personnalisé
    • Longueurs de bloc configurables : 576, 1152, 2304 bits ou personnalisé
    • Sélection automatique du code le mieux adapté parmi les fichiers AList disponibles
  • Entrelaceur (rafale HF) - Entrelaceur/désentrelaceur de blocs pour la gestion des erreurs de rafale HF

Pour la liste complète de tous les blocs, voir le répertoire grc/.

Références

  • GDSS (étalement de spectre distribué gaussien) : Shakeel, I.; Hilliard, J.; Zhang, W.; Rice, M. Gaussian-Distributed Spread-Spectrum for Covert Communications. Sensors 2023, 23(8), 4081. doi:10.3390/s23084081. Les blocs d'étalement/désétalement GDSS de ce module implémentent le schéma de masquage I/Q préservant les quadrants (Section 3) de cet article : chaque chip utilise des échantillons gaussiens indépendants U, V avec un masquage élément par élément I = R(S)|U|, Q = Im(S)|V|.

Licence

Ce projet est sous licence GNU General Public License v3.0 ou ultérieure (GPL-3.0-or-later).

Voir le fichier LICENSE dans le dépôt QRadioLink pour plus de détails.

Télécharger l’outil
Bloc(s)OrigineNotes
2FSK, 4FSK, GMSK, BPSK, QPSK, AM, SSB, NBFM, WBFM, FreeDV, M17, DMRQRadioLinkValidé par rapport à QRadioLink src/gr/ (gr_demod_, gr_mod_).
source/puits MMDVM, demod_mmdvm_multi, demod_mmdvm_multi2, mod_mmdvm_multi2, RSSI, clipper, stretcher, zero_idle_bursts, gr_4fsk_discriminatorQRadioLinkValidé par rapport à QRadioLink src/gr/.
8FSKImplémenté pour ce modulePas de gr_demod_8fsk/gr_mod_8fsk dans QRadioLink. Extension de la conception de type 4FSK.
SOQPSKImplémenté pour ce modulePas de gr_demod_soqpsk/gr_mod_soqpsk dans QRadioLink. Issu de la littérature/spécifications SOQPSK.
CPM-4FSKImplémenté pour ce modulePas de gr_mod_cpm_4fsk dans QRadioLink.
dPMRImplémenté pour ce modulePas de gr_* dans QRadioLink. Issu de l'ETSI TS 102 658 (vecteurs de test et commentaires de code).
NXDNImplémenté pour ce modulePas de gr_* dans QRadioLink. Issu des spécifications du forum NXDN ; le mapping de symboles fait référence à la convention MMDVM.
POCSAGImplémenté pour ce modulePas de gr_* dans QRadioLink. Issu de POCSAG/ITU-R M.584-2 ; protocole compatible avec MMDVMHost.
D-STARImplémenté pour ce modulePas de gr_* dans QRadioLink. Issu de la spécification D-STAR/JARL (FEC Golay) ; compatible avec MMDVMHost.
YSFImplémenté pour ce modulePas de gr_* dans QRadioLink. Issu de la documentation du protocole YSF ; compatible avec MMDVMHost.
P25Implémenté pour ce modulePas de gr_* dans QRadioLink. Issu de P25 Phase 1 TIA-102 ; compatible avec MMDVMHost.
DSSS (base)QRadioLinkValidé par rapport à QRadioLink gr_demod_dsss/gr_mod_dsss.
DSSS (améliorations), GDSSCe moduleDSSS : améliorations par rapport à la base QRadioLink. GDSS : d'après Shakeel et al., Sensors 2023.
Routage ZMQ gr-identCe moduleInterop avec le préambule PUB de gr-ident ; non issu de QRadioLink.
Détails
  • DSSS : spectre étalé à séquence directe avec blocs d'étalement/désétalement améliorés, génération de séquences PN (séquences m, codes de Gold), récupération de synchronisation, détection de verrouillage, métriques de décision douce, support AFC, seuil de corrélation adaptatif et acquisition grossière à fine (voir Guide des blocs DSSS, Blocs GRC)
  • DSSS-CDMA : émetteur et récepteur à accès multiple par division de code avec support multi-utilisateur, facteurs d'étalement configurables (32, 64, 128, 256, 512) et support de multiples schémas de modulation (2FSK, 4FSK, 8FSK, GMSK, BPSK, QPSK, SOQPSK) (voir Blocs GRC)
  • GDSS : spectre étalé à distribution gaussienne avec blocs d'étalement/désétalement utilisant des séquences à distribution gaussienne ; métriques de décision douce, support AFC, seuil adaptatif et acquisition grossière à fine. Le schéma GDSS suit Shakeel et al., Gaussian-Distributed Spread-Spectrum for Covert Communications, Sensors 2023, 23(8), 4081 ; doi:10.3390/s23084081. (Voir Guide des blocs GDSS, Blocs GRC)
  • Modulations analogiques : AM, SSB (USB/LSB), NBFM, WBFM
    • AM : modulateur/démodulateur d'amplitude (voir Bloc GRC, Exemples)
    • SSB : modulateur/démodulateur à bande latérale unique (USB/LSB) (voir Bloc GRC, Exemples)
    • NBFM : modulateur/démodulateur de fréquence à bande étroite (voir Bloc GRC, Exemples)
    • WBFM : modulateur/démodulateur de fréquence à large bande (voir Bloc GRC, Démodulateur WBFM)
  • Voix numérique : FreeDV, M17, DMR (Tier I/II/III), dPMR, NXDN, MMDVM
    • FreeDV : codec vocal numérique FreeDV (voir Exemples)
    • M17 : protocole vocal numérique M17 avec support des couches physique et protocole (voir Blocs GRC, Exemples)
    • DMR : modulateur/démodulateur radio mobile numérique (Tier I/II/III) (voir Blocs GRC, Exemples)
    • dPMR : radio mobile privée numérique (ETSI TS 102 658), 2400 bauds, espacement de canal 6,25 kHz (voir Bloc GRC, Exemples)
    • NXDN : bande étroite numérique de nouvelle génération, supporte les modes NXDN48 (2400 bauds) et NXDN96 (4800 bauds) (voir Bloc GRC, Exemples)
    • Protocoles MMDVM : POCSAG, D-STAR, YSF (Yaesu System Fusion), P25 (Phase 1 C4FM)
      • POCSAG : protocole de messagerie (ITU-R M.584-2) avec FEC BCH(31,21), supporte 512/1200/2400 bps (voir Blocs GRC, Exemples)
      • D-STAR : technologies numériques intelligentes pour la radio amateur avec FEC Golay(24,12) (voir Blocs GRC, Exemples)
      • YSF : protocole C4FM avec FEC Golay(20,8) et Golay(23,12) (voir Blocs GRC, Exemples)
      • P25 : Project 25 Phase 1 C4FM avec codage BCH(63,16) et Trellis (voir Blocs GRC, Exemples)
  • Routage de mode gr-ident (optionnel, nécessite gr-ident ou un préambule PUB compatible) : s'abonner au mode_id décodé sur tcp://127.0.0.1:5560 et sélectionner la famille de blocs démod/mod correspondante (voir GRIDENT_ZMQ.md, CODE_MAP.md)
    • grident_preamble_sub : souscription ZMQ au préambule PUB de gr-ident (nécessite libzmq)
    • grident_mode_control : analyser le JSON, publier demod_block / mod_block sur le port de message route_out
  • Blocs de support : source/puits audio, RSSI, FFT, déframeur, CESSB, déframeur M17, source/puits MMDVM, clipper, stretcher, rafales inactives nulles (zero idle bursts) (voir Bloc GRC)
  • Blocs FEC : correction d'erreur directe avec codeur/décodeur LDPC à décision douce et entrelaceur de blocs
    • Codeur/Décodeur LDPC : supporte les codes LDPC réguliers et irréguliers
    • Taux de code configurables : 1/2, 2/3, 3/4, ou personnalisé
    • Longueurs de bloc configurables : 576, 1152, 2304 bits, ou personnalisé
    • Sélection automatique : sélectionne automatiquement le meilleur code correspondant parmi les fichiers AList disponibles
    • Voir Blocs GRC
    • Entrelaceur (rafale HF) : entrelaceur de blocs pour atténuer les erreurs en rafale sur les canaux HF ; répartit les erreurs en rafale sur les positions de symbole pour de meilleures performances FEC (voir Bloc GRC)
  • Blocs DSSS : étaleur/désétaleur amélioré avec génération de séquence PN, récupération de synchronisation, acquisition, support de décision douce, AFC, seuil adaptatif et recherche de code grossière à fine (voir Guide des blocs DSSS, Blocs GRC)
  • Blocs DSSS-CDMA : émetteur et récepteur CDMA multi-utilisateur avec facteurs d'étalement configurables, support des codes de Gold et estimation des interférences multi-utilisateur (voir Blocs GRC)
  • Blocs GDSS : étaleur et désétaleur à spectre étalé à distribution gaussienne avec décision douce, AFC, seuil adaptatif et acquisition grossière à fine. GDSS est basé sur Shakeel et al., Sensors 2023, doi:10.3390/s23084081. (Voir Guide des blocs GDSS, Blocs GRC)
  • Étaleur GDSS / Désétaleur GDSS