Përmbajtje:

Sonos Spotify Vinyl Emulator: 26 hapa
Sonos Spotify Vinyl Emulator: 26 hapa

Video: Sonos Spotify Vinyl Emulator: 26 hapa

Video: Sonos Spotify Vinyl Emulator: 26 hapa
Video: I just bought an INSANE graphics card 2024, Korrik
Anonim
Image
Image
Sonos Spotify Vinyl Emulator
Sonos Spotify Vinyl Emulator

Ju lutemi vini re se ky nuk është grupi i fundit i udhëzimeve për këtë projekt:

Ju lutemi vizitoni https://www.hackster.io/mark-hank/sonos-spotify-vinyl-emulator-3be63d për grupin e fundit të udhëzimeve dhe mbështetjes

Dëgjimi i muzikës në vinyl është i mrekullueshëm. Physicalshtë fizike dhe prekëse. Ju dëgjoni një album të tërë dhe jo këngë të rastësishme. Ju e vini re kur mbaron dhe zgjidhni me vetëdije diçka tjetër. Ju mund të krijoni një koleksion dhe ta shfletoni atë në vend që të keni nevojë të kërkoni saktësisht atë që dëshironi.

Alsoshtë gjithashtu e shtrenjtë dhe e rëndë, veçanërisht kur konsideroni se çdo para që shpenzoni për vinyl ka shumë të ngjarë të jetë një kopje e muzikës në të cilën tashmë keni qasje përmes një shërbimi transmetimi në të cilin jeni regjistruar.

Ky projekt përpiqet të përsërisë prekshmërinë dhe aspektet e grumbullimit të vinylit duke u mbështetur në Spotify për të dhënë muzikën në të vërtetë. Vendosja e një objekti fizik në një lexues NFC të lidhur me një Raspberry Pi (që të dyja mund të fshihen) do të fillojë të luajë albumin e lidhur me atë etiketë.

Unë do t'ju ndjek nëpër të gjitha hapat - nga konfigurimi i Raspberry Pi deri tek kodimi i etiketave NFC. Ky është projekti im i parë Raspberry Pi dhe kodi im i parë Python, kështu që unë e mësova veten të dy gjatë zhvillimit të tij. Si të tilla, këto udhëzime supozojnë fjalë për fjalë zero njohuri të mëparshme dhe ju flasin për çdo hap.

Kostoja totale për përbërësit kryesorë për ta ndërtuar këtë është afërsisht 50-60 £.

Do të doja të shihja atë që ndërtoni!

Hapi 1: Furnizimet e kërkuara 1: Raspberry Pi

Pjesa e pasme që ndërlidhet me rrjetin tuaj, Sonos dhe Spotify do të drejtohet nga një Raspberry Pi. Në fakt ka shumë pak që ju nevojitet për ta bërë këtë.

Thelbësore:

Raspberry Pi: Kam përdorur një Raspberry Pi 3 Model B+ por do të punojë gjithashtu me një Raspberry Pi 3 Model A+ (23 £)

Furnizimi me energji USB: Unë kisha një të shtrirë përreth - ekziston një zyrtar në dispozicion nëse nuk e bëni (£ 9)

Kartë Micro SD: Kam një 32 GB, e cila është mjaft për këtë aplikacion, në Amazon (6 £)

Disa pajisje Sonos që funksionojnë në rrjetin tuaj (supozoj se e keni tashmë nëse jeni këtu …)

Një llogari Spotify Premium

Rekomanduar:

Një rast për Pi: ka shumë mundësi, duke filluar nga 5

Një shishe California Zinfandel e mirë: Unë rekomandoj Ridge, por të tjerat janë në dispozicion

Hapi 2: Furnizimet e kërkuara 2: NFC Reader

Furnizimet e kërkuara 2: NFC Reader
Furnizimet e kërkuara 2: NFC Reader
Furnizimet e kërkuara 2: NFC Reader
Furnizimet e kërkuara 2: NFC Reader

Këto udhëzime janë ndërtuar për një lexues ACR122U NFC i cili lidhet nëpërmjet USB.

ACR122U

E bleva këtë nga Amazon për 38 £ (kryesisht sepse kishte shpërndarje kryesore), por ka mundësi më të lira për të blerë këtë lexues të njëjtë.

