Innehållsförteckning:

Sonos Spotify Vinyl Emulator: 26 steg
Sonos Spotify Vinyl Emulator: 26 steg

Video: Sonos Spotify Vinyl Emulator: 26 steg

Video: Sonos Spotify Vinyl Emulator: 26 steg
Video: 30 лучших советов и рекомендаций по Windows 10 на 2020 год 2024, Juli
Anonim
Image
Image
Sonos Spotify vinylemulator
Sonos Spotify vinylemulator

Observera att detta inte är den senaste uppsättningen instruktioner för detta projekt:

Besök https://www.hackster.io/mark-hank/sonos-spotify-vinyl-emulator-3be63d för den senaste uppsättningen instruktioner och support

Att lyssna på musik på vinyl är fantastiskt. Det är fysiskt och taktilt. Du lyssnar på ett helt album snarare än slumpmässiga spår. Du märker när det är över och väljer medvetet något annat. Du kan bygga en samling och bläddra igenom den istället för att behöva söka efter exakt vad du vill.

Det är också dyrt och skrymmande, särskilt när du tänker på att alla pengar du spenderar på vinyl mycket troligtvis är en duplikat av musik som du redan har tillgång till via en strömningstjänst du prenumererar på.

Detta projekt försöker replikera vinylens taktilitet och samlingsbyggande aspekter samtidigt som man förlitar sig på Spotify för att faktiskt leverera musiken. Om du placerar ett fysiskt föremål på en NFC -läsare som är ansluten till en Raspberry Pi (som båda kan döljas bort) börjar det album som är kopplat till den taggen.

Jag kommer att gå dig igenom alla steg - från att installera Raspberry Pi till kodning av NFC -taggar. Detta är mitt allra första Raspberry Pi -projekt och min första Python -kod, så jag lärde mig båda medan jag utvecklade detta. Som sådan antar dessa instruktioner bokstavligen noll tidigare kunskap och talar dig igenom varje steg.

Den totala kostnaden för de viktigaste komponenterna för att bygga detta är cirka 50-60 pund.

Jag skulle vilja se vad du bygger!

Steg 1: Obligatoriska tillbehör 1: Raspberry Pi

Baksidan som gränssnitt med ditt nätverk, Sonos och Spotify kommer att drivas av en Raspberry Pi. Det finns faktiskt väldigt lite du behöver för att få det att gå.

Grundläggande:

Raspberry Pi: Jag använde en Raspberry Pi 3 Model B+ men det kommer också att fungera med en Raspberry Pi 3 Model A+ (£ 23)

USB -strömförsörjning: Jag hade en liggande - det finns en officiell om du inte gör det (£ 9)

Micro SD -kort: Jag fick ett 32 GB, vilket är gott för den här applikationen, på Amazon (£ 6)

En del Sonos -utrustning körs i ditt nätverk (jag antar att du redan har det här om du är här …)

Ett Spotify Premium -konto

Rekommenderad:

Ett fall för Pi: det finns många alternativ, från £ 5

En flaska anständigt California Zinfandel: Jag rekommenderar Ridge, men andra finns tillgängliga

Steg 2: Tillbehör 2: NFC -läsare

Tillbehör 2: NFC -läsare
Tillbehör 2: NFC -läsare
Tillbehör 2: NFC -läsare
Tillbehör 2: NFC -läsare

Dessa instruktioner är byggda för en ACR122U NFC -läsare som ansluts via USB.

ACR122U

Jag köpte den här från Amazon för £ 38 (mestadels för att den hade utmärkt leverans) men det finns billigare alternativ att köpa samma läsare.

Förvirrande verkar ACR122U säljas under ett gäng olika varumärken (mitt kom under det långt ifrån lugnande varumärket "Yosoo") men vad jag kan se är de alla desamma och konstruerade av American Card Systems.

Det billigaste jag hittat ACR122U annonserat är £ 21 inklusive frakt, men det kommer direkt från Kina så du kan behöva vänta lite på det.

Andra alternativ

Detta projekt bygger på ett pythonbibliotek som heter nfcpy som har en lista över enheter som stöds här:

