zajímavý

Jak vytvořit svůj vlastní Amazon Echo pomocí Raspberry Pi

Amazon Echo je užitečné mít doma. Může přehrávat podcasty, přijímat připomenutí a poznámky, říkat délku dojíždění a dokonce ovládat další zařízení ve vašem domě. Ale za ceny v rozmezí od 50 do 150 $ je to drahý návrh, pokud si nejste jisti, že jej použijete. Dobrou zprávou však je, že si můžete vytvořit plně funkční pomocí Raspberry Pi.

Aktualizace : Tato metoda je o něco jednodušší a získá vám lepší finální produkt. Tento průvodce opouštíme, protože používá oficiální repozitáře Amazonu, ale systém funguje mnohem lépe.

Co dostanete

Na konci této příručky budete mít (téměř) plně funkční Amazon Echo, který reaguje na vaše hlasové příkazy. Jedinou věcí, kterou nemůže udělat, je přístup k hudebním službám, jako je Amazon Prime, Spotify nebo Pandora. Jinak je to ozvěna se všemi zvonky a píšťalky Alexy, Amazonova virtuálního asistenta. Což znamená, že dokáže provádět jednotkové konverze, kontrolovat sportovní výsledky, číst vám knihy Kindle, kontrolovat počasí, hrát podcasty a rádio a spoustu dalších tun. Až budete hotovi, budete moci použít doprovodnou aplikaci Alexa (iOS a Android) ke změně nastavení Alexy a budete moci nainstalovat všechny stejné dovednosti, jaké můžete na skutečné Echo. To zahrnuje, jako si Batman vybere svou vlastní dobrodružnou hru nebo databázi kočičích faktů. Možná na užitečnějším konci zahrnuje nedávno ohlášené integrace s aplikacemi třetích stran, jako jsou Todoist a Any.do.

Bude také pracovat s řadou připojených zařízení, jako jsou inteligentní žárovky typu LIFX nebo Nest Termostat, takže je můžete ovládat hlasem. Stejně jako skutečné ozvěny, vaše DIY Echo může být propojena až do If This Then That, abyste přidali další funkce, jako je přidání do-dos do Evernote nebo upozornění na váš telefon, když časovač zhasne.

Co se týče ceny, je tu jedna věc, kterou bychom měli zmínit zde: Amazonův nejnovější Echo Dot (menší Echo s hlasitým reproduktorem) je pouhých 50 dolarů, což dělá vytvoření vlastního z 35 dolarů Raspberry Pi mnohem těžší prodej. Existuje však jedna klíčová vlastnost Raspberry Pi, díky níž je to všechno užitečné:. Tento projekt pouze nainstaluje sadu programů, které umožňují vašemu Raspberry Pi fungovat jako Echo. Váš Raspberry Pi může stále pracovat s řadou dalších projektů, jako je retro herní stanice (stačí nainstalovat desktopové prostředí) nebo mediální centrum. To znamená, že jej můžete přeměnit na víceúčelový stroj.

Co budete potřebovat

Jak byste očekávali, budete potřebovat Raspberry Pi vedle hrsti dílů:

  • Raspberry Pi 3 (doporučeno) nebo Raspberry Pi 2 (budete také potřebovat USB Wi-FI adaptér s modelem 2) s nainstalovanou Raspbian. Pokud jste Raspbian dosud nenainstalovali, náš průvodce zahrnuje vše, co potřebujete vědět.
  • Napájecí kabel MicroUSB
  • Karta microSD s kapacitou 8 GB
  • USB mikrofon (použil jsem tento levný 6 $ mikrofon, ale zdá se, že téměř každý USB mikrofon funguje. Zdá se, že oko Playstation Eye 8 $ funguje obzvláště dobře, pokud hledáte mírný upgrade)
  • Reproduktory (jakýkoli napájený reproduktor vykonává svou práci, rozhodl jsem se použít UE Mini Boom, protože jsem ho už vlastnil a i když je zapojen do Pi, stále funguje jako Bluetooth reproduktor)
  • Klávesnice a myš pro nastavení (nebo přístup k počítači s VNC)

Pro tento projekt je teoreticky možné použít starší Raspberry Pi nebo Raspberry Pi Zero, ale k tomu budete muset ručně nainstalovat nejnovější verzi Java. Toto vlákno na GitHubu může pomoci. Testovali jsme to však na Raspberry Pi 2 a 3.

Svůj DIY Echo vytvoříte instalací Amazon Alexa Skills Kit na Raspberry Pi. V této příručce používáme oficiální kód Amazonu. To však přichází s jednou výzvou: vyžaduje, abyste ručně spustili službu Alexa. Je to otravné, ale za předpokladu, že moc neztrácíte moc, nebo je nutné svůj Pi restartovat velmi často, je to jen trochu nepříjemné.

Krok první: Zaregistrujte se k účtu vývojáře Amazonu

