Table des matières:

Radio Internet alimentée par Raspberry Pi : 5 étapes (avec photos)
Radio Internet alimentée par Raspberry Pi : 5 étapes (avec photos)

Vidéo: Radio Internet alimentée par Raspberry Pi : 5 étapes (avec photos)

Vidéo: Radio Internet alimentée par Raspberry Pi : 5 étapes (avec photos)
Vidéo: Que faire avec un Raspberry Pi ? 2024, Novembre
Anonim
Image
Image
Radio Internet alimentée par Raspberry Pi
Radio Internet alimentée par Raspberry Pi
Radio Internet alimentée par Raspberry Pi
Radio Internet alimentée par Raspberry Pi

Il y a quelque chose de satisfaisant à tourner des cadrans et à appuyer sur des boutons, comme ceux des vieilles radios. Malheureusement, beaucoup de ces radios sont en panne ou les stations se sont tues. Heureusement, il n'est pas trop difficile de mettre à jour n'importe quelle radio en radio Internet à l'aide d'un raspberry pi zero W, et je vais vous montrer comment !

Une partie du travail dépendra de la radio donatrice que vous avez, mais je vais vous expliquer ce que j'ai fait avec la mienne pour vous donner une idée de comment ça se passe.

Comme le pi exécute un code python facile à suivre, une fois les commandes radio câblées, vous pouvez facilement ajouter d'autres fonctionnalités comme une alarme, un haut-parleur Bluetooth, une horloge parlante, etc. en changeant simplement le logiciel via ssh.

Ce projet a été inspiré par la radio Internet Dansette Pi, la principale différence étant qu'ici, les cadrans contrôlent la radio en les tournant, pas comme des boutons poussoirs.

Fournitures

  • vieille radio transistor
  • Framboise pi zéro W
  • Picaxe 20X2
  • Amplificateur mono Adafruit 3W - MAX98357 I2S Amp Breakout
  • Connecteur baril pour alimentation
  • Alimentation 5V DC pour s'adapter au connecteur cylindrique
  • diverses résistances
  • quelques condensateurs 100nF
  • décapant
  • Prise IC DIP 20 broches
  • fils de connexion et broches d'en-tête
  • petits écrous et boulons

Étape 1: Aperçu

L'idée est de connecter le raspberry pi à Internet via le wifi embarqué et de diffuser l'une des stations de radio Internet préconfigurées. Les boutons radio et cadrans d'origine (potentiomètres) seront connectés à une puce picaxe qui sert de convertisseur analogique-numérique. Le pi lit en permanence les commandes du picaxe et réagit en conséquence, en changeant le volume ou la station. Lorsque la station est changée, la radio annonce le nom de la nouvelle station. Enfin, l'audio diffusé est acheminé dans un amplificateur mono connecté au haut-parleur radio d'origine.

L'avantage de l'utilisation d'un raspberry pi est qu'une fois le circuit configuré, les fonctionnalités de la radio peuvent être facilement modifiées en changeant simplement quelques lignes de code sur le pi via ssh. Par exemple, vous pouvez facilement vous connecter à un haut-parleur bluetooth, ou faire un réveil:)

Étape 2: La radio

La radio
La radio
La radio
La radio
La radio
La radio

La partie la plus importante est la radio des donateurs. Il n'a pas besoin de fonctionner mais il doit avoir un haut-parleur fonctionnel (à moins que vous ne vouliez en installer un nouveau).

Ma radio a 4 cadrans et 7 boutons poussoirs. Deux des cadrans vont être utilisés pour changer le volume et la station. Les deux autres cadrans et les boutons ne feront rien mais je les connecterai quand même au cas où je voudrais les utiliser plus tard.

La première étape consiste à démonter soigneusement la radio et à retirer tous les composants électroniques internes, nous n'en aurons pas besoin, à part le haut-parleur.

Changer de stationSur ma radio, lorsque vous changez de station, un petit marqueur rouge se déplace sur l'écran pour indiquer la fréquence que vous écoutez. Je voulais vraiment garder cette fonctionnalité ! Le bouton de changement de station fait tourner un condensateur variable et actionne un système de poulie avec un morceau de ficelle qui maintient le marqueur rouge.

J'ai essayé de construire un circuit pour mesurer la capacité de ce condensateur variable, mais la capacité était si petite que la méthode simple de chronométrage de la charge/décharge ne fonctionne pas. Il existe d'autres méthodes, mais elles me semblaient compliquées et ne valaient pas la peine…

Donc, ce que j'ai fait ici, c'est limer à plat un arbre qui pointait vers le bas du condensateur variable afin que cet arbre puisse s'insérer dans la rainure d'un potentiomètre moderne. Heureusement, ce potentiomètre pouvait être monté dans le boîtier de batterie d'origine en y perçant un trou. Après tout cela, le condensateur variable actionne maintenant directement un potentiomètre, que j'utilise pour régler la station sur ma radio numérique.