I teorin bör detta projekt fungera med någon av dem på den listan med liten integration.

Ett frestande alternativ är Adafruit PN532 som är ett kort som ska anslutas direkt till din Raspberry Pi med hjälp av bygelkablar. Jag försökte det och tyckte att det var en riktig faff. Det kräver till exempel lödning.

En fördel med det är, ytligt sett, att det är mindre men i själva verket är kortet ungefär lika stort som tarmarna på ACR122U. Om du verkligen vill ha plats för din applikation kan du ta bort plasten från ACR122U och bara använda kortet.

Steg 3: Tillbehör 3: NFC -taggar

Tillbehör 3: NFC -taggar
Tillbehör 3: NFC -taggar

För varje album du vill skapa behöver du en NFC -tagg som uppfyller NTAG213 -standarden.

Det finns många ställen att köpa dessa.

Jag köpte min första sats från Amazon, där jag fick ett paket med 10 för £ 9 (inklusive Prime -leverans)

Det bästa jag har hittat här i Storbritannien är Seritag - de har ett riktigt brett urval av olika stilar, bra råd på deras webbplats, du vet exakt vad du får (inte alltid sant på Amazon). De har ingen minsta beställningsstorlek och massor av alternativ. Etiketter börjar med 27p per tagg

Steg 4: Ladda ner Raspberry Pi OS till ett SD -kort

Ladda ner Raspberry Pi OS till ett SD -kort
Ladda ner Raspberry Pi OS till ett SD -kort
Ladda ner Raspberry Pi OS till ett SD -kort
Ladda ner Raspberry Pi OS till ett SD -kort

Ladda ner och kör programmet Raspberry PI imager på din dator eller Mac.

Sätt i SD -kortet du vill installera Raspberry Pi -operativsystemet på.

Klicka på VÄLJ OS och välj standard Rasbian.

Klicka på VÄLJ SD -KORT och välj det SD -kort du har anslutit.

Klicka på SKRIV. Det här kan ta ett tag.

När det är klart kommer det att berätta för dig att ta bort SD -kortet, vilket du borde göra. Men koppla sedan in den igen eftersom det finns några hushållspunkter du måste göra först.

Steg 5: Aktivera SSH på din Raspberry Pi OS -bild

Aktivera SSH på din Raspberry Pi OS -bild
Aktivera SSH på din Raspberry Pi OS -bild

När operativsystemet har skrivits till SD -kortet finns det några ytterligare uppgifter du behöver göra.

Vi vill komma åt Raspberry Pi utan att ansluta ett tangentbord eller en bildskärm (aka "headless"), vilket vi kan göra över vårt lokala nätverk med vår PC eller Mac via ett protokoll som kallas SSH. Av säkerhetsskäl är SSH dock inaktiverat som standard. Vi måste aktivera det.

Vi kan göra detta genom att skapa en tom fil som heter:

ssh

på SD -kortet vi just skapade. Det är viktigt att detta inte har någon form av förlängning (t.ex. txt). Själva filen behöver inte innehålla något innehåll - bara dess existens möjliggör SSH när Pi startar upp.

Steg 6: Valfritt: Konfigurera wifi på din Raspberry Pi

Valfritt: Konfigurera wifi på din Raspberry Pi
Valfritt: Konfigurera wifi på din Raspberry Pi
Valfritt: Konfigurera Wifi på din Raspberry Pi
Valfritt: Konfigurera Wifi på din Raspberry Pi

Du kan hoppa över det här steget om du planerar att ansluta din Raspberry Pi till din router via ethernet. (Även om du kanske vill tänka efter om det beslutet - att köra över wifi gör livet mycket enklare när det gäller att placera detta)

Skapa en vanlig textfil som heter wpa_supplicant.conf i rotkatalogen på SD -kortet.

Sätt in texten nedan i filen:

land = gb

update_config = 1 ctrl_interface =/var/run/wpa_supplicant network = {scan_ssid = 1 ssid = "MyNetworkSSID" psk = "MyPassword"}

Byt land efter behov (GB är Storbritannien, USA är USA, DE är Tyskland, etc.)

Ändra wifi -uppgifterna där för att vara dina faktiska wifi -router detaljer.

Spara filen.

Ta ut SD -kortet på ett säkert sätt.

Steg 7: Starta din Raspberry Pi

Starta din Raspberry Pi
Starta din Raspberry Pi

Sätt SD -kortet du just skapade i din Raspberry Pi.

Anslut din Raspberry Pi till ström via USB -kabeln. Vänta en minut tills den startar.

Steg 8: Hitta IP -adressen till din Raspberry Pi

Du måste nu hitta IP -adressen till Raspberry Pi så att du kan ansluta till den. Du kan göra detta på två sätt:

  • via din router -inställningssida - om du har en modern router som eero är det här superenkelt;
  • eller via en smartphone -app tillgänglig för iOS och Android som heter "fing" - ladda ner den, anslut till din router och sök efter enheter - en av dem ska kallas "Hallon" - det här är den IP -adress du behöver.

Steg 9: Anslut till din Raspberry Pi -kommandorad

Anslut till din Raspberry Pi -kommandorad
Anslut till din Raspberry Pi -kommandorad

Öppna Terminal på din Mac (eller om du använder Windows, ladda ner och använd kitt).

Ange följande kommando:

ssh pi@[din Pi: s IP -adress]

Acceptera alla säkerhetsvarningar du får. Du kommer att bli ombedd att ange lösenordet för standard pi -användaren

hallon

Steg 10: Konfigurera Raspberry Pi OS GUI

Ställ in Raspberry Pi OS GUI
Ställ in Raspberry Pi OS GUI
Ställ in Raspberry Pi OS GUI
Ställ in Raspberry Pi OS GUI

Du är nu ansluten till din Pi via kommandoraden, vilket är bra, men du vill också konfigurera den så att du kan komma åt det grafiska användargränssnittet som vi kommer åt via VNC (Virtual Network Computing). Förutsägbart måste vi också möjliggöra detta.

Kontrollera först att din Pi -programvara är uppdaterad genom att ange följande två kommandon (var och en följt av enter) i kommandoraden:

sudo apt uppdatering

sudo apt installera realvnc-vnc-server realvnc-vnc-viewer

Öppna sedan inställningsmenyn för Raspberry Pi genom att ange:

sudo raspi-config

Navigera till gränssnittsalternativ> VNC> Ja.

Avsluta konfigurationsprogrammet genom att trycka på Escape -tangenten och starta om Pi från kommandoraden genom att skriva:

sudo starta om

Steg 11: Anslut till och konfigurera din Raspberry Pi GUI

Anslut till och konfigurera din Raspberry Pi GUI
Anslut till och konfigurera din Raspberry Pi GUI
Anslut till och konfigurera din Raspberry Pi GUI
Anslut till och konfigurera din Raspberry Pi GUI

Ladda ner och öppna VNC Viewer.

Skriv in IP -adressen för din Raspberry Pi och tryck på anslut. Det kommer att be dig om användarnamn och lösenord som är:

Användarnamn = pi

Lösenord = hallon

Detta bör starta upp dig till GUI.

Det kommer att uppmana dig att bekräfta din geografi och tangentbordslayout.

Det kommer då att uppmana dig att ändra ditt lösenord (bra idé).

Det kommer att be dig att ställa in dina wifi -detaljer, men du kan hoppa över det eftersom de redan fungerar. (Även om du kör på ethernet och tänker efter är det nu din chans … men observera att din IP -adress kan ändras)

Det kommer sedan att leta efter, ladda ner och installera uppdateringar (kan ta ett tag).

När du väl har kommit igenom installationsguiden rekommenderar jag att du ändrar skärmupplösningen eftersom standarden är ganska liten. Du kan göra detta genom att klicka på Hallon längst upp till vänster> Inställningar> Raspberry Pi -konfiguration> Display> Ställ in upplösning

Du måste starta om Pi ännu en gång för att få detta att träda i kraft.

Steg 12: Installera Node.js och NPM

