lundi 7 juillet 2014

Balance de la musique sur des vieux trucs avec le Raspberry Pi

Pour envoyer sa musique sur un autoradio avec un Rapsberry Pi il y a deux facons.
Par Bluetooth ou par radio.
Par Bluetooth mais il faut une entré ligne sur le receveur et un émetteur avec une balise Bluetooth et un receveur usb Bluetooth, 'fin bref beaucoup de matos.
Sinon il y a par radio car oui on peut transformer la framboise en émetteur FM qui ne demande qu'un bout de fil.
Comment qu'on fait, alors ?

La réglementation 

Bien sur le faite de créer un réseau radio est puni par la loi hein sinon tout le monde ferai sa radio. Mais il me semble avoir vue des émetteurs FM sur prise 12 V donc je me pose la question sur la légalité de ce système. De toutes facons, la zone d’émission est d'environ 100 m max donc seul les voisins proche vont ressentir la différence et vous pouvez faire un scan radio préalable pour voir les stations de radio disponible.
Lisez cet article de loi avant de vous lancer…

Matériel nécessaire

Il vous faut :
un Raspberry Pi 
un bout de fil qui servira d’antenne
un logiciel appelé pifm sera installé sous raspbian
Info pratique : on peut utilisé n'importe quelles fils avec jumper, speaker, switch ou led, faites juste gaffe à ne pas faire de cour-circuit.

Branchement de l’antenne

Connectez un simple morceau de fil à la broche 7 de P1 (GPIO 4)
Pas de fil nu qui pourrait provoquer des court-circuits ! Repérez vous avec les images ci dessous

gpiobroche_GPIO

Installer le logiciel

Un Répertoire pour le logiciel à la racine facile d’accès.
mkdir pifm
Ensuite changer de répertoire pour travailler dans /home/pi/pifm
cd /pifm
Maintenant nous pouvons télécharger le fichier pifm.tar.gz
wget http://www.icrobotics.co.uk/wiki/images/c/c3/Pifm.tar.gz
Puis décompresser l’archive
tar -xzf Pifm.tar.gz
Puis jouer le morceau qui doit être un fichier wav 16 bit mono.
sudo ./pifm sound.wav 103.0
Ce qui donne si on enchaîne toutes les opérations :

pi@raspberrypi ~ $ mkdir pifm
pi@raspberrypi ~ $ cd pifm
pi@raspberrypi ~/pifm $ wget http://www.icrobotics.co.uk/wiki/images/c/c3/Pifm.tar.gz
--2014-01-11 18:02:17--  http://www.icrobotics.co.uk/wiki/images/c/c3/Pifm.tar.gz
Résolution de www.icrobotics.co.uk (www.icrobotics.co.uk)... 155.198.3.147
Connexion vers www.icrobotics.co.uk (www.icrobotics.co.uk)|155.198.3.147|:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 5521400 (5.3M) [application/x-gzip]
Sauvegarde en : «Pifm.tar.gz»
100%[======================================] 5'521'400    434K/s   ds 15s
2014-01-11 18:02:32 (362 KB/s) - «Pifm.tar.gz» sauvegardé [5521400/5521400]
pi@raspberrypi ~/pifm $ tar -xzf Pifm.tar.gz
pi@raspberrypi ~/pifm $ ls
pifm  pifm.c  PiFm.py  Pifm.tar.gz  sound.wav
pi@raspberrypi ~/pifm $  sudo ./pifm sound.wav 103.0

Un émetteur FM stéréo

Le logiciel pifm évolue puisque sur le wiki de icrobotics on trouve une version stéréo de pifm… que vous pourrez également expérimenter :
1
sudo ./pifm left_right.wav 103.0 22050 stereo

Avec mes expériences on peut faire un lexique des arguments
 Le premier argument est le fichier, logique quoi ! Mais en format Wav, pas de décodage de MP3.
Le deuxième est la fréquence d"émission
Le Troisieme est la fréquence du fichier musical et c'est la le bordel. Il faut connaitre la fréquence mais si le fichier est en stéréo il faut le multiplié par deux donc pour un fichier en 44100 il faut entrer 88200. Ce paramètre est facultatif de base il est de 22050
Le quatrième est si il faut l'envoyer en mono ou en stéréo. De bases le paramètre est mono.

Conclusion  

C'est génial à faire, super rigolo et c'est un hack super sympa est ce que cela  vaut six mois d'emprisonnement et de 30 000 euros d'amende pour faire ce hack. Faites gaffe et amusez vous. En aucun cas je ne pourrais être tenu responsable.


Sinon pour ceux qui préférè du tout prêt il y a une iso disponible

L’ISO est disponible ici.
Après on on utilise Win32DiskImager sur Windows disponible ici, tuto d'utilisation disponible ici.
On modifie le fichier pirateradio.config pour faire ce que l'on veut de l’émetteur Ferquency pour la fréquence d'émission, shuffle pour la lecture aléatoire et repeat_all pour tous relire avec la valeur True pour activé. Il y a en plus stereo_playback pour lire en stéréo les fichiers. Le Tuto complet en Anglais est ici.

A bientôt pour de nouvelles bidouilles, Si vous avez des soucis avec la loi avec le raspberry je pourrais peut-être vous aidez (je ne connais pas tout et je n'ai pas de honte à le dire).

Aucun commentaire:

Enregistrer un commentaire

N’hésitez pas à commenter, tous le monde peut s'exprimer même anonymement. Pour ne rien cacher, ils sont modérer pour éluder les commentaires déplacés.