Quiconque a déjà pensé à un PC de voiture a certainement traité de la réception radio. Maintenant, il n’y a pas trop de possibilités d’utiliser le Pi comme récepteur FM, mais l’un est le module Si4703, qui est utilisé ici.
Dans un tutoriel précédent, j’ai déjà montré comment utiliser le Raspberry Pi comme
émetteur radio. Cette partie explique comment recevoir et lire des fréquences radio.
Matériels requis
Pour utiliser votre Raspberry PI en tant que récepteur radio, vous aurez besoin des éléments suivants:
Installer
La connexion du module Si470x est la suivante:
| Raspberry PI | SI470x |
|---|---|
| 3,3 V (broche 1) | 3,3 V |
| GND (broche 6) | GND |
| SDA (broche 3) | SDIO |
| SCL (broche 5) | SCLK |
| GPIO23 (broche 16) | RST |
Sur l’image schématique, j’ai connecté GND à la broche 25 du Raspberry Pi, qui est également une connexion à la terre.
Préparation
(Pour compiler le logiciel, le câblage de Pi doit être installé, si vous ne l’avez pas déjà fait, vous pouvez lire comment le faire ici)
Tout d’abord, nous activons SPI et I2C. Si vous l’avez déjà fait dans un didacticiel précédent, vous pouvez ignorer cette étape.
sudo raspi-config
Sous «Options d’interfaçage», il y a l’entrée «I2C», que nous devons activer. Pour les anciennes versions de Raspbian, les entrées du fichier /etc/modprobe.d/raspi-blacklist.conf doit être commenté (avec un #).
Ensuite, nous éditons le fichier des modules:
sudo nano /etc/modules
À la fin du fichier, nous ajoutons les deux lignes suivantes:
Enfin, nous installons les outils nécessaires s’ils ne sont pas déjà disponibles.
sudo apt-get update sudo apt-get install i2c-tools
Logiciel
git clone https://github.com/achilikin/RdSpi && cd RdSpi
Ensuite, nous compilons:
make
Avant de commencer, cependant, le module doit d’abord être activé via I2C. Pour cela nous créons un autre script dans ce dossier:
sudo nano i2c-init.c
|
1 2 3 4 5 6 7 8 9 dix 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
/ * i2c-init.c * / #comprendre int principale() { int resetPin = 23; // GPIO23 int sdaPin = 0; // GPIO0 / * Configurer l’accès GPIO en mode BCM * / câblagePiSetupGpio(); / * Définir les broches comme sortie * / pinMode(resetPin, PRODUCTION); pinMode(sdaPin, PRODUCTION); / * Un SDA faible indique une interface à 2 fils * / digitalWrite(sdaPin, FAIBLE); / * Mettre la puce en réinitialisation * / digitalWrite(resetPin, FAIBLE); / * Délai de 1 ms pour permettre aux broches de se stabiliser * / retard(1); / * Sortez la puce de la réinitialisation avec SDIO réglé bas et SEN tiré haut (avec résistance de rappel) * / digitalWrite(resetPin, HAUTE); revenir 0; } |
Après avoir enregistré (CTRL + O, CTRL + X) nous le compilons.
gcc -o i2c-init i2c-init.c -lwiringPi
Ce script initialise le module afin qu’il puisse être utilisé (il doit être réinitialisé après chaque redémarrage, il serait donc logique de définir le programme sur Démarrage automatique).
sudo ./i2c-init
Pour tester s’il a été détecté, vous pouvez taper i2cdetect -y 1, qui devrait produire une telle sortie:
0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: 10 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Testez le récepteur FM Raspberry Pi
Une fois le module initialisé, nous pouvons utiliser le câble auxiliaire pour connecter nos haut-parleurs / écouteurs (qui servent d’antennes) et rechercher des stations.
Nous devons d’abord réinitialiser le récepteur:
sudo ./rdspi reset
Vous pouvez définir une fréquence et le volume (0-30) comme ceci:
sudo ./rdspi tune 95.00
sudo ./rdspi volume 10
Toutes les autres commandes peuvent être consultées sur le Github page du projet.
PS: Si vous souhaitez appeler directement les fichiers compilés sans ./ , vous pouvez distribuer les droits suivants
chmod +x i2c-init chmod +x rdspi
Ajoutez ensuite la variable path et créez un lien (vous pouvez obtenir le chemin du répertoire courant avec pwd):
export PATH=$PATH:/home/pi/RdiSpi cd /usr/bin sudo ln -s /home/pi/RdSpi/i2c-initi2c-initsudo ln -s /home/pi/RdSpi/rdspi rdspi
Ensuite, vous devriez pouvoir appeler la commande de partout.
-
LanOcean Voiture Radio Dab, Adaptateur Radio Voiture DABPlus avec Carte TF, FM Transmetteur Dab Voitures avec Bluetooth Mains Libres, Adaptateur Radios Dab+ Récepteur Dab+
-
Hikity Dab Adaptateur Récepteur pour Android Autoradio Dab+ Radio Large 2.4" Color LCD Adaptateur Digital USB 2.0 Dab Radio

