Hvordan lage en Raspberry Pi-basert radio

Hvordan lage en Raspberry Pi-basert radio

Radio høres kanskje ut som en «gammel» teknologi, men det er nettopp dens appell: enkel, pålitelig og fortsatt svært relevant for både underholdnings- og utdanningsprosjekter. Med en Raspberry Pi kan du lage en moderne, fleksibel radio – det kan være en internett-streamingradio, en lokal musikkspiller eller til og med (med en tilleggsmodul) en FM-radio. Denne artikkelen dekker hvordan du bygger en Raspberry Pi-basert radio på en praktisk måte, fra maskinvareoppsett til programvarekonfigurasjon.

-

1. Raspberry Pi-basert radiokonsept

Generelt sett finnes det to hovedtilnærminger:

1. Internettradio (strømming)
Raspberry Pi spiller av radiosendinger fra internett via Wi-Fi/Ethernet. Dette er den enkleste og vanligste metoden, siden den ikke krever noe spesielt RF-utstyr.

2. FM/AM-radio (med valgfri enhet)
Krever en tunermodul (f.eks. en FM-mottaker via I2C/SPI) eller en programvaredefinert radio (SDR)-enhet. Konfigurasjonen er mer kompleks og avhenger ofte av enheten som brukes.

I denne artikkelen er hovedfokuset på internettradio fordi det er mest nybegynnervennlig og egnet for å lage på kort tid.

-

2. Nødvendig utstyr

Her er en liste over anbefalte komponenter:

– Raspberry Pi (Pi 3/4/Zero 2 W anbefales)
– MicroSD minimum 8–16 GB
– Stabil strømforsyning (5V, strøm i henhold til Pi-modell)
– Internett-tilkobling (Wi-Fi eller LAN-kabel)
– Lydutgang:
– Aktive høyttalere via 3.5 mm-kontakt (på støttede modeller), eller
– USB-høyttaler/forsterker, eller
– DAC-lyd HAT (valgfritt, bedre kvalitet)
– Skjerm og tastatur (for første oppsett) eller SSH-tilgang
– Prosjektkasse/-boks (valgfritt, for ryddighetens skyld)

Hvis du ønsker en radio med fysiske kontroller, kan du legge til:
– Trykknapp, rotasjonskoder eller OLED/LCD-skjerm.

-

3. Installere operativsystemet for Raspberry Pi

1. Last ned og installer Raspberry Pi Imager på PC-en/bærbar datamaskin.
2. Sett inn microSD-kortet, og flash deretter Raspberry Pi OS Lite (uten skrivebord) for ressurseffektiv bruk, eller skrivebordsversjonen hvis du ønsker et grafisk grensesnitt.
3. Før du skriver bildet, kan du angi:
– Wi-Fi (SSID og passord)
– Brukernavn og passord
– SSH-aktivering
4. Start opp Raspberry Pi og sørg for at internett fungerer.

Etter at du har logget deg inn i systemet, oppdater pakkene:

"` bash
sudo apt oppdatering
sudo apt oppgradering -y
“

-

4. Konfigurere lyd på Raspberry Pi

Sjekk oppdagede lydenheter:

"` bash
aplay -l
“

Hvis du bruker lyd via HDMI eller en jack (avhengig av modellen), kan du velge standardutgang. Noen versjoner av Raspberry Pi OS vil automatisk konfigurere lydinnstillinger, men du kan teste utgangen ved å:

"` bash
høyttalertest -t wav -c 2
“

Hvis du bruker et USB-lydkort eller en DAC HAT, vil det vanligvis vises som en ny enhet. Sørg for at utgangen er riktig for å høre radioen.

-

5. Installere Internett-radiospiller (MPD + MPC)

En av de mest stabile måtene er å bruke MPD (Music Player Daemon) til å spille av lyd og MPC som en kontroller fra terminalen.

Installer pakken:

"` bash
sudo apt install -y mpd mpc
“

Sørg for at MPD kjører:

"` bash
sudo systemctl aktiverer mpd
sudo systemctl start mpd
“

Sjekk status:

"` bash
systemctl status mpd
“

-

6. Legge til en liste over radiostasjoner

MPD kan spille av URL-strømmer. Du kan legge til radiostasjoner i MPD-spillelister.

Eksempel på å legge til én radiostrøm:

"` bash
mpc legg til http://streamurl-radio-anda:8000/stream
“

Spill deretter:

"` bash
mpc-spill
“

For å se listen:

"` bash
mpc-spilleliste
“

Lag en spilleliste for favorittstasjoner
Du kan opprette en `.m3u` spillelistefil:

1. Opprett en spillelistemappe (hvis den ikke finnes ennå):
"` bash
mkdir -p ~/spillelister
“

2. Opprett en fil:
"` bash
nano ~/spillelister/radio.m3u
“

