Indholdsfortegnelse:
- Trin 1: Indkøb
- Trin 2: Saml hardware
- Trin 3: Tilslut Pi og tilslut dine højttalere
- Trin 4: Download Raspbian Lite
- Trin 5: Konfigurer Pi
- Trin 6: Brug SSH til at åbne en session på en fjernmaskine
- Trin 7: Installer Mopidy
- Trin 8: Brug Python Pip til at installere andre … installationer (udvidelser)
- Trin 9: Opsætning af Mopidy som en tjeneste
- Trin 10: Tilføj din egen musik
- Trin 11: Konfigurationsfil til lydkort - Asound.conf
- Trin 12: Sørg for, at vi bruger det korrekte overlay til at konfigurere.txt i /starte
- Trin 13: Nyd musikken
- Trin 14: Konklusion
Video: Raspberry Pi Audio Dac-Amp-Streamer: 14 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Omformuler en dateret Google AIY-stemmehue som en dedikeret hovedløs stereolydstreaming-enhed.
Nu hvor Google AIY -stemmesæt nærmer sig to års alderen, har du måske fundet ud af, at nyheden er slidt lidt af. Eller du undrer dig måske over, om din browsers annoncer for den nærmeste renæssancefestival har noget at gøre med det spørgsmål, du stillede om, hvor du kan finde en god handel med under armour løbesko.
Hvis du allerede ejer et, viser dette projekt dig, hvordan du tager dit eksisterende Google AIY-stemmekit, og omformulerer det som en dedikeret hovedløs lydstreamer. Hvis du ikke allerede har et kit, og du bor i nærheden af et Micro Center; du har held og lykke - der er stadig masser rundt omkring, og jeg tvivler på, at de kommer til at blive billigere end den nuværende pris på $ 5. (faktisk er de $ 3 fra juli 2019).
Dette projekt handler om lyd og intet at gøre med AI. Vi arbejder på et helt separat operativsystem, der er gemt på et separat micro sd -kort, som giver dig mulighed for at holde al AI -funktionaliteten uberørt. Desuden vil vi forbedre brugeroplevelsen ved at introducere stereolyd (for et par dollars mere), mens vi bygger en skalerbar lydstreaming -enhed. Endelig, efter afslutningen af dette projekt, vil vi lade stemmehatten forblive i en tilstand, der er klar til fremtidig ekspansion. Udvidelsens begrænsninger vil kun være vores kreativitet.
Trin 1: Indkøb
Jeg vil skrive dette instruerbart ud fra det perspektiv, at du ikke allerede har et Google Voice -kit i din besiddelse. Skulle du allerede have konfigureret voice kit - er de nødvendige ekstra elementer markeret med en * nedenfor. Det seneste Raspberry Pi -tilbud (Pi 3 A+) er også perfekt egnet til dette projekt baseret på dets formfaktor, og jeg anbefaler stærkt at købe en alligevel. Enhver Pi bør dog gøre det, så længe det vil rumme stemmesættet hat og GPIO'er.
Ingredienser:
- Raspberry Pi (anbefal Pi 3 A +)
- 5,25V 2,4 amp mikro usb strømforsyning
- Micro SD -kort (afhængig af din musiksamlingsstørrelse bør 16 GB være tilstrækkeligt)
- Max98357A dac og forstærker (fra Adafruit)*
- Højttaler*(r). Sættet leveres med en, men for at få stereo skal vi bruge en ekstra højttaler. (også Adafruit)
- Google AIY Voice kit
- Header - enkeltbånd*
- Højttalerledning*
Nødvendige værktøjer: Loddejern, lodde, Philips skruetrækker størrelse 00 eller 000. Wirestripper, maskering eller malertape til midlertidig sikring af header under lodning, USB til micro SD -adapter.
Trin 2: Saml hardware
Ud af boksen ankommer stemmehatten i monotilstand. Heldigvis har ingeniørerne hos Google designet kortet til at tillade en opgradering til stereo ved blot at tilføje et andet Max98357a -kort til at sidde som en anden hat. De skitserede endda kassen for os.
Du gættede det: Vi bygger en hat på en hat. Hardware oven på hardware allerede på toppen.
Ved hjælp af overskriften fra Adafruit Max98357a -chipsættet begynder vi med at lodde 7 -benet header til stemmehatten direkte under ordene "AIY projects Voice Hat". Et stykke malertape, der er fastgjort til de længere hanstifter på brættets overflade, kan være nyttigt for at forhindre, at overskrifterne glider ud af stedet, da vi vil arbejde med brættet på hovedet i denne fase af lodning.
Lod også to stifter inde i den hvide skitse til stemmehatten, hvor det blå max98357a bord vil sidde.
SOLG IKKE HØJTTALERKONNEKTOREN TIL MAX98357a -Tavlen!
Tilslut højttalerterminalerne til stemmehatten i stedet, justeret direkte under, hvor de to poler lige var loddet. Den venstre højttalerforbindelse og den højre højttalertilslutning skal flugte sammen side om side i en række med fire terminaler.
Vend brættet med højre side opad.
Loddet jumperen mærket "JP4" lukket ved at efterlade en dråbe loddemetal på jumperen. Glem ikke denne del, ellers har vi ikke stereo!
Fastgør forsigtigt det blå max98357a -bord til de lange hanstifter, der stikker ud af stemmehatten. Dette var lidt svært, så prøv at lodde stifterne så vinkelret på brættet som muligt. Med en mindre vridning af to -benet header, var jeg i stand til at opnå dette med kun mindre indsats.
Fuldfør loddet på hanstifterne til den blå max98357a -chip - både den syvbolte og den to -stifts header skal holde max98357a fast på plads.
Udført med lodning!
Trin 3: Tilslut Pi og tilslut dine højttalere
Ved hjælp af de to nylonafstandsstykker, der følger med sættet, flettes forsigtigt kvindestemmesættet oven på de mandlige overskrifter på hindbærpien. Nylonafstandsstykkerne skal klikke på plads, så du får en sikker pasform på hovedets modsatte hjørner.
Brug en lille Philips -skruetrækker (000 eller 00) til at løsne skruerne på højttalerterminalen nok til, at din højttalerkabel kan passe ind i kompressionsåbningerne. Du skal ikke skulle fjerne skruerne, men åbne dem nok, hvor de føles løse.
Sæt din lille gauge -højttalerledning i åbningen, og stram skruerne for at holde højttalerkablet fast på plads.
Jeg fandt dette trin for at være den mest skræmmende udfordring i hele projektet - jeg kunne ikke finde en skruetrækker, der var lille nok, eller min spinkle højttalerledning var for fin til at absorbere skruens komprimering og ville hellere gå i stykker end at holde fast. Jeg lavede en ændring ved at bygge “nibs” eller mindre ledninger, der var faste nok til at modstå kompressionen, og lige længe nok til at kunne loddes til de bare ender af højttalertråden. Grimt, ja- men effektivt.
Udført med hardware!
Trin 4: Download Raspbian Lite
Mange af jer kender allerede processen med at downloade og brænde billeder til et SD -kort, og de efterfølgende trin ligger lidt uden for dette projekts omfang. Jeg vil kugle nedenstående trin for en sikkerheds skyld, men hvis du stadig sidder fast, er der masser af ressourcer til at hjælpe.
Sidste redigering: juni 2020 til Buster Lite Download.
· Download og installer Etcher af Balena Software
· Download det nyeste Raspbian Lite OS fra raspberrypi.org
· Brug etser til at skrive Raspbian -billedet til SD -kortet
· Når den er færdig, medmindre du bruger en pi zero w - overfør det nybillede SD -kort til vores Raspberry Pi. Hvis du bruger en pi zero w, skal vi foretage nogle redigeringer af filen WPA_Supplicant.conf i bootpartitionen for at konfigurere din wifi.
Trin 5: Konfigurer Pi
Med vores nyoprettede billede, lad os tænde for pi. Men lad os først låne en skærm og et tastatur til at hjælpe med konfigurationen. Indsæt micro sd -kortet, og tilslut mikro -usb -ladekablet. Med held vil det grønne LED -lys blinke et par gange, mens det starter op. Første opstart kan tage et par minutter, men inden for 5 minutter skal vi være klar til at arbejde med vores konfiguration. "Lite" Raspbian har ikke et skrivebord.
Når du er ved kommandoprompten: log ind som pi, kodeord "hindbær".
· Få adgang til konfigurationspanelet ved at skrive "sudo raspi-config" ved kommandoprompten.
· Skift din adgangskode med det samme.
· Opsæt din wifi ved hjælp af netværksindstillingerne på konfigurationspanelet
· Skift dine lokaliseringsindstillinger, og indstil din tidszone
· Aktiver SSH ved hjælp af grænsefladepanelindstillingen
· Kør “sudo apt-get update” for at opdatere din software til den nyeste version
Vi skal bruge Pi’ens IP -adresse. Jeg anbefaler en app kaldet "FING", der kan downloades til enhver Android -enhed, og den viser en liste over alle de enheder, der er forbundet til dit netværk. Vi ville lede efter en enhed kaldet "raspberrypi". Skriv ip -adressen ned.
Fra nu af vil vi ikke længere kræve skærmen eller tastaturet. Alle yderligere konfigurationer udføres ved hjælp af kommandolinjerne gennem en SSH -session.
Trin 6: Brug SSH til at åbne en session på en fjernmaskine
Brug af SSH er ret grundlæggende. Åbn et terminalvindue fra enhver enhed på dit netværk, og indtast kommandoen
ssh pi@myipaddress
Udskift "myipaddress" med de numeriske værdier opnået ved hjælp af fingeren.
For første gang bliver du muligvis mødt med en skræmmende advarsel, der angiver, at du ikke er på invitationslisten, men der er en sætning, der skal læse “for at fjerne dette …” kopier den lange række tegn, og indsæt den i kommandoen prompt, tryk enter. Brug derefter pil op -tasten til at gentage kommandoen ssh pi@myipaddress, vælg ja, og indtast nu din adgangskode. Tillykke !, du har nu forbindelse til din enhed, hvis du ser på en kommandoprompt på "pi@raspberrypi: ~ $".
Trin 7: Installer Mopidy
Vi kommer til at installere Mopidy som vores musikserver. Der er masser af muligheder her, men jeg vil vise dig, hvordan du installerer en udvidelse kaldet "Music Box", der giver dig mulighed for at styre din musik fra en webgrænseflade i stedet for en kommandoprompt.
Hvad er Mopidy? Ifølge sin hjemmeside er Mopidy en række store ord, der får mig til at føle mig temmelig ringere i øjeblikket, men lad os bare sige, at Mopidy er den platform, som vores musik vil spille fra. Det vil være en musikserver, en MPD (musikafspiller -dæmon) og en webserver. Tilføjelsen PiMusic Box vil tilbyde det websted, som vi kan navigere til og styre Mopidy fra. Jeg regnede med, at da det spiller godt med en masse populære tjenester som Spotify eller Google Play Musik, ville det være egnet til dette instruerbare. Plus det er meget sejt.
Nedenfor er instruktionerne skamløst kopieret fra Mopidy for at installere fra kommandolinjen:
1. Tilføj arkivets GPG -nøgle:
sudo wget -q -O -https://apt.mopidy.com/mopidy.gpg | sudo apt -key tilføjelse -
2. Føj APT -repoen til dine pakkekilder:
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list
Installer endelig mopidy:
sudo apt-get opdatering
sudo apt-get install mopidy
Afslut skamløs kopi.
Trin 8: Brug Python Pip til at installere andre … installationer (udvidelser)
Vi har lige installeret almindelig vanilje Mopidy, men vi er lige begyndt. Udvidelser vil være vores byggesten til at tilføje tilpasninger til vores vanille Mopidy. Fordi de fleste af de udvidelser, vi vil gå videre med til grundlæggende mopidy, er skrevet i python, vil vi bruge en ækvivalent af apt, der er pythonspecifik.
Inden vi begynder at bruge pip, skal vi først sikre os, at vi har alle gstreamer -plugins, der bruger apt:
sudo apt installere
python3-gst-1.0 / gir1.2-gstreamer-1.0 / gir1.2-gst-plugins-base-1.0 / gstreamer1.0-plugins-good / gstreamer1.0-plugins-ugly / gstreamer1.0-plugins-bad / gstreamer1.0-værktøjer
Dette kan tage et par minutter at installere. Uden Gstreamer kan du muligvis ikke streame musik.
Og nu kan vi installere python pip:
sudo apt installer build-essential python3-dev python3-pip
Nu kan vi bruge pip til at tilføje flere lune nuggets. Pip er et python -værktøj, der ligner apt, men jeg synes, det virker lidt hurtigere end apt. Lidt langsomt fra blokken, men det sparker ret hurtigt ind.
Nedenfor er fire for at komme i gang:
En web -frontend. Lad os bruge Iris, men hvis du vil, kan du prøve mopidy-musicbox-webclient i stedet:
sudo python3 -m pip installer Mopidy -Iris
En internetradiostations hub med 30 kanaler:
sudo python3 -m pip installer mopidy -somafm
En anden internetradio -serviceknudepunkt med endnu flere kanaler:
sudo python3 -m pip installer mopidy -TuneIn
Og endnu en frontend til mobilenhed. Radiostationer og Iris spiller ikke pænt sammen, men mobilen har alle slags internetrationer til at lytte til:
sudo python3 -m pip installer Mopidy -Mobile
Når du er færdig, skal du have adgang til Music Box ved hjælp af:
myipaddress: 6680/iris/-eller- https:// localhost: 6680/musicbox_webclient
Vi har stadig ikke noget, der kommer ud af højttalerne endnu, hvis du forsøger at afspille musik.
For en liste over andre funktioner og udvidelser: Hjælp dig selv:
sudo pip søgning mopidy
Herfra kan du fortsætte med at tilføje udvidelser efter eget valg.
Jeg har vedhæftet en prøve mopidy -konfigurationsfil. Brug gerne indholdet i /etc/mopidy/mopidy.conf
sudo nano /etc/mopidy/mopidy.conf
Trin 9: Opsætning af Mopidy som en tjeneste
Da vi vil køre mopidy ved opstart, vil to kommandoer tillade mopidy at køre ved opstart:
sudo systemctl aktiver mopidy
sudo dpkg-omkonfigurer mopidy
Genstart, og kør derefter
sudo systemctl status mopidy - l
for at kontrollere din status. Du skal se en grøn indikator. Mopidy har et meget nyttigt supportwebsted til at hjælpe med yderligere konfigurationsmuligheder. Tjek Mopidy Documentation -webstedet for flere detaljer.
Trin 10: Tilføj din egen musik
Som standard vil mopidy gerne gemme lokal musik i en mappe under/var/lib/mopidy/media. Kopiér din musiksamling der. Jeg finder det nemmest bare at fjerne sd -kortet fra pi'et (efter sikker lukning), og bruge en micro sd til usb -adapter, tilslut adapteren til din lagerenhed og kopier/indsæt der. (dette kan tage et stykke tid afhængigt af størrelsen på din samling). Når du er færdig, skal du returnere sd -kortet til pi'en, starte det op, tilslutte igen og derefter skrive:
sudo mopidyctl lokal scanning
Dette tilføjer din musik til det lokale mediebibliotek i Music Box. Du bemærker muligvis.wma -filer ikke genkendes som lyd, og.ogg -filer ser ud til at blive savnet under scanningen. Mp3 -filer bør dog ikke være et problem.
Trin 11: Konfigurationsfil til lydkort - Asound.conf
Du bør ikke have noget i /etc/asound.conf endnu, men hvis du gør det, skal du udskifte indholdet med dem herunder, eller oprette et ved hjælp af:
sudo nano /etc/asound.conf
og indsæt:
muligheder 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 og Y for at gemme ovenstående som din nye asound.conf-fil.
Trin 12: Sørg for, at vi bruger det korrekte overlay til at konfigurere.txt i /starte
type
sudo nano /boot/config.txt
De sidste par linjer skal ligne noget, der ligner nedenfor. Vi vil sikre, at standardlyden kommenteres, sammen med ethvert tidligere overlay som f.eks. Min hifiberry dac, mens vi implementerer google voice hat -overlay. Endelig vil vi instruere pi'en i at bruge i2s -kortlægningen. # -Indikatoren fortæller systemet at ignorere linjen.
# Aktiver lyd (indlæser snd_bcm2835)
#dtparam = audio = on #dtoverlay = hifiberry-dac dtoverlay = googlevoicehat-soundcard dtoverlay = i2s-mmap
genstart, hvis alt ligner ovenstående. Vent et par minutter, åbn en browser til musikboksens url, og afspil noget musik.
Trin 13: Nyd musikken
Hvis du lytter til stereo godhed, er missionen gennemført!
En af de smukke ting ved at bruge en hindbær pi som en hovedløs musikserver forbundet til wifi er, at den kører uden at optage en masse ressourcer. Sandt nok pumper vi kun 3 watt ud per kanal, men det er nok nok til at lytte på kort afstand. Din telefons batteri vil takke dig.
Der er også en meget betydelig grøn faktor - vi nipper kun til 5,25 volt energi. Og i forhold til Bluetooth kan vi indstille radiostrømmen og ikke forankres til et 30 fod bluetooth -område. Med hensyn til vores telefon kan vi tage et opkald, spille et spil og strejfe lidt mere frit uden at afbryde strømmen af musik. Vi har kun ridset overfladen. Der er masser af tilgængelige mopidy -udvidelser at udforske, og mopidy har en voksende udviklerbase, da den er open source. Jeg lader dig udforske de funktioner, der interesserer dig på egen hånd.
Trin 14: Konklusion
En af de mest fremragende funktioner ved dette projekt er, at vi ikke begrænser vores pi ved at låse adgangen til GPIO. Dette giver os adgang til mange flere muligheder, fordi stemmehatten var designet så godt. For eksempel vil mit næste projekt være at tilføje en kortvarig trykknapkontakt som en lukningsknap. Det skal være let, og jeg ved allerede, hvor stifterne skal lande: De er ikke blokeret. Derfra? Nå, til dette projekt har vi fuldstændig ignoreret mikrofonen - måske en pi karaoke? Måske et LED -lysshow eller tilføje en motor til en rullende jukeboks? Alle benene er stadig tilgængelige og tilgængelige. Spørgsmålet bliver hvorfor ikke? Og bare hvis du vil tilbage til AI, skal du bare smide det gamle sd -kort ind og få Google til at reagere i stereo.
Anbefalede:
Sådan laver og tester du en bedre DAC med ESP32: 5 trin
Sådan laves og testes en bedre DAC med ESP32: ESP32 har 2 8-bit digitale til analoge omformere (DAC'er). Disse DAC'er giver os mulighed for at producere vilkårlige spændinger inden for et bestemt område (0-3.3V) med 8 bits opløsning. I denne Instructable vil jeg vise dig, hvordan du bygger en DAC og karakteriserer dens p
USB Audio DAC: 12 trin
USB Audio DAC: Bruger standarddrivere, fungerer med Windows, Mac'er og mange Linux -distributioner, men begrænser ydelsen til 16 bit, 48 kHz Balanceret (pro) line -niveau output på bagsiden (XLR / 6,35 mm) Single ended (pro) line level output foran (RCA) Ingen output s
Nuværende kilde DAC AD5420 og Arduino: 4 trin (med billeder)
Nuværende kilde DAC AD5420 og Arduino: Hej. I denne artikel vil jeg gerne dele min erfaring med AD5420 nuværende digital-til-analog-konverter, som har følgende egenskaber: 16-bit opløsning og monotonicitet Aktuelle outputområder: 4 mA til 20 mA, 0 mA til 20 mA eller 0 mA t
Arduino og PCF8591 ADC DAC IC: 7 trin
Arduino og PCF8591 ADC DAC IC: Har du nogensinde ønsket dig flere analoge inputstifter på dit Arduino -projekt, men ikke ønsket at punge ud til en Mega? Eller vil du gerne generere analoge signaler? Tjek derefter emnet for vores tutorial - NXP PCF8591 IC.Det løser begge disse problemer
DIY: Audio DAC - DSD, MP3 og Radio Volumio Player: 3 trin
DIY: Audio DAC - DSD, MP3 og Radio Volumio Player: DSD testet: DSD64, DSD128 & DSD256