Než uděláte cokoli, budete se muset zaregistrovat do bezplatného účtu vývojáře Amazon a poté si vytvořit profil pro svůj DIY Echo. To je docela jednoduché:

  1. Přihlaste se ke svému účtu vývojáře Amazonu.
  2. Klikněte na kartu Alexa.
  3. Klikněte na Registrovat typ produktu> Zařízení.
  4. Pojmenujte typ zařízení a zobrazovaný název (pro oba jsme vybrali „Raspberry Pi“).
  5. Klepněte na tlačítko Další.
  6. Na obrazovce Profil zabezpečení klikněte na možnost Vytvořit nový profil.
  7. Na kartě Obecné vedle názvu „Název profilu zabezpečení“ pojmenujte svůj profil. To samé udělejte pro popis. Klepněte na tlačítko Další.
  8. Poznamenejte si ID produktu, ID klienta a tajemství klienta, které pro vás web generuje.
  9. Klikněte na kartu Web Settings (Nastavení webu) a poté na tlačítko Edit (Upravit) vedle rozbalovací nabídky profilu.
  10. Vedle položky Povolené původy klikněte na „Přidat další“ a zadejte: //localhost:3000 .
  11. Vedle povoleného //localhost:3000/authresponse URL klikněte na „Přidat další“ a zadejte: //localhost:3000/authresponse klikněte na Další.
  12. Karta Podrobnosti zařízení je další. Nezáleží na tom, co sem zadáte. Vyberte kategorii, napište popis, vyberte očekávanou časovou osu a do formuláře vedle počtu zařízení, která plánujete používat, zadejte 0. Klepněte na tlačítko Další.
  13. Nakonec si můžete zvolit přidání do Amazonské hudby zde. Toto nefunguje na zařízení napájeném z Pi, takže jej nechte zaškrtnuté jako „Ne.“ Klikněte na Uložit.

Nyní máte účet vývojáře Amazonu a vytvořili jste profil pro svůj Echo s podporou Pi. Je čas přejít na Raspberry Pi a nechat Alexu pracovat.

Krok 2: Klonování a instalace Alexa

Připojte vše do svého Pi a spusťte jej. K tomu budete muset být v grafickém uživatelském rozhraní (nyní označovaném jako PIXEL), protože k ověření zařízení nakonec používáte webový prohlížeč.

  1. Spusťte aplikaci Terminal na Raspberry Pi a napište: cd Desktop a stiskněte Enter.
  2. Zadejte git clone //github.com/alexa/alexa-avs-sample-app.git a stiskněte klávesu Enter.

  3. Po dokončení zadejte: cd ~/Desktop/alexa-avs-sample-app a stiskněte klávesu Enter.
  4. Zadejte nano automated_install.sh a stiskněte klávesu Enter.
  5. Tím se vytáhne textový editor. Zde budete muset zadat své ID produktu, ID klienta a ClientSecret, které jste si poznamenali v předchozím kroku. Pomocí kláves se šipkami přejděte ke každé položce. Zadejte každý detail za znaménkem = jak je uvedeno na obrázku výše. Až budete hotovi, klepněte na CTRL + X pro uložení a ukončení.
  6. Nyní jste zpět na příkazovém řádku. Je čas spustit instalační skript. Zadejte cd ~/Desktop/alexa-avs-sample-app a stiskněte klávesu Enter.
  7. Napište . automated_install.sh . automated_install.sh a stiskněte klávesu Enter.
  8. Po zobrazení výzvy stiskněte Y pro různé otázky a odpovězte, jak uznáte za vhodné pro ostatní. Toto nakonfiguruje váš Pi a nainstaluje nějaký další software. Může to trvat až 30 minut, takže to nechte udělat.

Jakmile to skončí, je čas zahájit službu Alexa.

Krok 3: Spusťte webovou službu Alexa

Dále spustíte tři sady příkazů najednou ve třech různých oknech Terminálu. Pro každý z následujících kroků vytvoříte nové okno Terminálu. Nezavírejte žádná okna! Budete muset udělat kroky tři (tento, jeden) čtyři a pět pokaždé, když restartujete Raspberry Pi.

Prvním spuštěním je webová služba Alexa:

  1. Zadejte cd ~/Desktop/alexa-avs-sample-app/samples a stiskněte klávesu Enter.
  2. Zadejte cd companionService && npm start a stiskněte Enter.

Tím se spustí doprovodná služba a otevře se port pro komunikaci s Amazonkou. Nechte toto okno otevřené.

Krok 4: Spusťte ukázkovou aplikaci a potvrďte svůj účet

Otevřete druhé okno Terminálu (Soubor> Nové okno). Tento další krok spustí aplikaci Java a spustí webový prohlížeč, který zaregistruje váš e-mail s podporou Pi ve webové službě Alexa.

  1. Ve svém novém okně Terminálu zadejte do pole cd ~/Desktop/alexa-avs-sample-app/samples a stiskněte klávesu Enter.
  2. Zadejte cd javaclient && mvn exec:exec a stiskněte Enter.
  3. Zobrazí se okno s výzvou k ověření zařízení. Klikněte na Ano. Otevře se okno prohlížeče. V aplikaci Java se zobrazí druhé vyskakovací okno s žádostí o kliknutí na tlačítko Ok. Neklikejte na to dosud.
  4. Přihlaste se do svého účtu Amazon v prohlížeči.
  5. Zobrazí se obrazovka ověření vašeho zařízení. Klikněte na OK. Váš prohlížeč nyní zobrazí „tokeny zařízení připraveny“.
  6. Nyní můžete v aplikaci Java kliknout na rozbalovací nabídku Ok.

Nyní má váš Raspberry Pi nezbytné tokeny pro komunikaci se serverem Amazon. Nechte toto okno Terminálu otevřené.

Krok 5: Spusťte Wake Word Engine

Nakonec otevřete třetí okno Terminálu (Soubor> Nové okno). Zde spustíte motor slov probuzení. Díky tomu můžete říci „Alexa“, aby vás Raspberry Pi začal poslouchat. Máte dvě možnosti pro slovní software Wake, Sensory a KITT.AI. Oba jsou zdarma, ale Sensory vyprší po 90 dnech, takže místo toho použijte KITT:

  1. Zadejte cd ~/Desktop/alexa-avs-sample-app/samples a stiskněte klávesu Enter.
  2. Zadejte cd wakeWordAgent/src && ./wakeWordAgent -e kitt_ai

To je vše, vaše DIY Echo je nyní spuštěna. Jděte do toho a zkuste to vyslovením „Alexa.“ Měli byste slyšet pípnutí, které naznačuje, že to poslouchá. Když uslyšíte toto pípnutí, zeptejte se: „Jaké je počasí?“ Nebo „Jaké je skóre ve hře Dodgers?“

Krok šestý: Vylepšete mikrofon a ujistěte se, že vás slyší ozvěna

Nakonec, v závislosti na kvalitě vašeho mikrofonu, si můžete všimnout, že má potíže se slyšením. Místo toho, aby křičeli „Alexa“ v horní části vašich plic, jdeme naposledy na příkazový řádek.

  1. Z příkazového řádku zadejte alsamixer a stiskněte klávesu Enter.
  2. Klepnutím na F6 vyberte jiné zařízení USB. Pomocí kláves se šipkami vyberte mikrofon.
  3. Pomocí kláves se šipkami zvyšte hlasitost záznamu.
  4. Až budete s hlasitostí spokojeni, ukončete klepnutím na ESC.
  5. Napište do sudo alsactl store a stiskněte Enter, aby nastavení sudo alsactl store trvalé.

Nyní byste měli být schopni spustit svůj DIY Echo tím, že s ním budete mluvit jako normální člověk, místo řvát. Zde můžete také změnit výchozí svazek.

Extra kredit: Přidejte podporu AirPlay

Jedna věc, kterou váš DIY Echo v komerční verzi chybí, je schopnost fungovat jako reproduktor Bluetooth. S funkcí AirPlay můžete přidat podobnou funkci. Tímto způsobem vaše echo funguje také jako přijímač, do kterého můžete posílat hudbu z telefonu nebo počítače. Je snadné přidat, budete potřebovat ještě jednu poslední cestu k příkazovému řádku přes Terminál:

  1. Napište do sudo apt-get install git libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl a stiskněte klávesu Enter. Nainstaluje se jiný software, který budete potřebovat.
  2. Po zobrazení výzvy stiskněte klávesu Y a počkejte, až se vše stáhne a nainstaluje.
  3. Zadejte git clone //github.com/njh/perl-net-sdp.git a stiskněte klávesu Enter. To je vyžadováno pro nejnovější verzi softwaru AirPlay. Několik následujících příkazů sestavuje a instaluje tento software.
  4. Zadejte cd perl-net-sdp a stiskněte klávesu Enter.
  5. Zadejte perl Build.PL a stiskněte klávesu Enter.
  6. Zadejte sudo ./Build a stiskněte klávesu Enter.
  7. Zadejte sudo ./Build test a stiskněte klávesu Enter.
  8. Zadejte sudo ./Build install a stiskněte klávesu Enter.
  9. Zadejte CD .. a stiskněte Enter.
  10. Nyní budete chytit shairport, software pro kutily. Zadejte git clone //github.com/hendrikw82/shairport.git a stiskněte klávesu Enter.

  11. Zadejte cd shairport a stiskněte klávesu Enter.
  12. Zadejte make a stiskněte klávesu Enter.
  13. Zadejte ./shairport.pl -a AlexaPi a stiskněte klávesu Enter.

Díky tomu můžete nyní streamovat hudbu nebo jiný zvuk do svého kutilství pomocí protokolu AirPlay. Nyní, když je vaše Echo v provozu, jděte do toho a začněte si s tím hrát.