3. Fyll ut noen strømme-URL-er, for eksempel:
“
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
“

Legg dem til i MPD ved å laste dem inn individuelt eller ved å sette opp MPD-musikk-/spillelistekatalogen din. Rask måte: legg dem til direkte fra en fil (valgfritt avhengig av MPD-konfigurasjonen din), eller kopier spillelisten til MPD-spillelistemappen din (vanligvis `/var/lib/mpd/playlists/`).

-

7. MPD-konfigurasjon for å gjøre den mer egnet for radio

Rediger MPD-konfigurasjon:

"` bash
sudo nano /etc/mpd.conf
“

Noen viktige deler:

– Sørg for at lydutgangen er riktig. Vanlige eksempler:
«`konf
lydutgang {
skriv «alsa»
navnet «ALSA-utgang»
mixer_type «programvare»
}
“

– Du kan angi bufferen for å gjøre strømming mer stabil (valgfritt, avhengig av nettverksforholdene).

Når du er ferdig, start MPD på nytt:

"` bash
sudo systemctl omstart mpd
“

-

8. Få radioen til å slå seg på automatisk ved oppstart

Slik får du Raspberry Pi til å spille av radioen umiddelbart etter at den er slått på:

1. Lag et enkelt skript, for eksempel:

"` bash
nano ~/start-radio.sh
“

Isi:

"` bash
!/bin/bash
sove 5
mpc klar
mpc legg til http://streamurl-radio-anda:8000/stream
mpc-volum 70
mpc-spill
“

Lagre, og gi deretter utførelsestillatelse:

"` bash
chmod +x ~/start-radio.sh
“

2. Opprett en systemd-tjeneste:

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

Isi:

«`ini
[Enhet]
Beskrivelse=Autoavspilling av radio
Etter=nettverk-pålogget.mål mpd.tjeneste
Ønsker=nettverk-på-nett.mål

[Service]
Bruker=pi
ExecStart=/home/pi/start-radio.sh
Omstart = ved feil

[Installere]
WantedBy = multi-user.target
“

Aktiver:

"` bash
sudo systemctl daemon-reload
sudo systemctl aktivere radio.service
sudo systemctl start radio.service
“

Merk: Hvis brukernavnet ikke er `pi`, juster stien og `Bruker=`.

-

9. Legge til kontroller (valgfritt)

For å få det til å føles som en ekte radio, kan du legge til fysiske kontroller:

– Neste/Forrige-knapp for å endre stasjon:
– `mpc neste`
– `mpc forrige`
– Spill av/stopp-knapp:
– `mpc-veksler`
– `mpc-stopp`
– Rotasjonskoder for volum:
– `mpc-volum +5`
– `mpc-volum -5`

For å implementere knappene kan du bruke Python (GPIO) og kalle `mpc`-kommandoen. Denne kombinasjonen er veldig populær fordi den er enkel og lett å utvikle.

-

10. Utviklingstips og feilsøking

Noen vanlige problemer og løsningene deres:

1. Ingen lyd
– Sørg for at lydutgangen er riktig (ALSA-enhet).
– Prøv å bytte høyttaler/USB-lydkort.
– Forsikre deg om at volumet ikke er 0: `mpc-volum 80`

2. Strømming er periodisk
– Bruk en LAN-tilkobling hvis mulig.
– Legg til forsinkelse før avspilling ved oppstart (`sleep 5` eller `sleep 10`).
– Velg en strøm med lavere bitrate.

3. MPD kan ikke spille av URL-er
– Prøv å forsikre deg om at URL-en er riktig og kan åpnes fra samme nettverk.
– Sørg for at støttepakkene er tilgjengelige (vanligvis tilstrekkelige på det nyeste Raspberry Pi OS).

4. Ønsker et mer «radiobasert» grensesnitt
– Installer et brukergrensesnitt som ncmpcpp (terminalgrensesnitt), eller lag et enkelt webgrensesnitt.

-

Lukking

Å bygge en Raspberry Pi-basert radio er både et morsomt og givende prosjekt. Ved å kombinere MPD og MPC kan du lage en stabil internettradio som starter automatisk ved oppstart, og som enkelt kan utvides til å inkludere enheter med fysiske knapper, en liten skjerm og til og med et spesialtilpasset kabinett. Når du har fått den grunnleggende versjonen ned, kan du ta det et skritt videre: legge til en OLED-skjerm for å vise stasjonsnavn, opprette en forhåndsinnstilt meny eller til og med legge til en tunermodul for FM-radio.

Hvis du vil, kan jeg fortsette med mer spesifikke versjoner: for eksempel en liste over bruksklare indonesiske radiostasjoner (URL), et Python-kodeeksempel for en GPIO-svitsj, eller en veiledning for bruk av en DAC HAT for mye bedre lydkvalitet.

Legg igjen en kommentar