Obsah:
- Krok 1: Požadovaný spotřební materiál 1: Raspberry Pi
- Krok 2: Požadovaný spotřební materiál 2: NFC čtečka
- Krok 3: Požadovaný spotřební materiál 3: NFC tagy
- Krok 4: Stáhněte si Raspberry Pi OS na SD kartu
- Krok 5: Povolte SSH na obrázku vašeho Raspberry Pi OS
- Krok 6: Volitelné: Nastavte Wi -Fi na svém Raspberry Pi
- Krok 7: Zapněte Raspberry Pi
- Krok 8: Najděte IP adresu vašeho Raspberry Pi
- Krok 9: Připojte se k příkazovému řádku Raspberry Pi
- Krok 10: Nastavení grafického uživatelského rozhraní Raspberry Pi OS
- Krok 11: Připojte se k grafickému uživatelskému rozhraní Raspberry Pi a nastavte jej
- Krok 12: Nainstalujte Node.js a NPM
- Krok 13: Nainstalujte si SONOS HTTP API
- Krok 14: Nechte Sonos HTTP API běžet neustále
- Krok 15: Zahrajte si nějaký Spotify
- Krok 16: Najděte Spotify URI
- Krok 17: Poznámka k identifikátorům URI Spotify
- Krok 18: Nastavte Raspberry Pi na odesílání požadavků
- Krok 19: Generování značek NFCC pomocí dat Spotify
- Krok 20: Nastavte čtečku NFC na Raspberry Pi
- Krok 21: Nainstalujte si skripty Vinylemulator Python
- Krok 22: Přizpůsobte Vinylemulator
- Krok 23: Otestujte Vinylemulator
- Krok 24: Získejte Vinylemulator, aby běžel neustále a při spuštění
- Krok 25: Blahopřejte si
- Krok 26: Udělejte to krásnými - skryjte čtečku
Video: Emulátor vinylu Sonos Spotify: 26 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Upozorňujeme, že toto není nejnovější sada pokynů pro tento projekt:
Nejnovější sadu pokynů a podpory najdete na
Poslouchat hudbu na vinylu je skvělé. Je to fyzické a hmatové. Posloucháte spíše celé album než náhodné skladby. Všimnete si toho, až skončí, a vědomě si vyberete něco jiného. Můžete vytvářet kolekci a procházet ji, než abyste museli hledat přesně to, co chcete.
Je to také drahé a objemné, zvláště když uvážíte, že jakékoli peníze, které utratíte za vinyl, jsou velmi pravděpodobně duplikáty hudby, ke které již máte přístup prostřednictvím streamovací služby, kterou si předplatíte.
Tento projekt se pokouší replikovat hmatové a sbírkové aspekty vinylu a spoléhat se na to, že hudbu skutečně doručí Spotify. Umístěním fyzického předmětu na čtečku NFC připojenou k Raspberry Pi (obojí lze skrýt) se spustí přehrávání alba spojeného s touto značkou.
Provedu vás všemi kroky - od nastavení Raspberry Pi až po kódování NFC tagů. Toto je můj úplně první projekt Raspberry Pi a můj první kód v Pythonu, takže jsem se při vývoji naučil oba. Tyto pokyny jako takové předpokládají doslova nulové předchozí znalosti a provedou vás každým krokem.
Celkové náklady na základní komponenty k jeho vybudování jsou přibližně 50–60 liber.
Rád bych viděl, co stavíte!
Krok 1: Požadovaný spotřební materiál 1: Raspberry Pi
Back -end, který je propojen s vaší sítí, Sonos a Spotify, bude provozovat Raspberry Pi. Ve skutečnosti je k tomu potřeba jen velmi málo.
Nezbytný:
Raspberry Pi: Použil jsem Raspberry Pi 3 Model B+, ale bude také fungovat s Raspberry Pi 3 Model A+ (23 GBP)
Napájení USB: Měl jsem jeden ležet - je k dispozici oficiální, pokud ne (9 GBP)
Karta Micro SD: Mám 32 GB, což je pro tuto aplikaci dost, na Amazonu (6 GBP)
Některá zařízení Sonos běží ve vaší síti (hádám, že už to máte, pokud jste tady …)
Účet Spotify Premium
Doporučeno:
Případ pro Pi: existuje spousta možností, od 5 liber
Láhev slušného kalifornského Zinfandelu: Doporučuji Ridge, ale jiné jsou k dispozici
Krok 2: Požadovaný spotřební materiál 2: NFC čtečka
Tyto pokyny jsou vytvořeny pro čtečku ACR122U NFC, která se připojuje přes USB.
ACR122U
Koupil jsem tento od Amazonu za 38 liber (většinou proto, že měl prvotřídní doručení), ale existují levnější možnosti nákupu stejné čtečky.
Zdá se, že ACR122U je matně prodáván pod spoustou různých značek (ta moje spadala pod ne příliš uklidňující značku „Yosoo“), ale podle toho, co mohu říci, jsou všechny stejné a konstruovány společností American Card Systems.
Nejlevnější inzerát, který jsem inzeroval ACR122U, je 21 GBP včetně poštovného, ale ten pochází přímo z Číny, takže si na to možná budete muset chvíli počkat.
Jiné možnosti
Tento projekt se opírá o knihovnu python s názvem nfcpy, která zde udržuje seznam podporovaných zařízení:
Tento projekt by teoreticky měl fungovat s kýmkoli z těch na tomto seznamu s malou integrací.
Jednou lákavou možností je Adafruit PN532, což je deska, která by se měla připojit přímo k vašemu Raspberry Pi pomocí propojovacích kabelů. Zkusil jsem to a zjistil jsem, že je to skutečná chyba. Vyžaduje například pájení.
Jednou z jeho výhod je, že je povrchně menší, ale ve skutečnosti je deska přibližně stejně velká jako vnitřnosti ACR122U. Pokud jste opravdu tlačeni na prostor pro vaši aplikaci, můžete z ACR122U odstranit plast a použít desku.
Krok 3: Požadovaný spotřební materiál 3: NFC tagy
Pro každé album, které chcete vytvořit, budete potřebovat značku NFC, která splňuje standard NTAG213.
Existuje mnoho míst k nákupu těchto.
Koupil jsem svou první dávku z Amazonu, kde jsem dostal balíček 10 za 9 GBP (včetně dodávky Prime)
Nejlépe dodávaný, jaký jsem zde ve Velké Británii našel, je Seritag - mají opravdu široký výběr různých stylů, skvělé rady na svých webových stránkách, přesně víte, co dostanete (na Amazonu to vždy neplatí). Nemají žádnou minimální velikost objednávky a spoustu možností. Štítky začínají na 27 p na značku
Krok 4: Stáhněte si Raspberry Pi OS na SD kartu
Na svém PC nebo Mac si stáhněte a spusťte aplikaci Raspberry PI imager.
Vložte kartu SD, na kterou chcete nainstalovat operační systém Raspberry Pi.
Klikněte na CHOOSE OS a vyberte výchozí Rasbian.
Klikněte na VYBRAT KARTU SD a vyberte SD kartu, kterou jste zapojili.
Klikněte na ZÁPIS. Může to chvíli trvat.
Jakmile to bude hotové, řekne vám, abyste odstranili kartu SD, což byste měli udělat. Ale pak jej zapojte zpět, protože je zde několik bodů úklidu, které musíte udělat jako první.
Krok 5: Povolte SSH na obrázku vašeho Raspberry Pi OS
Jakmile je operační systém zapsán na kartu SD, musíte provést několik dalších úkolů.
Chceme mít přístup k Raspberry Pi bez připojení klávesnice nebo monitoru (alias „bezhlavě“), což můžeme dělat přes naši místní síť pomocí našeho PC nebo Mac přes protokol s názvem SSH. Z bezpečnostních důvodů je však SSH ve výchozím nastavení zakázáno. Musíme to povolit.
Můžeme to udělat vytvořením prázdného souboru s názvem:
ssh
na SD kartě, kterou jsme právě vytvořili. Je důležité, aby toto nemělo žádné rozšíření (např.. Txt). Samotný soubor nemusí obsahovat žádný obsah - pouze jeho existence povolí SSH při spuštění Pi.
Krok 6: Volitelné: Nastavte Wi -Fi na svém Raspberry Pi
Tento krok můžete přeskočit, pokud plánujete připojit Raspberry Pi k routeru ethernetem. (I když byste si o tom rozhodnutí možná měli pořádně promyslet - mít jej spuštěné přes wifi hodně usnadňuje život, pokud jde o jeho umístění)
V kořenovém adresáři karty SD vytvořte soubor prostého textu s názvem wpa_supplicant.conf.
Do souboru vložte následující text:
země = GB
update_config = 1 ctrl_interface =/var/run/wpa_supplicant network = {scan_ssid = 1 ssid = "MyNetworkSSID" psk = "MyPassword"}
Podle potřeby změňte zemi (GB je Spojené království, USA jsou USA, DE je Německo atd.)
Změňte zde přihlašovací údaje pro wifi, aby byly vaše skutečné podrobnosti o routeru wifi.
Uložte soubor.
Bezpečně vysuňte kartu SD.
Krok 7: Zapněte Raspberry Pi
Vložte kartu SD, kterou jste právě vytvořili, do svého Raspberry Pi.
Připojte svůj Raspberry Pi k napájení pomocí kabelu USB. Počkejte chvíli, než se spustí.
Krok 8: Najděte IP adresu vašeho Raspberry Pi
Nyní musíte najít IP adresu Raspberry Pi, abyste se k ní mohli připojit. Můžete to udělat dvěma způsoby:
- prostřednictvím stránky nastavení routeru - pokud máte moderní router jako eero, je to velmi snadné;
- nebo prostřednictvím aplikace pro smartphony dostupné pro iOS a Android s názvem „fing“- stáhněte si ji, připojte se ke svému routeru a vyhledejte zařízení - jedno z nich by se mělo jmenovat „Raspberry“- bude to IP adresa, kterou potřebujete.
Krok 9: Připojte se k příkazovému řádku Raspberry Pi
Otevřete Terminal na Macu (nebo pokud používáte Windows, stáhněte a použijte Putty).
Zadejte následující příkaz:
ssh pi@[IP adresa vašeho Pi]
Přijměte veškerá bezpečnostní upozornění, která dostanete. Budete vyzváni k zadání hesla pro výchozího uživatele pí, který je
malina
Krok 10: Nastavení grafického uživatelského rozhraní Raspberry Pi OS
Nyní jste připojeni ke svému Pi pomocí příkazového řádku, což je skvělé, ale chcete to také nastavit, abyste měli přístup ke grafickému uživatelskému rozhraní, ke kterému budeme přistupovat prostřednictvím VNC (Virtual Network Computing). Předvídatelně to musíme také povolit.
Nejprve zkontrolujte, zda je váš software Pi aktuální, zadáním následujících dvou příkazů (po nichž následuje Enter) do příkazového řádku:
sudo apt aktualizace
sudo apt install realvnc-vnc-server realvnc-vnc-viewer
Dále otevřete nabídku nastavení Raspberry Pi zadáním:
sudo raspi-config
Přejděte na Možnosti rozhraní> VNC> Ano.
Ukončete konfigurační aplikaci stisknutím klávesy Escape a restartujte Pi z příkazového řádku zadáním:
sudo restart
Krok 11: Připojte se k grafickému uživatelskému rozhraní Raspberry Pi a nastavte jej
Stáhněte a otevřete prohlížeč VNC.
Zadejte IP adresu vašeho Raspberry Pi a stiskněte připojit. Zobrazí se výzva k zadání uživatelského jména a hesla, které jsou:
Uživatelské jméno = pí
Heslo = malina
To by vás mělo zavést do GUI.
Zobrazí se výzva k potvrzení vaší geografie a rozložení klávesnice.
Poté vás vyzve ke změně hesla (dobrý nápad).
Požádá vás o nastavení podrobností o Wi -Fi, ale můžete to přeskočit, protože již fungují. (I když běžíte na ethernetu a přemýšlíte, tak teď máte šanci … ale vaše IP adresa se může změnit)
Poté zkontroluje, stáhne a nainstaluje aktualizace (může to chvíli trvat).
Jakmile projdete průvodcem nastavením, doporučil bych změnit rozlišení obrazovky, protože výchozí je docela malý. To provedete kliknutím na Raspberry vlevo nahoře> Předvolby> Konfigurace Raspberry Pi> Displej> Nastavit rozlišení
Aby se to projevilo, budete muset Pi znovu restartovat.
Krok 12: Nainstalujte Node.js a NPM
Dále chcete načíst příkazový řádek Raspberry Pi a nainstalovat závislosti, které potřebujeme.
Můžete to udělat buď připojením přes VNC a kliknutím na tlačítko v horní části, které vypadá jako příkazový řádek; nebo se můžete připojit přímo z počítače Mac/PC pomocí terminálu a tmelu, jako jsme to udělali dříve. Pokud jste méně zvyklí pracovat s Raspberry Pi, pak je jednodušší udělat první.
(Tip: Můžete zkopírovat text z počítače Mac/PC a vložit jej na Raspberry Pi přes VNC stisknutím klávesy CONTROL-V, ale pokud se pokoušíte vložit do terminálu, musíte stisknout klávesu CONTROL-SHIFT-V)
Prvním úkolem je znovu zkontrolovat, zda je váš software aktuální, zadáním následujících dvou příkazů. Stažení a instalace může chvíli trvat.
sudo apt-get update
sudo apt-get upgrade
Dále budete chtít stáhnout a nainstalovat node.js a NPM (příliš si nelámejte hlavu s tím, co jsou, jsou užitečné a nezbytné pro naše další úkoly) zadáním následujícího:
sudo apt-get install nodejs npm
Několikrát se vás zeptá, jestli jste rádi, že zabírají místo na disku - jste tak stiskněte Y
Krok 13: Nainstalujte si SONOS HTTP API
Základem back-endu pro náš projekt je balíček node-sonos-http-api vytvořený společností jishi. Vše si můžete přečíst zde:
Stáhneme to z github s následujícím příkazem zadaným do příkazového řádku:
klon git
a nainstalujeme jej pomocí následujících příkazů
cd uzel-sonos-http-api
npm install --production
Potom jej můžeme spustit pomocí následujícího příkazu:
npm start
Jakmile to bude hotové, měli bychom vyzkoušet, zda to funguje.
Nejprve otevřete internetový prohlížeč na našem Raspberry Pi a přejděte na https:// localhost: 5005/. Mělo by se otevřít pěkné rozhraní s logem Sonos a nějakou dokumentací o tom, jak API funguje.
Dále zkontrolujeme, zda to funguje z širší sítě, pomocí prohlížeče na jiném počítači PC nebo Mac ve stejné síti a přejděte na adresu https:// [theIPaddressofyourPi]: 5005/a uvidíme, zda získáme stejný výsledek. Měli bychom.
Nyní skutečně přimíme systém, aby něco udělal. Použijte prohlížeč a přejděte na:
192.168.4.102:5005/ Jídelna/přestávka na přehrávání
Výše uvedenou IP adresu byste měli nahradit adresou vašeho Raspberry Pi a „jídelny“jedním z názvů vašich zón Sonos. Mělo by buď přehrávat nebo pozastavit (v závislosti na tom, zda hudba již hraje nebo ne) hudbu v dané místnosti. Aby to fungovalo, musí být evidentně něco ve frontě Sonos.
Do budoucna použiji výše uvedenou IP adresu a jídelnu jako příklady v celém tomto tutoriálu. Očividně byste je měli při každé příležitosti nahradit svou IP adresou a názvem vaší zóny.
Krok 14: Nechte Sonos HTTP API běžet neustále
Je skvělé, že máme spuštěno Sonos HTTP API, ale co když dojde k chybě? Nebo ztrácíte energii nebo potřebujete restartovat Raspberry Pi?
Efekt můžete vidět zavřením okna terminálu a opakováním toho, co jsme právě zkoušeli. Nebude to fungovat, protože HTTP API se zastavilo spolu s oknem terminálu.
Ve skutečnosti chceme, aby to běželo neustále a vždy od spuštění. Děláme to pomocí skvělé věci zvané PM2.
V novém okně terminálu jej nainstalujte a spusťte následujícím způsobem:
sudo npm install -g pm2
stav pm2
Nyní pojďme spustit naše Sonos HTTP API:
cd uzel-sonos-http-api
pm2 start npm - start pm2 startup systemd
Tento poslední příkaz generuje něco, co vypadá trochu jako:
sudo env PATH = $ PATH:/usr/bin/usr/local/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp/home/pi
Zkopírujte, co generuje váš Pi (ne přesný text výše - váš může být jiný) a zadejte jej do příkazového řádku. To dává systému pokyn ke spuštění PM2 při každém spuštění.
Nakonec zadejte:
pm2 uložit
což všechno zachraňuje.
Nyní vyzkoušejte, zda to fungovalo, restartováním vašeho Raspberry Pi pomocí příkazu
sudo restart
Doufejme, že jakmile se Pi restartuje, spustí se také PM2 a následně API Sonos HTTP. Můžete to zkontrolovat navigací pomocí prohlížeče ve stejné síti na adresu, kterou jsme použili dříve, a podívat se na logo Sonos a pokyny:
192.168.4.102:5005/
je to, co je pro mě, ale vaše bude záviset na IP adrese.
Krok 15: Zahrajte si nějaký Spotify
Zkontrolujte, zda má služba přístup ke službě Spotify.
Otevřete prohlížeč a přejděte na následující adresu (samozřejmě nahrazenou vaší IP adresou a názvem místnosti):
192.168.4.102:5005/ Jídelna/spotify/nyní/spotify/spotify: album: 2dfTV7CktUEBkZCHiB7VQB
Měli byste slyšet Johna Granta. Užívat si.
Krok 16: Najděte Spotify URI
Je to divné, já vím, ale ne každý má rád Johna Granta. Možná chcete poslouchat něco jiného?
Odkazy na Spotify můžete získat z desktopových, webových nebo mobilních aplikací, ale Desktop je zdaleka nejjednodušší, protože poskytuje URI přesně v požadovaném formátu, takže začněte s tím.
V desktopové aplikaci Spotify přejděte na album, které chcete poslouchat (třeba Lemonade od Beyonce?)
Klikněte na tři malé tečky vedle tlačítka srdce.
Přejděte dolů do nabídky Sdílet a vyberte Kopírovat URI Spotify
Tím se zkopíruje něco podobného
spotify: album: 7dK54iZuOxXFarGhXwEXfF
do vaší schránky, což je Spotify URI pro album Beyoncé Lemondade.
Znovu spusťte prohlížeč a přejděte na následující adresu (samozřejmě nahrazení IP adresy a místnosti a vložení do právě zkopírovaného URI):
192.168.4.102:5005/ Jídelna/spotify/nyní/[Spotify URI, který chcete hrát]
Měli byste slyšet, jak si zvolíte.
Pokud dáváte přednost používání webové aplikace, poskytne vám webový odkaz (něco jako níže):
open.spotify.com/album/7dK54iZuOxXFarGhXwEXfF
musíte to převést na formát spotify: album: kód výše, aby to fungovalo.
Krok 17: Poznámka k identifikátorům URI Spotify
Spotify URI a způsob, jakým komunikují s uzly-sonos-http-api, jsou z velké části intuitivní.
Můžete odkazovat přímo na alba, skladby a seznamy skladeb.
Identifikátor URI alba vypadá takto:
spotify: album: 6agCM9GJcebduMddgFmgsO
URI stopy vypadá takto:
spotify: track: 4fNDKbaeEjk2P4GrRE1UbW
Playlisty fungují trochu jinak. Když zkopírujete URI ze Spotify, bude to vypadat nějak takto:
spotify: seznam skladeb: 5huIma0YU4iusLcT2reVEU
Chcete -li však skutečně fungovat na rozhraní API, musíte na začátek výše přidat spotify: user: To platí i pro veřejné seznamy skladeb, a ano, znamená to, že dvakrát říkáte spotify.
Aby bylo zcela jasné, uživatel nemusí být jméno konkrétního uživatele, stačí textový uživatel. Správný identifikátor URI pro výše uvedený seznam skladeb, aby fungoval, by tedy byl:
spotify: uživatel: spotify: seznam skladeb: 5huIma0YU4iusLcT2reVEU
Krok 18: Nastavte Raspberry Pi na odesílání požadavků
Spíše než ručně zadávat požadavky HTTP do webového prohlížeče, chceme to zautomatizovat, aby to Raspberry Pi udělalo samo, když se mu zobrazí určitý stimul (spouští se čtečka NFC).
Budeme používat knihovnu s názvem požadavky, aby to náš Raspberry Pi umožnil. Pojďme zkontrolovat, zda je nainstalován.
Otevřete terminál na svém Pi a zadejte následující:
sudo pip install requests
Je pravděpodobné, že se vrátí a řekne, že je již nainstalován, v takovém případě je skvělý. Pokud ne, nainstaluje se.
Krok 19: Generování značek NFCC pomocí dat Spotify
Nyní chceme do tagu NFC napsat identifikátor URI alba Spotify. Každý z těchto tagů slouží k tomu, abyste Raspberry Pi řekli, aby hrál konkrétní album.
Můžete zapisovat na značku NFC pomocí telefonu Android, ale pro mě je nejjednodušší to provést prostřednictvím počítače Mac nebo PC, protože pak můžete získat nejsnadnější získání identifikátorů URI Spotify z desktopové aplikace Spotify.
Připojte čtečku USB NFC k počítači PC nebo Mac. Používám ACR122U od společnosti American Card Systems.
Stáhněte si NFC Tools do svého PC nebo Mac. Nainstalujte a otevřete.
Někdy může být připojení ke čtečce trochu pomalé a může se stát, že čtečku vůbec nenajde. V nástrojích NFC přejděte na kartu Jiné a často klikněte na tlačítko Připojená čtečka NFC. Možná budete muset čtečku několikrát odpojit a znovu připojit, než ji najde.
Nakonec vám to dá možnost vybrat si čtenáře ze seznamu a říct, že je připojený. Přejděte na kartu Informace, která nezobrazí nic kromě „Čekání na značku NFC“.
Vezměte prázdnou značku NFC. Dejte to na čtečku a nechte to tam. Nástroje NFC zobrazí informace o značce.
Přejděte na kartu Zápis a klikněte na Přidat záznam> Text. (Dávejte pozor, abyste nevybrali URL nebo URI - vím, že je to lákavé, protože kopírujete URI, ale chcete text)
Získejte URI ze Spotify pomocí metody, kterou jsme použili dříve. Pokud chcete snadný příklad, pak je naše předchozí album Johna Granta.
spotify: album: 2dfTV7CktUEBkZCHiB7VQB
Klikněte na OK a poté na Napsat (nezapomeňte na tento poslední krok - ve skutečnosti jej nezapíše, dokud na něj nekliknete). Řekne vám, že je značka úspěšně zapsána.
Sundejte štítek ze čtečky
Krok 20: Nastavte čtečku NFC na Raspberry Pi
Připojte čtečku NFC k jednomu z portů USB na vašem Raspberry Pi.
Ke komunikaci se čtečkou NFC použijeme knihovnu nfcpy Python. Nainstalujte jej zadáním následujícího příkazu do příkazového řádku Pi:
pip install -U nfcpy
Potom můžeme zkontrolovat, zda je tato knihovna schopna vidět naši čtečku NFC zadáním následujícího:
python -m nfc
Pokud to fungovalo, uvidíte následující:
Toto je verze 1.0.3 nfcpy spuštěná v Pythonu 2.7.16 na Linuxu-4.19.97-v7+-armv7l-with-debian-10.3
Nyní ve vašem systému hledám bezkontaktní zařízení ** nalezeno ACS ACR122U PN532v1.6 na usb: 001: 011 nezkouším sériová zařízení, protože jste mi to neřekli-přidejte možnost '--search-tty' abych se díval - ale mějte na paměti, že to může narušit ostatní sériová zařízení
Existuje však velká šance, že se zobrazí chybová zpráva, že čtečka byla nalezena, ale váš uživatel (pi) nemá oprávnění k přístupu. Pokud se vám zobrazí tato chybová zpráva, pak také vysvětlí, jak problém vyřešit, což je zadáním dvou příkazů, které vypadají trochu jako následující:
sudo sh -c 'echo SUBSYSTEM == / "usb \", ACTION == / "add \", ATTRS {idVendor} == / "04e6 \", ATTRS {idProduct} == / "5591 \", GROUP = / "plugdev \" >> /etc/udev/rules.d/nfcdev.rules '
sudo udevadm control -R
Zkopírujte a spusťte oba příkazy, které vám poskytne (ne přesně to, co je uvedeno výše, protože váš může být jiný), poté odpojte a znovu připojte čtečku NFC z portu USB.
Zkuste znovu zkontrolovat příkaz:
python -m nfc
Tentokrát by mělo být řečeno, že je nalezeno bez chybových zpráv.
Krok 21: Nainstalujte si skripty Vinylemulator Python
Nyní máme všechny stavební bloky na svém místě:
- Náš Raspberry Pi je schopen naslouchat vstupu NFC
- Náš Raspberry Pi je schopen přikázat Sonosu, aby hrál seznamy skladeb Spotify, když dostane identifikátor URI Spotify
- Máme značku NFC s uloženým identifikátorem URI Spotify
Nyní musíme všechny tyto stavební bloky přetáhnout do něčeho užitečného. To se provádí pomocí krátkého pythonového skriptu, který jsem napsal (s velkou pomocí předchozích projektů NFC/Spotify/Sonos), který se nazývá vinylemulator.
Zdrojový kód souborů můžete zobrazit na github:
Chcete -li jej nainstalovat na náš Raspberry Pi, musíme jej naklonovat z github pomocí následujícího příkazu:
klon git
Krok 22: Přizpůsobte Vinylemulator
Otevřete správce souborů Raspberry Pi a přejděte na domovskou stránku> pi> vinylemulator
Otevřete soubor usersettings.py
Jeden z řádků v tomto souboru bude číst:
sonosroom = "Jídelna"
Změňte „Jídelna“na libovolný název místnosti Sonos, který chcete ovládat.
V tomto souboru je také nastavení, které vám umožňuje přizpůsobit IP adresu sonos-http-api. Měli byste to nechat beze změny jako „localhost“, což znamená, že bude používat Raspberry Pi, na kterém běží.
Uložte soubor a zavřete jej.
Krok 23: Otestujte Vinylemulator
Přejděte na příkazový řádek Raspberry Pi.
Zadejte následující příkaz:
python vinylemulator/readnfc.py
Pokud je vše v pořádku, načte skript a řekne, že čtečka je připravena. Kontrolka na čtečce by měla zezelenat.
Umístěte značku NFC na čtečku, která pípne.
Terminál ukáže, co přečetl ze značky NFC, a zobrazí adresu požadavku HTTP, kterou odeslal. Vaše vybrané album by se mělo přehrávat z reproduktorů Sonos.
Tento skript poběží, dokud nezavřete okno terminálu. Můžete klepnout na různé značky NFC alba a přepne se na dané album.
Krok 24: Získejte Vinylemulator, aby běžel neustále a při spuštění
Stejně jako sonos-http-api chceme, aby vinylemulator běžel stále, a ne jen tehdy, když tomu říkáme. K tomu můžeme znovu použít pm2.
Nejprve zavřete všechny spuštěné instance vinylemulátoru zavřením jejich oken terminálu.
Poté otevřete nové okno terminálu a zadejte následující dva příkazy:
pm2 spusťte vinylemulator/readnfc.py
pm2 uložit
Zkontrolujte, zda to fungovalo, restartováním Raspberry Pi. (Můžete buď zadat sudo reboot, nebo to udělat z nabídky Raspberry pomocí myši.
Klepnutím na značku NFC na čtečce počkejte, až se Pi znovu spustí, a uvidíte, že funguje. Měli byste dostat hudbu.
Krok 25: Blahopřejte si
Nyní je vše funkční. Raspberry Pi můžete přesunout kamkoli, kam ho plánujete umístit. Kdykoli jej zapojíte, restartuje se a bude fungovat tak, jak jste ho nastavili.
Vaše další úkoly jsou ty zábavné: udělat to všechno krásným.
Krok 26: Udělejte to krásnými - skryjte čtečku
První část, jak ji udělat krásnou, je schovat ošklivou bílou plastovou čtečku NFC někam pryč.
Šel jsem s rozhodně nízkou technologickou možností, jak to nalepit na spodní stranu pultu vedle mého Sonos Play: 5. Dřevo pultu je dostatečně tenké, aby jím mohl projít NFC, takže hraji hudbu poklepáním na značku NFC na kouzelném a neviditelném místě.
Doporučuje:
Samostatný emulátor Retro CP/M: 8 kroků
Retro CP/M Stand Alone Emulator: Tento projekt využívá modul VGA32 ESP v1.4 ke spuštění kombinace nebo RunCPM a FabGL k poskytnutí samostatného počítače s ekvivalentním systémem CP/M 2.2. Populární v 80. letech jako operační systém pro malé počítače. Můžete se vrátit v
Herní emulátor Raspberry Pi Pokyny: 7 kroků
Herní emulátor Raspberry Pi Pokyny: Všichni rádi hrají. I když děláme nějakou seriózní práci. A je to přirozené, protože každý si zaslouží odpočinek, volný čas nebo volný čas. A samozřejmě můžeme jen stěží odmítnout, že jsme hráli naši oblíbenou hru. Pamatuji si dobu, kdy nějaký typ
Sonos jako Spotify Wifi reproduktor: 9 kroků (s obrázky)
Sonos jako Spotify Wifi Speaker: V tomto projektu postavíme Wifi Speaker, který má vestavěný Spotify Client. To znamená, že si v Spotify můžete snadno vybrat pro hraní na tomto konkrétním reproduktoru. Nemusíte se zabývat mizerným bluetooth, protože je to založeno na ethernetu. Vaše
TinyDice: Profesionální PCB doma s řezačkou vinylů: 10 kroků (s obrázky)
TinyDice: Profesionální desky plošných spojů doma s řezačkou vinylů: Tento návod se skládá z průvodce krok za krokem, který dokumentuje způsob výroby desek plošných spojů v profesionální kvalitě doma pomocí vinylové řezačky spolehlivým, jednoduchým a efektivním způsobem. Tato metoda umožňuje výrobu konzistentních
Alba se značkami NFC pro automatické přehrávání hudby Spotify na Chromecastu: 5 kroků
Alba se značkami NFC pro automatické přehrávání hudby Spotify na Chromecastu: Tento projekt začal myšlenkou vytvořit koláž alba mých nejhranějších umělců na Spotify. Po nějakém hraní s Spotify API v Pythonu jsem si řekl, že by bylo hezké propojit tyto obaly alb s jejich URI Spotify a začít hrát