
Remote SDR V2 est un ensemble hardware et software pour réaliser un émetteur / récepteur radio à base de SDR (Software Design Radio) pilotable à distance par le web. Pour une introduction à Remote SDR V2 voir ici.
Remote SDR V2, tourne pour la partie traitement du signal sur un Orange Pi et sur un Raspberry Pi 4 depuis la version 2.4. La visualisation dans une page web tourne sur un ordinateur classique (PC, Mac etc..). Les technologies employées sont diverses comme :
– DEBIAN, ARMBIAN ou Raspberry PI OS pour le système
– Python / GNURADIO pour la partie traitement du signal amont
– HTML / Javascript pour le traitement du signal aval et la visualisation.
Le récepteur

L’Orange/Raspberry PI pilote le SDR et effectue sur les signaux I et Q fourni par lui, une transformĂ©e de Fourier (FFT) pour analyser le spectre sur 2048 points autour de la frĂ©quence centrale de rĂ©ception. En parallèle dans la bande de rĂ©ception du SDR (1 ou 2 MHz), on extrait une voie audio dĂ©modulĂ©e en AM, NBFM, WBFM ou SSB. Le spectre sur 2048 points est envoyĂ© 5 fois par seconde Ă l’ordinateur en charge de la visualisation Ă distance dans une page web. La voie audio Ă©chantillonnĂ©e Ă 10kHz (ce qui est suffisant pour de la voix) est envoyĂ©e au mème ordinateur pour diffusion en analogique. Le traitement du signal dans l’Orange Pi est modĂ©lisĂ© Ă l’aide de l’outil graphique très puissant GNU-Radio Companion 3.7 qui gĂ©nère automatiquement le code C et Python 2.
Pour avoir du dĂ©tail sur le traitement du signal, lisez l’article suivant:
https://f1atb.fr/index.php/fr/2020/06/20/recepteur-blu-distant/
L’Ă©metteur

Depuis la page web de l’ordinateur distant, on dĂ©finit la frĂ©quence d’Ă©mission, le type et le taux de modulation (NBFM, USB, LSB). Le signal du microphone est Ă©chantillonnĂ© Ă 10 kHz puis envoyĂ© Ă l’Orange Pi en charge de l’Ă©mission qui passe le signal modulĂ© au SDR.
Pour avoir du dĂ©tail sur le traitement du signal, lisez l’article suivant:
https://f1atb.fr/index.php/fr/2020/06/23/emetteur-blu-distant/
Le Réseau
L’Ă©change entre le ou les Orange Pi et l’ordinateur de visualisation distant s’effectue par le rĂ©seau local ethernet ou WIFI, voire internet. Cette architecture avec la partie principale du traitement effectuĂ© au bas de l’antenne permet de rĂ©duire par 100 environ le dĂ©bit. Le dĂ©bit en entrĂ©e / sortie d’un SDR est de l’ordre de 10 Mo/s. Le dĂ©bit en entrĂ©e/sortie des Oranges Pi est infĂ©rieur Ă 100Ko /s . Ce qui facilite le transport jusqu’Ă l’ordinateur distant qui n’a besoin d’aucune installation logiciel dĂ©diĂ©e.
L’Ordinateur Distant

L’ordinateur distant pour piloter l’Ă©metteur / rĂ©cepteur n’utilise qu’un navigateur web comme Chrome ou Edge. Il effectue un peu de traitement du signal en Javascript (filtrage et FFT sur l’audio) et de la visualisation en temps rĂ©el. Une seule contrainte, comme on utilise le micro et que l’on ne travaille pas en mode sĂ©curisĂ© https, il faut paramĂ©trer dans le navigateur l’autorisation d’accès (voir les procĂ©dures d’installation de Remote SDR V2).
Les fichiers
L’ensemble des fichiers et dossiers se trouvent dans le dossier du serveur Apache /var/www/html. Si l’on utilise 2 Oranges Pi, la structure est la mĂŞme et l’on s’adresse Ă l’un des Oranges Pi Ă l’adresse : http://<ip orange-pi>

3D et build
Dossiers oĂą se trouvent les fichiers de la modĂ©lisation 3D du pingouin linux de la page d’accueil.
cgi-bin
Fichiers appelĂ©s par le serveur apache pour les pages dynamiques comme la selection de la demodulation du rĂ©cepteur, la modulation de l’Ă©metteur, le test de la pin26 (pin 10 pour un orange pi zero 2) de l’orange pi one plus (voir protection Ă©mission).
css
Fichiers de style des pages web
JS
Fichiers javascript importants comme remote_sdr.js qui gère principalement la rĂ©ception , remote_TX.js qui gère l’Ă©mission et tools.js qui gère les fonctions outillages de la page tools.
log
Quelques logs que l’on retrouve dans la page tools.
PY
Tous les fichiers source et python 2 du traitement de signal. Chaque type de modulation a un fichier GNU Radio correspondant qui est lancé suivant la modulation choisie.
configurationRX.js
On peut voir son contenu dans la page tools mais il faut l’adapter avec un Ă©diteur de texte Ă sa propre configuration du système et ses prĂ©fĂ©rences.
configurationTX.js
PrĂ©fĂ©rences pour l’Ă©metteur Ă adapter.
index.html
Page d’accueil avec le pingouin TUX.
remote_sdr.html
Page principale de Remote SDR
start_radio_manager_at_boot.py
Fichier lancĂ© au boot de l’orange pi qui gère le lancement des diffĂ©rents scripts python propre Ă chaque modulation. Il est appelĂ© par une tâche cron. Dans un terminal faire : crontab -e et mettre la ligne suivante en bas de fichier.
@reboot python3 /var/www/html/start_radio_manager_at_boot.py
tools.html
Fichier donnant accès à différents outils pour contrôler le bon fonctionnement.
Articles sur Remote SDR
- Remote SDR V5 – Installation image Raspberry 4B ou Orange Pi
- Remote SDR v5 – Installation manuelle
- Remote SDR v5
- Écoute Satellite QO-100 en direct
- RTTY
- Dépannage
- Émetteur – RĂ©cepteur pour QO-100
- SSTV
- WSJT-X – FT8
- Omnirig – Remote SDR
- Ports de communication
- Générateurs de tonalités
- Positionnement sorties GPIO
- Scanning en réception
- Gains et Dynamiques
- Gestion des fréquences
- Lancement de Remote SDR
- Refroidissement CPU
- Autorisation traitement audio et microphone
- Configurations
- Caractéristiques
- Introduction Ă Remote SDR
- Remote SDR – Canaux Audio
- CW avec Remote SDR
- Bouton Rotatif et Manipulateur Morse pour Remote SDR
- VHF et UHF NBFM Transceiver
- Remote SDR v4
- Gpredict – Remote SDR
- Remote SDR V4 – Installation image Raspberry 4B ou Orange Pi
- Remote SDR v4 – Installation manuelle
- SA818 / RTL-SDR
- Remote SDR – Exemples de RĂ©alisations
- QSO via QO-100 avec un smartphone
- Remote SDR V2 – Architecture Logiciel
- Remote SDR V1 – Approvisionnements
- Remote SDR V1 – Interface Homme Machine
- Remote SDR V1 – Traitement du Signal
- Client Web vers GNU Radio
- GNU Radio vers client Web
- Emetteur BLU distant
- Récepteur BLU distant
- GPIO de l’Orange PI One Plus H6
- Émetteur et rĂ©cepteur vers Q0-100 avec 2 SDR – Remote SDR V1
- Installation TCXO sur un HackRF
Bonjour. Merci pour ce travail prĂ©cis et dĂ©taillĂ© très instructif. La conception qui me pose le plus de problème est l’affichage d’un spectre , Ă partir de donnĂ©es actualisĂ©es. En navigant dans votre code source, j’ai du mal a comprendre. Quel framework , ou outils clefs, utilisez vous pour afficher le spectre ?
Merci. F4BAD
Pour afficher le spectre en amplitude, j’utilise un svg (scalable vector graphic).
Vers la ligne 420 de remote_sdr.js
var S=… //SVG type of drawing
Pour l’affichage du waterfall, j’utilise la technique du canvas , vers la ligne 550.
Il y en a 2 pour pouvoir faire le défilement vertical.
73
F1ATB
Merci AndrĂ©. J’ai localisĂ© la fonction trace spectre, et trace waterfall. je dois creuser encore car ce n’est pas un petit projet. Si besoin de matĂ©riel coax, sma, MMIC, Ă prix OM ou ulta-reduc, avec mesures possibles , me contacter f4bad free fr.
73
Bonjour André,
serait-il possible de prévoir un bouton « shutdown » des orange Pi/raspberry dans le menu TOOLS ?
ce serait bien pratique lorsque que l’on coupe l’alimentation de la station, et ça Ă©viterait d’avoir a reflasher les SD cards en cas de mauvaise manip…
73’s de Jacques – F1APY
Jacques
Bonne suggestion, je met cela dans ma liste. Je pense que ce sera OK pour la prochaine version.
73
F1ATB
André
Le bouton Shutdown est disponible dans la nouvelle version 2.5
Hi André ,
super ! merci beaucoup
73’s dde Jacques – F1APY
Bonjour André
Comment est il possible de rajouter une « authentification basique » sur la version 5 qui a substituĂ© NodeJS Ă Apache pour le serveur Web (si j’ai bine tout lu !) ?
73 de Jean Marc
Excusez-moi, je ne comprends pas bien votre question. Une authentification pourquoi?
Un authentification pour ajouter une couche de sĂ©curitĂ© Ă l’accès Ă Remote SDR. Actuellement seul le code « émission » protège certaines fonctions mais on est dĂ©jĂ dans l’appli donc pas Ă l’abri de l’utilisation d’une faille par exemple. l’appli a des droits d’Ă©xecution de type admin sur le raspberry, donc on n’est pas Ă l’abri d’une utilisation malveillante. Mais peut ĂŞtre suis je un peu parano ou n’ai je pas tout compris du fonctionnement de Remote SDR …
OK, je comprends votre point de vue, mais pour l’instant pas de protection additionnelle.