Sisällysluettelo:
- Vaihe 1: Tarvittavat tarvikkeet 1: Raspberry Pi
- Vaihe 2: Tarvittavat tarvikkeet 2: NFC -lukija
- Vaihe 3: Tarvittavat tarvikkeet 3: NFC -tunnisteet
- Vaihe 4: Lataa Raspberry Pi -käyttöjärjestelmä SD -kortille
- Vaihe 5: Ota SSH käyttöön Raspberry Pi OS -kuvassasi
- Vaihe 6: Valinnainen: Määritä Wifi Raspberry Pi -laitteeseesi
- Vaihe 7: Käynnistä Raspberry Pi
- Vaihe 8: Etsi Raspberry Pi -laitteen IP -osoite
- Vaihe 9: Yhdistä Raspberry Pi -komentoosi
- Vaihe 10: Määritä Raspberry Pi OS -käyttöliittymä
- Vaihe 11: Yhdistä Raspberry Pi -käyttöliittymään ja asenna se
- Vaihe 12: Asenna Node.js ja NPM
- Vaihe 13: Asenna SONOS HTTP -sovellusliittymä
- Vaihe 14: Käynnistä Sonos HTTP -sovellusliittymä jatkuvasti
- Vaihe 15: Pelaa Spotifyä
- Vaihe 16: Etsi Spotifyn URI -tunnukset
- Vaihe 17: Huomautus Spotifyn URI -osoitteista
- Vaihe 18: Määritä Raspberry Pi lähettämään HTTP -pyynnöt
- Vaihe 19: Luo NFCC -tunnisteet Spotify -tietojen avulla
- Vaihe 20: Asenna NFC -lukija Raspberry Pi -laitteeseen
- Vaihe 21: Asenna Vinylemulator Python Scripts
- Vaihe 22: Muokkaa Vinylemulator
- Vaihe 23: Testaa Vinylemulator
- Vaihe 24: Hanki Vinylemulator toimimaan jatkuvasti ja käynnistettäessä
- Vaihe 25: Onnittele itseäsi
- Vaihe 26: Tee siitä kaunis - piilota lukija
Video: Sonos Spotify Vinyl Emulator: 26 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Huomaa, että tämä ei ole tämän projektin viimeisin ohje:
Käy osoitteessa https://www.hackster.io/mark-hank/sonos-spotify-vinyl-emulator-3be63d saadaksesi uusimmat ohjeet ja tuen
Musiikin kuunteleminen vinyylinä on hienoa. Se on fyysistä ja kosketeltavaa. Kuuntelet koko levyä satunnaisten kappaleiden sijaan. Huomaat kun se on ohi ja valitset tietoisesti jotain muuta. Voit rakentaa kokoelman ja selata sitä sen sijaan, että sinun pitäisi etsiä juuri sitä, mitä haluat.
Se on myös kallista ja tilaa vievää, varsinkin kun katsot, että kaikki vinyyliin käyttämäsi raha on todennäköisesti kopio musiikista, johon sinulla on jo pääsy tilaamasi suoratoistopalvelun kautta.
Tässä projektissa yritetään toistaa vinyylin taktiili- ja kokoelmarakentamisen näkökohtia ja luottaa siihen, että Spotify toimittaa musiikin. Fyysisen esineen asettaminen Raspberry Pi -laitteeseen kytkettyyn NFC -lukijaan (molemmat voidaan piilottaa) aloittaa kyseiseen tunnisteeseen liittyvän albumin toistamisen.
Käyn läpi kaikki vaiheet - Raspberry Pi: n määrittämisestä NFC -tunnisteiden koodaamiseen. Tämä on ensimmäinen Raspberry Pi -projektini ja ensimmäinen Python -koodini, joten opetin itselleni molempia tämän kehityksen aikana. Näissä ohjeissa oletetaan kirjaimellisesti nolla aiempaa tietoa ja puhutaan sinulle jokaisessa vaiheessa.
Tämän rakentamisen olennaisten osien kokonaiskustannukset ovat noin 50-60 puntaa.
Haluaisin nähdä mitä rakennat!
Vaihe 1: Tarvittavat tarvikkeet 1: Raspberry Pi
Taustapäätä, joka on yhteydessä verkkoon, Sonosiin ja Spotifyyn, käyttää Raspberry Pi. Tarvitset todella vähän saadaksesi tämän aikaan.
Olennaista:
Raspberry Pi: Käytin Raspberry Pi 3 Model B+: ta, mutta se toimii myös Raspberry Pi 3 Model A+: n kanssa (23 €)
USB -virtalähde: Minulla oli yksi makaamassa - virallinen on saatavilla, jos et (9 €)
Micro SD -kortti: Sain 32 Gt: n, joka riittää tähän sovellukseen, Amazonissa (6 puntaa)
Jotkut Sonos -laitteet toimivat verkossa (oletan, että sinulla on jo tämä, jos olet täällä …)
Spotify Premium -tili
Suositeltava:
Pi -tapaus: vaihtoehtoja on paljon, alkaen 5 puntaa
Pullo kunnollista Kalifornian Zinfandelia: Suosittelen Ridgeä, mutta muita on saatavilla
Vaihe 2: Tarvittavat tarvikkeet 2: NFC -lukija
Nämä ohjeet on laadittu ACR122U NFC -lukijalle, joka yhdistää USB: n kautta.
ACR122U
Ostin tämän Amazonilta 38 puntaa (lähinnä siksi, että sillä oli ensisijainen toimitus), mutta on olemassa halvempia vaihtoehtoja ostaa tämä sama lukija.
Hämmentävästi ACR122U näyttää olevan myynnissä joukolla erilaisia tuotenimiä (omani kuului kaukana vakuuttavasta tuotenimestä "Yosoo"), mutta voin kertoa, että ne ovat kaikki samat ja American Card Systemsin rakentamat.
Halvin, jonka olen löytänyt mainostetun ACR122U: n, on 21 puntaa sisältäen toimituksen, mutta se tulee suoraan Kiinasta, joten sinun on ehkä odotettava sitä vähän.
Muita vaihtoehtoja
Tämä projekti perustuu python -kirjastoon nfcpy, joka ylläpitää tuettujen laitteiden luetteloa täällä:
Teoriassa tämän projektin pitäisi toimia minkä tahansa luettelossa olevien kanssa vain vähän integroituna.
Yksi houkutteleva vaihtoehto on Adafruit PN532, joka on levy, jonka pitäisi kytkeytyä suoraan Raspberry Pi -laitteeseen hyppyjohtojen avulla. Kokeilin sitä ja löysin sen todellisen huivin. Se vaatii esimerkiksi juottamista.
Yksi sen eduista on pinnallisesti, että se on pienempi, mutta todellisuudessa levy on suunnilleen samankokoinen kuin ACR122U: n suolet. Jos haluat todella tilaa sovelluksellesi, voit irrottaa muovin ACR122U: sta ja käyttää vain levyä.
Vaihe 3: Tarvittavat tarvikkeet 3: NFC -tunnisteet
Jokaista albumia varten, jonka haluat luoda, tarvitset NTAG213 -standardin mukaisen NFC -tunnisteen.
Näitä ostopaikkoja on monia.
Ostin ensimmäisen eräni Amazonista, josta sain 10 pakkauksen hintaan 9 puntaa (mukaan lukien Prime -toimitus)
Parasta toimitusta, jonka olen löytänyt täältä Isosta -Britanniasta, on Seritag - heillä on todella laaja valikoima erilaisia tyylejä, hyviä neuvoja verkkosivuillaan, tiedät tarkalleen, mitä saat (ei aina totta Amazonissa). Heillä ei ole vähimmäistilauskokoa ja paljon vaihtoehtoja. Tunnisteet alkavat 27p per tunniste
Vaihe 4: Lataa Raspberry Pi -käyttöjärjestelmä SD -kortille
Lataa ja suorita Raspberry PI imager -sovellus PC: llä tai Macilla.
Aseta SD -kortti, jolle haluat asentaa Raspberry Pi -käyttöjärjestelmän.
Napsauta VALITSE OS ja valitse oletusrasbian.
Napsauta VALITSE SD -KORTTI ja valitse liitetty SD -kortti.
Napsauta KIRJOITA. Tämä voi kestää hetken.
Kun se on tehty, se kehottaa sinua poistamaan SD -kortin, mikä sinun pitäisi tehdä. Mutta kytke se sitten takaisin, koska sinun on ensin tehtävä muutama siivous.
Vaihe 5: Ota SSH käyttöön Raspberry Pi OS -kuvassasi
Kun käyttöjärjestelmä on kirjoitettu SD -kortille, sinun on tehtävä muutamia lisätehtäviä.
Haluamme käyttää Raspberry Pi: tä kytkemättä näppäimistöä tai näyttöä (eli "päätön"), minkä voimme tehdä paikallisen verkon kautta PC- tai Mac -tietokoneella SSH -protokollan avulla. SSH on kuitenkin oletuksena pois käytöstä turvallisuussyistä. Meidän on otettava se käyttöön.
Voimme tehdä tämän luomalla tyhjän tiedoston nimeltä:
ssh
juuri luomallamme SD -kortilla. On tärkeää, että tällä ei ole minkäänlaista laajennusta (esim. Txt). Tiedoston itsensä ei tarvitse sisältää mitään sisältöä - vain sen olemassaolo mahdollistaa SSH: n, kun Pi käynnistyy.
Vaihe 6: Valinnainen: Määritä Wifi Raspberry Pi -laitteeseesi
Voit ohittaa tämän vaiheen, jos aiot kytkeä Raspberry Pi -laitteesi reitittimeen Ethernet -yhteyden kautta. (Vaikka haluat ehkä harkita tarkkaan tätä päätöstä - sen käyttäminen wifi -verkon kautta helpottaa elämää huomattavasti tämän sijoittamisessa)
Luo pelkkä tekstitiedosto nimeltä wpa_supplicant.conf SD -kortin juurihakemistoon.
Lisää alla oleva teksti tiedostoon:
maa = GB
update_config = 1 ctrl_interface =/var/run/wpa_supplicant network = {scan_ssid = 1 ssid = "MyNetworkSSID" psk = "MyPassword"}
Vaihda maata tarpeen mukaan (GB on Iso -Britannia, USA on Yhdysvallat, DE on Saksa jne.)
Muuta siellä olevat wifi -kirjautumistiedot todellisiksi wifi -reitittimen tiedoiksi.
Tallenna tiedosto.
Poista SD -kortti turvallisesti.
Vaihe 7: Käynnistä Raspberry Pi
Aseta juuri luomasi SD -kortti Raspberry Pi -laitteeseesi.
Liitä Raspberry Pi virtalähteeseen USB -kaapelin avulla. Odota hetki, että se käynnistyy.
Vaihe 8: Etsi Raspberry Pi -laitteen IP -osoite
Sinun on nyt löydettävä Raspberry Pi: n IP -osoite, jotta voit muodostaa yhteyden siihen. Voit tehdä tämän kahdella tavalla:
- reitittimen asetussivun kautta - jos sinulla on moderni reititin, kuten eero, tämä on erittäin helppoa;
- tai iOS- ja Android -laitteille saatavilla olevan älypuhelinsovelluksen "fing" kautta - lataa se, muodosta yhteys reitittimeesi ja etsi laitteita - yhden niistä pitäisi olla nimeltään "Vadelma" - tämä on tarvitsemasi IP -osoite.
Vaihe 9: Yhdistä Raspberry Pi -komentoosi
Avaa Terminal Macissa (tai jos käytät Windowsia, lataa ja käytä Puttyä).
Kirjoita seuraava komento:
ssh pi@[Pi: n IP -osoite]
Hyväksy saamasi turvallisuusvaroitukset. Sinulta kysytään salasanaa pi -oletuskäyttäjälle
vadelma
Vaihe 10: Määritä Raspberry Pi OS -käyttöliittymä
Olet nyt yhteydessä Pi -laitteeseesi komentorivin kautta, mikä on hienoa, mutta haluat myös määrittää sen, jotta voit käyttää graafista käyttöliittymää, johon pääsemme VNC: n (Virtual Network Computing) kautta. Ennustettavasti meidän on myös otettava tämä käyttöön.
Tarkista ensin, että Pi -ohjelmistosi on ajan tasalla kirjoittamalla komentoriville seuraavat kaksi komentoa (kummankin jälkeen enter):
sudo apt päivitys
sudo apt install realvnc-vnc-server realvnc-vnc-viewer
Avaa seuraavaksi Raspberry Pi -asetusvalikko kirjoittamalla:
sudo raspi-config
Siirry kohtaan Liitäntäasetukset> VNC> Kyllä.
Poistu määrityssovelluksesta painamalla Esc -näppäintä ja käynnistä Pi uudelleen komentoriviltä kirjoittamalla:
sudo uudelleenkäynnistys
Vaihe 11: Yhdistä Raspberry Pi -käyttöliittymään ja asenna se
Lataa ja avaa VNC Viewer.
Kirjoita Raspberry Pi -laitteen IP -osoite ja paina connect. Se kysyy käyttäjätunnusta ja salasanaa, jotka ovat:
Käyttäjätunnus = pi
Salasana = vadelma
Tämän pitäisi käynnistää sinut graafiseen käyttöliittymään.
Se pyytää sinua vahvistamaan maantieteesi ja näppäimistöasettelun.
Sitten se pyytää sinua vaihtamaan salasanasi (hyvä idea).
Se pyytää sinua asettamaan wifi -tiedot, mutta voit ohittaa tämän, koska ne jo toimivat. (Vaikka et käytä ethernetiä ja mietit toisiasi, nyt on tilaisuutesi … mutta huomaa, että IP -osoitteesi saattaa muuttua)
Se tarkistaa, lataa ja asentaa päivitykset (saattaa kestää hetken).
Kun olet ohjatun asennustoiminnon läpi, suosittelen näytön resoluution muuttamista, koska oletusarvo on melko pieni. Voit tehdä tämän napsauttamalla vasemmassa yläkulmassa olevaa Vadelmaa> Asetukset> Raspberry Pi -määritykset> Näyttö> Aseta tarkkuus
Sinun on käynnistettävä Pi uudelleen uudelleen, jotta tämä tulee voimaan.
Vaihe 12: Asenna Node.js ja NPM
Seuraavaksi haluat ladata Raspberry Pi -komentorivin tarvittavien riippuvuuksien asentamiseksi.
Voit joko tehdä tämän muodostamalla yhteyden VNC: n kautta ja napsauttamalla komentorivin näköistä painiketta yläosassa. tai voit muodostaa yhteyden suoraan Macista/PC: stä Terminalin ja Puttyn avulla, kuten aiemmin. Jos olet vähemmän tottunut työskentelemään Raspberry Pi: n kanssa, on helpompi tehdä ensimmäinen.
(Vihje: Voit kopioida tekstiä Mac-/PC-tietokoneeltasi ja liittää sen Raspberry Pi -laitteeseen VNC: n kautta painamalla CONTROL-V-näppäintä, mutta jos yrität liittää päätelaitteeseen, sinun on painettava CONTROL-VAIHTO-V)
Ensimmäinen tehtävä on tarkistaa uudelleen, onko ohjelmisto ajan tasalla kirjoittamalla seuraavat kaksi komentoa. Niiden lataaminen ja asentaminen voi kestää jonkin aikaa.
sudo apt-get päivitys
sudo apt-get päivitys
Seuraavaksi haluat ladata ja asentaa node.js ja NPM (älä huolehdi liikaa niiden sisällöstä, ne ovat hyödyllisiä ja tarpeellisia seuraavissa tehtävissä) kirjoittamalla seuraavat:
sudo apt-get install nodejs npm
Se kysyy sinulta pari kertaa, otatko mielellään levytilaa näiden kanssa - paina siis Y
Vaihe 13: Asenna SONOS HTTP -sovellusliittymä
Projektimme takaosan perusta on jishin luoma solmu-sonos-http-api -paketti. Voit lukea kaiken tästä:
Lataamme tämän githubista seuraavalla komennolla komentoriville:
git-klooni
ja asennamme sen seuraavilla komennoilla
cd-solmu-sonos-http-api
npm install -tuotanto
Voimme sitten suorittaa sen seuraavalla komennolla:
npm alku
Kun tämä on tehty, meidän on testattava, että se toimii.
Avaa ensin Raspberry Pi -laitteen Internet -selain ja siirry osoitteeseen https:// localhost: 5005/. Hieno käyttöliittymä pitäisi avata Sonos -logolla ja joitain asiakirjoja API: n toiminnasta.
Seuraavaksi tarkistetaan, että tämä toimii laajemmasta verkosta käyttämällä selainta toisessa PC: ssä tai Macissa samassa verkossa ja siirtymällä osoitteeseen https:// [theIPaddressofyourPi]: 5005/ja katsomalla, saammeko saman tuloksen. Meidän pitäisi.
Nyt saamme järjestelmän todella tekemään jotain. Käytä selainta ja siirry kohtaan:
192.168.4.102:5005/Ruokasali/playpause
Korvaa yllä oleva IP -osoite Raspberry Pi -laitteesi ja "Ruokasalin" osoitteella jollakin Sonos -alueesi nimillä. Sen pitäisi joko toistaa tai keskeyttää (riippuen siitä, toistetaanko musiikkia jo vai ei) kyseisen huoneen musiikkia. On selvää, että Sonos -jonossa on oltava jotain, jotta se toimisi.
Jatkossa käytän yllä olevaa IP -osoitetta ja ruokasalia esimerkkinä koko opetusohjelmassa. Ilmeisesti sinun pitäisi korvata ne IP -osoitteellasi ja vyöhykkeen nimelläsi joka kerta.
Vaihe 14: Käynnistä Sonos HTTP -sovellusliittymä jatkuvasti
On hienoa, että Sonos HTTP -sovellusliittymä on käynnissä, mutta entä jos se kaatuu? Tai menetät virran tai joudut käynnistämään Raspberry Pi -laitteesi uudelleen?
Näet vaikutuksen sulkemalla pääteikkunan ja yrittämällä uudelleen mitä yritimme. Se ei toimi, koska HTTP -sovellusliittymä on pysähtynyt pääteikkunan kanssa.
Haluamme todella, että tämä toimii jatkuvasti ja teemme niin aina käynnistyksen jälkeen. Teemme tämän hienolla jutulla nimeltä PM2.
Asenna ja suorita se uudessa pääteikkunassa seuraavasti:
sudo npm asennus -g pm2
pm2 -tila
Aloitetaan nyt Sonos HTTP -sovellusliittymän suorittaminen:
cd-solmu-sonos-http-api
pm2 aloita npm - aloita pm2 käynnistysjärjestelmä
Tämä viimeinen komento luo jotain, joka näyttää vähän tältä:
sudo env PATH = $ PATH:/usr/bin/usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp/home/pi
Kopioi mitä Pi tuottaa (ei tarkkaa tekstiä yllä - sinun voi olla erilainen) ja kirjoita se komentoriville. Tämä ohjaa järjestelmää suorittamaan PM2 käynnistyksen yhteydessä joka kerta.
Kirjoita lopuksi:
pm2 säästää
joka säästää kaiken.
Testaa nyt, onko tämä toiminut käynnistämällä Raspberry Pi uudelleen komennolla
sudo uudelleenkäynnistys
Toivottavasti kun Pi käynnistyy uudelleen, se käynnistää myös PM2: n ja vuorostaan Sonos HTTP -sovellusliittymän. Voit tarkistaa tämän navigoimalla saman verkon selaimen avulla aiemmin käyttämäämme osoitteeseen ja katso Sonos -logo ja ohjeet:
192.168.4.102:5005/
on minulle, mutta omasi riippuu IP -osoitteesta.
Vaihe 15: Pelaa Spotifyä
Tarkistetaan, että palvelu voi käyttää Spotifyä.
Avaa selain ja siirry seuraavaan osoitteeseen (ilmeisesti IP -osoitteesi ja huoneesi nimi):
192.168.4.102:5005/Ruokailuhuone/spotify/nyt/spotify/spotify: albumi: 2dfTV7CktUEBkZCHiB7VQB
Sinun pitäisi kuulla John Grant. Nauttia.
Vaihe 16: Etsi Spotifyn URI -tunnukset
Tiedän outoa, mutta kaikki eivät pidä John Grantista. Ehkä haluat kuunnella jotain muuta?
Voit saada Spotify -linkit työpöydältä, verkosta tai mobiilisovelluksista, mutta työpöytä on ylivoimaisesti helpoin, koska se toimittaa URI: n juuri haluamassasi muodossa, joten aloita siitä.
Siirry Spotify -työpöytäsovelluksessa albumille, jonka haluat kuunnella (ehkä Beyoncen Lemonade?)
Napsauta kolmea pientä pistettä sydänpainikkeen vieressä.
Siirry valikosta Jaa -kohtaan ja valitse Kopioi Spotify URI
Tämä kopioi jotain sellaista
spotify: albumi: 7dK54iZuOxXFarGhXwEXfF
leikepöydällesi, joka on Spotify URI Beyoncen Lemondade -albumille.
Käynnistä selaimesi uudelleen ja siirry seuraavaan osoitteeseen (ilmeisesti IP -osoitteen ja huoneen korvaaminen ja liittäminen juuri kopioituun URI -osoitteeseen):
192.168.4.102:5005/Ruokailuhuone/spotify/nyt/[Spotify -URI, jonka haluat pelata]
Sinun pitäisi kuulla valitsemasi soitto.
Jos haluat käyttää verkkosovellusta, se antaa sinulle verkkolinkin (jotain alla olevaa):
open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF
sinun on muunnettava tämä spotify: albumi: koodimuoto yllä, jotta se toimisi.
Vaihe 17: Huomautus Spotifyn URI -osoitteista
Spotify-URI-tunnukset ja niiden tapa liittyä solmu-sonos-http-api ovat intuitiivisia, suurelta osin.
Voit linkittää suoraan albumeihin, kappaleisiin ja soittolistoihin.
Albumin URI näyttää tältä:
spotify: albumi: 6agCM9GJcebduMddgFmgsO
Raidan URI näyttää tältä:
spotify: track: 4fNDKbaeEjk2P4GrRE1UbW
Soittolistat toimivat hieman eri tavalla. Kun kopioit URI: n Spotifysta, se näyttää tältä:
spotify: soittolista: 5huIma0YU4iusLcT2reVEU
Jotta sovellus todella toimisi API: n kanssa, sinun on kuitenkin lisättävä spotify: user: edellä mainitun alkuun. Tämä koskee jopa julkisia soittolistoja, ja kyllä, se tarkoittaa, että sanot spotify kahdesti.
Ollakseen erittäin selkeä, käyttäjän ei tarvitse olla tietyn käyttäjän nimi, vain tekstin käyttäjä. Joten oikea URI yllä olevalle soittolistalle sen toimimiseksi olisi:
spotify: käyttäjä: spotify: soittolista: 5huIma0YU4iusLcT2reVEU
Vaihe 18: Määritä Raspberry Pi lähettämään HTTP -pyynnöt
Sen sijaan, että kirjoittaisimme HTTP -pyynnöt manuaalisesti verkkoselaimeen, haluamme automatisoida sen niin, että Raspberry Pi tekee sen itse, kun se esitetään tietyllä ärsykkeellä (NFC -lukija käynnistyy).
Käytämme kirjastoa nimeltä pyynnöt, jotta Raspberry Pi voi tehdä tämän. Tarkistetaan, onko se asennettu.
Avaa päätelaite Pi -laitteellasi ja kirjoita seuraava:
sudo pip -asennuspyynnöt
On todennäköistä, että se tulee takaisin ja sanoo, että se on jo asennettu, jolloin se on hienoa. Jos ei, se asentaa sen.
Vaihe 19: Luo NFCC -tunnisteet Spotify -tietojen avulla
Nyt haluamme kirjoittaa Spotify -albumin URI -tunnuksen NFC -tunnisteeseen. Kutakin näistä tunnisteista käytetään kertomaan Raspberry Pi: lle toistamaan tietty albumi.
Voit kirjoittaa NFC -tunnisteeseen Android -puhelimella, mutta minusta on helpointa tehdä se Macin tai PC: n kautta, koska silloin voit saada helpoimmin Spotifyn URI -tunnukset Spotify -työpöytäsovelluksesta.
Liitä USB NFC -lukija PC- tai Mac -tietokoneeseen. Käytän American Card Systemsin ACR122U: ta.
Lataa NFC -työkalut PC- tai Mac -tietokoneellesi. Asenna ja avaa se.
Yhteyden muodostaminen lukijaan voi joskus olla hidasta ja voi sanoa, että se ei löydä lukijaa ollenkaan. Siirry NFC -työkalujen Muut -välilehteen ja napsauta niin usein Connected NFC Reader -painiketta. Sinun on ehkä irrotettava ja kytkettävä lukko muutaman kerran ennen kuin se löytää sen.
Lopulta se antaa sinulle mahdollisuuden valita lukijasi luettelosta ja sanoa, että se on yhteydessä. Siirry Tiedot -välilehteen, jossa ei näy muuta kuin "Odotetaan NFC -tagia".
Ota tyhjä NFC -tunniste. Laita se lukijan päälle ja jätä se sinne. NFC -työkalut näyttävät tunnisteen tiedot.
Siirry Kirjoita -välilehteen ja valitse Lisää tietue> Teksti. (Varo, ettet valitse URL -osoitetta tai URI: ta - tiedän, että se on houkuttelevaa, koska kopioit URI: ta, mutta haluat tekstiä)
Hanki URI Spotifysta aiemmin käyttämämme menetelmän avulla. Jos haluat helpon esimerkin, seuraava on John Grant -albumimme aikaisemmalta.
spotify: albumi: 2dfTV7CktUEBkZCHiB7VQB
Napsauta OK ja sitten Kirjoita (älä unohda tätä viimeistä vaihetta - se ei itse kirjoita sitä ennen kuin napsautat tätä). Se kertoo, että tagi on kirjoitettu onnistuneesti.
Ota tunniste pois lukijasta
Vaihe 20: Asenna NFC -lukija Raspberry Pi -laitteeseen
Liitä NFC -lukija johonkin Raspberry Pi -laitteen USB -porttiin.
Käytämme nfcpy Python -kirjastoa kommunikoimaan NFC -lukijan kanssa. Asenna se kirjoittamalla seuraava Pi -komentoriville:
pip asennus -U nfcpy
Voimme sitten tarkistaa, näkeekö tämä kirjasto NFC -lukijamme kirjoittamalla seuraavat:
python -m nfc
Jos se on toiminut, näet seuraavan:
Tämä on 1.0.3 versio nfcpy-ajosta Python 2.7.16: ssa Linux-4.19.97-v7+-armv7l-with-debian-10.3
Etsin nyt järjestelmästäsi kontaktittomia laitteita ** löytyi ACS ACR122U PN532v1.6 osoitteesta usb: 001: 011 En kokeile sarjalaitteita, koska et ole kertonut minulle-lisää vaihtoehto '--search-tty' saada minut etsimään - mutta varokaa, että tämä voi rikkoa muita sarjakehittäjiä
On kuitenkin suuri mahdollisuus, että saat virheilmoituksen, jossa sanotaan, että lukija on löydetty, mutta käyttäjälläsi (pi) ei ole lupaa käyttää sitä. Jos saat tämän virheilmoituksen, se selittää myös, kuinka korjata ongelma, eli kirjoittamalla kaksi komentoa, jotka näyttävät vähän tältä:
sudo sh -c 'echo ALAJÄRJESTELMÄ == / "usb \", ACTION == / "add \", ATTRS {idVendor} == / "04e6 \", ATTRS {idProduct} == / "5591 \", GROUP = / "plugdev \" >> /etc/udev/rules.d/nfcdev.rules '
sudo udevadm ohjaus -R
Kopioi ja suorita molemmat sen antamat komennot (ei täsmälleen mitä yllä on, koska omasi voi olla erilainen), irrota sitten ja kytke NFC -lukija uudelleen USB -portista.
Kokeile tarkistuskomentoa uudelleen:
python -m nfc
Tällä kertaa sen pitäisi sanoa, että se on löytänyt sen ilman virheilmoituksia.
Vaihe 21: Asenna Vinylemulator Python Scripts
Meillä on nyt kaikki rakennuspalikat paikallaan:
- Raspberry Pi pystyy kuuntelemaan NFC -tuloa
- Raspberry Pi pystyy käskemään Sonosin pelaamaan Spotify -soittolistoja, kun heille annetaan Spotify URI
- Meillä on NFC -tunniste, johon on tallennettu Spotify URI
Nyt meidän on vedettävä kaikki nämä rakennuspalikat johonkin hyödylliseen. Tämä tapahtuu lyhyen python -komentosarjan kautta, jonka kirjoitin (paljon apua aiemmista NFC/Spotify/Sonos -projekteista), jota kutsutaan vinylemulaattoriksi.
Voit tarkastella tiedostojen lähdekoodia osoitteessa github:
Asentaaksemme tämän Raspberry Pi -laitteeseemme meidän on kloonattava se githubista seuraavalla komennolla:
git -klooni
Vaihe 22: Muokkaa Vinylemulator
Avaa Raspberry Pi -tiedostonhallinta ja siirry etusivulle> pi> vinylemulator
Avaa tiedosto usersettings.py
Yksi tämän tiedoston riveistä lukee:
sonosroom = "Ruokasali"
Muuta "Ruokasali" sen Sonos -huoneen nimen mukaan, jota haluat hallita.
Tässä tiedostossa on myös asetus, jonka avulla voit muokata sonos-http-apin IP-osoitetta. Sinun pitäisi pystyä jättämään tämä ennalleen "paikallinen isäntä", mikä tarkoittaa vain, että se käyttää Raspberry Pi: tä, jolla se toimii.
Tallenna tiedosto ja sulje se.
Vaihe 23: Testaa Vinylemulator
Siirry Raspberry Pi -komentokehotteeseen.
Kirjoita seuraava komento:
python vinylemulator/readnfc.py
Jos kaikki on hyvin, tämä lataa komentosarjan ja sanoo, että lukija on valmis. Lukijan valon pitäisi palaa vihreänä.
Aseta NFC -tunniste lukijaan, joka piippaa.
Pääte näyttää, mitä se on lukenut NFC -tunnisteesta, ja näyttää lähettämänsä HTTP -pyyntöosoitteen. Valitsemasi albumin pitäisi soida Sonos -kaiuttimistasi.
Tämä komentosarja jatkuu, kunnes suljet pääteikkunan. Voit napauttaa eri albumin NFC -tunnisteita ja se vaihtaa kyseiseen albumiin.
Vaihe 24: Hanki Vinylemulator toimimaan jatkuvasti ja käynnistettäessä
Aivan kuten sonos-http-api, haluamme vinylemulaattorin toimivan koko ajan eikä vain silloin, kun kutsumme sitä. Voimme käyttää pm2: ta uudelleen tämän tekemiseen.
Sulje ensin kaikki käynnissä olevat vinylemulator -ilmentymät sulkemalla niiden pääteikkunat.
Avaa sitten uusi pääteikkuna ja kirjoita seuraavat kaksi komentoa:
pm2 käynnistä vinylemulator/readnfc.py
pm2 säästää
Tarkistetaan, toimiiko tämä käynnistämällä Raspberry Pi uudelleen. (Voit joko kirjoittaa sudo reboot tai tehdä sen Vadelma -valikosta hiirellä.
Odota, että Pi käynnistyy uudelleen ja katso, että se toimii napauttamalla lukijan NFC -tunnistetta. Sinun pitäisi saada musiikkia.
Vaihe 25: Onnittele itseäsi
Kaikki on nyt toimivaa. Voit siirtää Raspberry Pi: n mihin tahansa, mihin aiot sijoittaa sen. Se käynnistyy uudelleen ja toimii asetuksellasi aina, kun liität sen.
Seuraavat tehtävät ovat hauskoja: tehdä siitä kaikki kaunista.
Vaihe 26: Tee siitä kaunis - piilota lukija
Ensimmäinen osa kaunistamisesta on piilottaa ilkeä valkoinen muovinen NFC -lukija jonnekin.
Olen valinnut selkeästi matalan teknologian vaihtoehdon nauhoittaa sen tiskin alapuolelle Sonos Play -laitteeni vieressä: 5. Laskurin puu on riittävän ohut, jotta NFC voi mennä läpi, joten soitan musiikkia napauttamalla NFC -tagia maagisessa ja näkymättömässä paikassa.
Suositeltava:
Sonos Like Spotify Wifi -kaiutin: 9 vaihetta (kuvilla)
Sonos kuten Spotify Wifi -kaiutin: Tässä projektissa rakennamme Wifi -kaiuttimen, jossa on sisäänrakennettu Spotify -asiakas. Tämä tarkoittaa, että voit helposti valita Spotifyssa pelata kyseisellä kaiuttimella. Sinun ei tarvitse käsitellä paskaa bluetoothia, koska tämä perustuu ethernetiin. Sinun
Epäonnistunut yritys - Symfonisk (Sonos Play 1) - 3 ohmin subwoofer: 5 vaihetta
Epäonnistunut yritys - Symfonisk (Sonos Play 1) - 3 ohmin subwoofer: Tämän oli tarkoitus olla projekti, joka laajentaa joitain muita projekteja ja katkaisuja, joita olen nähnyt verkossa hyödyntääkseni Ikea Symfonisk / Sonos Play 1: tä langattomana ohjaimena subwooferille . Muut projektit olivat hyödyntäneet Symfoniskia langattomien kaiuttimien luomiseen
Albumit, joissa on NFC -tunnisteet Spotify -musiikin toistamiseksi automaattisesti Chromecastilla: 5 vaihetta
Albumit, joissa on NFC -tunnisteet Spotify -musiikin automaattiseen toistamiseen Chromecastilla: Tämä projekti alkoi ajatuksella tehdä albumikollaasi eniten soitetuista artisteistani Spotifyssa. Pelattuani jonkin aikaa Spotify -sovellusliittymän kanssa Pythonissa ajattelin, että olisi mukava linkittää nämä kansikuvat heidän Spotify -URI -osoitteisiinsa ja aloittaa soittaminen
Erguro-one Sonos Play 5: n valmistajan lähestymistapa IKEA Kuggis -laatikolla: 7 vaihetta (kuvilla)
Erguro-one Sonos Play 5: n valmistajan lähestymistapa IKEA Kuggis -laatikolla: Tämä projekti syntyi sen jälkeen, kun kuulin ensimmäisen kerran Sonos Play 5 -kaiuttimet, ja olin niin vaikuttunut äänenlaadusta kaiuttimen pienen koon suhteen, matalat taajuudet ovat ehdottoman vaikuttavia, siksi omistan 2 Play 5;-) I h
Raspberry Pi Spotify -soitin 3D -tulostetulla kotelolla: 4 vaihetta (kuvilla)
Raspberry Pi Spotify -soitin 3D -tulostetulla kotelolla: Tässä ohjeessa näytän sinulle, miten voit tehdä Raspberry Pi -pohjaisen musiikkisoittimen, joka voi toistaa paikallista musiikkia, verkkoradioasemia ja toimii spotify -yhteyskaiuttimena, kaikki seinään asennettavana 3D -tulostettu kotelo. Rakensin tämän musiikkisoittimen f