Në mënyrë konfuze, ACR122U duket se shitet nën një mori emrash të ndryshëm të markave (imja erdhi nën emrin e markës jo-siguruese "Yosoo"), por nga sa mund të them ata janë të gjithë të njëjtë dhe të ndërtuar nga American Card Systems.

Më e lira që kam gjetur ACR122U të reklamuar është 21 £ përfshirë transportin, por kjo vjen drejtpërdrejt nga Kina, kështu që mund t'ju duhet të prisni pak për këtë.

Opsione të tjera

Ky projekt mbështetet në një bibliotekë python të quajtur nfcpy e cila mban një listë të pajisjeve të mbështetura këtu:

Në teori ky projekt duhet të punojë me cilindo nga ata në atë listë me pak integrim.

Një opsion joshës është Adafruit PN532 i cili është një tabelë e cila duhet të lidhet drejtpërdrejt me Raspberry Pi tuaj duke përdorur kabllo kërcyes. E provova dhe e gjeta një gabim të vërtetë. Ajo kërkon bashkim, për shembull.

Një avantazh i tij është, sipërfaqësisht, se është më i vogël, por në realitet bordi është me të njëjtën madhësi si zorrët e ACR122U. Nëse jeni vërtet të shtyrë për hapësirë për aplikimin tuaj, atëherë mund ta hiqni plastikën nga ACR122U dhe thjesht përdorni bordin.

Hapi 3: Furnizimet e kërkuara 3: Etiketat NFC

Furnizimet e kërkuara 3: Etiketat NFC
Furnizimet e kërkuara 3: Etiketat NFC

Për secilin album që dëshironi të krijoni, do t'ju duhet një etiketë NFC e cila plotëson standardin NTAG213.

Ka shumë vende për t'i blerë ato.

Bleva serinë time të parë nga Amazon, ku mora një paketë prej 10 për 9 £ (përfshirë dorëzimin Prime)

Furnizimi më i mirë që kam gjetur këtu në MB është Seritag - ata kanë një përzgjedhje vërtet të madhe të stileve të ndryshme, këshilla të shkëlqyera në faqen e tyre të internetit, ju e dini saktësisht se çfarë po merrni (jo gjithmonë e vërtetë në Amazon). Ata nuk kanë madhësi minimale të porosisë dhe një numër opsionesh. Etiketat fillojnë me 27p për etiketë

Hapi 4: Shkarkoni Raspberry Pi OS në një kartë SD

Shkarkoni Raspberry Pi OS në një kartë SD
Shkarkoni Raspberry Pi OS në një kartë SD
Shkarkoni Raspberry Pi OS në një kartë SD
Shkarkoni Raspberry Pi OS në një kartë SD

Në PC ose Mac tuaj, shkarkoni dhe ekzekutoni aplikacionin e imazhit Raspberry PI.

Vendosni kartën SD në të cilën dëshironi të instaloni sistemin operativ Raspberry Pi.

Klikoni në CHOOSE OS dhe zgjidhni Rasbian të paracaktuar.

Klikoni në CHOOSE SD CARD dhe zgjidhni kartën SD që keni lidhur.

Klikoni mbi SHKRUAJ. Kjo mund të marrë pak kohë.

Pasi të jetë bërë, do t'ju tregojë të hiqni kartën SD, gjë që duhet të bëni. Por pastaj lidheni përsëri pasi ka disa pika të mirëmbajtjes së shtëpisë që duhet të bëni së pari.

Hapi 5: Aktivizoni SSH në Imazhin tuaj të Raspberry Pi OS

Aktivizoni SSH në Imazhin tuaj të Raspberry Pi OS
Aktivizoni SSH në Imazhin tuaj të Raspberry Pi OS

Pasi të jetë shkruar OS në kartën SD, ka disa detyra shtesë që duhet të bëni.

Ne duam të hyjmë në Raspberry Pi pa futur një tastierë ose monitor (aka "pa kokë"), gjë që mund ta bëjmë përmes rrjetit tonë lokal duke përdorur PC ose Mac tonë përmes një protokolli të quajtur SSH. Sidoqoftë, për arsye sigurie SSH është e çaktivizuar si parazgjedhje. Duhet ta aktivizojmë.

Ne mund ta bëjmë këtë duke krijuar një skedar bosh të quajtur:

ssh

në kartën SD që sapo krijuam. Importantshtë e rëndësishme që kjo të mos ketë asnjë lloj shtrirjeje (p.sh..xt). Vetë skedari nuk ka nevojë të përmbajë asnjë përmbajtje - vetëm ekzistenca e tij do të mundësojë SSH kur Pi të ngrihet.

Hapi 6: Opsional: Vendosni Wifi në Raspberry Pi tuaj

Opsionale: Vendosni Wifi në Raspberry Pi tuaj
Opsionale: Vendosni Wifi në Raspberry Pi tuaj
Opsionale: Vendosni Wifi në Raspberry Pi tuaj
Opsionale: Vendosni Wifi në Raspberry Pi tuaj

Ju mund ta kaloni këtë hap nëse planifikoni të lidhni Raspberry Pi tuaj në ruterin tuaj me ethernet. (Megjithëse ju mund të dëshironi të mendoni shumë për atë vendim - ta kaloni atë mbi Wi -Fi e bën jetën shumë më të lehtë për sa i përket pozicionimit të tij)

Krijoni një skedar teksti të thjeshtë të quajtur wpa_supplicant.conf në drejtorinë rrënjësore të kartës SD.

Futni tekstin e mëposhtëm në skedar:

vendi = gb

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

Ndryshoni vendin sipas rastit (GB është Britania e Madhe, SHBA janë SHBA, DE është Gjermania, etj)

Ndryshoni kredencialet wifi atje për të qenë të dhënat tuaja aktuale të ruterit wifi.

Ruani skedarin.

Hiqni me siguri kartën SD.

Hapi 7: Ndizni Raspberry Pi tuaj

Fuqizoni Raspberry Pi tuaj
Fuqizoni Raspberry Pi tuaj

Vendosni kartën SD që sapo keni krijuar në Raspberry Pi tuaj.

Lidheni Raspberry Pi tuaj në energji nëpërmjet kabllit USB. Prisni një minutë që të fillojë.

Hapi 8: Gjeni adresën IP të Raspberry Pi tuaj

Tani duhet të gjeni adresën IP të Raspberry Pi në mënyrë që të lidheni me të. Ju mund ta bëni këtë në dy mënyra:

  • përmes faqes tuaj të konfigurimit të ruterit - nëse keni një ruter modern si eero atëherë kjo është super e lehtë;
  • ose përmes një aplikacioni smartphone të disponueshëm për iOS dhe Android të quajtur "fing" - shkarkojeni, lidheni me ruterin tuaj dhe skanoni për pajisje - njëra prej tyre duhet të quhet "Raspberry" - kjo do të jetë adresa IP që ju nevojitet.

Hapi 9: Lidhuni me Linjën tuaj të Komandës Raspberry Pi

Lidhuni me Linjën tuaj të Komandës Raspberry Pi
Lidhuni me Linjën tuaj të Komandës Raspberry Pi

Hapni Terminalin në mac tuaj (ose nëse jeni duke përdorur Windows atëherë shkarkoni dhe përdorni Putty).

Futni komandën e mëposhtme:

ssh pi@[adresa IP e Pi -t tuaj]

Pranoni çdo paralajmërim të sigurisë që merrni. Do t'ju kërkohet fjalëkalimi për përdoruesin e paracaktuar pi që është

mjedër

Hapi 10: Vendosni Raspberry Pi OS GUI

Konfiguroni GUI të Raspberry Pi OS
Konfiguroni GUI të Raspberry Pi OS
Konfiguroni GUI të Raspberry Pi OS
Konfiguroni GUI të Raspberry Pi OS

Tani jeni lidhur me Pi -në tuaj përmes vijës së komandës, e cila është e shkëlqyeshme, por gjithashtu dëshironi ta konfiguroni atë në mënyrë që të keni qasje në Ndërfaqen Grafike të Përdoruesit të cilës do t’i qasemi nëpërmjet VNC (Llogaritja e Rrjetit Virtual). Në mënyrë të parashikueshme, ne gjithashtu duhet ta aktivizojmë këtë.

Para së gjithash kontrolloni që softueri juaj Pi është i përditësuar duke futur dy komandat e mëposhtme (secila e ndjekur nga enter) në rreshtin e komandës:

sudo apt përditësim

sudo apt instaloni realvnc-vnc-server realvnc-vnc-viewer

Tjetra, hapni menunë e cilësimeve të Raspberry Pi duke futur:

sudo raspi-config

Shkoni te Opsionet e Ndërfaqes> VNC> Po.

Dilni nga aplikacioni i konfigurimit duke shtypur butonin e shpëtimit dhe rindizni Pi nga rreshti i komandës duke shtypur:

rindez sudo

Hapi 11: Lidhuni dhe konfiguroni GUI -në tuaj të Raspberry Pi

Lidhuni dhe konfiguroni GUI -në tuaj të Raspberry Pi
Lidhuni dhe konfiguroni GUI -në tuaj të Raspberry Pi
Lidhuni dhe konfiguroni GUI -në tuaj të Raspberry Pi
Lidhuni dhe konfiguroni GUI -në tuaj të Raspberry Pi

Shkarkoni dhe hapni VNC Viewer.

Shkruani adresën IP për Raspberry Pi tuaj dhe shtypni lidhjen. Do t'ju kërkojë emrin e përdoruesit dhe fjalëkalimin të cilat janë:

Emri i përdoruesit = pi

Fjalëkalimi = mjedër

Kjo duhet t'ju çojë në GUI.

Do t'ju kërkojë të konfirmoni gjeografinë tuaj dhe paraqitjen e tastierës.

Pastaj do t'ju kërkojë të ndryshoni fjalëkalimin tuaj (ide e mirë).

Do t'ju kërkojë të vendosni detajet tuaja wifi, por ju mund ta kaloni këtë pasi ata tashmë po punojnë. (Edhe pse nëse jeni duke punuar në ethernet dhe keni mendime të dyta, atëherë tani është shansi juaj … por vini re se adresa juaj IP mund të ndryshojë)

Pastaj do të kontrollojë, shkarkojë dhe instalojë përditësimet (mund të zgjasë pak).

Pasi të keni kaluar përmes magjistarit të konfigurimit, unë do të rekomandoja ndryshimin e rezolucionit të ekranit pasi parazgjedhja është mjaft e vogël. Ju mund ta bëni këtë duke klikuar Raspberry në të majtë lart> Preferencat> Raspberry Pi Configuration> Display> Set Resolution

Ju do të duhet të rindizni Pi përsëri që të hyjë në fuqi.

Hapi 12: Instaloni Node.js dhe NPM

Instaloni Node.js dhe NPM
Instaloni Node.js dhe NPM

Tjetra ju doni të ngarkoni linjën e komandës Raspberry Pi për të instaluar varësitë që na duhen.

Ju ose mund ta bëni këtë duke u lidhur përmes VNC dhe duke klikuar butonin pranë pjesës së sipërme që duket si një linjë komande; ose mund të lidheni drejtpërdrejt nga Mac/PC tuaj duke përdorur Terminal dhe Putty siç bëmë më parë. Nëse jeni më pak të mësuar të punoni me Raspberry Pi, atëherë është më e lehtë të bëni të parën.

(Këshillë: Mund të kopjoni tekstin nga Mac/PC tuaj dhe ta ngjisni në Raspberry Pi nëpërmjet VNC duke shtypur CONTROL-V, por nëse po përpiqeni të ngjiteni në Terminal atëherë duhet të shtypni CONTROL-SHIFT-V)

Detyra e parë është të kontrolloni përsëri programin tuaj të azhurnuar duke shtypur dy komandat e mëposhtme. Mund të duhet pak kohë për t'u shkarkuar dhe instaluar.

përditësim sudo apt-get

sudo apt-get upgrade

Tjetra ju doni të shkarkoni dhe instaloni node.js dhe NPM (mos u shqetësoni shumë për atë që janë, ato janë të dobishme dhe të nevojshme për detyrat tona të ardhshme) duke shtypur sa vijon:

sudo apt-get install nodejs npm

Do t'ju pyesë disa herë nëse jeni të lumtur të merrni hapësirë në disk me këto - ju jeni duke shtypur Y

Hapi 13: Instaloni SONOS HTTP API

Baza e fundit për projektin tonë është paketa node-sonos-http-api e krijuar nga jishi. Mund t'i lexoni të gjitha këtu:

Ne do ta shkarkojmë këtë nga github me komandën e mëposhtme të futur në rreshtin e komandës:

git klon

dhe ne do ta instalojmë me komandat e mëposhtme

nyja cd-sonos-http-api

npm install --production

Atëherë mund ta ekzekutojmë me komandën e mëposhtme:

npm fillimi

Pasi të jetë bërë, ne duhet të provojmë se po funksionon.

Para së gjithash, hapni shfletuesin e internetit në Raspberry Pi tonë dhe lundroni te https:// localhost: 5005/. Një ndërfaqe e bukur duhet të hapet me logon e Sonos dhe disa dokumente se si funksionon API.

Tjetra, le të kontrollojmë që kjo po funksionon nga rrjeti më i gjerë duke përdorur një shfletues në një PC ose Mac tjetër në të njëjtin rrjet dhe duke lundruar në https:// [theIPaddressofyourPi]: 5005/dhe duke parë nëse marrim të njëjtin rezultat. Ne duhet.

Tani ne do ta bëjmë sistemin të bëjë diçka. Përdorni një shfletues dhe lundroni te:

192.168.4.102:5005/ Dhoma e ngrënies/playpause

Ju duhet të zëvendësoni adresën IP të mësipërme me adresën e Raspberry Pi tuaj dhe "Dining Room" me një nga emrat e zonave tuaja Sonos. Ajo ose duhet të luajë ose të pushojë (në varësi të faktit nëse muzika tashmë po luan apo jo) muzikën në atë dhomë. Obshtë e qartë se diçka duhet të jetë në radhën e Sonos që të funksionojë.

Duke shkuar përpara, unë do të përdor adresën IP të mësipërme dhe dhomën e ngrënies si shembuj në të gjithë këtë udhëzues. Natyrisht që duhet t'i zëvendësoni me adresën tuaj IP dhe emrin e zonës tuaj në çdo rast.

Hapi 14: Bëni që Sonos HTI API të funksionojë vazhdimisht

Bëni API Sonos HTTP të funksionojë vazhdimisht
Bëni API Sonos HTTP të funksionojë vazhdimisht

Greatshtë mirë që ne kemi Sonos HTTP API që funksionon, por çka nëse prishet? Apo humbni fuqinë ose keni nevojë të rindizni Raspberry Pi tuaj?

Ju mund ta shihni efektin duke mbyllur dritaren e terminalit dhe duke provuar përsëri atë që sapo kemi provuar. Nuk do të funksionojë sepse API HTTP është ndalur së bashku me dritaren e terminalit.

Ne në të vërtetë duam që kjo të funksionojë vazhdimisht dhe ta bëjmë këtë që nga fillimi çdo herë. Ne e bëjmë këtë me një gjë të lezetshme të quajtur PM2.

Në një dritare të terminalit të ri, instaloni dhe ekzekutoni atë si më poshtë:

sudo npm install -g pm2

statusi pm2

Tani le ta marrim atë të ekzekutojë API -në tonë Sonos

nyja cd-sonos-http-api

pm2 start npm - start pm2 startup systemd

Kjo komandë e fundit gjeneron diçka që duket pak si:

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

Kopjoni atë që krijon Pi juaj (jo tekstin e saktë më lart - i juaji mund të jetë i ndryshëm) dhe futeni atë në rreshtin e komandës. Kjo udhëzon sistemin që të ekzekutojë PM2 në nisje çdo herë.

Së fundi, futni:

pm2 ruaj

e cila kursen gjithçka poshtë.

Tani provoni nëse kjo ka funksionuar duke rindezur Raspberry Pi tuaj me komandën

rindez sudo

Shpresoj që pasi Pi të rindizet do të fillojë gjithashtu PM2 dhe nga ana tjetër API Sonos HTTP. Ju mund ta kontrolloni këtë duke lundruar duke përdorur një shfletues në të njëjtin rrjet në adresën që kemi përdorur më parë dhe shihni logon dhe udhëzimet e Sonos:

192.168.4.102:5005/

është ajo që është për mua, por e juaja do të varet nga adresa IP.

Hapi 15: Luaj disa Spotify

Le të kontrollojmë që shërbimi të ketë qasje në Spotify.

Hapni një shfletues dhe lundroni në adresën e mëposhtme (padyshim duke zëvendësuar me adresën tuaj IP dhe emrin e dhomës):

192.168.4.102:5005/ Dhomë ngrënie/spotify/tani/spotify/spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Duhet të dëgjosh pak John Grant. Shijoni.

Hapi 16: Gjeni URI të Spotify

Gjeni URI të Spotify
Gjeni URI të Spotify

E çuditshme, e di, por jo të gjithë e pëlqejnë John Grant. Ndoshta doni të dëgjoni diçka tjetër?

Ju mund të merrni lidhjet Spotify nga desktopi, uebi ose aplikacionet celularë, por Desktopi është deri tani më i lehtë pasi jep URI në formatin që dëshironi, kështu që filloni me këtë.

Në aplikacionin desktop Spotify lundroni te albumi që dëshironi të dëgjoni (ndoshta Lemonade nga Beyonce?)

Klikoni në tre pikat e vogla pranë butonit të zemrës.

Zbritni menunë për të ndarë dhe zgjidhni Copy Spotify URI

Kjo do të kopjojë diçka si

spotify: album: 7dK54iZuOxXFarGhXwEXfF

në kujtesën tuaj, e cila është Spotify URI për albumin Beyonce Lemondade.

Ndezni përsëri shfletuesin tuaj dhe lundroni në adresën e mëposhtme (duke zëvendësuar padyshim adresën IP dhe dhomën dhe ngjitjen në URI që sapo keni kopjuar):

192.168.4.102:5005/ Dhoma e ngrënies/spotify/tani/[Spotify URI që dëshironi të luani]

Ju duhet të dëgjoni lojën e zgjedhur.

Nëse preferoni të përdorni aplikacionin në internet, atëherë do t'ju japë një lidhje në internet (diçka si më poshtë):

open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF

ju duhet ta ktheni atë në spotify: album: format kodin e mësipërm që të funksionojë.

Hapi 17: Një shënim për URI -të e Spotify

URI-të e Spotify dhe mënyra se si ndërfaqen me nyjen-sonos-http-api janë intuitive, në pjesën më të madhe.

Mund të lidheni drejtpërdrejt me albumet, këngët dhe listat e dëgjimit.

Një album URI duket si:

spotify: album: 6agCM9GJcebduMddgFmgsO

URI i një piste duket si:

spotify: pista: 4fNDKbaeEjk2P4GrRE1UbW

Listat e luajtjes funksionojnë pak më ndryshe. Kur kopjoni URI nga Spotify do të duket diçka si:

spotify: playlist: 5huIma0YU4iusLcT2reVEU

Sidoqoftë, për ta bërë atë të funksionojë në API, duhet të shtoni spotify: user: në fillim të sa më sipër. Kjo vlen edhe për listat publike të dëgjimit dhe, po, do të thotë që ju po thoni spotify dy herë.

Për të qenë shumë i qartë, përdoruesi nuk ka nevojë të jetë emri i një përdoruesi të veçantë, vetëm përdoruesi i tekstit. Pra, URI i saktë për listën e mësipërme të luajtjes për ta vënë atë në punë do të ishte:

spotify: përdoruesi: spotify: playlist: 5huIma0YU4iusLcT2reVEU

Hapi 18: Vendosni Raspberry Pi për të Dërguar Kërkesa

Vendosni Raspberry Pi për të Dërguar Kërkesa HTTP
Vendosni Raspberry Pi për të Dërguar Kërkesa HTTP

Në vend që të shtypni manualisht kërkesat HTTP në një shfletues uebi, ne duam ta automatizojmë atë në mënyrë që Raspberry Pi ta bëjë atë vetë kur paraqitet me një stimul të caktuar (lexuesi NFC po aktivizohet).

Ne do të përdorim një bibliotekë të quajtur kërkesa për të lejuar Raspberry Pi tonë ta bëjë këtë. Le të kontrollojmë se është instaluar.

Hapni terminalin në Pi tuaj dhe shkruani sa vijon:

kërkesat për instalimin e sudo pip

Ka të ngjarë që të kthehet dhe thotë se është instaluar tashmë, në këtë rast është e shkëlqyeshme. Nëse jo, do ta instalojë.

Hapi 19: Gjeneroni etiketa (et) e NFCC me të dhënat Spotify

Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify
Gjeneroni etiketa (et) e NFCC me të dhënat Spotify

Tani duam të shkruajmë një album URI të Spotify në një etiketë NFC. Secila prej këtyre etiketave është ajo që do të përdorni për t'i thënë Raspberry Pi të luajë një album të veçantë.

Mund të shkruani në një etiketë NFC duke përdorur një telefon Android, por unë e kam më të lehtë ta bëj këtë përmes një mac ose PC pasi atëherë mund të merrni më të lehtë për të marrë URI -të e Spotify nga aplikacioni i desktopit Spotify.

Lidheni lexuesin tuaj USB NFC në kompjuterin tuaj ose Mac. Unë jam duke përdorur ACR122U nga American Card Systems.

Shkarkoni Mjetet NFC në PC ose Mac tuaj. Instaloni dhe hapeni atë.

Mund të jetë pak e ngadaltë për t'u lidhur me lexuesin ndonjëherë dhe mund të thotë se nuk mund ta gjejë fare lexuesin. Shkoni te skedari Tjetër në mjetet NFC dhe klikoni çdo herë në butonin e Lidhur të NFC Reader. Ju mund të keni nevojë të shkëputni dhe rilidhni lexuesin disa herë para se ta gjejë atë.

Përfundimisht do t'ju japë mundësinë të zgjidhni lexuesin tuaj nga një listë dhe të thoni që është i lidhur. Shkoni te skeda e Informacionit e cila nuk do të tregojë asgjë përveç "Duke pritur për një etiketë NFC".

Merrni një etiketë bosh NFC. Vendoseni mbi lexuesin dhe lëreni atje. Mjetet NFC do të shfaqin informacionin në lidhje me etiketën.

Shkoni te skeda Shkruani dhe klikoni Shto një regjistrim> Tekst. (Kini kujdes të mos zgjidhni URL ose URI - e di që është joshëse sepse po kopjoni një URI, por doni tekst)

Merrni një URI nga Spotify duke përdorur metodën që kemi përdorur më parë. Nëse dëshironi një shembull të lehtë, më poshtë është albumi ynë John Grant nga më herët.

spotify: album: 2dfTV7CktUEBkZCHiB7VQB

Klikoni OK dhe pastaj klikoni Shkruaj (mos harroni këtë hap të fundit - në fakt nuk e shkruan atë derisa të klikoni këtë). Do t'ju tregojë se etiketa është shkruar me sukses.

Hiq etiketën nga lexuesi

Hapi 20: Vendosni lexuesin NFC në Raspberry Pi

Vendosni lexuesin NFC në Raspberry Pi
Vendosni lexuesin NFC në Raspberry Pi

Lidheni lexuesin tuaj NFC në një nga portat USB në Raspberry Pi tuaj.

Ne do të përdorim bibliotekën nfcpy Python për të komunikuar me lexuesin NFC. Instaloni atë duke shtypur sa vijon në vijën tuaj të komandës Pi:

instaloni pip -U nfcpy

Pastaj mund të kontrollojmë nëse kjo bibliotekë është në gjendje të shohë lexuesin tonë NFC duke shtypur sa vijon:

python -m nfc

Nëse ka funksionuar atëherë do të shihni sa vijon:

Ky është versioni 1.0.3 i nfcpy i ekzekutuar në Python 2.7.16 në Linux-4.19.97-v7+-armv7l-with-debian-10.3

Tani po kërkoj sistemin tuaj për pajisje pa kontakt ** kam gjetur ACS ACR122U PN532v1.6 në usb: 001: 011 Nuk po provoj pajisje serike sepse nuk më keni thënë-shtoni opsionin '-search-tty' të më shikosh - por ki kujdes se kjo mund të prishë dev -et e tjerë serialë

Sidoqoftë, ekziston një shans i mirë që të merrni një mesazh gabimi duke thënë se lexuesi është gjetur, por përdoruesi juaj (pi) nuk ka leje për të hyrë në të. Nëse e merrni këtë mesazh gabimi, atëherë ai gjithashtu do të shpjegojë se si ta rregulloni problemin, i cili është duke shtypur dy komanda që duket pak si më poshtë:

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

sudo udevadm kontroll -R

Kopjoni dhe ekzekutoni të dy komandat që ju jep (jo pikërisht ajo që është më lart, pasi juaji mund të jetë i ndryshëm), pastaj shkëputeni dhe rilidhni lexuesin tuaj NFC nga porta USB.

Provoni përsëri komandën e kontrollit:

python -m nfc

Këtë herë duhet të thuhet se është gjetur pa mesazhe gabimi.

Hapi 21: Instaloni Vinylemulator Python Scripts

Tani kemi të gjitha blloqet e ndërtimit në vend:

  • Raspberry Pi ynë është në gjendje të dëgjojë të dhëna NFC
  • Raspberry Pi ynë është në gjendje t'i thotë Sonos të luajë listat e dëgjimit të Spotify kur t'i jepet një URI Spotify
  • Ne kemi një etiketë NFC me një URI Spotify të ruajtur në të

Tani ne duhet të tërheqim të gjitha këto blloqe ndërtimi në diçka të dobishme. Kjo bëhet përmes një shkrimi të shkurtër python që kam shkruar (me shumë ndihmë nga projektet e mëparshme NFC/Spotify/Sonos) i cili quhet vinylemulator.

Ju mund të shihni kodin burimor për skedarët në github:

Për ta instaluar këtë në Raspberry Pi tonë duhet ta klonojmë nga github me komandën e mëposhtme:

git klon

Hapi 22: Rregulloni Vinylemulator

Përshtatni Vinylemulator
Përshtatni Vinylemulator
Përshtatni Vinylemulator
Përshtatni Vinylemulator

Hapni menaxherin e skedarëve Raspberry Pi dhe lundroni te shtëpia> pi> vinylemulator

Hapni skedarin usersettings.py

Një nga rreshtat në këtë skedar do të lexojë:

sonosroom = "Dhoma e ngrënies"

Ndryshoni "Dhomën e Ngrënies" për të qenë cilido emër i dhomës Sonos që dëshironi të kontrolloni.

Ekziston gjithashtu një cilësim në këtë skedar i cili ju lejon të rregulloni adresën IP të sonos-http-api. Ju duhet të jeni në gjendje ta lini këtë të pandryshuar si "localhost" që do të thotë se do të përdorë Raspberry Pi në të cilën po funksionon.

Ruani skedarin dhe mbylleni atë.

Hapi 23: Testoni Vinylemulator

Test Vinylemulator
Test Vinylemulator
Test Vinylemulator
Test Vinylemulator

Shkoni te komanda e shpejtë Raspberry Pi.

Futni komandën e mëposhtme:

python vinylemulator/readnfc.py

Nëse gjithçka është mirë kjo do të ngarkojë skenarin dhe do të thotë që lexuesi është gati. Drita mbi lexuesin duhet të jetë e gjelbër.

Vendosni etiketën NFC në lexues, e cila do të lëshojë bip.

Terminali do të tregojë atë që ka lexuar nga etiketa NFC dhe do të tregojë adresën e kërkesës HTTP që ka dërguar. Albumi juaj i zgjedhur duhet të luhet nga altoparlantët tuaj Sonos.

Ky skenar do të vazhdojë të funksionojë derisa të mbyllni dritaren e terminalit. Ju mund të prekni etiketat e ndryshme të albumit NFC dhe ai do të kalojë në atë album.

Hapi 24: Merrni Vinylemulator për të Drejtuar Vazhdimisht dhe në Fillim

Ashtu si sonos-http-api, ne duam që vinylemulator të funksionojë gjatë gjithë kohës dhe jo vetëm kur e quajmë. Ne mund të përdorim pm2 për ta bërë këtë përsëri.

Së pari mbyllni çdo rast të vinylemulator që po përdorni duke mbyllur dritaret e tyre të terminalit.

Pastaj hapni një dritare të terminalit të ri dhe shkruani dy komandat e mëposhtme:

pm2 start vinylemulator/readnfc.py

pm2 ruaj

Le të kontrollojmë nëse kjo ka funksionuar duke rindezur Raspberry Pi. (Ju ose mund të shtypni reboot sudo ose ta bëni këtë nga menyja Raspberry me miun tuaj.

Prisni që Pi të fillojë përsëri dhe shihni se funksionon duke shtypur një etiketë NFC në lexuesin. Duhet të marrësh muzikë.

Hapi 25: Uroni veten

Tani gjithçka është funksionale. Mund ta zhvendosni Raspberry Pi kudo ku keni ndërmend ta vendosni. Do të riniset dhe do të funksionojë në mënyrën që e keni konfiguruar sa herë që ta lidhni.

Detyrat tuaja të ardhshme janë ato argëtuese: duke i bërë të gjitha të bukura.

Hapi 26: Bëjeni atë të bukur - Fshihni lexuesin tuaj

Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj
Bëni Bukur - Fshihni Lexuesin tuaj

Pjesa e parë për ta bërë atë të bukur është të fshehësh diku lexuesin e keq të bardhë plastik NFC.

Unë kam shkuar me një opsion të vendosur të teknologjisë së ulët për ta ngjitur atë në pjesën e poshtme të një sporteli pranë Sonos Play: 5. Druri i banakut është aq i hollë sa NFC mund të kalojë, kështu që unë luaj muzikë duke trokitur një etiketë NFC në një vend magjik dhe të padukshëm.

Recommended: