Com fer una ràdio basada en Raspberry Pi

Com fer una ràdio basada en Raspberry Pi

La ràdio pot semblar una tecnologia "antiga", però aquest és precisament el seu atractiu: senzilla, fiable i encara molt rellevant tant per a projectes d'entreteniment com educatius. Amb una Raspberry Pi, podeu crear una ràdio moderna i flexible: pot ser una ràdio en streaming per Internet, un reproductor de música local o fins i tot (amb un mòdul addicional) una ràdio FM. Aquest article explica com construir una ràdio basada en una Raspberry Pi de manera pràctica, des de la configuració del maquinari fins a la configuració del programari.

-

1. Concepte de ràdio basat en Raspberry Pi

En general, hi ha dos enfocaments principals:

1. Ràdio per Internet (streaming)
La Raspberry Pi reprodueix emissions de ràdio des d'Internet a través de Wi-Fi/Ethernet. Aquest és el mètode més fàcil i comú, ja que no requereix cap equip de RF especial.

2. Ràdio FM/AM (amb dispositiu opcional)
Requereix un mòdul sintonitzador (per exemple, un receptor FM via I2C/SPI) o un dispositiu de ràdio definida per programari (SDR). La configuració és més complexa i sovint depèn del dispositiu utilitzat.

En aquest article, ens centrarem principalment en la ràdio per Internet perquè és la més fàcil per a principiants i adequada per crear en poc temps.

-

2. Equipament necessari

Aquí teniu una llista de components recomanats:

– Raspberry Pi (es recomana Pi 3/4/Zero 2 W)
– MicroSD mínim de 8–16 GB
– Font d'alimentació estable (5V, corrent segons el model Pi)
– Connexió a Internet (Wi-Fi o cable LAN)
– Sortida d'àudio:
– Altaveus actius mitjançant un jack de 3.5 mm (en models compatibles), o
– Altaveu/amplificador USB, o
– DAC àudio HAT (opcional, millor qualitat)
– Monitor i teclat (per a la configuració inicial) o accés SSH
– Caixa/carcassa del projecte (opcional, per a més netedat)

Si voleu una ràdio amb controls físics, podeu afegir:
– Botó, codificador rotatiu o pantalla OLED/LCD.

-

LLEGIR  Passos per crear una ràdio AM per a radiodifusió local

3. Instal·lació del sistema operatiu Raspberry Pi

1. Baixeu i instal·leu Raspberry Pi Imager al vostre PC/portàtil.
2. Inseriu la microSD i, a continuació, instal·leu el sistema operatiu Raspberry Pi OS Lite (sense escriptori) per a un ús eficient dels recursos o la versió d'escriptori si voleu una interfície gràfica.
3. Abans d'escriure la imatge, podeu definir:
– Wi-Fi (SSID i contrasenya)
– Nom d'usuari i contrasenya
– Activació SSH
4. Arrenqueu la Raspberry Pi i assegureu-vos que Internet funciona.

Després d'iniciar sessió al sistema, actualitzeu els paquets:

"`bash
sudo apt update
sudo apt upgrade -y

-

4. Configuració de l'àudio a la Raspberry Pi

Comprova els dispositius d'àudio detectats:

"`bash
jugar -l

Si feu servir àudio via HDMI o un connector (segons el model), podeu seleccionar la sortida predeterminada. Algunes versions de Raspberry Pi OS configuraran automàticament els paràmetres d'àudio, però podeu provar la sortida mitjançant el següent:

"`bash
prova-d'altaveu -t wav -c 2

Si feu servir una targeta de so USB o un DAC HAT, normalment apareixerà com un dispositiu nou. Assegureu-vos que la sortida sigui correcta per escoltar la ràdio.

-

5. Instal·lació del reproductor de ràdio per Internet (MPD + MPC)

Una de les maneres més estables és utilitzar MPD (Music Player Daemon) per reproduir àudio i MPC com a controlador des del terminal.

Instal·leu el paquet:

"`bash
sudo apt install -y mpd mpc

Assegureu-vos que MPD estigui en execució:

"`bash
sudo systemctl activa mpd
sudo systemctl iniciar mpd

Estat de la comprovació:

"`bash
estat del systemctl mpd

-

6. Afegir una llista d'emissores de ràdio

MPD pot reproduir fluxos d'URL. Pots afegir emissores de ràdio a les llistes de reproducció de MPD.

Exemple d'afegir una transmissió de ràdio:

"`bash
mpc afegeix http://streamurl-radio-anda:8000/stream

Aleshores juga:

"`bash
reproducció de MPC

Per veure la llista:

"`bash
llista de reproducció de MPC

Crea una llista de reproducció d'emissores preferides
Podeu crear un fitxer de llista de reproducció `.m3u`:

LLEGIR  Com funcionen els mòduls de ràdio per al bricolatge

1. Crea una carpeta de llista de reproducció (si no n'existeix):
"`bash
mkdir -p ~/llistes de reproducció

2. Crea un fitxer:
"`bash
nano ~/llistes de reproducció/ràdio.m3u

3. Empleneu algunes URL de transmissió, per exemple:

http://example.com/stream1
http://example.com/stream2
http://example.com/stream3

Afegiu-los a MPD carregant-los individualment o configurant el directori de música/llista de reproducció de MPD. Una manera ràpida: afegiu-los directament des d'un fitxer (opcional segons la configuració de MPD) o copieu la llista de reproducció a la carpeta de llistes de reproducció de MPD (normalment `/var/lib/mpd/playlists/`).

-

7. Configuració de MPD per fer-la més adequada per a la ràdio

Edita la configuració de MPD:

"`bash
sudo nano /etc/mpd.conf

Algunes parts importants:

– Assegureu-vos que la sortida d'àudio sigui correcta. Exemples comuns:
"`conf
audio_output {
escriu “alsa”
nom “Sortida ALSA”
tipus_mesclador “programari”
}

– Podeu configurar el buffer per fer que la transmissió en temps real sigui més estable (opcional, depenent de les condicions de la xarxa).

Un cop fet això, reinicieu MPD:

"`bash
sudo systemctl reinicia mpd

-

8. Feu que la ràdio s'encengui automàticament en arrencar

Perquè la Raspberry Pi reprodueixi la ràdio immediatament després d'encendre-la:

1. Crea un script senzill, per exemple:

"`bash
nano ~/start-radio.sh

Contingut:

"`bash
!/bin/bash
dorm 5
mpc clar
mpc afegeix http://streamurl-radio-anda:8000/stream
volum 70 de MPC
reproducció de MPC

Desa i després dóna permís d'execució:

"`bash
chmod +x ~/inicia-ràdio.sh

2. Crea un servei systemd:

"`bash
sudo nano /etc/systemd/system/radio.service

Contingut:

"`ini
[Unitat]
Descripció=Reproducció automàtica de ràdio
Després de=xarxa-en-línia.destinació mpd.servei
Desitja=xarxa-en-línia.objectiu

[Servei]
Usuari=pi
ExecStart=/home/pi/start-radio.sh
Reiniciar=en cas de fallada

[Instal·la]
WantedBy = multiusuari.target

Activa:

"`bash
sudo systemctl dimoni-recarrega
sudo systemctl activa el servei de ràdio
sudo systemctl inicia ràdio.service

Nota: si el nom d'usuari no és `pi`, ajusteu la ruta i `User=`.

-

9. Afegir controls (opcional)

Perquè sembli una ràdio real, podeu afegir controls físics:

– Botó Següent/Anterior per canviar d'emissora:
– `mpc següent`
– `mpc anterior`
– Botó Reproduir/Aturar:
– `mpc commuta`
– `parada mpc`
– Codificador rotatori per al volum:
– `volum mpc +5`
– `volum mpc -5`

LLEGIR  Tutorial sobre el muntatge d'una ràdio amb un sensor de freqüència

Per implementar els botons, podeu utilitzar Python (GPIO) i cridar l'ordre `mpc`. Aquesta combinació és molt popular perquè és senzilla i fàcil de desenvolupar.

-

10. Consells de desenvolupament i resolució de problemes

Alguns problemes comuns i les seves solucions:

1. Sense so
– Assegureu-vos que la sortida d'àudio sigui correcta (dispositiu ALSA).
– Prova de canviar l'altaveu/targeta de so USB.
– Assegureu-vos que el volum no sigui 0: `mpc volume 80`

2. La transmissió en temps real és intermitent
– Utilitzeu una connexió LAN si és possible.
– Afegeix un retard abans de reproduir a l'arrencada (`sleep 5` o `sleep 10`).
– Seleccioneu una transmissió de taxa de bits més baixa.

3. MPD no pot reproduir URL
– Intenta assegurar-te que l'URL sigui correcta i que es pugui obrir des de la mateixa xarxa.
– Assegureu-vos que els paquets de suport estiguin disponibles (normalment són suficients amb l'últim sistema operatiu Raspberry Pi).

4. Voleu una interfície més "ràdio"
– Instal·leu un frontend com ara ncmpcpp (interfície d'usuari de terminal) o creeu una interfície d'usuari web senzilla.

-

Tancament

Construir una ràdio basada en Raspberry Pi és un projecte divertit i gratificant. Combinant MPD i MPC, podeu crear una ràdio per Internet estable que s'inicia automàticament en arrencar i que es pot ampliar fàcilment per incloure dispositius amb botons físics, una pantalla petita i fins i tot una carcassa personalitzada. Un cop hàgiu dominat la versió bàsica, podeu anar un pas més enllà: afegiu una pantalla OLED per mostrar els noms de les emissores, creeu un menú preestablert o fins i tot afegiu un mòdul sintonitzador per a la ràdio FM.

Si voleu, puc continuar amb versions més específiques: per exemple, una llista d'emissores de ràdio indonèsies llestes per utilitzar (URL), un exemple de codi Python per a un commutador GPIO o una guia per utilitzar un DAC HAT per obtenir una qualitat de so molt millor.

Deixa un comentari