Kako napraviti radio baziran na Raspberry Pi-ju
Radio možda zvuči kao „stara“ tehnologija, ali upravo u tome leži njegova privlačnost: jednostavan, pouzdan i još uvijek vrlo relevantan za zabavne i obrazovne projekte. Pomoću Raspberry Pi-ja možete kreirati moderan, fleksibilan radio – to može biti internet streaming radio, lokalni muzički plejer ili čak (uz dodatni modul) FM radio. Ovaj članak pokriva kako na praktičan način izgraditi radio baziran na Raspberry Pi-ju, od podešavanja hardvera do konfiguracije softvera.
-
1. Koncept radija zasnovanog na Raspberry Pi-ju
Općenito, postoje dva glavna pristupa:
1. Internet radio (streaming)
Raspberry Pi reprodukuje radio programe sa interneta putem Wi-Fi/Ethernet mreže. Ovo je najlakša i najuobičajenija metoda, jer ne zahtijeva nikakvu posebnu RF opremu.
2. FM/AM radio (s opcionim uređajem)
Zahtijeva modul tjunera (npr. FM prijemnik putem I2C/SPI) ili uređaj sa softverski definiranim radiom (SDR). Konfiguracija je složenija i često zavisi od korištenog uređaja.
U ovom članku, glavni fokus je na internet radiju jer je najprilagođeniji početnicima i najpogodniji za stvaranje u kratkom vremenu.
-
2. Potrebna oprema
Evo liste preporučenih komponenti:
– Raspberry Pi (preporučuje se Pi 3/4/Zero 2 W)
– MicroSD kartica minimalno 8–16 GB
– Stabilno napajanje (5V, struja prema Pi modelu)
– Internet konekcija (Wi-Fi ili LAN kabl)
– Audio izlaz:
– Aktivni zvučnici putem 3.5 mm priključka (na podržanim modelima) ili
– USB zvučnik/pojačalo, ili
– DAC audio HAT (opciono, bolji kvalitet)
– Monitor i tastatura (za početno podešavanje) ili SSH pristup
– Kućište/kutija projekta (opciono, radi urednosti)
Ako želite radio s fizičkim kontrolama, možete dodati:
– Pritisni taster, rotacioni enkoder ili OLED/LCD ekran.
-
3. Instaliranje operativnog sistema Raspberry Pi
1. Preuzmite i instalirajte Raspberry Pi Imager na vaš računar/laptop.
2. Umetnite microSD karticu, a zatim flešujte Raspberry Pi OS Lite (bez desktop verzije) za efikasnu upotrebu resursa ili Desktop verziju ako želite grafički interfejs.
3. Prije pisanja slike, možete postaviti:
– Wi-Fi (SSID i lozinka)
– Korisničko ime i lozinka
– SSH aktivacija
4. Pokrenite Raspberry Pi i provjerite da li internet radi.
Nakon prijave na sistem, ažurirajte pakete:
“`bash
sudo apt update
sudo apt nadogradnja -y
"`
-
4. Podešavanje zvuka na Raspberry Pi-ju
Provjerite otkrivene audio uređaje:
“`bash
aplay -l
"`
Ako koristite zvuk putem HDMI-a ili priključka (ovisno o modelu), možete odabrati zadani izlaz. Neke verzije Raspberry Pi OS-a će automatski konfigurirati postavke zvuka, ali izlaz možete testirati na sljedeći način:
“`bash
test-zvučnika -t wav -c 2
"`
Ako koristite USB zvučnu karticu ili DAC HAT, obično će se pojaviti kao novi uređaj. Provjerite je li vaš izlaz ispravan da biste čuli radio.
-
5. Instaliranje internet radio playera (MPD + MPC)
Jedan od najstabilnijih načina je korištenje MPD-a (Music Player Daemon) za reprodukciju zvuka i MPC-a kao kontrolera iz terminala.
Instalirajte paket:
“`bash
sudo apt install -y mpd mpc
"`
Provjerite da li MPD radi:
“`bash
sudo systemctl omogućava mpd
sudo systemctl start mpd
"`
Provjeri status:
“`bash
status systemctl mpd
"`
-
6. Dodavanje liste radio stanica
MPD može reproducirati URL streamove. Možete dodati radio stanice na MPD liste za reprodukciju.
Primjer dodavanja jednog radio streama:
“`bash
mpc dodaj http://streamurl-radio-anda:8000/stream
"`
Zatim igrajte:
“`bash
mpc reprodukcija
"`
Da biste pregledali listu:
“`bash
MPC plejlista
"`
Kreirajte listu za reprodukciju omiljenih stanica
Možete kreirati `.m3u` datoteku s popisom pjesama:
1. Kreirajte mapu s popisom pjesama (ako još ne postoji):
“`bash
mkdir -p ~/liste za reprodukciju
"`
2. Kreirajte datoteku:
“`bash
nano ~/playliste/radio.m3u
"`
3. Unesite neke URL-ove za streaming, na primjer:
"`
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
"`
Dodajte ih u MPD tako što ćete ih učitati pojedinačno ili postavljanjem vašeg MPD direktorija za muziku/liste za reprodukciju. Brz način: dodajte ih direktno iz datoteke (opciono, ovisno o konfiguraciji vašeg MPD-a) ili kopirajte listu za reprodukciju u mapu vaše MPD liste za reprodukciju (obično `/var/lib/mpd/playlists/`).
-
7. Konfiguracija MPD-a radi veće pogodnosti za radio
Uredi MPD konfiguraciju:
“`bash
sudo nano /etc/mpd.conf
"`
Neki važni dijelovi:
– Provjerite da li je audio izlaz ispravan. Uobičajeni primjeri:
"`konf
audio_izlaz {
upišite „alsa“
naziv „ALSA izlaz“
mikser_tip "softver"
}
"`
– Možete podesiti bafer kako biste streaming učinili stabilnijim (opciono, ovisno o mrežnim uvjetima).
Kada završite, ponovo pokrenite MPD:
“`bash
sudo systemctl restart mpd
"`
-
8. Napravite da se radio automatski uključuje pri pokretanju sistema
Da bi Raspberry Pi odmah nakon uključivanja pustio radio:
1. Napravite jednostavan skript, na primjer:
“`bash
nano ~/start-radio.sh
"`
Sadržaj:
“`bash
!/bin/bash
spavanje 5
mpc jasan
mpc dodaj http://streamurl-radio-anda:8000/stream
mpc volumen 70
mpc reprodukcija
"`
Sačuvaj, a zatim daj dozvolu za izvršavanje:
“`bash
chmod +x ~/start-radio.sh
"`
2. Kreirajte systemd servis:
“`bash
sudo nano /etc/systemd/system/radio.service
"`
Sadržaj:
“`ini
[Jedinica]
Opis=Automatska reprodukcija radija
Nakon=network-online.target mpd.service
Želi=mreža-na-mreži.cilj
[Servis]
Korisnik=pi
ExecStart=/home/pi/start-radio.sh
Restart=u slučaju neuspjeha
[Instaliraj]
WantedBy = multi-user.target
"`
Omogući:
“`bash
sudo sistemctl daemon-reload
sudo systemctl omogući radio.service
sudo systemctl start radio.service
"`
Napomena: ako korisničko ime nije `pi`, prilagodite putanju i `User=`.
-
9. Dodavanje kontrola (opciono)
Da biste dobili osjećaj kao pravi radio, možete dodati fizičke kontrole:
– Dugme Sljedeće/Prethodno za promjenu stanica:
– `mpc sljedeći`
– `mpc prev`
– Dugme za reprodukciju/zaustavljanje:
– `mpc prekidač`
– `mpc zaustavljanje`
– Rotacijski enkoder za jačinu zvuka:
– `mpc volumen +5`
– `mpc volumen -5`
Za implementaciju dugmadi možete koristiti Python (GPIO) i pozvati naredbu `mpc`. Ova kombinacija je veoma popularna jer je jednostavna i laka za razvoj.
-
10. Savjeti za razvoj i rješavanje problema
Neki uobičajeni problemi i njihova rješenja:
1. Nema zvuka
– Provjerite da li je audio izlaz ispravan (ALSA uređaj).
– Pokušajte promijeniti zvučnik/USB zvučnu karticu.
– Uvjerite se da jačina zvuka nije 0: `mpc volume 80`
2. Strimovanje je isprekidano
– Ako je moguće, koristite LAN vezu.
– Dodajte odgodu prije pokretanja sistema (`sleep 5` ili `sleep 10`).
– Odaberite stream s nižom brzinom prijenosa podataka.
3. MPD ne može reproducirati URL
– Pokušajte se uvjeriti da je URL ispravna i da se može otvoriti s iste mreže.
– Provjerite da li su paketi podrške dostupni (obično dovoljni na najnovijem Raspberry Pi OS-u).
4. Želite više "radio" interfejs
– Instalirajte frontend poput ncmpcpp (terminalni UI) ili kreirajte jednostavan web UI.
-
Zatvaranje
Izrada radija baziranog na Raspberry Pi-ju je zabavan i koristan projekat. Kombinacijom MPD-a i MPC-a, možete kreirati stabilan internet radio koji se automatski pokreće prilikom pokretanja sistema i lako se proširuje tako da uključuje uređaje sa fizičkim dugmadima, malim ekranom, pa čak i prilagođenim kućištem. Nakon što ste savladali osnovnu verziju, možete ići korak dalje: dodati OLED ekran za prikaz naziva stanica, kreirati meni sa unaprijed postavljenim postavkama ili čak dodati modul tjunera za FM radio.
Ako želite, mogu nastaviti sa specifičnijim verzijama: na primjer popisom gotovih indonezijskih radio stanica (URL), primjerom Python koda za GPIO prekidač ili vodičem za korištenje DAC HAT-a za mnogo bolji kvalitet zvuka.