mercredi 29 janvier 2020

Raspberry PI, RaspBian, ajouter CubicSDR



Sur le PI avec Raspbian et Gqrx, cet article décrit l'installation de l'application CubicSDR. CubicSDR permet comme Gqrx l'affichage de l'occupation du spectre radioélectrique pour un radioamateur grâce aux Software Digital Radio.


Les SDR permettent par l'intermédiaire de traitement informatique à partir des échantillons provenant par exemple d'une clef destinée à la réception TV d'avoir l'équivalent d'un analyseur de spectre sur une portion de 2 MHZ.


CubicSDR offre comme option intéressante de pouvoir piloter un récepteur en utilisant les commandes de la librairie RigCtl.

Cette option n'est pas décrite ici, elle nécessite une liaison série à ajouter dans le cas du raspberry.

Installation


La commande d'installation utilise apt-get :

sudo apt-get install cubicsdr -y

L'implantation dans le menu est faite dans un dossier "Autres".
L'icône de lancement se trouve dans ce dossier.




Sélectionner par exemple la clef TV qui doit avoir été détectée, configurer la vitesse d'échantillonnage, Sample Rate choisir 1024 par exemple.


Ensuite reste à découvrir l'utilisation de ce logiciel.
Choisir la bande FM.


Ensuite poursuivre par l'écoute d'une station de la bande FM.


Conclusion


L'installation facile de CubicSDR sur le PI et RaspBian ajoute un logiciel de plus à découvrir dans ce monde numérique de la "radio logiciel".

lundi 27 janvier 2020

Raspberry PI, Raspbian et Gqrx


Depuis 2016, j'ai laissé un peu de coté le raspberry 3, nous sommes en 2020 et les applications sur le Raspberry ont bien évoluées.
Cet article propose une description de l'utilisation de la dernière version de RaspBian (septembre 2019) en y ajoutant l'installation de "Gqrx" sur un raspberry version 3.
Gqrx est utilisé par les radioamateurs par exemple pour visualiser l'occupation du spectre radioélectrique "en anglais panadapter" lors des concours pour trouver les stations lançant appel.



Matériel

Le matériel utilisé est :
  • un raspberry version 3
  • un clavier et une souris usb
  • un écran hdmi ou un adaptateur hdmi vga
  • une carte SD de 8 Go (16 Go est recommandé)

Image

L’image de départ utilisée est : 
  • 2019-09-26-raspbian-buster.zip
Le lien de téléchargement :
La génération de la carte SD sur un PC est faite avec le logiciel balenaEtcher en sélectionnant directement le fichier .zip et ensuite le lecteur de la carte SD.

Modification du fichier config.txt

Le fichier config.txt se trouve sur la partition nommée boot lisible sur un PC.
J'utilise "Notepad++".

Pour ma configuration, les modifications correspondent à l'écran utilisé (un moniteur VGA + adaptateur HDMI ou une vieille TV avec entrée HDMI en résolution 720 lignes soit 1280x720 points).
L'adaptateur n'est pas détecté et l'écran est noir sans modifications.
La vitesse du processeur Arm du PI3 est modifié à 1100 Mhz.
(Attention ce paramètre est à manipuler avec précaution et provoquer des plantages, ajouter un refroidissement, radiateur sur le processeur)

Fichier config.txt avec les modifications en vert.


# For more options and information see
# http://rpf.io/configtxt
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
framebuffer_width=1280
framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
arm_freq=1100

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable infrared communication.
#dtoverlay=gpio-ir,gpio_pin=17
#dtoverlay=gpio-ir-tx,gpio_pin=18

# Additional overlays and parameters are documented /boot/overlays/README

# Enable audio (loads snd_bcm2835)
dtparam=audio=on

[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d



Configuration et Mise à jour

Après l'insertion de la carte SD sur le PI, si le démarrage se passe bien, le bureau Raspbian doit apparaitre à l'écran.
Les premières commandes à faire sont la configuration et la mise à jour.

Après le démarrage, répondre aux différentes questions pour adapter la zone, la langue, le clavier et l’accès à internet (Wifi par exemple) .

Il est possible de reprendre les paramètres avec la commande :
sudo raspi-config













Après ces adaptations, l’accès à internet est indispensable pour les mises à jour et l'installation.

Les commandes de bases sont :


sudo apt-get update

sudo apt-get upgrade –y

La commande upgrade provoque des erreurs sur cette image dans mon cas résolu par :

sudo apt-get install libvlc-bin vlc-plugin-qt


Puis la relance de la mise à jour


sudo apt-get upgrade –y

Il est conseillé de terminer avec la commande suivante pour éliminer des choses superflues.


sudo apt-get autoremove

Toutes ces opérations peuvent être longue et dépendent de la vitesse de l’accès à internet et la disponibilité des serveurs.
Il est important de patienter et de laisser le PI faire tranquillement ses mises à jour.




Installer gqrx

Il est recommandé de faire l'installation des paquets nécessaires depuis les archives , avec la distribution Debian la commande "apt-get" permet de tenir compte des dépendances et installer les ajouts nécessaires au fonctionnement de gqrx, ici par exemple gnuradio sera installé en complément, le nom du paquet dans les archives est "gqrx-sdr".


sudo apt-get install gqrx-sdr -y

Ajouter ensuite la commande autoremove pour éliminer ce qui est inutile.






sudo apt-get autoremove

Il est conseillé de calibrer le logiciel pour l'adapter au PI avec la commande

volk_profile

Ici il faut aussi patienter et laisser le PI exécuter ces tests sans le solliciter.


Lancer Gqrx

Tester la détection d'une clef DVB-T


Pour les premiers tests, brancher une clef SDR TV du type DVB-T et tester le fonctionnement avec la commande :


rtl_test

La sortie du test se fait par appui sur Ctrl-C

Lancer Gqrx depuis le menu



Le menu doit avoir été configuré en y ajoutant gqrx.

Configurer l’accès à la clef DVB-T

Au premier démarrage, configurer l'option "Device" pour indiquer l'utilisation de la clef DVB-T.
 Indiquer :
  • Device : ici la clef RTL2832
  • Input rate : choix de 180000 khz

Premier démarrage


Essai sur la bande FM

Pour les premiers essais, se placer sur la bande FM pour apprendre à configurer les différents paramètres proposés par gqrx.

Les différents paramètres se trouvent sur 3 onglets :
  • Input Control : gain , correction du décalage de la clef 
  • Receiver Options : choix de la démodulation AM, FM, filtres etc.


















  • FFT Settings : paramètres des filtrages, nombres de points, vitesse, choix algorithme des FFT, réglage de la taille du waterfall, de l’échelle, etc.

  Conclusion

 L'installation de "gqrx" et en bonus de "Gnuradio" est simple avec l'outil "apt-get" sur cette version de Raspbian.
Les outils fournis avec le bureau permettent de configurer facilement l'ajout des accès à distance par VNC pour utiliser le PI sans écran, clavier, souris.
Un grand remerciement à la communauté qui œuvre pour réaliser et permettre que tous ces outils existent et continuent d'évoluer.

73's à tous.