Boutons poussoir

Il y avait un circuit imprimé compliqué abritant l'infrastructure pour les boutons-poussoirs. Après avoir retiré les composants et les fils soudés, j'ai déterminé quelles connexions sont établies/coupées lorsqu'un bouton est enfoncé ou relâché. Certains des boutons étaient connectés les uns aux autres, j'ai donc dû casser quelques pistes de cuivre dans le circuit imprimé. Enfin j'ai soudé quelques fils qui iront au picaxe pour donner 6 boutons poussoirs fonctionnant de manière isolée.

Trouvez également un endroit confortable pour asseoir le pi et la picaxe, idéalement aussi loin que possible du haut-parleur, car le champ magnétique du haut-parleur peut perturber les microprocesseurs. J'ai percé quelques trous dans le cadre métallique de la radio pour monter le pi.

Étape 3: Picaxe

Picaxe
Picaxe
Picaxe
Picaxe
Picaxe
Picaxe

Le circuit picaxe est ci-dessus, avec seulement deux des potentiomètres et un bouton affichés pour plus de clarté. Le circuit est assez simple, avec l'essuie-glace de chaque potentiomètre connecté à une entrée ADC. Pour les boutons, la broche d'entrée est reliée à la terre et le bouton est entre l'entrée et +3,3V. Ce circuit n'inclut pas le circuit de téléchargement car j'ai programmé mon picaxe sur une carte séparée.

Le code picaxe est assez simple. Le picaxe lit les valeurs ADC des potentiomètres et les états des boutons, puis les stocke dans la mémoire interne que le pi va lire.

Vous pouvez utiliser n'importe quelle puce picaxe X2. Les pièces non X2 n'ont pas de mode esclave I2C et ne fonctionneront donc pas avec ces instructions.

Si vous utilisez un ordinateur Linux pour programmer le picaxe, pour que le câble de téléchargement AXE027 fonctionne, vous devez exécuter les commandes suivantes:

sudo modprobe ftdi_sio

sudo chmod 777 /sys/bus/usb-serial/drivers/ftdi_sio/new_id sudo echo "0403 bd90" > /sys/bus/usb-serial/drivers/ftdi_sio/new_id

Dans le cas où les valeurs du potentiomètre sautent de manière erratique, un condensateur de 100nF peut être placé entre la masse et l'essuie-glace du pot.

Étape 4: Raspberry Pi

Tarte aux framboises
Tarte aux framboises
Tarte aux framboises
Tarte aux framboises

Voici venir le cerveau de l'opération. Certains packages devront être installés sur le pi avec

sudo apt-get mise à jour

sudo apt-get install -y i2c-tools vlc espeak python-smbus python-pip sudo pip installer python-vlc

Le pi parlera au picaxe via I2C. Pour activer I2C, vérifiez que le fichier /etc/modules contient la ligne

i2c-dev

et que /boot/config.txt a

dtparam=i2c_arm=on

Pour configurer le pi pour qu'il fonctionne avec l'amplificateur, suivez le propre guide d'Adafruit ici, ou exécutez simplement

curl -sS https://raw.githubusercontent.com/adafruit/Raspbe…> | frapper

et tout accepter.

Le code python est assez simple, après une configuration initiale, une boucle while sans fin écoute les changements dans les valeurs du potentiomètre et si les boutons ont été enfoncés.

m

Le fichier stations.txt contient une liste des URL des stations et des noms de stations qui seront prononcés lors du changement de station. Il a le format suivant

st1 =

n1 = une radio st2 = https://anotherstream n2 = une autre station

Ce fichier ne doit contenir aucune ligne vide.

Pour trouver les URL des stations, j'utilise www.fmstream.org.

Si vous avez l'intention d'éteindre la radio en tirant simplement sur l'alimentation, c'est une bonne idée de mettre le pi en lecture seule pour éviter les corruptions de la carte SD. Le script read_only_setup.sh le fait pour vous et permet de basculer entre la lecture seule et la lecture-écriture en tapant "ro" et "rw" dans un terminal.

Étape 5: Tout assembler

Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble

À l'aide d'un stripboard, j'ai fait un petit chapeau pour que le picaxe et l'amplificateur s'assoient sur le pi.

Pour l'alimentation, j'ai retiré l'un des anciens connecteurs jack de la radio et installé un nouveau jack DC barrel auquel j'ai soudé un câble micro USB. Assurez-vous de bien vérifier la polarité des fils !

Enfin, branchez tout, essayez de faire un meilleur travail de routage des fils que j'ai fait, fermez le couvercle et profitez de votre radio !

Conseillé: