Kazalo:

Vinilni emulator Sonos Spotify: 26 korakov
Vinilni emulator Sonos Spotify: 26 korakov

Video: Vinilni emulator Sonos Spotify: 26 korakov

Video: Vinilni emulator Sonos Spotify: 26 korakov
Video: Демо-версия винилового эмулятора (ЗВУК ВКЛЮЧЕН!) 2024, Julij
Anonim
Image
Image
Vinilni emulator Sonos Spotify
Vinilni emulator Sonos Spotify

Upoštevajte, da to ni najnovejši nabor navodil za ta projekt:

Najnovejši nabor navodil in podpore obiščite

Poslušanje glasbe na vinilu je odlično. Je fizično in otipljivo. Poslušate cel album in ne naključnih skladb. Opaziš, ko je konec, in se zavestno odločiš za kaj drugega. Zbirko lahko ustvarite in brskate po njej, namesto da bi morali iskati točno tisto, kar želite.

Prav tako je drago in zajetno, še posebej, če menite, da je denar, ki ga porabite za vinil, zelo verjetno dvojnik glasbe, do katere že imate dostop prek storitve pretakanja, na katero ste naročeni.

Ta projekt poskuša ponoviti vidike taktilnosti in zbiranja vinil, pri tem pa se zanaša na Spotify, ki dejansko oddaja glasbo. Če postavite fizični predmet na bralnik NFC, priključen na Raspberry Pi (oba lahko skrijete), se bo začel predvajati album, povezan s to oznako.

Vodil vas bom skozi vse korake - od nastavitve Raspberry Pi do kodiranja oznak NFC. To je moj prvi projekt Raspberry Pi in moja prva koda Python, zato sem se pri razvoju tega naučil obojega. Kot taka ta navodila predvidevajo dobesedno nič predhodnega znanja in vas popeljejo skozi vsak korak.

Skupni stroški bistvenih sestavnih delov za izgradnjo tega znašajo približno 50-60 funtov.

Rad bi videl, kaj zgradite!

1. korak: Potrebne zaloge 1: Raspberry Pi

Zadnji del, ki se poveže z vašim omrežjem, Sonos in Spotify, bo vodil Raspberry Pi. Dejansko je za to zelo malo potrebno.

Bistveno:

Raspberry Pi: Uporabil sem Raspberry Pi 3 Model B+, vendar bo deloval tudi z Raspberry Pi 3 Model A+ (23 £)

Napajalnik USB: eno sem ležal - na voljo je uradni, če tega ne storite (£ 9)

Kartica Micro SD: Na Amazonu imam 32 GB, kar je dovolj za to aplikacijo (6 funtov)

Nekaj opreme Sonos, ki deluje v vašem omrežju (predvidevam, da to že imate, če ste tukaj …)

Račun Spotify Premium

Priporočeno:

Primer za Pi: obstaja veliko možnosti, ki se začnejo pri 5 £

Steklenica dostojnega California Zinfandel: priporočam Ridge, vendar so na voljo druge

2. korak: Potrebni dodatki 2: Čitalnik NFC

Potrebni dodatki 2: Čitalnik NFC
Potrebni dodatki 2: Čitalnik NFC
Potrebni dodatki 2: Čitalnik NFC
Potrebni dodatki 2: Čitalnik NFC

Ta navodila so narejena za bralnik NFC ACR122U, ki se poveže prek USB -ja.

ACR122U

Tega sem kupil pri Amazonu za 38 funtov (večinoma zato, ker je imel prvotno dostavo), vendar obstajajo cenejše možnosti za nakup istega bralnika.

Zmedeno se zdi, da se ACR122U prodaja pod kopico različnih blagovnih znamk (moja je bila pod blagovno znamko "Yosoo", ki ni daleč od pomirjujoče), a po mojem mnenju so vsi enaki in jih je izdelal American Card Systems.

Najcenejši, ki sem ga našel v oglašu ACR122U, je 21 funtov, vključno z pošiljanjem, vendar to prihaja neposredno s Kitajske, zato boste na to morda morali malo počakati.

Druge možnosti

Ta projekt temelji na knjižnici python, imenovani nfcpy, ki vodi seznam podprtih naprav tukaj:

Teoretično bi moral ta projekt delovati z vsemi tistimi na tem seznamu z malo integracije.

Ena od mamljivih možnosti je Adafruit PN532, ki je plošča, ki se mora priključiti neposredno na vaš Raspberry Pi s pomočjo mostičnih kablov. Poskusil sem in ugotovil, da je prava napaka. Na primer, zahteva spajkanje.

Ena od prednosti je površinsko, da je manjša, v resnici pa je plošča približno enake velikosti kot drobovi ACR122U. Če ste za svojo aplikacijo resnično potisnjeni, lahko odstranite plastiko z ACR122U in preprosto uporabite ploščo.

3. korak: Potrebne potrebščine 3: Oznake NFC

Potrebni potrošni material 3: oznake NFC
Potrebni potrošni material 3: oznake NFC

Za vsak album, ki ga želite ustvariti, potrebujete oznako NFC, ki ustreza standardu NTAG213.

Obstaja veliko krajev za nakup teh.

Svojo prvo serijo sem kupil pri Amazonu, kjer sem dobil paket 10 za 9 funtov (vključno s prvo dostavo)

Najbolje opremljen, ki sem ga našel tukaj v Združenem kraljestvu, je Seritag - na njihovem spletnem mestu imajo res širok izbor različnih stilov, odlične nasvete, natančno veste, kaj dobite (na Amazonu ni vedno res). Nimajo minimalne velikosti naročila in veliko možnosti. Oznake se začnejo pri 27p na oznako

4. korak: Prenesite Raspberry Pi OS na kartico SD

Prenesite Raspberry Pi OS na kartico SD
Prenesite Raspberry Pi OS na kartico SD
Prenesite Raspberry Pi OS na kartico SD
Prenesite Raspberry Pi OS na kartico SD

V računalniku ali Macu prenesite in zaženite slikovno sliko Raspberry PI.

Vstavite kartico SD, na katero želite namestiti operacijski sistem Raspberry Pi.

Kliknite IZBERI OS in izberite privzeto Rasbian.

Kliknite IZBERI KARTICO SD in izberite kartico SD, ki ste jo priključili.

Kliknite na NAPIŠI. To lahko traja nekaj časa.

Ko konča, vam bo povedal, da odstranite kartico SD, kar morate storiti. Toda potem ga znova priključite, saj morate najprej narediti nekaj gospodinjskih opravil.

5. korak: Omogočite SSH na sliki OS Raspberry Pi OS

Omogočite SSH za sliko Raspberry Pi OS
Omogočite SSH za sliko Raspberry Pi OS

Ko je operacijski sistem zapisan na kartico SD, morate opraviti še nekaj dodatnih nalog.

Do Raspberry Pi želimo dostopati, ne da bi priklopili tipkovnico ali monitor (imenovano tudi "brez glave"), kar lahko storimo prek lokalnega omrežja z uporabo računalnika ali računalnika Mac prek protokola, imenovanega SSH. Zaradi varnostnih razlogov je SSH privzeto onemogočen. Omogočiti ga moramo.

To lahko storimo tako, da ustvarimo prazno datoteko z imenom:

ssh

na kartici SD, ki smo jo pravkar ustvarili. Pomembno je, da ta nima nobene razširitve (npr.. Txt). Datoteki sami ni treba vsebovati nobene vsebine - samo njen obstoj bo omogočil SSH, ko se Pi zažene.

6. korak: Izbirno: nastavite Wi -Fi na svojem Raspberry Pi

Izbirno: nastavite Wi -Fi na svojem Raspberry Pi
Izbirno: nastavite Wi -Fi na svojem Raspberry Pi
Izbirno: nastavite Wi -Fi na svojem Raspberry Pi
Izbirno: nastavite Wi -Fi na svojem Raspberry Pi

Ta korak lahko preskočite, če nameravate svoj Raspberry Pi povezati z usmerjevalnikom prek etherneta. (Čeprav bi o tej odločitvi morda želeli dobro premisliti - njeno prenašanje prek wifija olajša življenje v smislu pozicioniranja tega)

Ustvarite navadno besedilno datoteko z imenom wpa_supplicant.conf v korenskem imeniku kartice SD.

V datoteko vstavite spodnje besedilo:

država = gb

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

Po potrebi spremenite državo (GB je Združeno kraljestvo, ZDA je ZDA, DE je Nemčija itd.)

Tam spremenite poverilnice za wifi, da bodo vaše dejanske podrobnosti o usmerjevalniku wifi.

Shranite datoteko.

Varno odstranite kartico SD.

7. korak: Vklopite svoj Raspberry Pi

Vklopite svoj Raspberry Pi
Vklopite svoj Raspberry Pi

Kartico SD, ki ste jo pravkar ustvarili, vstavite v svoj Raspberry Pi.

Priključite Raspberry Pi v napajanje prek kabla USB. Počakajte minuto, da se zažene.

8. korak: Poiščite naslov IP vašega Raspberry Pi

Zdaj morate najti naslov IP Raspberry Pi, da se lahko povežete z njim. To lahko storite na dva načina:

  • prek strani za nastavitev usmerjevalnika - če imate sodoben usmerjevalnik, kot je eero, je to zelo enostavno;
  • ali prek aplikacije za pametni telefon, ki je na voljo za iOS in Android, imenovane "fing" - prenesite jo, povežite z usmerjevalnikom in poiščite naprave - eno od njih bi morali imenovati "Raspberry" - to bo naslov IP, ki ga potrebujete.

9. korak: Povežite se z ukazno vrstico Raspberry Pi

Povežite se z ukazno vrstico Raspberry Pi
Povežite se z ukazno vrstico Raspberry Pi

Odprite Terminal na računalniku Mac (ali če uporabljate Windows, nato prenesite in uporabite Putty).

Vnesite naslednji ukaz:

ssh pi@[naslov vašega Pi -ja]

Sprejmite vsa varnostna opozorila, ki jih dobite. Od vas bo zahtevano geslo za privzetega uporabnika pi, ki je

malina

10. korak: Nastavite grafični vmesnik Raspberry Pi OS

Nastavite grafični vmesnik Raspberry Pi OS
Nastavite grafični vmesnik Raspberry Pi OS
Nastavite grafični vmesnik Raspberry Pi OS
Nastavite grafični vmesnik Raspberry Pi OS

Zdaj ste povezani z vašim Pi prek ukazne vrstice, kar je super, vendar ga želite tudi nastaviti tako, da lahko dostopate do grafičnega uporabniškega vmesnika, do katerega bomo dostopali prek VNC (Virtual Network Computing). Po predvidevanjih moramo to tudi omogočiti.

Najprej preverite, ali je vaša programska oprema Pi posodobljena, tako da v ukazno vrstico vnesete naslednja dva ukaza (vsakemu sledi vnos):

sudo apt posodobitev

sudo apt install realvnc-vnc-server realvnc-vnc-viewer

Nato odprite meni z nastavitvami Raspberry Pi tako, da vnesete:

sudo raspi-config

Pomaknite se do Možnosti vmesnika> VNC> Da.

Zaprite aplikacijo config s pritiskom na tipko escape in znova zaženite Pi iz ukazne vrstice tako, da vnesete:

sudo ponovni zagon

11. korak: Povežite in nastavite svoj grafični vmesnik Raspberry Pi

Povežite se in nastavite svoj grafični vmesnik Raspberry Pi
Povežite se in nastavite svoj grafični vmesnik Raspberry Pi
Povežite se in nastavite svoj grafični vmesnik Raspberry Pi
Povežite se in nastavite svoj grafični vmesnik Raspberry Pi

Prenesite in odprite VNC Viewer.

Vnesite naslov IP za vaš Raspberry Pi in pritisnite Connect. Od vas bo zahteval uporabniško ime in geslo, ki sta:

Uporabniško ime = pi

Geslo = malina

To bi vas moralo zagnati do grafičnega vmesnika.

Pozval vas bo, da potrdite geografijo in postavitev tipkovnice.

Nato vas bo pozval, da spremenite geslo (dobra ideja).

Od vas bo zahteval, da nastavite svoje podatke o wifi, vendar lahko to preskočite, saj že delujejo. (Čeprav če uporabljate ethernet in razmišljate, je zdaj vaša priložnost … vendar upoštevajte, da se lahko vaš naslov IP spremeni)

Nato preveri, prenese in namesti posodobitve (lahko traja nekaj časa).

Ko končate s čarovnikom za namestitev, priporočam, da spremenite ločljivost zaslona, saj je privzeto precej majhno. To lahko storite tako, da kliknete Raspberry v zgornjem levem kotu> Nastavitve> Konfiguracija Raspberry Pi> Zaslon> Nastavi ločljivost

Če želite, da začne veljati, morate znova zagnati Pi.

12. korak: Namestite Node.js in NPM

Namestite Node.js in NPM
Namestite Node.js in NPM

Nato želite naložiti ukazno vrstico Raspberry Pi, da namestite odvisnosti, ki jih potrebujemo.

To lahko storite tako, da se povežete prek VNC in kliknete gumb na vrhu, ki izgleda kot ukazna vrstica; ali pa se povežete neposredno iz računalnika Mac/PC s pomočjo terminala in kita, kot smo to storili prej. Če ste manj navajeni delati z Raspberry Pi, je lažje narediti prvo.

(Nasvet: Besedilo lahko kopirate iz računalnika Mac/PC in ga prilepite v Raspberry Pi prek VNC s pritiskom na CONTROL-V, če pa ga želite prilepiti v terminal, morate pritisniti CONTROL-SHIFT-V)

Prva naloga je, da znova preverite, ali je vaša programska oprema posodobljena, tako da vnesete naslednja dva ukaza. Prenos in namestitev lahko traja nekaj časa.

sudo apt-get posodobitev

sudo apt-get nadgradnja

Nato želite prenesti in namestiti node.js in NPM (ne skrbite preveč, kaj so, so koristni in potrebni za naša naslednja opravila), tako da vnesete naslednje:

sudo apt-get install nodejs npm

Nekajkrat vas bo vprašal, če z njimi z veseljem zavzamete prostor na disku - zato pritisnite Y

Korak: Namestite SONOS HTTP API

Namestite SONOS HTTP API
Namestite SONOS HTTP API
Namestite SONOS HTTP API
Namestite SONOS HTTP API

Osnova zaledja našega projekta je paket node-sonos-http-api, ki ga je ustvaril jishi. Vse o tem si lahko preberete tukaj:

To bomo prenesli iz github z naslednjim ukazom, vnesenim v ukazno vrstico:

git clone

in ga namestili z naslednjimi ukazi

cd vozlišče-sonos-http-api

npm install --production

Nato ga lahko zaženemo z naslednjim ukazom:

npm start

Ko to storimo, moramo preveriti, ali deluje.

Najprej odprite spletni brskalnik na našem Raspberry Pi in se pomaknite na https:// localhost: 5005/. Odpreti bi se moral lep vmesnik z logotipom Sonos in nekaj dokumentacije o delovanju API -ja.

Nato preverimo, ali to deluje iz širšega omrežja, tako da uporabimo brskalnik v drugem računalniku ali računalniku Mac v istem omrežju in se pomaknemo na https:// [theIPaddressofyourPi]: 5005/in preverimo, ali dobimo enak rezultat. Morali bi.

Sedaj bomo sistem dejansko naredili. Uporabite brskalnik in se pomaknite do:

192.168.4.102:5005/ Jedilnica/igralni premor

Zgornji naslov IP morate zamenjati z naslovom vašega Raspberry Pi in "Jedilnica" z enim od imen vaših con Sonos. Moral bi predvajati ali pavzirati (odvisno od tega, ali se glasba že predvaja ali ne) glasbo v tej sobi. Očitno mora biti nekaj v čakalni vrsti Sonos, da bo to delovalo.

V prihodnje bom kot primere v tej vadnici uporabil zgornji naslov IP in jedilnico. Očitno jih morate ob vsaki priložnosti zamenjati z vašim naslovom IP in imenom območja.

14. korak: Naj se API Sonos HTTP nenehno izvaja

Naj Sonos HTTP API stalno deluje
Naj Sonos HTTP API stalno deluje

Super je, da imamo vgrajen Sonos HTTP API, kaj pa, če se zruši? Ali pa izgubite moč ali morate znova zagnati Raspberry Pi?

Učinek lahko vidite tako, da zaprete terminalsko okno in poskusite znova, kar smo pravkar poskusili. Ne bo delovalo, ker se je API HTTP ustavil skupaj s terminalskim oknom.

Pravzaprav želimo, da se to nenehno izvaja, in to vsakič od zagona. To naredimo s kul stvarjo, imenovano PM2.

V novem oknu terminala ga namestite in zaženite na naslednji način:

sudo npm install -g pm2

status pm2

Zdaj pa zaženimo naš Sonos HTTP API:

cd vozlišče-sonos-http-api

pm2 start npm - zagon pm2 zagon systemd

Ta zadnji ukaz ustvari nekaj, kar je nekoliko podobno:

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

Kopirajte tisto, kar ustvari vaš Pi (ne natančno zgornje besedilo - vaše je lahko drugačno) in ga vnesite v ukazno vrstico. To naroči sistemu, da vsakič ob zagonu zažene PM2.

Na koncu vnesite:

pm2 shrani

kar prihrani vse.

Zdaj preizkusite, ali je to delovalo, tako da znova zaženete Raspberry Pi z ukazom

sudo ponovni zagon

Upajmo, da se bo po ponovnem zagonu Pi zagnal tudi PM2 in nato Sonos HTTP API. To lahko preverite tako, da z brskalnikom v istem omrežju poiščete naslov, ki smo ga uporabljali prej, in si ogledate logotip Sonos in navodila:

192.168.4.102:5005/

to je zame, toda vaš bo odvisen od naslova IP.

Korak 15: Predvajajte Spotify

Preverimo, ali lahko storitev dostopa do Spotifyja.

Odprite brskalnik in se pomaknite do naslednjega naslova (očitno zamenjajte z vašim naslovom IP in imenom sobe):

192.168.4.102:5005/ Jedilnica/spotify/zdaj/spotify/spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Moral bi slišati nekaj Johna Granta. Uživajte.

16. korak: Poiščite URI Spotify

Poiščite URI Spotify
Poiščite URI Spotify

Čudno, vem, vendar niso vsi všeč John Grant. Morda želite poslušati kaj drugega?

Povezave Spotify lahko dobite iz namiznih, spletnih ali mobilnih aplikacij, vendar je namizje daleč najlažje, saj prinaša URI v natančno želeni obliki, zato začnite s tem.

V namizni aplikaciji Spotify se pomaknite do albuma, ki ga želite poslušati (morda Lemonade by Beyonce?)

Kliknite na tri pikice poleg srčnega gumba.

Pojdite v meni za skupno rabo in izberite Kopiraj URI Spotify

To bo kopiralo nekaj takega

spotify: album: 7dK54iZuOxXFarGhXwEXfF

v odložišče, ki je Spotify URI za album Beyonce Lemondade.

Znova zaženite brskalnik in se pomaknite na naslednji naslov (očitno zamenjajte naslov IP in sobo ter prilepite v URI, ki ste ga pravkar kopirali):

192.168.4.102:5005/ Jedilnica/spotify/zdaj/[Spotify URI, ki ga želite predvajati]

Slišati bi morali svojo izbrano igro.

Če raje uporabljate spletno aplikacijo, vam bo dala spletno povezavo (nekaj podobnega spodaj):

open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF

to morate pretvoriti v zgornjo obliko spotify: album: code, da bo delovala.

Korak 17: Opomba o URI -jih Spotify

Spotify URI in način njihovega vmesnika z node-sonos-http-api so večinoma intuitivni.

Povezujete se lahko neposredno do albumov, skladb in seznamov predvajanja.

URI albuma izgleda tako:

spotify: album: 6agCM9GJcebduMddgFmgsO

URI sledi je videti tako:

spotify: track: 4fNDKbaeEjk2P4GrRE1UbW

Seznami predvajanja delujejo nekoliko drugače. Ko kopirate URI iz Spotifyja, bo videti nekako tako:

spotify: seznam predvajanja: 5huIma0YU4iusLcT2reVEU

Če pa želite dejansko delovati na API -ju, morate na začetek zgornjega dodati spotify: user:. To velja celo za javne sezname predvajanja in da, to pomeni, da dvakrat pravite spotify.

Če želite biti zelo jasni, ni nujno, da je ime določenega uporabnika, samo besedilni uporabnik. Torej je pravilen URI za zgornji seznam predvajanja, da bo deloval:

spotify: uporabnik: spotify: seznam predvajanja: 5huIma0YU4iusLcT2reVEU

18. korak: Nastavite Raspberry Pi za pošiljanje zahtev

Nastavite Raspberry Pi za pošiljanje zahtev HTTP
Nastavite Raspberry Pi za pošiljanje zahtev HTTP

Namesto da ročno vnašamo zahteve HTTP v spletni brskalnik, jih želimo avtomatizirati, tako da Raspberry Pi to naredi sam, ko je predstavljen z določenim dražljajem (sproži se bralnik NFC).

Uporabljali bomo knjižnico, ki se imenuje zahteve, da naši malini Pi to omogoči. Preverimo, ali je nameščen.

Odprite terminal na svojem Pi in vnesite naslednje:

zahteve za namestitev sudo pip

Verjetno se vrne in pravi, da je že nameščen, v tem primeru super. Če ne, ga bo namestil.

Korak 19: Ustvarite oznake NFCC s podatki Spotify

Ustvarite oznake NFCC s podatki Spotify
Ustvarite oznake NFCC s podatki Spotify
Ustvarite oznake NFCC s podatki Spotify
Ustvarite oznake NFCC s podatki Spotify
Ustvari oznake NFCC s podatki Spotify
Ustvari oznake NFCC s podatki Spotify
Ustvari oznake NFCC s podatki Spotify
Ustvari oznake NFCC s podatki Spotify

Zdaj želimo napisati URI albuma Spotify na oznako NFC. Vsaka od teh oznak je tisto, kar boste uporabili, da Raspberry Piju naročite, naj predvaja določen album.

Na oznako NFC lahko pišete s telefonom s sistemom Android, vendar se mi zdi najlažje to storiti prek računalnika Mac ali računalnika, saj lahko najlažje dobite URI -je Spotify iz namizne aplikacije Spotify.

Bralnik USB NFC priključite v računalnik ali Mac. Uporabljam ACR122U podjetja American Card Systems.

Prenesite orodja NFC v računalnik ali Mac. Namestite in odprite.

Včasih se lahko poveže z bralcem nekoliko počasi in morda reče, da bralca sploh ne najde. Pojdite na zavihek Drugo v orodjih NFC in občasno kliknite gumb Povezani bralnik NFC. Morda boste morali bralca nekajkrat izključiti in znova vklopiti, preden ga najde.

Sčasoma vam bo dala možnost, da izberete bralca s seznama in povejte, da je povezan. Pojdite na zavihek Informacije, ki ne bo prikazal ničesar razen "Čakanje na oznako NFC".

Vzemite prazno oznako NFC. Postavite ga na bralnik in pustite tam. Orodja NFC bodo prikazala podatke o oznaki.

Pojdite na zavihek Pisanje in kliknite Dodaj zapis> Besedilo. (Pazite, da ne izberete URL ali URI - vem, da je mamljivo, ker kopirate URI, vendar želite besedilo)

Vzemite URI iz Spotifyja po metodi, ki smo jo uporabili prej. Če želite enostaven primer, potem je naš album John Grant od prej.

spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Kliknite V redu in nato Napiši (ne pozabite na zadnji korak - dejansko ga ne zapiše, dokler ne kliknete tega). Povedal vam bo, da je oznaka uspešno napisana.

Snemite oznako z bralnika

20. korak: Nastavite bralnik NFC na Raspberry Pi

Nastavite bralnik NFC na Raspberry Pi
Nastavite bralnik NFC na Raspberry Pi

Bralnik NFC priključite v eno od vrat USB na vašem Raspberry Pi.

Za komunikacijo z bralnikom NFC bomo uporabili knjižnico nfcpy Python. Namestite ga tako, da v ukazno vrstico Pi vnesete naslednje:

pip install -U nfcpy

Nato lahko preverimo, ali ta knjižnica vidi naš bralnik NFC, tako da vnesemo naslednje:

python -m nfc

Če je delovalo, boste videli naslednje:

To je različica 1.0.3 nfcpy, ki se izvaja v Pythonu 2.7.16 v sistemu Linux-4.19.97-v7+-armv7l-with-debian-10.3

Zdaj iščem brezstične naprave v vašem sistemu ** najdem ACS ACR122U PN532v1.6 na usb: 001: 011 Ne poskušam serijskih naprav, ker mi niste povedali-dodajte možnost '--search-tty' da me iščejo - vendar pazite, da bi to lahko pokvarilo druge serijske razvijalce

Vendar obstaja velika verjetnost, da boste prejeli sporočilo o napaki, ki pravi, da je bralca odkril, vendar vaš uporabnik (pi) nima dovoljenja za dostop do njega. Če dobite to sporočilo o napaki, bo tudi razloženo, kako odpraviti težavo, in sicer tako, da vnesete dva ukaza, ki izgledata nekako takole:

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

sudo udevadm nadzor -R

Kopirajte in izvedite oba ukaza, ki vam jih daje (ne ravno to, kar je zgoraj, saj so vaši morda drugačni), nato odklopite in znova vklopite bralnik NFC iz vrat USB.

Poskusite znova ukaz check:

python -m nfc

Tokrat naj pove, da ga je našel brez sporočil o napakah.

21. korak: Namestite skripte Python Vinylemulator

Zdaj imamo postavljene vse gradnike:

  • Naš Raspberry Pi lahko posluša vnos NFC
  • Naš Raspberry Pi lahko Sonosu pove, naj predvaja sezname predvajanja Spotify, ko dobi URI Spotify
  • Imamo oznako NFC, na kateri je shranjen URI Spotify

Zdaj moramo vse te gradnike potegniti v nekaj uporabnega. To se naredi s kratkim skriptom python, ki sem ga napisal (z veliko pomočjo iz prejšnjih projektov NFC/Spotify/Sonos), ki se imenuje vinylemulator.

Izvorno kodo datotek si lahko ogledate na githubu:

Če želite to namestiti na naš Raspberry Pi, ga moramo klonirati iz github z naslednjim ukazom:

git clone

Korak: Prilagodite Vinylemulator

Prilagodite Vinylemulator
Prilagodite Vinylemulator
Prilagodite Vinylemulator
Prilagodite Vinylemulator

Odprite upravitelj datotek Raspberry Pi in se pomaknite do doma> pi> vinylemulator

Odprite datoteko usersettings.py

Ena od vrstic v tej datoteki se bo glasila:

sonosroom = "Jedilnica"

Spremenite »Jedilnica« na poljubno ime sobe Sonos, ki ga želite nadzirati.

V tej datoteki je tudi nastavitev, ki vam omogoča prilagajanje naslova IP sonos-http-api. To možnost bi morali pustiti nespremenjeno kot "localhost", kar pomeni, da bo uporabljal Raspberry Pi, na katerem teče.

Shranite datoteko in jo zaprite.

23. korak: Preizkusite Vinylemulator

Preizkusite vinylemulator
Preizkusite vinylemulator
Preizkusite vinylemulator
Preizkusite vinylemulator

Pojdite v ukazni poziv Raspberry Pi.

Vnesite naslednji ukaz:

python vinylemulator/readnfc.py

Če je vse v redu, bo to naložilo skript in sporočilo, da je bralec pripravljen. Lučka na bralniku mora biti zelena.

Oznako NFC postavite na bralnik, ki bo zapiskal.

Terminal bo pokazal, kaj je prebral iz oznake NFC, in prikazal naslov zahteve HTTP, ki ga je poslal. Vaš izbrani album bi se moral predvajati iz vaših zvočnikov Sonos.

Ta skript se bo izvajal, dokler ne zaprete terminalskega okna. Lahko se dotaknete različnih oznak NFC albuma in preklopi na ta album.

24. korak: Zaženite Vinylemulator za stalno in ob zagonu

Tako kot sonos-http-api želimo, da vinylemulator deluje ves čas in ne samo, ko ga pokličemo. Za ponovitev tega lahko uporabimo pm2.

Najprej zaprite vse primere vinylemulatorja, ki jih uporabljate, tako da zaprete njihova terminalska okna.

Nato odprite novo okno terminala in vnesite naslednja dva ukaza:

pm2 start vinylemulator/readnfc.py

pm2 shrani

Preverimo, ali je to delovalo, tako da znova zaženemo Raspberry Pi. (Lahko vnesete sudo reboot ali to storite v meniju Raspberry z miško.

Počakajte, da se Pi znova zažene in se prepričajte, da deluje, tako da se na bralniku dotaknete oznake NFC. Moral bi dobiti glasbo.

Korak 25: Čestitajte sebi

Zdaj je vse funkcionalno. Raspberry Pi lahko premaknete kamor koli nameravate. Vsakič, ko ga priključite, se bo znova zagnal in deloval tako, kot ste ga nastavili.

Vaše naslednje naloge so zabavne: narediti vse lepo.

Korak 26: Naj bo lepo - skrij bralca

Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca
Naj bo lepo - skrij bralca

Prvi del njegove lepote je skrivanje ogabnega belega plastičnega bralnika NFC nekam stran.

Odločil sem se za zelo nizkotehnološko možnost, da jo prilepim na spodnjo stran pulta poleg mojega Sonos Play: 5. Les pulta je dovolj tanek, da lahko preide NFC, zato predvajam glasbo tako, da se na čarobno in nevidno mesto dotaknem oznake NFC.

Priporočena: