Turinys:

„Raspberry Pi Audio Dac-Amp-Streamer“: 14 žingsnių
„Raspberry Pi Audio Dac-Amp-Streamer“: 14 žingsnių

Video: „Raspberry Pi Audio Dac-Amp-Streamer“: 14 žingsnių

Video: „Raspberry Pi Audio Dac-Amp-Streamer“: 14 žingsnių
Video: The BEST DIY Raspberry Pi Music Streamer?! | Audiophonics Evo-Sabre 2024, Lapkritis
Anonim
„Raspberry Pi Audio Dac-Amp-Streamer“
„Raspberry Pi Audio Dac-Amp-Streamer“
„Raspberry Pi Audio Dac-Amp-Streamer“
„Raspberry Pi Audio Dac-Amp-Streamer“

Pakartotinai naudokite „Google AIY“balso skrybėlę kaip specialų stereo garso transliacijos įrenginį be galvos.

Dabar, kai „Google AIY“balso rinkiniams artėja dveji metai, galbūt pastebėjote, kad naujovė šiek tiek nusidėvėjo. Arba jums gali kilti klausimas, ar jūsų naršyklės skelbimai apie artimiausią renesanso festivalį turi ką nors bendro su jūsų užduotu klausimu apie tai, kur galite rasti gerą pasiūlymą dėl šarvuotų bėgimo batelių.

Jei jau turite šį projektą, šis projektas parodys, kaip paimti esamą „Google AIY“balso rinkinį ir pakeisti jo paskirtį kaip specialų garso srautinį perdavimą be galvos. Jei dar neturite rinkinio ir gyvenate netoli mikro centro; jums pasisekė - vis dar yra daug, ir aš abejoju, ar jie bus pigesni nei dabartinė 5 USD kaina. (Tiesą sakant, jie yra 3 USD nuo 2019 m. liepos mėn.)

Šis projektas yra susijęs su garsu ir neturi nieko bendra su AI. Mes dirbsime su visiškai atskira operacine sistema, saugoma atskiroje „micro sd“kortelėje, kuri leis jums nepaliesti visų AI funkcijų. Be to, mes patobulinsime vartotojo patirtį pristatydami stereo garsą (už kelis dolerius daugiau), kai mes kuriame keičiamo dydžio garso transliacijos įrenginį. Galiausiai, baigę šį projektą, paliksime balso skrybėlę būseną, pasirengusią būsimai plėtrai. Plėtimosi apribojimai bus tik mūsų kūrybiškumas.

1 žingsnis: pirkimas

Pirkimai
Pirkimai

Parašysiu šią pamoką iš perspektyvos, kad jūs dar neturite „Google Voice“rinkinio. Jei jau turite balso rinkinio sąranką - toliau reikalingi papildomi elementai pažymėti *. Be to, naujausias „Raspberry Pi“pasiūlymas („Pi 3 A+“) puikiai tinka šiam projektui, atsižvelgiant į jo formą, ir aš labai rekomenduoju jį nusipirkti. Tačiau bet kuris „Pi“turėtų veikti tol, kol jame tilps balso rinkinio skrybėlė ir GPIO.

Ingridientai:

  • Raspberry Pi (rekomenduojame Pi 3 A +)
  • 5,25 V 2,4 amperų mikro usb maitinimo šaltinis
  • „Micro SD“kortelė (priklausomai nuo jūsų muzikos kolekcijos dydžio turėtų pakakti 16 GB)
  • Max98357A dac ir stiprintuvas (iš „Adafruit“)*
  • Pranešėjas*(-ai). Komplekte yra vienas, tačiau norint gauti stereo, mums reikės papildomo garsiakalbio. (taip pat „Adafruit“)
  • „Google AIY Voice“rinkinys
  • Antraštė - viena juosta*
  • Garsiakalbio laidas*

Reikalingi įrankiai: lituoklis, lituoklis, „Philips“atsuktuvas, kurio dydis 00 arba 000. vielos nuėmikliai, maskavimo arba dažymo juosta, skirta laikinai pritvirtinti antraštę litavimo metu, USB į „micro SD“adapteris.

2 žingsnis: Surinkite aparatūrą

Surinkite aparatūrą
Surinkite aparatūrą

Iš dėžutės balso skrybėlė atvyksta mono režimu. Laimei, „Google“inžinieriai sukūrė plokštę, kad būtų galima atnaujinti stereofoninę sistemą, tiesiog pridėjus kitą „Max98357a“plokštę, kuri sėdėtų kaip kita skrybėlė. Jie net nubrėžė mums dėžutę.

Jūs atspėjote: mes sukursime skrybėlę ant skrybėlės. Aparatūra viršuje Aparatūra jau viršuje.

Naudodami „Adafruit Max98357a“mikroschemų rinkinio pateiktą antraštę, lituojame 7 kontaktų antraštę prie balso skrybėlės tiesiai po žodžiais „AIY projektai balso skrybėlę“. Maskavimo juostos gabalas, pritvirtintas prie ilgesnių vyriškų kaiščių prie plokštės paviršiaus, gali būti naudingas, kad antraštės neslystų iš vietos, nes šiame litavimo etape dirbsime su plokštele aukštyn kojomis.

Taip pat lituokite du kaiščius baltos kontūrinės dėžutės viduje prie balso skrybėlės, kur sėdės mėlyna max98357a lenta.

NEGALIMA PAKEISTI GARSIAKALBIO JUNGIKLIO MAX98357a LENTOJE!

Vietoj to prijunkite garsiakalbių gnybtus prie balso skrybėlės, išlygintos tiesiai po tuo, kur du poliai buvo ką tik prilituoti. Kairiojo ir dešiniojo garsiakalbių jungtys turi būti suderintos viena šalia kitos, vienoje keturių gnybtų eilėje.

Apverskite lentą dešine puse į viršų.

Lituokite trumpiklį, pažymėtą „JP4“, uždarydami ant megztinio lašą lydmetalio. Nepamirškite šios dalies, kitaip neturėsime stereo!

Atsargiai pritvirtinkite mėlyną max98357a lentą prie ilgų vyriškų kaiščių, kyšančių iš balso skrybėlės. Tai buvo šiek tiek sunku, todėl pabandykite lituoti kaiščius kuo statmenesnei lentai. Šiek tiek susiginčijus dviejų kaiščių antraštėje, pavyko tai padaryti tik nedidelėmis pastangomis.

Uždėkite išorinių kaiščių lydmetalį prie mėlynos max98357a mikroschemos - tiek septynių kaiščių antraštė, tiek dviejų kaiščių antraštė turi tvirtai laikyti max98357a.

Baigta su litavimu!

3 žingsnis: pritvirtinkite prie „Pi“ir prijunkite garsiakalbius

Prijunkite prie „Pi“ir prijunkite garsiakalbius
Prijunkite prie „Pi“ir prijunkite garsiakalbius

Naudodami du nailono tarpiklius, pateiktus kartu su rinkiniu, atsargiai sujunkite moteriško balso rinkinį ant vyriškų antgalių ant aviečių pi. Nailoninės tarpinės turėtų užsifiksuoti savo vietose, taip užtikrinant tvirtą tvirtinimą prie priešingų antraštės kampų.

Naudodami mažą „Philips“galvutės atsuktuvą (000 arba 00), pakankamai atsukite garsiakalbio gnybto varžtus, kad garsiakalbio laidas tilptų į suspaudimo angas. Jūs neturėtumėte atsukti varžtų, bet pakankamai atidarykite juos ten, kur jie jaučiasi laisvi.

Įkiškite mažo skersmens garsiakalbio laidą į angą ir priveržkite varžtus, kad tvirtai laikytumėte garsiakalbio laidą.

Man pasirodė, kad šis žingsnis yra pats baisiausias viso projekto iššūkis - neradau pakankamai mažo atsuktuvo arba mano silpnas garsiakalbio laidas buvo per plonas, kad sugertų varžto suspaudimą, ir verčiau sulaužys, nei tvirtai laikysis. Aš padariau pakeitimą, pastatydamas „plunksnas“arba mažesnius laidus, kurie buvo pakankamai tvirti, kad atlaikytų suspaudimą, ir pakankamai ilgai, kad būtų prilituoti prie plikų garsiakalbio laido galų. Bjauru, taip, bet veiksminga.

Baigta su aparatūra!

4 veiksmas: atsisiųskite „Raspbian Lite“

Atsisiųskite „Raspbian Lite“
Atsisiųskite „Raspbian Lite“
Atsisiųskite „Raspbian Lite“
Atsisiųskite „Raspbian Lite“

Daugelis iš jūsų jau esate susipažinę su vaizdų atsisiuntimo ir įrašymo į SD kortelę procesu, o tolesni veiksmai šiek tiek viršija šio projekto taikymo sritį. Kiekvienu atveju atliksiu toliau nurodytus veiksmus, bet jei vis tiek įstrigote, yra daugybė išteklių, kurie padės.

Paskutinis pakeitimas: „Buster Lite“atsisiuntimas 2020 m. Birželio mėn.

· Atsisiųskite ir įdiekite „Etale by Balena Software“

· Atsisiųskite naujausią „Raspbian Lite“OS iš raspberrypi.org

· Naudodami „Etcher“įrašykite Raspbian vaizdą į SD kortelę

· Kai baigsite, nebent nenaudosite pi zero w - perkelkite naujai įamžintą SD kortelę į mūsų Raspberry Pi. Jei naudojate „pi zero w“, norėdami sukonfigūruoti „wifi“, įkrovos skaidinyje turime šiek tiek redaguoti failą WPA_Supplicant.conf.

5 žingsnis: sukonfigūruokite „Pi“

Konfigūruokite „Pi“
Konfigūruokite „Pi“

Naudodami naujai sukurtą įvaizdį, įjunkime pi. Bet pirmiausia leiskite skolintis monitorių ir klaviatūrą, kad padėtų atlikti konfigūraciją. Įdėkite „micro sd“kortelę ir prijunkite „micro usb“įkrovimo kabelį. Jei pasiseks, žalia lemputė keletą kartų sumirksės, kai ji įsijungs. Pirmasis įkrovimas gali užtrukti kelias minutes, tačiau per 5 minutes turėtume būti pasirengę dirbti su savo konfigūracija. „Lite“„Raspbian“neturi darbalaukio.

Kai pasirodys komandų eilutė: prisijunkite kaip pi, slaptažodis „avietė“.

· Įeikite į konfigūracijos skydelį, komandų eilutėje įvesdami „sudo raspi-config“.

· Nedelsdami pakeiskite slaptažodį.

· Nustatykite „wifi“naudodami tinklo parinktis konfigūracijos skydelyje

· Pakeiskite lokalizacijos parinktis ir nustatykite laiko juostą

· Įjunkite SSH naudodami sąsajų skydelio parinktį

· Paleiskite „sudo apt-get update“, kad atnaujintumėte programinę įrangą į naujausią versiją

Mums reikės „Pi“IP adreso. Aš rekomenduoju programą, pavadintą „FING“, kurią galima atsisiųsti į bet kurį „Android“įrenginį ir kurioje bus išvardyti visi prie jūsų tinklo prijungti įrenginiai. Mes ieškotume prietaiso, pavadinto „raspberrypi“. Užsirašykite IP adresą.

Nuo šio momento mums nebereikės monitoriaus ar klaviatūros. Visos tolesnės konfigūracijos bus atliekamos naudojant komandų eilutes per SSH seansą.

6 veiksmas: naudokite SSH, kad atidarytumėte sesiją nuotoliniame kompiuteryje

SSH naudojimas yra gana paprastas. Atidarykite terminalo langą iš bet kurio tinklo įrenginio ir įveskite komandą

ssh pi@myipaddress

Pakeiskite „myipaddress“skaitinėmis reikšmėmis, gautomis naudojant fing.

Pirmą kartą galite būti pasveikinti bauginančiu įspėjimu, nurodančiu, kad jūsų nėra pakviestųjų sąraše, tačiau yra sakinys, kuriame turėtų būti parašyta „pašalinti tai …“, nukopijuokite ilgą simbolių eilutę ir įklijuokite ją į komandą raginimas, paspauskite „Enter“. Tada naudodami rodyklės aukštyn klavišą pakartokite ssh pi@myipaddress komandą, pasirinkite taip ir dabar įveskite slaptažodį. Sveikiname !, dabar esate prisijungę prie savo įrenginio, jei žiūrite komandų eilutę „pi@raspberrypi: ~ $“.

7 veiksmas: įdiekite „Mopidy“

Įdiekite „Mopidy“
Įdiekite „Mopidy“

Mes ketiname įdiegti „Mopidy“kaip mūsų muzikos serverį. Čia yra daugybė variantų, tačiau aš jums parodysiu, kaip įdiegti plėtinį, pavadintą „Muzikos dėžutė“, kuris leis jums valdyti muziką iš žiniatinklio sąsajos, o ne komandinės eilutės.

Kas yra Mopidy? Pasak jo svetainės, „Mopidy“yra eilė didelių žodžių, dėl kurių šiuo metu jaučiuosi gana prastesnė, tačiau, tarkime, „Mopidy“yra platforma, iš kurios gros mūsų muzika. Tai bus muzikos serveris, MPD (muzikos grotuvo demonas) ir žiniatinklio serveris. „PiMusic Box“priedas pasiūlys svetainę, kurioje galime naršyti ir valdyti „Mopidy“. Aš supratau, kad kadangi jis puikiai žaidžia su daugybe populiarių paslaugų, tokių kaip „Spotify“ar „Google Play“muzika, jis būtų tinkamas šiam pamokymui. Be to, visai šaunu.

Žemiau pateikiamos instrukcijos, begėdiškai nukopijuotos iš „Mopidy“, kad jas būtų galima įdiegti iš komandinės eilutės:

1. Pridėkite archyvo GPG raktą:

sudo wget -q -O -https://apt.mopidy.com/mopidy.gpg | sudo apt -key add -

2. Pridėkite APT repo prie savo paketo šaltinių:

sudo wget -q -O /etc/apt/sources.list.d/mopidy.list

Galiausiai įdiekite „mopidy“:

sudo apt-get atnaujinimas

sudo apt-get install mopidy

Baikite begėdišką kopiją.

8 veiksmas: naudokite „Python Pip“, kad įdiegtumėte kitus… Įdiegimai (plėtiniai)

Mes ką tik įdiegėme paprastą vanilę „Mopidy“, bet mes tik pradedame. Plėtiniai bus mūsų statybiniai blokai, kad būtų galima pritaikyti paprastą vanilinį „Mopidy“. Kadangi dauguma plėtinių, kuriuos mes siejame su pagrindine „mopidy“, yra parašyti „python“, mes naudosime „apt“atitikmenį, būdingą „python“.

Prieš pradėdami naudoti pip, pirmiausia įsitikinkime, kad turime visus „gstreamer“papildinius naudodami apt:

sudo apt install

python3-gst-1.0 / gir1.2-gstreamer-1.0 / gir1.2-gst-plugins-base-1.0 / gstreamer1.0-plugins-good / gstreamer1.0-plugins-bjaurus / gstreamer1.0-plugins-bad / gstreamer1.0-tools

Tai gali užtrukti kelias minutes, kol bus įdiegta. Jei neturite „Gstreamer“, galbūt negalėsite transliuoti muzikos.

Dabar galime įdiegti „python pip“:

sudo apt install build-essential python3-dev python3-pip

Dabar mes galime naudoti „pip“, kad pridėtume daugiau nešvarių grynuolių. „Pip“yra „python“įrankis, panašus į „apt“, tačiau manau, kad jis veikia šiek tiek greičiau nei „apt“. Šiek tiek lėčiau nuo bloko, bet jis prasideda gana greitai.

Žemiau yra keturi, kad galėtume pradėti:

Tinklo priekinė dalis. Naudokime „Iris“, bet jei norite, galite išbandyti „mopidy-musicbox-webclient“:

sudo python3 -m pip įdiegti „Mopidy -Iris“

30 radijo kanalų interneto radijo stotis:

sudo python3 -m pip įdiegti mopidy -somafm

Kitas interneto radijo paslaugų centras su dar daugiau kanalų:

sudo python3 -m pip įdiegti mopidy -TuneIn

Ir dar viena mobiliojo prietaiso priekinė dalis. Radijo stotys ir „Iris“nežaidžia kartu gražiai, tačiau mobiliuosiuose įrenginiuose galima klausytis visų rūšių interneto raciono stočių:

sudo python3 -m pip įdiegti „Mopidy -Mobile“

Baigę turėtumėte turėti prieigą prie „Music Box“naudodami:

myipaddress: 6680/iris/-or- https:// localhost: 6680/musicbox_webclient

Jei bandysite leisti muziką, iš garsiakalbių vis tiek nieko neišeis.

Kitų funkcijų ir plėtinių sąrašas: padėkite sau:

sudo pip paieška mopidy

Čia galite toliau pridėti pasirinktų plėtinių.

Pridedu „mopidy“konfigūracijos failo pavyzdį. Nesivaržykite naudoti /etc/mopidy/mopidy.conf turinį

sudo nano /etc/mopidy/mopidy.conf

9 veiksmas: nustatykite „Mopidy“kaip paslaugą

Nustatykite „Mopidy“kaip paslaugą
Nustatykite „Mopidy“kaip paslaugą

Kadangi paleidę norėsime paleisti „mopidy“, dvi komandos leis „mopidy“paleisti paleidžiant:

sudo systemctl įgalina mopidy

sudo dpkg-konfigūruoti mopidy

Perkraukite, tada paleiskite

sudo systemctl būsena mopidy - l

patikrinti savo būseną. Turėtumėte pamatyti žalią indikatorių. „Mopidy“turi labai naudingą palaikymo svetainę, padedančią atlikti tolesnes konfigūravimo parinktis. Daugiau informacijos rasite „Mopidy Documentation“svetainėje.

10 veiksmas: pridėkite savo muziką

Pridėkite savo muziką
Pridėkite savo muziką

Pagal numatytuosius nustatymus „mopidy“norės išsaugoti vietinę muziką aplanke, esančiame/var/lib/mopidy/media. Ten nukopijuokite savo muzikos kolekciją. Manau, kad lengviausia tiesiog išimti sd kortelę iš pi (po saugaus išjungimo) ir naudojant „micro sd to usb“adapterį prijunkite adapterį prie saugyklos įrenginio ir ten nukopijuokite/įklijuokite. (tai gali užtrukti, priklausomai nuo jūsų kolekcijos dydžio). Baigę grąžinkite sd kortelę į pi, paleiskite ją, vėl prijunkite ir įveskite:

sudo mopidyctl vietinis nuskaitymas

Taip jūsų muzika bus pridėta prie vietinės „Media Box“medijos bibliotekos. Galite pastebėti, kad.wma failai neatpažįstami kaip garsas, o.ogg failai atrodo praleisti nuskaitymo metu. Tačiau Mp3 failai neturėtų būti problema.

11 veiksmas: garso plokštės konfigūracijos failas - Asound.conf

Dar neturite nieko failo /etc/asound.conf, bet jei turite, pakeiskite turinį žemiau esančiu arba sukurkite jį naudodami:

sudo nano /etc/asound.conf

ir įklijuokite:

parinktys snd_rpi_googlehat_soundcard index = 0

pcm.softvol {type softvol slave.pcm dmix control {name Master card 0}} pcm.! default {type asym playback.pcm "plug: softvol"} ctl.! default {type hw card 0}

Ctrl-x ir Y, kad išsaugotumėte aukščiau pateiktą failą kaip naują asound.conf failą.

12 veiksmas: įsitikinkite, kad „Configure.txt“faile /boot naudojame teisingą perdangą

tipo

sudo nano /boot/config.txt

Paskutinės kelios eilutės turėtų būti panašios į kažką panašaus į žemiau pateiktą. Mes norime užtikrinti, kad kartu su bet kokia ankstesnė perdanga, pvz., Mano hifiberry dac, būtų komentuojamas standartinis garsas, kartu įgyvendinant „Google Voice Hat“perdangą. Galiausiai norime nurodyti pi naudoti i2s atvaizdavimą. Indikatorius # nurodo sistemai ignoruoti eilutę.

# Įgalinti garsą (įkeliamas snd_bcm2835)

#dtparam = audio = on #dtoverlay = hifiberry-dac dtoverlay = googlevoicehat-soundcard dtoverlay = i2s-mmap

iš naujo paleiskite, jei viskas atrodo panašiai kaip aukščiau. Palaukite kelias minutes, atidarykite naršyklę į muzikos dėžutės URL ir paleiskite muziką.

13 žingsnis: Mėgaukitės muzika

Jei klausotės stereofoninio gerumo, misija įvykdyta!

Vienas iš gražiausių dalykų naudojant „aviečių pi“kaip muzikos serverį be galvos, prijungtą prie „wifi“, yra tai, kad jis veikia neužimdamas daug išteklių. Tiesa, mes siurbiame tik 3 vatus vienam kanalui, bet to turbūt pakanka klausantis iš arti. Jūsų telefono baterija jums padėkos.

Taip pat yra labai svarbus žalias veiksnys - gurkšnojame tik 5,25 volto energijos. Palyginti su „Bluetooth“, mes galime nustatyti radijo srautą ir nebūti įtvirtinti 30 pėdų „Bluetooth“diapazone. Kalbant apie mūsų telefoną, galime šiek tiek laisviau skambinti, žaisti žaidimą ir klajoti, nenutraukdami muzikos srauto. Mes tik subraižėme paviršių. Yra daugybė galimų „mopidy“plėtinių, kuriuos reikia ištirti, o „mopidy“turi vis didesnę kūrėjų bazę, nes ji yra atviro kodo. Leisiu jums patiems ištirti jus dominančias funkcijas.

14 žingsnis: Išvada

Išvada
Išvada

Viena iš ryškiausių šio projekto savybių yra ta, kad mes neribojame savo pi, užblokuodami prieigą prie GPIO. Tai leidžia mums pasiekti daugybę kitų galimybių, nes balso skrybėlė buvo sukurta taip gerai. Pavyzdžiui, kitas mano projektas bus pridėti momentinį mygtuko jungiklį kaip išjungimo mygtuką. Tai turėtų būti lengva, ir aš jau žinau, kur smeigtukai turi nusileisti: jie netrukdo. Iš ten? Na, šiam projektui mes visiškai ignoravome mikrofoną - gal pi karaoke? Galbūt LED šviesos šou ar pridėti variklį riedančiam „Jukebox“? Visi kaiščiai vis dar yra prieinami ir prieinami. Kyla klausimas, kodėl gi ne? Ir tik tuo atveju, jei norite grįžti prie AI, tiesiog įdėkite seną SD kortelę ir leiskite „Google“atsakyti stereofoniniu būdu.

Rekomenduojamas: