Ecouter la radio sur le Raspi

Ce document  à l’origine avait été rédigé en mars 2016,  à l’époque,  installations et utilisations  avaient été  effectuées sur un Raspberry PI2.

Avec clé Terratec + Upconverter pour les fréquences en dessous de 24 Mhz.

Depuis ,  des clés  sans trou sont arrivées, le  Raspberry PI4,  sans être une révolution,  est très performant,  l’installation des programmes est devenue facile.

Chapitre I     

 

1 -Méthode de réception en mode graphique qtcsdr   (pour mémoire)

Cette installation incorpore aussi les fonctions d’écoute en local (voir paragraphe rtl_fm) ainsi que l’écoute à distance   rtl_tcp  voir paragraphe Sdrsharp)  il n’y aura donc pas à procéder à l’installation de rtl_fm

Programme qtcsdr  Émetteur/ Récepteur sdr de 28 Mhz  à 1.7 Ghz  Clé USB  NooElec, l’utilisation se fait en mode graphique (Waterfall et réglage des fréquences).

Pour l’émission,    obligation d’utiliser d’une carte son USB  pour cause de non présence d’entrée microphone sur le Raspi,   la  sortie s’effectue sur le GPIO, ( prévoir les filtres car nombreuses générations  d’harmoniques,  hors bandes RA).

Pour charger qtcsdr  et l’installer.  Cette méthode fonctionne toujours en 2020

git clone https://github.com/ha7ilm/qtcsdr
cd qtcsdr
./rpi-install.sh
 
qtcsdr01.jpg
 
 
Lors du déroulement de l’installation 
Accepter :
installer rpitx   oui
Csdr        oui
Rtl-sdr     oui
Blacklist dvb_usb_rtl28xxu    oui
Reboot à la fin de l’installation 
Au redémarrage 
cd qtcsdr
 
./rpi-test.sh

Si  rpi-test.sh est correctement installé, il s’affichera la ligne de commande pour lancer qtcsdr. 

Ne pas en tenir compte plutôt   lancer  qtcsdr

-En mode terminal tapez « qtcsdr  » 

-En mode graphique (sur la machine qui possède l’écran graphique)    ou    RUN  à partir du menu principal, puis dans la fenêtre « Exécuter »  saisir la commande « qtcsdr »

qtcsdr01.jpg

 

2 -Méthode en mode terminal  rtl_fm  (l’écoute peut être déportée sur une autre machine).

-         Utilisation de rtl_fm

Pour lancer depuis un terminal  l’écoute sur le Raspi de la fréquence 101.300000 Mhz

Taper après le prompt  : «    rtl_fm  -f 101300000   -s 400k  -r 32k | aplay  -r 32k  -f S16_LE  » 

Dans ce cas il n’y a aucune utilisation  de mode graphique de Raspi

En cas d’anomalie les causes s’affichent dans la fenêtre terminal.

 

Pour écouter le 145.525 Mhz :

rtl_fm  -f  145525000  -M  nbfm  -s  44100  -l 25  | aplay –t  raw  –r  44100  –f  S16_LE

 

ci-dessous aussi pour mémoire.

Pour écouter le 7105 Mhz à travers le Upconverter associé à la clé  Terratec ou Nooelec :

rtl_fm –f 107105000 –M lsb  –s 24k –p 9 | aplay –t raw –r 24k –f  S16_LE 

 

A noter  -f =107105000, on ajoute les 100000000 hertz généré par le upconverter 

   Ainsi que –p 9 qui permet d’effectuer une correction de la fréquence.  (en ppm).

 

Le copier/coller est bien pratique pour changer de fréquence…

Rappel :  copie è ctr/c sous Windows      shift/inser sous Linux  (pour ramener la chaîne de caractères)

 

 

3 -Méthode en mode graphique sur une machine déportée  rtl_tcp

Cette méthode fonctionne toujours en 2020

Un autre moyen d’écouter les bandes radio, entre 24 Mhz et 1.7 Ghz ou de 1.6 à 28 Mhz, après ajout du Upconverter

    rtl_tcp  a été installé lors le la mise en place de qtcsdr (paragraphe 1)

Sous Windows7, les programmes, PuTTy et Sdrsharp  doivent être installés. 

Sur le routeur  (box) ouvrir le port 1234 pour l’adresse IP  du Raspi.

Depuis la console déportée  accédée par PuTTy  se logger en « pi » 

Passer la commande « rtl_tcp  -a 192.168.1.85 »  c’est l’adresse IP de la machine Raspi

sdrsharp00.jpg

Le programme rtl_tcp se met en attente.

-         Lancer Sdrsharp sur la machine Windows

Dans le programme SDR# (Sdrsharp)

Dans la rubrique Source choisir « RTL-SDR (TCP) »

-         Puis configurer la source (frame RTL-TCP Settings)

     IP è 192.168.1.85 port 1234  (c’est l’adresse du Raspi)

 

sdrsharp01.jpg

 

sdrsharp02.jpg

Ensuite en mode graphique tous les paramètres de gestion d’un récepteur deviennent accessibles.

Les tests ont été effectués sur la bande FM (des programmes en permanence)  mais cela fonctionne correctement sur les bandes RA.

D’autres tests ont été effectués après la mise en service  du  Upconverter, sur des bandes RA.    -Avec  qtcsdr (c’est pas terrible il est difficile de correctement se caller)

qtcsdr03.jpg

 -Avec rtl_sdr c’est un réglage en aveugle (aucune visibilité de la bande) il est possible de compenser la fréquence (voir note au paragraphe 2). 

-Avec rtl_tcp et (Sdrsharp sur machine Windows) ,  cet essai a été fait volontairement avec une antenne réduite.

sdrsharp03.jpg

Bien entendu dans ce cas là,  c’est le  confort (affichage précis de la fréquence,   étalement du Waterfall, clic sur une fréquence,  filtres …)

Question : pourquoi passer à travers le Raspi puisque la clé  Terratec ou NooElec associée au  Upconverter fonctionnent déjà correctement sous Windows ?

 Une réponse,  pouvoir écouter lorsqu’on est loin de l’antenne et du récepteur, ce n’est pas encore un  WebSdr  mais un  « remote receiver ».

Problèmes rencontrés : lors de la mise en veille de l'écran du Raspi (lorsqu'il y en a un) la réception se bloque sur SdrSharp.

Avec une liaison Wifi entre  Raspi et  pc client (celui où tourne SdrSharp via rtl_tcp),  en même temps que  l'utilisation d'une caméra Wifi sur ce pc client  rend l'écoute saccadée, donc non utilisable,

 

Chapitre II    

Une autre possibilité en Février 2017  le programme GQRX

Cette description est plutôt  destinée à montrer  ce qu’il fallait faire à l’époque.

Ce programme et ses fonctions avaient été décrits en Mars 2016, depuis il y a eu des évolutions.  On peut passer directement à l’installation moderne. Voir  Evolutions

Installation

Gqrx est installé et exécuté  par l'utilisateur courant  "Pi"  et non par l'utilisateur "Root"

Au besoin rafraichissez l'installation de Raspbian

Installer les librairies libqt5…  et libportaudio2  (Voir liste ci-dessous dans les commandes)

Télécharger le package gqrx  (Pi2 ou Pi3)

Décompresser le fichier

Exécuter le script setup_gqrx.sh

 

En mode terminal  c'est plus simple voir les commandes ci-dessous

 

$ sudo apt-get update

$ sudo apt-get upgrade

   (reboot si nécessaire)

 

   En cas de dernière MAJ assez ancienne,  il y a de forte chance que le firmware ai évolué.

$ sudo rpi-update          è maj du firmware

 

$ sudo apt-get install libqt5gui5 libqt5core5a libqt5network5

$ sudo apt-get install libqt5widgets5 libqt5svg5 libportaudio2

$ wget https://github.com/csete/gqrx/releases/download/v2.6/gqrx-2.6-rpi3-2.tar.xz

$ tar xvf gqrx-2.6-rpi3-2.tar.xz

$ cd gqrx-2.6-rpi3-2

$ ./setup_gqrx.sh

 

   A noter dans les commandes ci-dessus la chaîne "rpi3" doit être remplacé   par "rpi2" lorsque l'on utilise le Raspberry Pi2.

 Les drivers pour les clés  Terratec ou NoElec sont mis en place  lors de cette installation.

 

Ensuite pour lancer depuis le répertoire /home/pi/gqrx-2.6-rpi3-2

  ./run_gqrx.sh

 

Une fois l’installation terminée

Paramétrer : Input Controls

                    Receiver Options

                    FFT Settings

 

  Beaucoup de tâtonnements et donc de temps sur les bandes FM et VHF pour obtenir de bons résultats,   

 

Ci-dessous une copie de l'écran Raspi (de 2016) d’une réception par gqrx

 

gqrx01.png

 

 

Utilisation à distance

 

Rtl-sdr et SDRSharp

 

Cet ensemble de  programmes  « rtl_sdr »  dispose d'une fonction d'exécution en remote via un lien TCP.

Pour mémoire sur un port USB du Raspi il y a  la clé RTL2832 avec ou sans Upconverter ainsi qu'une antenne.

 

On démarre Putty sous Windows (donc mode terminal via SSH)

Voir Utiliser_Raspi_en_Remote

rtl-sdr02.jpg

 

 

 

Lancer  è rtl_tcp –a 192.168.1.nnn  (c'est l'IP adresse du Raspi)

Il est possible de lancer cette commande d'un terminal ou depuis un raccourci situé sur le bureau du Raspi (bien entendu si ce dernier est à proximité)

 

Ensuite sur Windows démarrer SDR# (SDRSharp)

Comme source Choisir  RTL-SDR(TCP)

Effectuer son choix de fréquence et de mode,  ainsi que de périphérique où le son est transmis les haut-parleurs du PC ( par défaut).

 

 

 

Traitement de l’audio

 

 

Choix sur la bande FM (il y a toujours des signaux…)

Écran ci-dessous

 

rtl-sdr01.jpg

 

 

Sortie sur HP du PC Windows

 

Traitement de signaux numériques.

 

      Récupérer le flux audio pour permettre de traiter celui-ci sur la même machine, par un programme de décodage.

Il est nécessaire d’utiliser un routage du flux. L’application  VAC (Virtual Audio Cable) le permet. Voir Utilisation_Vac

 

Dans paramètre audio "Output" sortir sur VAC 

 

                                         

Pour tester le décodage de signaux numériques  j'ai utilisé Fldigi en psk31

 (Pas beaucoup de trafic ce jour  …)

Ci-dessous  les 2 programmes en communication.

 

A noter:  la fréquence affichée par fldigi n'est pas  synchronisée avec celle de SDR# , il n'y a pas de remontée d'info , seul le son remonte vers Fldigi via un lien définit dans Virtual Audio Cable. 

rtl-sdr03.jpg

 

 

Evolution

Le  Hardware   en 2017,  est vu dans  Ecouter la Radio sur Raspi seconde partie.

Le Software

En 2020 sur le PI4 

Grace à la fonction graphique Add/Remove Software,  il est possible de rechercher un Software et de l’installer sans passer par un mode console.

 

Rechercher et installer « Gqrx » 

 

gqrx01.jpg

 

On retrouve les mêmes fonctions  du programme,  seulement l’installation est fortement simplifiée.

 

 

Retour à l’accueil  http://f5bqv.fr 

 

 

Pierre Schuster                        mars 2016 et décembre 2020