Installera Node.js och NPM
Installera Node.js och NPM

Därefter vill du ladda Raspberry Pi -kommandoraden för att installera de beroenden vi behöver.

Du kan antingen göra detta genom att ansluta via VNC och klicka på knappen nära toppen som ser ut som en kommandorad; eller så kan du ansluta direkt från din Mac/PC med Terminal och Putty som vi gjorde tidigare. Om du är mindre van att arbeta med Raspberry Pi är det lättare att göra det förra.

(Tips: Du kan kopiera text från din Mac/PC och klistra in den på Raspberry Pi via VNC genom att trycka på CONTROL-V, men om du försöker klistra in i terminalen måste du trycka på CONTROL-SHIFT-V)

Första jobbet är att kontrollera igen att din programvara är uppdaterad genom att skriva följande två kommandon. De kan ta ett tag att ladda ner och installera.

sudo apt-get uppdatering

sudo apt-get uppgradering

Därefter vill du ladda ner och installera node.js och NPM (oroa dig inte för mycket om vad de är, de är hjälpsamma och nödvändiga för våra nästa uppgifter) genom att skriva följande:

sudo apt-get install nodejs npm

Det kommer att fråga dig ett par gånger om du tar upp diskutrymme med dessa - du trycker så mycket på Y

Steg 13: Installera SONOS HTTP API

Installera SONOS HTTP API
Installera SONOS HTTP API
Installera SONOS HTTP API
Installera SONOS HTTP API

Grunden för backend för vårt projekt är paketet node-sonos-http-api skapat av jishi. Du kan läsa allt om det här:

Vi kommer att ladda ner detta från github med följande kommando in i kommandoraden:

git-klon

och vi kommer att installera det med följande kommandon

cd-nod-sonos-http-api

npm installera --produktion

Vi kan sedan köra det med följande kommando:

npm start

När det är klart bör vi testa att det fungerar.

Först och främst öppnar du webbläsaren på vår Raspberry Pi och navigerar till https:// localhost: 5005/. Ett snyggt gränssnitt bör öppnas med Sonos -logotypen och lite dokumentation om hur API: et fungerar.

Låt oss sedan kontrollera att det fungerar från det bredare nätverket genom att använda en webbläsare på en annan dator eller Mac i samma nätverk och navigera till https:// [theIPaddressofyourPi]: 5005/och se om vi får samma resultat. Vi borde.

Nu ska vi faktiskt få systemet att göra något. Använd en webbläsare och navigera till:

192.168.4.102:5005/Matsal/paus

Du bör ersätta ovanstående IP -adress med adressen till din Raspberry Pi och "Dining Room" med ett av namnen på dina Sonos -zoner. Det ska antingen spela eller pausa (beroende på om musik redan spelas eller inte) musiken i rummet. Uppenbarligen måste något vara i Sonos -kön för att det ska fungera.

Framöver kommer jag att använda ovanstående IP -adress och matsal som exemplen i hela denna handledning. Uppenbarligen bör du ersätta dem med din IP -adress och ditt zonnamn vid varje tillfälle.

Steg 14: Få Sonos HTTP API att köra konstant

Få Sonos HTTP API att köra konstant
Få Sonos HTTP API att köra konstant

Det är bra att vi har Sonos HTTP API igång, men vad händer om det kraschar? Eller tappar du ström eller behöver starta om din Raspberry Pi?

Du kan se effekten genom att stänga terminalfönstret och försöka igen det vi just försökte. Det fungerar inte eftersom HTTP API har slutat tillsammans med terminalfönstret.

Vi vill faktiskt att detta ska köra konstant och göra det från start varje gång. Vi gör det här med en cool sak som heter PM2.

I ett nytt terminalfönster installerar du och kör det enligt följande:

sudo npm installera -g pm2

pm2 -status

Låt oss nu få det att köra vårt Sonos HTTP API:

cd-nod-sonos-http-api

pm2 start npm - start pm2 start systemd

Det här sista kommandot genererar något som ser lite ut som:

sudo env PATH = $ PATH:/usr/bin/usr/local/lib/node_modules/pm2/bin/pm2 start systemd -u pi --hp/home/pi

Kopiera vad din Pi genererar (inte den exakta texten ovan - din kan vara annorlunda) och ange den på kommandoraden. Detta instruerar systemet att köra PM2 vid start varje gång.

Slutligen, ange:

pm2 spara

som sparar allt.

Testa nu om detta har fungerat genom att starta om din Raspberry Pi med kommandot

sudo starta om

Förhoppningsvis när Pi startar om startar den också PM2 och i sin tur Sonos HTTP API. Du kan kontrollera detta genom att navigera med en webbläsare i samma nätverk till adressen vi använde tidigare och se Sonos logotyp och instruktioner:

192.168.4.102:5005/

är vad som är för mig, men din beror på IP -adressen.

Steg 15: Spela lite Spotify

Låt oss kontrollera att tjänsten kan komma åt Spotify.

Öppna en webbläsare och navigera till följande adress (ersätt uppenbarligen med din IP -adress och rumsnamn):

192.168.4.102:5005/Matsal/spotify/nu/spotify/spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Du borde höra John Grant. Njut av.

Steg 16: Hitta Spotify URI: er

Hitta Spotify URI
Hitta Spotify URI

Konstigt, jag vet, men inte alla gillar John Grant. Kanske vill du lyssna på något annat?

Du kan få Spotify -länkarna från skrivbordet, webben eller mobilapparna men skrivbordet är överlägset enklast eftersom det levererar URI i exakt det format du vill ha så börja med det.

I Spotify -skrivbordsappen navigerar du till albumet du vill lyssna på (kanske Lemonade av Beyonce?)

Klicka på de tre små prickarna bredvid hjärtknappen.

Gå ner i menyn för att dela och välj Kopiera Spotify URI

Detta kommer att kopiera något liknande

spotify: album: 7dK54iZuOxXFarGhXwEXfF

till ditt urklipp, som är Spotify URI för Beyonces Lemondade -album.

Slå på din webbläsare igen och navigera till följande adress (uppenbarligen byta ut IP -adressen och rummet och klistra in i den URI du just kopierade):

192.168.4.102:5005/Matsal/spotify/nu/[Spotify URI du vill spela]

Du borde höra ditt val spela.

Om du föredrar att använda webbappen kommer den att ge dig en webblänk (något liknande nedan):

open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF

du måste konvertera detta till spotify: album: kodformatet ovan för att det ska fungera.

Steg 17: En anteckning om Spotify URI: er

Spotify URI: er och de sätt som de gränssnitt med noden-sonos-http-api är för det mesta intuitiva.

Du kan länka direkt till album, spår och spellistor.

Ett album URI ser ut så här:

spotify: album: 6agCM9GJcebduMddgFmgsO

En spår -URI ser ut så här:

spotify: track: 4fNDKbaeEjk2P4GrRE1UbW

Spellistor fungerar lite annorlunda. När du kopierar URI från Spotify kommer det att se ut ungefär så här:

spotify: spellista: 5huIma0YU4iusLcT2reVEU

Men för att faktiskt få det att fungera på API: et måste du lägga till spotify: user: till början av ovanstående. Detta gäller även offentliga spellistor och, ja, det betyder att du säger spotify två gånger.

För att vara mycket tydlig behöver användaren inte vara en viss användares namn, bara textanvändaren. Så rätt URI för ovanstående spellista för att få det att fungera skulle vara:

spotify: användare: spotify: spellista: 5huIma0YU4iusLcT2reVEU

Steg 18: Konfigurera Raspberry Pi för att skicka HTTP -begäranden

Ställ in Raspberry Pi för att skicka HTTP -förfrågningar
Ställ in Raspberry Pi för att skicka HTTP -förfrågningar

I stället för att manuellt skriva HTTP -förfrågningar i en webbläsare vill vi automatisera det så att Raspberry Pi gör det själv när det presenteras med viss stimulans (NFC -läsaren utlöses).

Vi kommer att använda ett bibliotek som kallas förfrågningar för att låta vår Raspberry Pi göra detta. Låt oss kontrollera att den är installerad.

Öppna terminalen på din Pi och skriv följande:

sudo pip installationsförfrågningar

Det är troligt att det kommer tillbaka och säger att det redan är installerat, i så fall bra. Om inte, kommer det att installera det.

Steg 19: Generera NFCC -taggar med Spotify -data

Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data
Generera NFCC -taggar med Spotify -data

Nu vill vi skriva ett Spotify -album URI till en NFC -tagg. Var och en av dessa taggar är vad du kommer att använda för att berätta för Raspberry Pi att spela ett visst album.

Du kan skriva till en NFC -tagg med en Android -telefon, men jag tycker att det är lättast att göra det via en mac eller PC eftersom du då kan få det enklaste att få Spotify URI från Spotify -skrivbordsappen.

Anslut din USB NFC -läsare till din PC eller Mac. Jag använder ACR122U från American Card Systems.

Ladda ner NFC -verktyg till din PC eller Mac. Installera och öppna den.

Det kan vara lite långsamt att ansluta till läsaren ibland och kan säga att det inte alls kan hitta läsaren. Gå till fliken Övrigt i NFC -verktyg och klicka så ofta på knappen Ansluten NFC -läsare. Du kan behöva koppla ur och ansluta läsaren några gånger innan den hittar den.

Så småningom kommer det att ge dig möjlighet att välja din läsare från en lista och säga att den är ansluten. Gå till fliken Information som inte visar något annat än "Väntar på en NFC -tagg".

Ta en tom NFC -tagg. Lägg det på läsaren och lämna det där. NFC -verktyg visar informationen om taggen.

Gå till fliken Skriv och klicka på Lägg till en post> Text. (Var försiktig så att du inte väljer URL eller URI - jag vet att det är frestande eftersom du kopierar en URI, men du vill ha text)

Ta en URI från Spotify med metoden vi använde tidigare. Om du vill ha ett enkelt exempel är följande vårt John Grant -album från tidigare.

spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Klicka på OK och klicka sedan på Skriv (glöm inte det sista steget - det skriver det inte förrän du klickar på det här). Det kommer att berätta att det har skrivits taggen framgångsrikt.

Ta taggen från läsaren

Steg 20: Konfigurera NFC -läsaren på Raspberry Pi

Konfigurera NFC -läsaren på Raspberry Pi
Konfigurera NFC -läsaren på Raspberry Pi

Anslut din NFC -läsare till en av USB -portarna på din Raspberry Pi.

Vi kommer att använda nfcpy Python -biblioteket för att kommunicera med NFC -läsaren. Installera det genom att skriva följande på din Pi -kommandorad:

pip installera -U nfcpy

Vi kan sedan kontrollera om detta bibliotek kan se vår NFC -läsare genom att skriva följande:

python -m nfc

Om det har fungerat kommer du att se följande:

Detta är versionen 1.0.3 av nfcpy som körs i Python 2.7.16 på Linux-4.19.97-v7+-armv7l-med-debian-10.3

Jag söker nu i systemet efter kontaktlösa enheter ** hittade ACS ACR122U PN532v1.6 på usb: 001: 011 Jag försöker inte med seriella enheter eftersom du inte har berättat det för mig-lägg till alternativet '--search-tty' för att få mig att leta - men se upp för att detta kan bryta andra seriella enheter

Det finns dock en god chans att du får ett felmeddelande som säger att läsaren har hittats men din användare (pi) inte har behörighet att komma åt den. Om du får det här felmeddelandet kommer det också att förklara hur du åtgärdar problemet, vilket är genom att skriva två kommandon som ser lite ut som följande:

sudo sh -c 'echo SUBSYSTEM == / "usb \", ACTION == / "add \", ATTRS {idVendor} == / "04e6 \", ATTRS {idProduct} == / "5591 \", GROUP = / "plugdev \" >> /etc/udev/rules.d/nfcdev.rules '

sudo udevadm kontroll -R

Kopiera och kör båda kommandona som den ger dig (inte exakt vad som står ovan, eftersom din kan vara annorlunda), koppla sedan ur och koppla från din NFC -läsare från USB -porten.

Försök med kontrollkommandot igen:

python -m nfc

Den här gången ska det säga att det har hittats utan felmeddelanden.

Steg 21: Installera Vinylemulator Python Scripts

Vi har nu alla byggstenar på plats:

  • Vår Raspberry Pi kan lyssna på NFC -ingång
  • Vår Raspberry Pi kan berätta för Sonos att spela Spotify -spellistor när den ges en Spotify URI
  • Vi har en NFC -tagg med en Spotify URI lagrad på den

Nu måste vi dra alla dessa byggstenar till något användbart. Detta görs genom ett kort python -skript jag skrev (med mycket hjälp från tidigare NFC/Spotify/Sonos -projekt) som kallas vinylemulator.

Du kan se källkoden för filerna på github:

För att installera detta på vår Raspberry Pi måste vi klona det från github med följande kommando:

git -klon

Steg 22: Anpassa Vinylemulator

Anpassa Vinylemulator
Anpassa Vinylemulator
Anpassa Vinylemulator
Anpassa Vinylemulator

Öppna Raspberry Pi -filhanteraren och navigera till hem> pi> vinylemulator

Öppna filen usersettings.py

En av raderna i den här filen kommer att läsa:

sonosroom = "Matsal"

Ändra "Matsal" till det Sonos -rumsnamn du vill styra.

Det finns också en inställning i den här filen som låter dig anpassa IP-adressen för sonos-http-api. Du bör kunna lämna detta oförändrat som "localhost" vilket bara betyder att det kommer att använda Raspberry Pi som det körs på.

Spara filen och stäng den.

Steg 23: Testa Vinylemulator

Testa Vinylemulator
Testa Vinylemulator
Testa Vinylemulator
Testa Vinylemulator

Gå till kommandotolken Raspberry Pi.

Ange följande kommando:

python vinylemulator/readnfc.py

Om allt är bra kommer detta att ladda upp manuset och säga att läsaren är redo. Ljuset på läsaren ska bli grönt.

Sätt NFC -taggen på läsaren, vilket piper.

Terminalen visar vad den har läst från NFC -taggen och visar HTTP -förfrågningsadressen som den har skickat. Ditt valda album ska spelas upp från dina Sonos -högtalare.

Detta skript körs tills du stänger terminalfönstret. Du kan trycka på olika album NFC -taggar och det kommer att byta till det albumet.

Steg 24: Få Vinylemulator att köra konstant och vid start

Precis som sonos-http-api vill vi att vinylemulatorn ska köras hela tiden snarare än bara när vi kallar det. Vi kan använda pm2 för att göra detta igen.

Stäng först alla instanser av vinylemulator du kör genom att stänga deras terminalfönster.

Öppna sedan ett nytt terminalfönster och skriv följande två kommandon:

pm2 starta vinylemulator/readnfc.py

pm2 spara

Låt oss kontrollera om det har fungerat genom att starta om Raspberry Pi. (Du kan antingen skriva sudo reboot eller göra det från hallonmenyn med musen.

Vänta tills Pi startar igen och se hur det fungerar genom att trycka på en NFC -tagg på läsaren. Du borde skaffa musik.

Steg 25: Grattis till dig själv

Allt är nu funktionellt. Du kan flytta Raspberry Pi till var du än planerar att placera den. Den startar om och fungerar på det sätt du har konfigurerat den när du ansluter den.

Dina nästa uppgifter är de roliga: att göra det hela vackert.

Steg 26: Gör det vackert - Dölj din läsare

Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare
Gör det vackert - Dölj din läsare

Den första delen av att göra den vacker är att gömma den otäcka vita NFC -läsaren av plast någonstans.

Jag har gått med ett klart lågteknologiskt alternativ att tejpa det på undersidan av en räknare bredvid min Sonos Play: 5. Träet på disken är tillräckligt tunt för att NFC kan gå igenom, så jag spelar musik genom att trycka på en NFC -tagg på en magisk och osynlig plats.

Rekommenderad: