Technique SDR 3

J’ai écrit cette suite d’articles dans un but pédagogique afin d’aider tous ceux qui, comme moi, souhaitaient découvrir, en les pratiquant, les techniques de réception SDR. Les spécialistes du domaine trouveront sans doute quelques approximations et erreurs dans mes explications. J’espère qu’ils ne m’en voudront pas et qu’ils me contacteront pour que nous les rectifiions ensemble par la suite. Je parle aussi, ici ou là, de difficultés ou de bugs, si certains les ont surmontés, qu’ils me contactent pour que nous mettions à jour ce document. S’ils ont aussi parfois de meilleures solutions d’installation ou d’utilisation, qu’ils n’hésitent pas à me l’écrire.

CONTACTEZ-MOI à l’adresse : f80543@gmail.com

Introduction

Avec ce troisième article, nous allons, pour un temps, nous éloigner des ordinateurs sous Windows pour entrer dans le monde des nano-ordinateurs Raspberry Pi et de leur système d’exploitation éponyme.
Pour quelqu’un ayant depuis toujours pratiqué l’environnement Windows, l’apprentissage d’un autre système d’exploitation, basé sur une distribution Linux, n’a pas toujours été facile. Voilà pourquoi les deux tiers de cet article traiteront de la mise en marche de la carte Raspberry Pi, sachant que nous nous rattraperons lors de nos prochains rendez-vous, la tête dans les nuages, à l’écoute des radiosondes et du trafic aérien.

Technique SDR
Raspberry Pi 4 (source https://shop.mchobby.be/fr/)

Quoi décoder ?

Voici, mis à jour, le tableau présentant un aperçu des décodages traités dans cette série d’articles. Les cases vierges dans la colonne signifient que la réception sera traitée dans les mois qui viennent.

Technique SDR

La Raspberry Pi et ses accessoires

Nous allons maintenant, et pour quelque temps, quitter le mode du PC et l’environnement Windows pour nous intéresser aux nano-ordinateurs Raspberry Pi et à leur système d’exploitation éponyme. Après avoir tenté d’exploiter une carte Raspberry Pi 2 Modèle B retrouvée au fond d’un tiroir, j’ai dû me décider, à l’occasion de l’écriture de ce tutoriel, à passer à sa nouvelle version : la Raspberry Pi 4 B avec 4Go de RAM.

Technique SDR
Comparatif des modèles de Raspberry Pi (source : https://socialcompare.com/fr/comparison/raspberrypi-models-comparison)

Lors d’un achat en kit (exemple : https://www.amazon.fr/gp/product/B07WBWK17Y/ref=ppx_yo_dt_b_asin_title_o00_s00), la plupart des accessoires indispensables sont fournis.
Dans le cas contraire, il faudra, en premier lieu, se procurer une alimentation secteur équipée du bon connecteur (USB-Type C pour la PI 4). Il est important de la choisir suffisamment puissante avec un courant disponible supérieur ou égal à 3 ampères (sous 5,1 volts). Il pourra être utile de l’équiper d’un interrupteur Marche/Arrêt (par exemple : https://www.amazon.fr/LABISTS-Alimentation-Raspberry-Interrupteur-Adaptateur/dp/B07W7Y8FVY/ref=sr_1_3

Il en est de même pour le stockage interne. Une carte MicroSD tient lieu et place de disque dur. Très sollicitée, elle doit être rapide et fiable afin de ne pas diminuer les performances globales. Les cartes de chez SanDisk ayant une vitesse de transfert allant jusqu’à 100Mo/s sont un bon choix.

Technique SDR         Technique SDR

Les 2 accessoires indispensables au fonctionnement d’une Raspberry Pi

Selon l’utilisation de la Raspberry Pi, il faut choisir une carte allant de 16 Go pour de la robotique jusqu’à 64 Go (voire 128Go) pour un système dédié au multimédia. Dans notre cas, j’ai choisi une carte 32Go, classe 10.

Technique SDR
Clavier sans fil avec trackpad (marque Riitek)

Alors que la Raspberry Pi 2 ne gérait pas le Wi-Fi, mais possédait un simple accès RJ45 pour une connexion internet filaire, les générations suivantes en sont équipées. Plus besoin donc d’acheter un dongle Wi-Fi.
Par facilité, le premier démarrage de la carte nécessite un écran avec entrée HDMI, un clavier ainsi qu'une souris. Parions que ceux de votre PC feront affaire. Nous verrons cependant plus tard dans ce document qu’il est aussi possible de s’en passer si l’on a pas peur d’une approche un peu plus technique.
Les utilisateurs souhaitant parfois utiliser la Raspberry Pi en mode autonome peuvent se tourner vers un clavier mieux adapté. Parmi ceux de la marque Riitek, le mini-clavier AZERTY sans fil RT-MWK01+ est disponible ici : http://www.riitek.eu/FR/Produits/RT-MWK01%2B_FR.html.

De même, en mode local et autonome, un mini-écran transportable comme celui de la marque Yadom peut s’avérer nécessaire. Mon choix s’est porté sur un écran LCD tactile 7 pouces HDMI 800x480 : https://yadom.fr/plateformes-de-developpement/raspberry-pi/ecrans.html et son support Kuman : https://www.amazon.fr/gp/product/B07K6GHJFH/ref=ppx_yo_dt_b_asin_title_o01_s00

Technique SDR                 Technique SDR

Écran tactile et son boitier (marques Yadom & Kuman)

Pour alimenter cet écran, j’ai préféré utiliser une seconde alimentation plutôt que de passer par le câble USB reliant ma carte à l’accès d’alimentation de l’écran.
Si l’on envisage de se déplacer avec sa Raspberry Pi, il faudra aussi se procurer une batterie externe. Pour vous aider dans votre choix, je vous conseille la lecture de cet article :  https://www.powerbankexpert.com/best-raspberry-pi-power-bank/

ATTENTION, avec les nouvelles cartes Raspberry Pi, la connectique a changé. Alors que les anciennes versions de cartes (V1 à V3) utilisaient un connecteur Micro USB, les versions 4 sont équipées d’un connecteur USB-Type C

Technique SDR

Mise en œuvre du système d’exploitation

Dans le cas d’un achat en kit (achat de l’ensemble Raspberry 4, chez Amazon/Labists), la carte MicroSD livrée contient une version du système d’exploitation Raspberry Pi OS. Elle peut donc être directement insérée dans son réceptacle. Dans le cas contraire, il faut préparer – depuis un ordinateur portable - le système d’exploitation à l’ aide de l’outil Pi Imager disponible ici : https://www.raspberrypi.org/downloads/. Dans ce cas, vous aurez alors besoin d’un lecteur/enregistreur de carte mémoire.

Pour réaliser cette tâche ainsi que celle de la première mise sous tension, je vous conseille vivement l’excellent tutoriel d’Anthony F4GOH/KF4GOH Ham Radio avec le Raspberry Pi disponible ici : https://publications.r-e-f.org/raspberry/.
Pour une approche plus technique vous pouvez aussi vous reporter sur la documentation de F4HXE : Installation pas à pas d’une carte Raspberry Pi pour les digimodes radioamateurs à l’adresse : https://f6kbg.r-e-f.org/techniques/electronique-informatique/174-installation-raspberry-pi3b-pour-digimodes

Des distributions Raspberry Pi OS (anciennement nommées Raspbian) dédiées à la pratique radio-amateur et aux modes numériques et contenant de nombreux logiciels préinstallés sont aussi disponibles sur Internet. Citons :

Installation avec écran et clavier dédiés

Ayant maintenant tous les équipements nécessaires au bon fonctionnement de l’ensemble, il faut les relier en terminant par la mise sous tension de l’alimentation 5 Volts de la Raspberry Pi.

Technique SDR
La Raspberry Pi 4 dans son environnement initial (source HAM RADIO AVEC LE RASPBERRY PI - https://publications.r-e-f.org/raspberry/)

Par défaut, la langue au démarrage est l'anglais, plusieurs fenêtres de configuration vont vous permettre de mettre à jour le système en le configurant en langue française. Ceci réalisé, en déplaçant la souris sur l’icône réseau (en bleu, en haut, à droite) prenez soin de déterminer les adresses IP que votre BOX a attribuée à votre carte (serveur DHCP) :
Pour ma part (Raspberry Pi V4) :

eth0 : 192.168.1.17/24 (liaison Ethernet, RJ45)
wlan0 : 192.168.1.12/24 (Wi-Fi),

Toujours en accord avec le tutoriel d’Anthony F4GOH (RPI partie 1-V1.3.pdf – page 10), activez SSH et VNC. Installez ensuite et configurez, sur votre PC, les 3 logiciels recommandés :

Jusqu’ici, le mini-clavier et l’écran 7 pouces étaient reliés à la carte. Nous allons maintenant pouvoir les retirer pour nous connecter à partir d’un PC.
À la première utilisation de VNC, si l’écran 7 pouces n’est plus branché, le message Impossible d’afficher le bureau actuellement se présente parfois sur la fenêtre d’accès à distance. Il faut alors ouvrir une session avec Putty pour lancer la console en SSH :

sudo raspi-config

Technique SDR
Menu principal de raspi-config

Dans le menu principal, choisissez :

2Display Options
D1 Resolution

Sélectionnez ensuite :

DMT Mode 82 1920x1080 60Hz 16 :9

Validez et acceptez le redémarrage.

Technique SDR

Technique SDR

Technique SDR

Technique SDR
Configuration de la résolution vidéo pour l’utilisation de VNC

Les premières connexions sans fil se feront sans doute sans problème. Mais au bout de quelques jours, les accès risquent de ne plus fonctionner car (via DHCP) la box Internet aura peut-être attribué une autre adresse IP. Il est donc préférable d’attribuer une IP fixe à notre accès Wi-Fi (wlan0).
Il faut, pour cela, modifier le fichier /etc/dhcpcd.conf en adaptant la configuration selon l’adresse IP fixe désirée. Dans mon cas, ma box délivrant des adresses dans la série 192.168.1.10 à 192.168.1.150, je décide d’attribuer à l’accès wlan0 l’adresse 192.168.1.161 :

sudo nano /etc/dhcpcd.conf

Technique SDR
Attribution d’une IP fixe (fichier /etc/dhcpcd.conf)

La sauvegarde du fichier se fera par <CTRL-O>, puis le retour en ligne de commande par <CTRL-X>.

Technique SDR
Adresse APIPA de ma carte

Jusqu’ici, l’accès Ethernet (Eth0) est relié à la box par un câble RJ45. Il est maintenant préférable d’établir une connexion directe entre la Raspberry Pi et le PC.
Pour poursuivre en ce sens, il faut arrêter le système (shutdown now), et relier directement la carte au PC à l’aide de ce même câble.
Après remise en marche et accès en Wi-Fi, on note, en passant la souris sur l’icône réseau, l’adresse IP qui a été attribuée, par défaut à ma carte, en l’absence de serveur DHCP.
Pour être certain de la constance de cette adresse, je l’inscris, à son tour, dans le fichier dhcpcd.conf

Technique SDR
Attribution en fixe de l’IP APIPA (fichier /etc/dhcpcd.conf)

En l’absence de connexion Wi-Fi, nous avons maintenant un accès stable via un câble RJ45.

Installation sans écran ni clavier

Pour mener à bien cette autre installation, j’ai utilisé, bien qu’incomplètes, les informations accessibles à la fois sur : https://raspberry-pi.fr/raspberry-pi-sans-ecran-sans-clavier/ et sur https://www.instructables.com/How-to-Setup-Raspberry-Pi-Without-Monitor-and-Keyb/.
Voici ci-dessous mon cheminement :

Le logiciel Raspberry Pi Imager étant maintenant disponible en version 1.6.2. (Juin 2021), j’ai utilisé cette nouvelle version en transférant sur ma carte MicroSD la version de Raspberry Pi OS (32-bit) du 7 mai 2021.

Technique SDR
À l’ouverture de Pi Imager v1.6.2

Après avoir fermé Pi Imager, j’ai créé, à l’aide de l’Explorateur de fichiers Windows un fichier vide du nom de ssh (sans extension) et je l’ai déposé sous la racine de la carte MicroSD créée précédemment.

Technique SDR
Création d’un fichier vide SSH dans la partition boot de la MicroSD

Lors du premier démarrage de la Pi, la présence de ce fichier activera le protocole de communication SSH.
La prochaine étape consiste à :

  • Insérer la carte MicroSD dans son emplacement, sous la carte Raspberry Pi,
  • Relier, à l’aide d’un câble RJ45, la carte au PC,
  • Mettre la Raspberry Pi sous tension et attendre une petite minute.

Ouvrir ensuite PuTTY sur le PC en utilisant comme nom d’hôte (Host Name) raspberrypi.local et comme Port, le 22.

Technique SDR
Logiciel PuTTY pour une première connexion à la Raspberry Pi

En cliquant sur Open, et après avoir accepté la connexion (fenêtre PuTTY Security Alert), il ne nous reste plus qu’à entrer le nom d’utilisateur et le mot de passe par défaut (pi / raspberry) pour accéder au système et poursuivre la configuration.

Technique SDR
Logiciel PuTTY - première connexion à la Raspberry Pi

Il faut tout d’abord modifier la langue de l’OS en utilisant l’utilitaire raspi-config (sudo raspi-config).
Dans le menu, choisissez :

5 Localisation Options
L1 Locale

Dans la nouvelle fenêtre, descendez jusqu’à la ligne fr_FR.UTF-8 UTF-8,
Appuyez sur ESPACE pour l’activer ; un astérisque apparaîtra pour valider le choix.
Appuyez sur TAB pour aller sur OK, et tapez ENTER.
Dans la nouvelle fenêtre intitulée Package configuration sélectionnez fr_FR.UTF-8, et tapez ENTER.
Après une quinzaine de secondes vous vous retrouverez sur le menu principal.
Revenez dans le menu de localisation pour modifier le pays à associer à notre future connexion sans fil :

5 Localisation Options
L4 WLAN Country

Choisissez la France et confirmer votre choix lorsqu’apparait une nouvelle fenêtre (le curseur étant sur OK, tapez ENTER).
À nouveau, revenez dans le menu de localisation pour ajuster le fuseau horaire :

5 Localisation Options
L2 Timezone

Confirmez par OK le choix Europe. Dans la nouvelle fenêtre, sélectionnez Paris et confirmez par OK.
Vérifiez ensuite si le système utilise bien toute la place disponible sur la carte. Choisissez pour cela :

6 Advanced Options
A1 Expand Filesystem

À l’apparition du message de confirmation, tapez sur OK
De retour dans le menu principal, activez maintenant VNC :

3 Interface Options
P3 VNC

À l’apparition du message d’invite confirmez par OK.
De retour sur le menu principal, positionnez-vous sur FINISH et taper ENTER pour forcer un redémarrage.

Technique SDR
Message PuTTY après la demande de redémarrage

Après être à nouveau entré dans l’utilitaire raspi-config, poursuivez les réglages en définissant un type d’écran compatible avec celui de votre PC :

2 Display Options
D1 Resolution

Sélectionnez ensuite :

DMT Mode 82 1920x1080 60Hz 16 :9

Il faut aussi régler la sortie son en la renvoyant vers la prise jack :
Dans le menu principal, choisissez :

1 System Options
S2 Audio

Sélectionnez :

1 Headphones

Une fois tous ces réglages effectués, il est maintenant possible d’utiliser VNC en indiquant dans la fenêtre VNC Server le nom d’hôte raspberrypi.local.

Technique SDR    Technique SDR
VNC – Première connexion à la Raspberry Pi

Après indication du nom d’utilisateur et du mot de passe par défaut (pi / raspberry), nous voilà enfin en mode graphique. Nous allons maintenant terminer la configuration système. Pensez-en tout premier lieu à noter l’adresse IP de votre carte telle qu’elle apparait en bas à droite de la fenêtre de bienvenue.

Technique SDR
Fenêtre de bienvenue avec adresse IP

Ensuite :

  • Cliquez sur Next,
  • Confirmez le choix Pays (France / French / Paris) et la non utilisation des claviers Anglais ou US,
  • Changez le mot de passe,
  • Confirmez le setup de l’écran,
  • Ignorez la configuration Wi-Fi (choix SKIP),
  • Ignorez la proposition de mise à jour (choix SKIP),
  • Terminez en cliquant sur DONE,
  • Redémarrez la carte et reconnectez-vous.

Il nous reste encore quelques derniers réglages.

Technique SDR

(Capture écran : Choix de l’écran du bureau virtuel)

Sur notre écran PC, la taille réduite du bureau virtuel est très vite pénalisante. Comme nous l’avons déjà indiqué, il est possible de l’étendre avec l’utilitaire Screen Configuration (via le choix Préférences du menu des applications - Framboise).
Côté réseau, il faut maintenant activer la liaison Wi-Fi en revenant, à nouveau, vers l’utilitaire raspi-config (sudo raspi-config).
Dans le menu, choisissez :

1 System Options
S1 Wireless LAN

Entrez le SSID de votre réseau Wi-Fi et son mot de passe. Quelques secondes après avoir quitté l’outil, le symbole réseau apparait près de l’horloge. Vous êtes connecté.
Il ne nous reste plus maintenant qu’à définir des IP fixes en éditant et modifiant le fichier /etc/dhcpcd.conf comme nous l’avions fait précédemment.

Approche système

Voici maintenant quelques commandes qui pourront vous être utiles, si comme moi, vous découvrez le monde de la Raspberry Pi en même temps que celui du SDR.

Vérification de l’espace attribué au système

La taille de l’espace attribué au système sur la carte MicroSD est obtenu via la commande :

df -h

Technique SDR
Résultat de la commande df -h

Ici le système de fichier a une taille de 29 Go, ce qui est correct pour une carte MicroSD de 32 Go. Si cette taille est bien moindre (environ 2Go) il faut allouer au système l’espace laissé inutilisé à l’aide de l’utilitaire de configuration :

sudo raspi-config

Choisir :

6 Advanced Options
A1 Expand Filesystem

En retour nous recevons un message de validation :

Technique SDR
Message après ajustement de l’espace disponible (Expand Filesystem)

Mises à jour des dépôts et des versions

Les deux commandes suivantes sont à exécuter régulièrement :

sudo apt-get update
sudo apt-get upgrade

Connaitre sa version de Raspbian

Pour trouver la version de Raspbian, il suffit de saisir la commande suivante :

cat /etc/os-release

Technique SDR
Voir sa version système sous Raspbian OS

Connaitre ses versions de Python

Les commandes suivantes permettent de connaitre les versions installées du logiciel Python :

python --version
python3 --version

Pour ma part, le retour de ces requêtes a indiqué des versions 2.7.16 et 3.7.3

Rappel des dernières commandes

La commande history sans paramètre affiche la liste des dernières commandes entrées par un utilisateur (jusque 500 commandes par défaut).

Technique SDR
Commande history --help

Arrêt ou reboot du système

La syntaxe pour un redémarrage est :

reboot

Pour l’arrêt immédiat est :

shutdown -h now

Comment changer le mot de passe de l’utilisateur pi

Pour changer le mot de passe, deux possibilités s’offrent à vous.
Tout d’abord, en ligne de commande, lancez :

sudo raspi-config

Dans le menu principal, choisissez :

1 System Options
S3 Password

Suivez les instructions.
Avec le menu des applications, ouvrez :

Préférences
Configuration du Raspberry Pi

Suivez les instructions depuis l’onglet Système.
Et si par malheur, vous avez perdu votre mot de passe, suivez les instructions de la page :  https://www.framboise314.fr/a-laide-au-secours-jai-oublie-mon-mot-de-passe/

Vérifier la date et l’heure

timedatectl

Tous les détails relatifs aux réglages de l’heure sont disponibles ici :  https://raspberrytips.fr/regler-heure-raspberry-pi/

Lister, démarrer et arrêter les servicesservice --status-all

Cette instruction affiche la liste de tous les services. Le sigle + en première colonne signifie que le service est en train d'être exécuté tandis que le signe - indique qu'il est stoppé.
La commande suivante répertorie tous les services :

systemctl list-unit-files

Grace à l’utilitaire grep, il est possible de lister les services qui sont lancés au démarrage :

systemctl list-unit-files | grep enabled

La commande suivante permet de connaitre l’état d’un service particulier ; exemple :

  • systemctl is-active dump1090-mutability

Selon son état, la réponse sera active ou inactive.
Pour ceux qui souhaiteraient pouvoir modifier la configuration des services je conseille l’installation du paquet sysv-rc-conf, qui, offre une interface simple permettant de d’activer, modifier ou désactiver les services Pour cela, il suffit de se déplacer avec les flèches directionnelles et d'utiliser la touche ESPACE pour activer ou désactiver leurs runlevels.
La touche "Q" permet de quitter.

Technique SDR
sudo sysv-rc-conf

Trois possibilités s’offrent à vous pour arrêter ou redémarrer un service.

  • Avec l’utilitaire Systemd et sa commande systemctl. Exemple :
    • sudo systemctl stop gpsd.socket
    • sudo systemctl disable gpsd.socket
  • Avec la commande service. Exemple :
    • sudo service dump1090-fa stop
    • sudo service piaware stop
  • Via les scripts init. Exemple :
    • /etc/init.d/dump1090-mutability stop
    • /etc/init.d/dump1090-mutability start

Comment monter et démonter un disque USB

Après avoir connecté un disque ou une clé USB sur un port de la Raspberry Pi (si vous avez un modèle récent de carte, les ports bleus sont les plus rapides, car USB3), recherchons quelques informations sur cet élément :

sudo fdisk -l

Les dernières lignes affichées correspondent généralement à votre disque. Après vous en être assuré, par exemple en vérifiant la taille indiquée, notez le nom du disque pour le système (ici /dev/sdb1).

Technique SDR
Les dernières lignes de la commande sudo fdisk -l

Si ce n’est pas déjà fait, il faut maintenant créer un point de montage, en général dans /media ou /mnt :

cd /media
mkdir /media/data1

Il ne reste plus maintenant qu’à monter le disque :

sudo mount /dev/sdb1 /media/data1 -o uid=pi,gid=pi

Les options uid et gid permettent d’autoriser l’utilisateur pi à lire et écrire les fichiers du disque. Pour le vérifier, utilisez, par exemple, ces commandes :

ls -latr /media/data1
touch /media/data1/test

Notez aussi qu’il est possible de voir les partitions actives via la commande :

df -h

Pour démonter le disque avant de le retirer du port USB il faut taper les commandes suivantes :

sudo umount /dev/sda1
sudo udisksctl power-off -b /dev/sda1

Cette dernière commande (udisksctl) semble supprimer l’apparition du message d’alerte : drive was removed without ejecting Please use menu to eject before removal.

Gestion des menus

La gestion des menus se fait au travers de l’éditeur de menus :

  • Framboise (menu des applications)
  • Préférences
  • Main Menu Editor

Il est alors possible de créer, modifier ou supprimer l’accès à un sous-menu ou à une application.

Création d’un script exécutable et dépose sur le bureau

Pour faciliter le lancement d’une application, le passage par un script accessible depuis le bureau peut s’avérer utile. Vous en trouverez un exemple dans le paragraphe dédié à l’application ChaseMapper.

Duplication/sauvegarde de la carte microSD

Technique SDR            Technique SDR
Sauvegarde avec SD Card Copier                                                                 Lancement de SD Card Copier

Avant d’aller plus loin dans des installations de logiciels spécifiques, il est utile de sauvegarder le contenu de la carte MicroSD. Le plus simple est de la dupliquer sur un support identique. Pour cela, on insère un lecteur de carte USB équipé d’une autre MicroSD dans l’un des ports libres de la Raspberry Pi. On utilise ensuite l’utilitaire SD Card Copier disponible dans l’onglet Accessoires du menu des applications (Framboise).

Afficher la température du CPU

Technique SDR(capture : CPU à 46°)

Pour vérifier, en temps réel, la température du CPU, il est possible de l’afficher sur la barre de lancement des applications. Après avoir cliqué-droit sur celle-ci, sélectionnez Ajouter/Enlever des éléments au tableau de bord, puis l'onglet Appliquettes du tableau de bord.

Cliquez sur le bouton Ajouter pour ouvrir une nouvelle fenêtre. Une liste apparait avec l’ensemble des plugins disponibles. Parmi eux, choisissez Moniteur de température, cliquez par 2 fois sur Ajouter, et Fermer.

Technique SDR     Technique SDR
Affichage de la température du CPU

Coup d’œil sur la configuration

Voici, pour information, le retour de quelques commandes système montrant comment est configuré ma propre carte Raspberry Pi suite à la configuration sans écran ni clavier.
Notez plus bas, l’usage de la commande cat qui sert à lire le contenu d’un fichier texte pour l’afficher sur la console.

pi@raspberrypi:~ $ df -h

Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur
/dev/root           29G    8,9G   19G  32% /
devtmpfs           1,8G       0  1,8G   0% /dev
tmpfs              1,9G       0  1,9G   0% /dev/shm
tmpfs              1,9G    8,6M  1,9G   1% /run
tmpfs              5,0M    4,0K  5,0M   1% /run/lock
tmpfs              1,9G       0  1,9G   0% /sys/fs/cgroup
/dev/mmcblk0p1     253M     48M  205M  19% /boot
tmpfs              383M    4,0K  383M   1% /run/user/1000

pi@raspberrypi:~ $ ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 169.254.131.67  netmask 255.255.0.0  broadcast 169.254.255.255
inet6 fe80::bd4c:cf0f:29cc:b05c  prefixlen 64  scopeid 0x20<link>
ether dc:a6:32:f7:ea:be  txqueuelen 1000  (Ethernet)
RX packets 10523  bytes 1128496 (1.0 MiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 6702  bytes 6179231 (5.8 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

inet 127.0.0.1  netmask 255.0.0.0
inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Boucle locale)
RX packets 5  bytes 284 (284.0 B)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 5  bytes 284 (284.0 B)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

inet 192.168.1.161  netmask 255.255.255.0  broadcast 192.168.1.255
inet6 fe80::e4f3:5b70:9f12:cee9  prefixlen 64  scopeid 0x20<link>
inet6 2a01:cb18:834e:f300:f098:b4c2:6488:87ee  prefixlen 64  scopeid 0x0<global>
ether dc:a6:32:f7:ea:bf  txqueuelen 1000  (Ethernet)
RX packets 50265  bytes 11106342 (10.5 MiB)
RX errors 0  dropped 3180  overruns 0  frame 0
TX packets 13022  bytes 4778247 (4.5 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

pi@raspberrypi:~ $ cat /etc/wpa_supplicant/wpa_supplicant.conf

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FR

network={

ssid="Livebox-XXXX
psk="XXXXXXXXXXXXXXXXXXXXXXXXXX (On retrouve ici l’identifiant de ma box Internet et sa clé de sécurité)
key_mgmt=WPA-PSK

}

pi@raspberrypi:~ $ cat /etc/dhcpcd.conf

# A sample configuration for dhcpcd.
# See dhcpcd.conf(5) for details.

# Allow users of this group to interact with dhcpcd via the control socket.
#controlgroup wheel

# Inform the DHCP server of our hostname for DDNS.

hostname

# Use the hardware address of the interface for the Client ID.
clientid
# or
# Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361.
# Some non-RFC compliant DHCP servers do not reply with this set.
# In this case, comment out duid and enable clientid above.
#duid

# Persist interface configuration when dhcpcd exits.
persistent

# Rapid commit support.
# Safe to enable by default because it requires the equivalent option set
# on the server to actually work.
option rapid_commit

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
# Respect the network MTU. This is applied to DHCP routes.
option interface_mtu

# Most distributions have NTP support.
#option ntp_servers

# A ServerID is required by RFC2131.
require dhcp_server_identifier

# Generate SLAAC address using the Hardware Address of the interface
#slaac hwaddr
# OR generate Stable Private IPv6 Addresses based from the DUID
slaac private

# Static IP configuration (Box Internet):
#interface eth0
#static ip_address=192.168.1.160/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
#static routers=192.168.1.1
#static domain_name_servers=192.168.0.1 8.8.8.8 fd51:42f8:caae:d92e::1

# It is possible to fall back to a static IP if DHCP fails:
# define static profile
profile static_eth0
static ip_address=169.154.131.67/16
#static routers=192.168.1.1
#static domain_name_servers=192.168.1.1

# fallback to static profile on eth0
#interface eth0
#fallback static_eth0

# Wifi wlan0 configuration

interface wlan0

static ip_address=192.168.1.161/24
static routers=192.168.1.1
static domain_name_servers=
static domain_search=

Prise de main à distance

J’ai jusqu’ici utilisé VNC pour réaliser une connexion directe depuis mon propre réseau. Voyons maintenant comment autoriser des connexions sécurisées depuis l’extérieur. Il faut pour cela installer VNC Server et vérifier que notre version de VNC Viewer est bien la dernière en date :

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer

Ayant déjà utilisé VNC Viewer, nous n’avons pas à activer VNC dans la fenêtre de configuration du Raspberry Pi (Framboise / Préférences / Configuration du Raspberry Pi).

Technique SDR
Fenêtre d’accueil de VNC Server

Cliquez sur l’icône VNC en haut à droite de l’écran afin d’ouvrir la fenêtre VNC Server puis sur le lien établir connexion, en bas, à droite de cet écran.
Vous arrivez alors sur la page de connexion de VNC

Technique SDR
Haut de la page de connexion de VNC dédiée au Raspberry Pi

Entrez votre adresse mail, en bas de cette page dans l’espace Get started, et cliquez sur Next.
Dans la nouvelle fenêtre, confirmez votre mail ; cliquez : Je ne suis pas un robot, puis Next. Une nouvelle page apparait.

Technique SDR
Bas de la page de connexion de VNC dédiée au Raspberry Pi

 Renseignez alors les différents champs, et cochez les cases utiles en bas de la fenêtre.
Vous allez alors recevoir un message à l’adresse mail indiquée. Sur celui-ci, cliquez sur VERIFY MAIL.

Technique SDR
Création du compte VNC

Fermez le navigateur Internet Chromium et revenez sur la page d’accueil VNC Server. Dans la colonne Connectivité, cliquez sur Ouvrez une session. Identifiez-vous avec l’adresse mail et le mot-de-passe créé pour le compte RealVNC et cliquez sur Ouvrir une session.

Technique SDR
Activation de l’accès à distance - Raspberry Pi (écran 4)

Technique SDR    Technique SDR
Activation de l’accès à distance - Raspberry Pi (écrans 2 & 3)

Technique SDR
Activation de l’accès à distance - Raspberry Pi (écran 1)

Installation de Gqrx et de la clé RTL-SDR

Gqrx est un logiciel de réception radio SDR, gratuit et convivial, développé par Alexandru Csete. Il prend en charge de nombreux matériels SDR listés sur la page https://github.com/csete/gqrx.
La dernière version (V2.14.4) date du 28 décembre 2020.

Technique SDR

Technique SDR
Ma clé RTL-SDR est reconnue (cas Raspberry Pi V4)

  12) Test de reconnaissance de la clé :

rtl_test

Technique SDR
Ma clé RTL-SDR est reconnue (cas Raspberry Pi V4)

Auto-alimentation du LNA – rtl_biast

Tous les logiciels radioamateurs n’intègrent pas l’option d’auto-alimentation d’un LNA logé à la sortie de l’antenne. Tout comme sous Windows, il est bon d’installer le logiciel rtl_biast :

cd /home/pi
git clone https://github.com/rtlsdrblog/rtl_biast
cd rtl_biast
mkdir build
cd build
cmake  (Ici, il faudra parfois inclure comme arguments, le détachement automatique des pilotes kernel et la mise en œuvre des règles UDEV par : cmake .. -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON Voir : https://www.rtl-sdr.com/getting-the-v3-bias-tee-to-activate-on-piaware-ads-b-images/
make

Durant l’exécution des deux dernières commandes, du texte rose et vert défile un temps à l’écran. Lorsque la compilation se termine on retrouvera le programme rtl_biast dans le répertoire src.

Son lancement est alors similaire à ce qu’il est sous Windows :

ON: /home/pi/rtl_biast/build/src/rtl_biast -b
OFF: /home/pi/rtl_biast/build/src/rtl_biast -b 0

Technique SDR
rtl_biast (help)

De nombreuses questions circulent sur Internet à propos du message d’erreur suivant : rtl_biast: symbol lookup error: rtl_biast: undefined symbol: rtlsdr_set_bias_tee_gpio

Il apparait, par exemple lorsque le programme est lancé depuis le répertoire src :

cd /home/pi/rtl_biast/build/src
rtl_biast -b 1

En effet, et depuis ce répertoire, il faut alors utiliser les commandes suivantes :

ON: LD_LIBRARY_PATH=/usr/local/lib rtl_biast -b 1
OFF: LD_LIBRARY_PATH=/usr/local/lib rtl_biast -b 0

Technique SDR
Lancement de rtl_biast

L’autre possibilité est de faire précéder le nom du programme par ./ :

ON: ./rtl_biast -b 1
OFF: ./rtl_biast -b 0

Ceci dit, et pour nous faciliter la tâche, nous pouvons positionner leur lancement depuis le Bureau.

Technique SDR
Lancement de rtl_biast depuis le Bureau

Nous pouvons aussi faire en sorte que l’alimentation du LNA se fasse dès le démarrage de la carte. L’une des possibilités passe par la modification du fichier /etc/rc.local dans lequel on ajoute la commande voulue avant la ligne exit 0.

Technique SDR
Pour un lancement de rtl_biast au démarrage

ATTENTION : Cette procédure d’auto alimentation ne fonctionne pas lorsque certains services dédiés à dump1090-mutability, pour le suivi du trafic aérien avec radarvirtuel, sont lancés comme services au démarrage de la Pi (voir plus avant le paragraphe dédié à dump1090-mutability (expérience 2). Par contre cela semble fonctionner avec dump1090-fa et PiAware (le client FlightAware).

Premiers tests avec Gqrx

Dans le menu des applications (Framboise), l’icône de lancement de Gqrx est à retrouver dans le sous-menu Internet. Par le biais d’un clic droit de la souris, il est possible de la dupliquer sur le bureau.

Technique SDR
Premier lancement de Gqrx

À sa première ouverture, Gqrx ouvre une fenêtre qui nous permet de définir le type de clé utilisé. Ici, nous sélectionnons (Device) Realtek RTL2838UHIDIR SN : 00000001. C’est en effet cette clé qui a été précédemment identifiée par la commande rtl_test (voir point 11 ci-dessus).

L’onglet Device string prend la valeur rtl=0.
Si, comme moi, vous utilisez un pré-ampli LNA positionné près de l’antenne (dans mon cas, après environ 6 mètres de câble), il faut rajouter l’option bias=1 (après séparation par une virgule).

Il ne nous reste plus maintenant qu’à tenter une première réception sur la bande FM.

Technique SDR  Technique SDR  Technique SDR
Gqrx – Écoute de France Musique

En cas d’absence de son (il vous faut, bien sûr, préalablement, brancher des enceintes sur la carte), passez par l’application raspi-config pour le rediriger vers la prise jack et non pas la prise HDMI.

Décodage POCSAG avec Gqrx et Multimon-ng

Tout comme nous l’avons fait sous Windows, avec Gqrx, nous pouvons facilement visualiser l’arrivée des trames POCSAG, par exemple dans la bande des 466MHz.

Technique SDR  Technique SDR
Gqrx - Trame POCSAG dans la bande des 466MHz

Pour le décodage, nous devons installer le décodeur Multimon-ng et l’utilitaire audio SoX :

sudo apt-get install multimon-ng
sudo apt-get install sox

Pour rediriger la sortie audio de Gqrx, il faut activer l'envoi du son vers le port UDP localhost (port 7355 par défaut). La vérification du réglage se fait en cliquant sur le bouton « … », tout en bas, à droite, sous la barre de Gain (onglet Receiver Options). On cliquera ensuite sur le bouton voisin UDP.

Tout en gardant Gqrx ouvert, il faut ensuite ouvrir une fenêtre LXterminal et exécuter – en tenant compte des majuscules, des espaces et des tirets, la longue commande :

nc -l -u localhost 7355 | sox -t raw -esigned-integer -b16 -r 48000 - -esigned-integer -b16 -r 22050 -t raw - | multimon-ng -t raw /dev/stdin -a SCOPE -a POCSAG512 -a POCSAG1200 -a POCSAG2400 -f alpha –

Cette commande, par l’appel de netcat transmet à Sox le signal issu du port UDP. Sox le transforme en un format reconnaissable par Multimon afin qu’il le décode selon les modes POCSAG 512, 1200 ou 2400.

Technique SDR
Décodage POCSAG avec Multimon-ng

En bas de l’écran, à droite et partiellement recouverte, une « fenêtre sans nom » s’est ouverte. Dans celle-ci s’affiche le signal comme nous le verrions à l’aide d’un oscilloscope (option -a SCOPE de la ligne de commande). Cette ouverture et cet affichage signifie la bonne réception du signal par Multimon.

Réception FAX avec Gqrx et HamFax

Technique SDR

La première étape consiste à installer Hamfax (sudo apt-get install hamfax) et à l’ajouter sur le bureau.
Pour atteindre les bandes HF, nous allons utiliser la clé SDR en mode direct sampling. Pour cela, et dès l’ouverture de Gqrx (sans avoir au préalable lancé d’écoute) il faut ajouter l’option direct_samp=2 ou direct_samp=3 dans le panneau de configuration (File / I/O devices).

Pour ma part, c’est le choix Device string contenant comme arguments rtl=0,direct_samp=3 qui m’a donné les meilleurs résultats..

Après avoir démarré l’écoute [*], et s’être positionné en mode USB et filtre étroit (Narrow), on lance HamFax. Tout en laissant les préréglages sur les valeurs inscrites par défaut, la réception sera prête à démarrer suite au choix Recevoir / Réception depuis le périphérique son.

(capture : Gqrx en mode direct sampling)

[*]Voici, pour mémoire, un rappel de quelques fréquences courantes :

  • 3855 KHz, 7880 KHz, 13882,5 KHz : Hambourg Météo (Allemagne)
  • 5 KHz, 4610 KHz, 8040 KHz, 11086.5 KHz : Northwood Météo (UK)

Sur Gqrx, il faut alors ajuster à l’oreille (Écoutez par exemple : https://f8ffp.monsite-orange.fr/page-5bcf38b0cf10b.html) la fréquence de réception en la décalant petit à petit au travers de la fenêtre Receiver Options. Étant en phase de test, à l’approche du signal souhaité nous revenons sur HamFax en choisissant Ne pas attendre la trame APT puis Ne pas attendre les motifs de référence

Technique SDR    Technique SDR
Signal Fax sur Gqrx et premier lancement de HamFax

La réception du fax en cours d’émission débute. Plus l’on s’approche de la fréquence optimale, plus la transition entre les noirs et les blancs s’accentue.

Technique SDR
Réception fax (Gqrx et HamFax)

Dans mon environnement, l’inconvénient majeur de cette dernière version de Hamfax, c’est qu’elle plante très régulièrement lorsque l’on souhaite arrêter le décodage ou simplement cliquer sur Annuler. Si de mes lecteurs sait comment solutionner ce problème, qu’il n’hésite pas à me contacter afin que nous en fassions bénéficier les lecteurs.

Réception FAX et RTTY météo avec Gqrx et Fldigi

Pour remplacer Hamfax, je me suis donc tourné vers Fldigi. Ce logiciel en libre distribution de Dave Freese, W1HKJ, permet de commander un émetteur-récepteur pour transmettre des données numériques ou analogiques. À la différence de dl-fldigi, Il fait l’objet de fréquentes mises à jour.

Technique SDR
Un bug ennuyeux avec Hamfax

Nous ne nous intéresserons ici qu’a la partie réception du logiciel ; celle qui intercepte, pour les décoder, le signal audio fourni par le logiciel de réception Gqrx précédemment installé. Les modes de communication disponibles dans cette version sont entre autres : alphabet morse. FSK. PSK31. RTTY. Hellschreiber. radiofacsimilé Throb et QPSK.

Après les indispensables sudo apt-get update (et upgrade), nous allons, pour cette installation, passer par le choix Add / Remove Software du menu des applications (Framboise / Préférences).

Après avoir entré le choix fldigi dans la fenêtre de recherche, une série de logiciels à installer est proposée. L’installation débutera après sélection du troisième choix (dans mon cas) et le clique sur Apply. Après authentification avec notre mot de passe associé au compte pi,

Technique SDR
Choix pour l’installation de Fldigi

Une fois l’installation terminée, le programme est disponible à partir du choix Internet au sein du menu des applications (Framboise). Il est alors possible d’en dupliquer son lancement sur le bureau (bouton droit de la souris). A la première ouverture, toute une série de fenêtres de configuration nous sont proposées. Ne travaillant qu’en mode réception, il suffit, dans un premier temps, de toutes les ignorer (en cliquant sur Suivant), pour arriver sur l’écran principal du logiciel.

FAX

Une fois Gqrx callé sur l’une des fréquences fax et réglé comme précédemment, l’appel menu Mode OP / WEFAX /WEFAX /WEFAX-IOC576 déclenche un début de réception.

Technique SDR
Réception FAX (réalisée avec la version dl-Fldigi préalablement installée)

En réception seulement, il n’y a pas lieu de tenir compte de la fréquence affichée par Fldigi. Un réglage « à l’oreille » permet d’améliorer la qualité de l’image. Dans la fenêtre « chute d’eau » la marque de réglage rouge, à droite, se retrouve alors callé sur le signal reçu.

RTTY

Comme préalable à la réception des signaux RTTY en provenance d’Hambourg il nous faut régler le débit et l’espacement entre les deux fréquences audios via l’onglet Modems/TTY/Tx accessible depuis le choix Configuration/Operating/Active Modem :

  • Espacement (Carrier shift) : 425 Hz,
  • Vitesse (Baud Rate) : 50 bauds,
  • Le codage : 5 bits par caractère, pas de parité et 1 bit de stop.

Technique SDR
Fldiji – réglage des paramètres RTTY pour Hambourg météo

Une fois ces réglages effectués, il faut :

  • Lancer Gqrx
  • Passer en écoute sur la fréquence choisi (mode LSB, filtre Normal, AGC Off),
  • Décaler le filtre d’environ 1,9 Kz pour bien entendre le signal sonore à l’oreille

Du côté de Fldigi, ne tenez pas compte de la valeur de la fréquence affichée en haut à gauche de sa fenêtre. Alors que sur la « chute d’eau » apparaissent les deux fréquences audios, le passage de la souris dans ce volet fait apparaître les 2 marques jaunes de réglage qui suivent le pointeur. Positionnez ces marques exactement à cheval sur le signal et faites un clic gauche. Si les barres jaunes ne sont pas au bon espacement, c’est que sa valeur (Carrier Shift) n’est pas la bonne. L’accord réalisé, l’affichage des messages émis débute.

Le manuel d’utilisation de Fldigi, en anglais, est disponible ici : http://www.w1hkj.com/FldigiHelp/. Un guide du débutant, en français, mais datant de 2013, est également accessible en ligne sur l’URL : https://f4eed.files.wordpress.com/2013/12/fldigi_guide_utiisateur_f5gfe.pdf.

Technique SDR
Fldigi – réception RTTY pour Hambourg

ANNEXE-2 – References Pi

A propos de l'auteur

Index