Biko Georges – Comment J’ai créé ma propre Radio Automatique

Comment concevoir votre propre lecteur radio automatique avec Raspberry Pi

Dans cet article, je partagerai mon expérience de la transformation du Raspberry Pi et de deux haut-parleurs bon marché en un lecteur de radio automatique.

J’ai entendu parler de cette technique une fois en regardant un film de guerre et j’ai décidé de l’appliquer une fois que je me suis retrouvé dans une situation particulière que je vais partager avec vous. C’est une technique de suivi qu’utilise l’armée en période de guerre. Je donne quelques conseils sur la configuration du logiciel, ainsi que le code dont vous aurez besoin.

Quand je suis hors civilisation, j’aime être réveillé par la radio jouant de la musique le matin via une station locale. Malheureusement, la réception de la radio FM était plutôt faible à mon lieu de résidence.

J’ai donc dû configurer mon ordinateur de bureau pour qu’il se réveille automatiquement tous les matins à 6 h 30 et pour lancer le flux audio dans foobar2000. Cette solution présente de nombreux inconvénients:

  1. Je devais me souvenir de dormir (pas d’éteindre) mon ordinateur de bureau tous les soirs.
  2. Je devais penser à débrancher le casque et à allumer les haut-parleurs, régler le volume adéquat.
  3. Mon ordinateur de bureau était plutôt bruyant.
  4. Lorsque je voulais augmenter ou diminuer le volume de la radio, je devais me lever du lit.
  5. En quittant la maison, je devais allumer l’écran, me connecter à l’ordinateur et l’éteindre (nul besoin de laisser l’ordinateur allumer toute la journée pendant mon absence).

Lorsque Raspberry Pi était enfin sortie, j’ai décidé de l’utiliser comme solution aux problèmes mentionnés ci-dessus. Au cas où vous ne le sauriez pas, Raspberry Pi est “une boîte ARM GNU / Linux à 25 $” .

Il s’agit d’un matériel assez minuscule mais fantastique doté d’une puce ARM, de 256 Mo de RAM, de ports HDMI, audio, USB et LAN, ainsi que d’un emplacement pour carte SD. Il peut exécuter certaines versions personnalisées de Linux (debian, Arch Linux) ou du système d’exploitation RISC.

Après avoir reçu mon appareil, j’ai fait quelques recherches et il s’est avéré qu’il existe un lecteur multimédia – omxplayer – spécialement conçu pour Raspberry Pi. Sa documentation n’est pas extraordinaire toutefois, il existe certaines ressources disponibles sur Google.

J’ai prévu de remplacer ma configuration actuelle par un système alimenté par Raspberry Pi.

Pour accomplir cette tâche, j’avais besoin de quelques composants de base pour installer Raspbian – une carte SD, un clavier et une souris USB et un câble HDMI avec adaptateur HDMI ->; DVI, afin de pouvoir le connecter temporairement à mon écran.

L’installation à la fois du système et d’omxplayer est simple. Pour activer le panneau de configuration, vous devez également installer un serveur http (j’utilise lighttpd, en raison de sa légèreté) et PHP.

Concernant le matériel, j’ai acheté des haut-parleurs bon marché pour environ 10$. Après l’installation, vous n’avez plus besoin d’un clavier ou d’un écran connecté à l’ordinateur. J’ai donc placé l’appareil dans une petite boîte en carton puis, j’ai branché les haut-parleurs, le câble LAN et le chargeur USB, ainsi que l’ensemble de la configuration dans un coin de ma pièce.

Concernant le logiciel, la configuration est relativement simple. Comme omxplayer peut recevoir des commandes de texte depuis le tube nommé, il suffit d’en créer une et d’indiquer à omxplater de le lire. Expérimentalement, je suis arrivé à la conclusion que le joueur ne partirait pas s’il ne recevait rien du tuyau.

Ainsi, le code pour créer le tuyau se présente comme suit:

#!/bin/bash
PIPE="/tmp/omx.pipe"
if [ ! -p "$PIPE" ] ; then
    mkfifo $PIPE
    chmod a+w $PIPE
fi

Ensuite, il vous suffit de mettre les commandes suivantes dans votre fichier crontab ( crontab -e ):

28 6 * * 1-5 /home/pi/mkmypipe.sh
29 6 * * 1-5 timeout 4h omxplayer http://mainstream.radioagora.pl/tuba10-1.mp3 < /tmp/omx.pipe
30 6 * * 1-5 echo -n . > /tmp/omx.pipe

Vous pouvez facilement en déduire quels sont les chemins et l’URL. Comme je souhaitais que le lecteur s’éteigne après 4 h (à cause de ma paresse : je ne pouvais m’empêcher d’éteindre la radio à chaque fois que je quitte la maison), j’ai utilisé le timeout 4 h, qui indique que le joueur s’éteint automatiquement après un temps défini. 

Les commandes sont exécutées toutes les minutes. J’ai essayé de les lancer tous en même temps, mais omxplayer a eu quelques problèmes pour démarrer la lecture dans une telle situation, alors j’ai abandonné. Grâce à la flexibilité de cron , vous pouvez spécifier diverses situations différentes, c’est-à-dire. Différentes stations de radio diffusées à différentes heures, en fonction du jour de la semaine.

La touche finale est d’ajouter une petite application PHP pour envoyer des commandes au lecteur omxplayer (via le canal nommé). La partie principale de cette application est:

$ f = fopen ("/ tmp / omx.pipe", 'w +'); 
fwrite ($ f, $ _GET ['cmd']); 
fclose ($ f);

Les commandes envoyées à omxplayer sont extraites du paramètre cmd . Ici vous pouvez trouver une liste de commandes valides.

Si vous ne souhaitez pas créer votre propre code HTML, vous pouvez trouver mon panneau de configuration, ainsi que d’autres fichiers et instructions, dans ce référentiel mercurial de Bitbucket . (J’ai utilisé un modèle HTML open source).

Bien sûr, mon projet n’est pas la seule solution à ce problème. Des projets similaires apparaissent après un certain nombre de temps, à savoir ce paquet de Node.js .

Et voici deux photos de mon installation. Ils sont pris par téléphone, alors s’il vous plaît pardonnez la mauvaise qualité 🙂

Rasbperry Pi dans le "cas"
Raspberry Pi dans le “cas”
Orateurs sur le "cas"
Haut parleurs sur le «cas»
Application dans le Safari sur l'iPhone.
Application dans le Safari sur l’iPhone.

Il m’arrive quelquefois de vouloir allumer la radio à une autre heure que celle prédéfinie. Ainsi, j’ai ajouté une option au panneau, qui allume la radio pendant 2 heures.

Cependant, si vous êtes intéressé à devenir un Hacker professionnel à partir d’une formation solide (de la base à l’expertise), je vous conseille fortement EMANTIC. http://inscriptions.campus-emantic.com

Biko Georges

Salut, mon nom est BIKO GEORGES, je suis Expert en Hacking Militaire spécialisé dans la Cyberdéfense et la sécurité Informatique avancée. Je suis multi-cerfié en sécurité infrmatique (CEH, CCNA, CHFI, LPT, RHCE, COMPTIA SECURITY+ et PRO+ SECURITY).De retour de l’étranger, j'ai mis sur pied des entreprises capables de lutter contre la mauvaise utilisation des systèmes informatiques.J'ai créé à cet effet : Le Centre de Cyber-Défense Avancée(CCDA), LE SMART HACKING SCHOOL(SHS) devenue ISA aujourd’hui, L’ONG EMANTIC, LE GROUPE D’ENTREPRISE NITRIX (Qui regroupe 8 autres entreprises), ACS, ESH, CHP..

Laisser un commentaire

fr_FRFrench
en_USEnglish fr_FRFrench
Share via
Copy link