VHF ou UHF NBFM Transceiver
RTL-SDR est une solution de rĂ©cepteur Ă bas coĂ»t, couvrant les VHF / UHF et utilisant la technologie SDR (radio logicielle). SA818 est une solution Ă©galement Ă bas coĂ»t, d’Ă©metteur / rĂ©cepteur NBFM. Pourquoi ne pas marier les 2 pour crĂ©er un Ă©metteur / rĂ©cepteur s’apparentant Ă un SDR gĂ©rĂ© par un nano-ordinateur ou SBC (Single Board Computer). La visualisation et l’Ă©coute se faisant Ă distance via un navigateur Web sur PC, tablette ou smartphone Ă l’aide de l’application « Remote SDR ».
Notez l’existence d’un projet similaire traitant les deux bandes VHF et UHF.

Caractéristiques
Récepteur
- Matériel : RTL-SDR ( exemple : NESDR SMArt de Nooelec)
- Fréquence : VHF bande amateur des 2 m ou UHF bande des 70 cm
- Bande spectrale traitée : 2 MHz
- Audio : 1 voie
- Démodulation : NBFM, WBFM, AM et SSB
Émetteur
- Matériel : SA818 de G-NiceRF(Aliexpress)
- Fréquence : VHF bande amateur des 2 m ou UHF bande des 70 cm
- Puissance : 1 W
- Audio : 1 voie
- Modulation : NBFM
Traitement
- Matériel : Orange Pi Zero 2
- Logiciel : Remote SDR (version v3 minimum)
- Liaison : Ethernet cablé ou WIFI
- Affichage et Audio : page WEB sur PC, tablette ou smartphone
Réalisation

Chaîne de réception
Le signal d’antenne passe par un relais pour rejoindre le rĂ©cepteur RTL-SDR. DiffĂ©rents modèles existent sur le marchĂ©, celui de Nooelec est plus soignĂ© cotĂ© quartz, avec un TCXO permettant d’avoir un peu de prĂ©cision et stabilitĂ© en frĂ©quence. Cela reste un simple SDR codant les signaux sur 8 bits, ce qui limite la dynamique des signaux traitĂ©s. Mais il est suffisant pour un simple transceiver. Il permet de numĂ©riser une bande de 2 MHz de large, ce qui est parfait pour couvrir d’un Ĺ“il toute la bande des 2 m. La sortie se fait par l’USB directement connectĂ© Ă l’Orange Pi Zero 2 qui se charge du traitement du signal.
ChaĂ®ne d’Ă©mission
Pour ce projet, on utilise uniquement la partie d’Ă©mission d’un module SA818 de G-NiceRF. Il est disponible en 2 versions, SA818-V pour couvrir les VHF et SA818-U pour couvrir les UHF. Pour moins de 20€, on peut en acheter un minimum de 2 chez Aliexpress.
Le SA818 est connectĂ© Ă l’Orange Pi Zero 2 qui lui fournit la frĂ©quence de travail souhaitĂ©e par l’intermĂ©diaire d’un bus sĂ©rie. La sortie analogique ‘Line-Out’ de l’Orange Pi Zero est connectĂ©e Ă l’entrĂ©e micro du SA818 par l’intermĂ©diaire d’une rĂ©sistance de 640 kΩ et d’une capacitĂ© de 1 ÎĽF pour s’isoler du continu. La sortie antenne est connectĂ©e au relais de commutation d’antenne. Un zĂ©ro sur la pin 5 du SA818 permet de commander sa mise en Ă©mission.


Pour s’isoler du bruit Ă©lectrique, gĂ©nĂ©rĂ© par l’Orange Pi, pensez Ă bien dĂ©coupler l’alimentation avec des condensateurs de plus de 100 ÎĽF et des condensateurs de 10 nF pour absorber la HF et les pics de tension. Un mauvais dĂ©couplage se retrouve en bruit de fond sur l’audio de l’Ă©metteur.
Le SA818 a tendance Ă chauffer, surtout si on l’alimente en 5V. Il accepte des tensions plus faibles. Sur la partie dorĂ©e près de l’antenne, on peut y rajouter un radiateur.
Traitement
Un Orange Pi Zero 2 se charge du traitement du signal Ă la rĂ©ception et l’Ă©mission. C’est un processeur 4 cĹ“urs de 64 bits avec des entrĂ©es/sorties analogiques audio et une connexion Ethernet par câble ou Wifi. Il exĂ©cute l’application Remote SDR (version V3 minimum), commune Ă d’autres SDR. Un serveur Web fourni la page de visualisation, la sortie audio au casque ou hautparleur et l’entrĂ©e micro sur un PC, une tablette ou un smartphone.
La rĂ©ception des donnĂ©es I et Q du RTL-SDR Ă©chantillonnĂ© Ă 2.4MHz se fait par le port USB de l’Orange Pi.
La programmation de la frĂ©quence d’Ă©mission du SA818 s’effectue via le port sĂ©rie UART5 de l’Orange Pi. Il n’est pas possible de changer de frĂ©quence pendant la phase d’Ă©mission.
Commande d’Ă©mission
La commande de passage en Ă©mission ne se fait pas par un simple changement d’Ă©tat d’une sortie du GPIO de l’Orange Pi pour des raisons de sĂ©curitĂ©. En cas de crash du processeur, on ne contrĂ´le pas l’Ă©tat de la sortie et l’Ă©metteur risquerait d’ĂŞtre bloquĂ© en Ă©mission.
Le client web envoi un signal audio du microphone Ă©chantillonnĂ© Ă 10 kHz et codĂ© sur 2 octets. Ces 2*10000 Ă©chantillons, par seconde, sont envoyĂ©s par paquet de 512. Cela fait environ 40 paquets par seconde envoyĂ©s uniquement en phase d’Ă©mission. Ă€ chaque arrivĂ©e d’un paquet, la pin 26 change d’Ă©tat. Cela va nous gĂ©nĂ©rer un signal carrĂ©, ici en rouge, de 20Hz ou d’une pĂ©riode de 50ms.

Ce signal carrĂ© passe par un condensateur de 4.7 ÎĽF et attaque la base d’un transistor de commutation 2N2222 et d’une diode 1n4148. Ă€ chaque front montant, le 2n2222 conduit et la tension collecteur tombe autour de 0v. Elle est maintenue basse, grâce au condensateur de 47 ÎĽF, après le front descendant qui bloque le 2n2222. Au collecteur est connectĂ© un relais qui bascule le signal d’antenne vers le SA818 en prĂ©sence d’un zĂ©ro en entrĂ©e. Ce mĂŞme signal par l’intermĂ©diaire d’une diode 1n4148 est envoyĂ© sur la pin 5 du SA818 pour le faire passer en Ă©mission. Un condensateur de 10nF aide Ă le maintenir bas. Cette diode sert de protection pour ne pas dĂ©passer les 3v3 en entrĂ©e. Ă€ l’arrĂŞt de l’Ă©mission ou en cas de crash, le signal en sortie 26 du GPIO reste bloquĂ© Ă 0 ou 1. Le signal sur le collecteur va remonter Ă 5v et le relais passe en rĂ©ception. Le temps de commutation est donnĂ©e par le condensateur de 47 ÎĽF alimentĂ© par la rĂ©sistance de 20 kΩ et le courant de commande du relais. En fonction du relais utilisĂ©, il faudra peut-ĂŞtre ajuster la valeur de cette rĂ©sistance pour maintenir un 0 pendant les 50 ms et revenir en rĂ©ception rapidement Ă l’arrĂŞt de la trame carrĂ©e.
Il est possible de remplacer ce schéma par un monostable type CD4538 avec une constante de temps supérieure à 100ms.

Branchement du SA818
Les 2 modèles, le VHF ou l’UHF ont le mĂŞme branchement.

Application Remote SDR pour SA818
L’application « Remote SDR » traite diffĂ©rents SDR en Ă©mission comme le HackRF ou l’Adalm Pluto. Dans le cas du SA818, il y a quelques spĂ©cificitĂ©s pour s’adapter Ă ses interfaces.
Programmation frĂ©quence d’Ă©mission
C’est une liaison sĂ©rie Ă 9600 baud, connectĂ© sur le port Uart5 de l’Orange Pi Zero 2. Un programme python reçoit l’ordre de frĂ©quence du client web par la technologie websocket. Cet ordre est adaptĂ© au format nĂ©cessaire au SA818. L’application python utilise la bibliothèque pyserial-asyncio installable par les commandes:
apt install python3-pip
pip3 install pyserial-asyncio
Les ports série disponibles sur la carte sont donnés par:
dmesg | grep tty
que l’on retrouve dans /dev/ttys5 …
Code CTCSS
Le code CTCSS utile Ă l’ouverture de certains relais, est gĂ©nĂ©rĂ© par le SA818 qui reçoit, par le port sĂ©rie, un numĂ©ro de canal entre 1 et 38 qui correspond Ă la frĂ©quence rentrĂ©e dans le tableau de configurationTX.js. Ce code CTCSS n’est pas gĂ©nĂ©rĂ© directement dans le signal audio au niveau du client web comme pour les autres SDR, car le SA818 coupe tous les signaux sous 300Hz.
Modulation par le signal audio du microphone
Le signal du microphone est numĂ©risĂ© au niveau du PC par le navigateur Web, puis envoyĂ© Ă l’Orange Pi qui le remet sous forme analogique sur les 2 sorties Line Out. Un programme en python construit avec l’application Gnu Radio Companion effectue la conversion digital vers analogique. Le niveau de sortie analogique est dĂ©fini par le mĂ©langeur audio du système. Son niveau est dĂ©fini Ă chaque lancement de l’application dans le fichier asound.state dans le dossier PY. Si l’on souhaite modifier le niveau de modulation, il faut ouvrir dans une fenĂŞtre terminal, le mĂ©langeur audio avec :
alsamixer

Ajuster Ă l’aide des flèches le niveau de sortie ‘Line Out’ pour ajuster le taux de modulation en NBFM. Une fois le bon rĂ©glage trouvĂ©, le sauvegardĂ© dans le fichier asound.state avec la commande :
alsactl --file /var/www/html/PY/asound.state store
Si l’on souhaite tester la sortie audio avec un fichier wav:
aplay -D hw:0,0 test.wav
Remote SDR
Remote SDR, s’installe sur l’Orange Pi Zero 2. L’application comprend le traitement du signal et le serveur web qui fourni la page au navigateur web de contrĂ´le de l’Ă©metteur/rĂ©cepteur. L’installation la plus simple consiste Ă tĂ©lĂ©charger sur Github, l’image de Remote SDR (au minimum version 3) pour Orange Pi Zero 2 qui comprend l’OS Armbian Bullseye et toutes les bibliothèques nĂ©cessaires.

Attention la capacitĂ© Ă piloter un SA818 n’est disponible que pour les Orange Pi Zero 2. A ne pas confondre avec l’Orange Pi Zero qui est un processeur 32 bits. Les Raspberry PI 4, utilisĂ©s avec d’autres SDR, n’ayant pas directement une sortie analogique, ne peuvent pas s’interfacer au SA818.
Amplification du TX
La sortie du SA818 fourni environ 1 w de signal. Si l’on souhaite plus de puissance, il existe des amplificateurs sur le marchĂ©. Pensez Ă rajouter un filtrage passe bande pour s’affranchir de tout signal parasite qui pourrait se trouver en sortie du SA818.
Articles sur l’Orange Pi ZĂ©ro 2
- Remote SDR V5 – Installation image Raspberry 4B ou Orange Pi
- Remote SDR v5 – Installation manuelle
- Remote SDR v5
- Watchdog (chien de garde)
- Positionnement sorties GPIO
- Refroidissement CPU
- Configurations
- Caractéristiques
- VHF et UHF NBFM Transceiver
- Remote SDR v4
- Remote SDR V4 – Installation image Raspberry 4B ou Orange Pi
- Remote SDR v4 – Installation manuelle
- SA818 / RTL-SDR
- Mise en route Orange Pi Zero 2 – Armbian Bullseye
- Remote SDR V2 – Architecture Logiciel
- GPIO de l’Orange PI Zero 2 H616
- Mise en route Orange Pi Zero 2 – Debian Buster
- Remote SDR v2 – Installation image Orange Pi One Plus ou Orange Pi Zero 2
- Remote SDR v2 – Installation manuelle
- Remote SDR v2
- Remote SDR V1 – Approvisionnements
- Emetteur BLU distant
Comme d’habitude, très beau travail, AndrĂ©!
Il ne manque plus que la possibilitĂ© d’envoyer du 1750Hz pour l’ouverture des relais….
Et puis, une déclinaison possible de remSDR serait la connexion directe sur un talkie walkie du type UVR5 par exemple. Ce serait très utile dans le cadre de besoins ephémères comme les réseaux de sécurité (ADRASEC)
encore bravo pour votre travail!
F1FHK
Pour le 1750Hz, je pensais Ă tort qu’il n’y avait plus de relais de ce type. Après une recherche Google, j’en ai trouvĂ©. Je le note dans ma liste d’amĂ©liorations pour une prochaine version.
Pour la liaison avec un UV5R, si on l’utilise en Ă©mission et rĂ©ception, Remote sdr n’a plus d’intĂ©rĂŞt, car on perd la vue panoramique sur 2MHz. C’est quelque chose de plus simple qu’il faudrait faire.
73
André
Oui AndrĂ© vous avez raison. Mon idĂ©e Ă©tait juste la perspective de dĂ©ploiement d’un rĂ©seau d’urgence dans un temps très court. Pour celĂ seules les fonctions « 2 way remote audio et PTT sont nĂ©cessaires, avec en option le contrĂ´le ( pour le SA818) uniquement, par son interface UART ( frĂ©quence, subtone, squelch).
73’s
F1FHK