Obsah:

Server AndyMOTE: 12 kroků
Server AndyMOTE: 12 kroků

Video: Server AndyMOTE: 12 kroků

Video: Server AndyMOTE: 12 kroků
Video: Skeleton hits the Griddy ☠️ 2024, Listopad
Anonim
Server AndyMOTE
Server AndyMOTE

Chtěl jsem univerzální dálkové ovládání pro svou mancave a přišel jsem na to, že bych to měl zvládnout pomocí aplikace na svém mobilním telefonu (aby poskytoval uživatelské rozhraní) a Raspberry PI k poskytování infračerveného „Blasteru“. Po malém zkoumání jsem objevil projekt LIRC, který vypadal ideálně pro 'Blaster'. Napsal jsem vlastní aplikaci pro Android (AndyMOTE) a malý „serverový“program, který mezi nimi poskytuje rozhraní.

Tento návod vám ukáže, jak vytvořit server

Zde uvedené pokyny by měly fungovat s Raspian Jessie, nefungují s Raspian Buster a v tomto bodě chápu, že Raspian byl nyní nahrazen operačním systémem Raspberry Pi, na svém webu mám aktualizovanou sadu pokynů (viz odkaz níže), které fungují s Raspian Stretch-Lite nebo Raspian Buster-Lite

Krok 1: Seznam položek

  • RaspberryPi Zero WH
  • Energenie ENER314-IR infračervený ovladač
  • Karta Micro SD (třída 10) (16 GB)
  • Napájení Raspberry Pi
  • (Volitelné) Pouzdro (např.: Pibow Zero W)
  • (Volitelně) Infračervený dálkový ovladač Extender* (1 přijímač; 4 vysílače)

Budete také potřebovat monitor, klávesnici a kabely schopné připojit tyto položky k vašemu Raspberry Pi

Krok 2: Připravte si Raspberry Pi

Stáhněte si odtud Raspian Lite a poté jej nainstalujte na kartu SD (pokyny zde).

Jakmile je na vaší SD kartě nainstalován Raspian Lite a než kartu přesunete na Raspberry Pi; připojte kartu k počítači. Vytvořte prázdný soubor /boot /ssh (to umožňuje SHH na serveru) a proveďte následující úpravy souboru /boot/config.txt

# Nastavit HDMI na normální outputhdmi_drive = 2# Nastavit HDMI na DMT režim (vhodné pro monitory) hdmi_group = 2# Nastavit rozlišení na 800x600 @ 60hzhdmi_mode = 9dtoverlay = lirc-rpi, gpio_in_pin = 18, gpio_out_pin = 17

(Pokyny k nastavení videa naleznete zde)

Krok 3: Sestavte server

Sestavte server
Sestavte server

Nejprve vložte předpřipravenou kartu SD do Raspberry Pi. Vložte Raspberry Pi do pouzdra. Měl jsem problém, že ovladač ENER314-IR Infra Red zasahoval do pouzdra Pibow, takže nepoužil dva kusy.

Poté připojte infračervený ovladač Energenie ENER314-IR k Raspberry Pi (viz obrázek).

Poté připojte Raspberry Pi ke klávesnici (pomocí konektoru USB) a monitoru (pomocí konektoru HDMI … Může být nutné použít adaptéry).

Nakonec zapněte napájení a počkejte, až se jednotka spustí.

Krok 4: Nastavení sítě

Nejprve otevřete konfigurační soubor wpa-proscant pomocí svého oblíbeného editoru (např. Nano).

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Přejděte na konec souboru a přidejte svou síť (např.).

network = {ssid = "YOUR_SSID" psk = "YOUR_KEY" priority = "1" id_str = "YOUR_SSID_NAME"}

Nahraďte YOUR_SSID, YOUR_KEY a YOUR_SSID_NAME podle potřeby pro vaši síť.

Uložte soubor, restartujte žadatel o WPA a restartujte počítač.

$ wpa_cli -i wlan0 překonfigurovat $ sudo restart

Krok 5: Nastavení statické IP adresy

Doporučujeme, aby měl váš server pevnou IP adresu. Možná toho dosáhnete vhodnou konfigurací serveru DHCP nebo, pokud chcete nastavit rozhraní wlan0 na statickou adresu na Raspberry Pi, upravit soubor /etc/dhcpcd.conf a zahrnout řádky.

# Příklad konfigurace statické IP: rozhraní wlan0static ip_address = 192.168.1.116/24 statické routery = 192.168.1.1static_domain_name_servers = 192.168.1.1 8.8.8.8

Změňte 192.168.1.1 na skutečnou adresu routeru a 192.168.1.116 na skutečnou statickou adresu, kterou požadujete pro svou aplikaci.

* Možná budete chtít spustit nástroj raspi-config a v tomto okamžiku provést jakékoli změny konfigurace.

Po dokončení restartujte.

Krok 6: Nainstalujte LIRC

Nainstalujte LIRC pomocí příkazu.

$ sudo apt-get install lirc

Upravte soubor /etc /modules; např:

$ sudo nano /etc /modules

a přidejte řádky:

lirc_devlirc_rpi gpio_in_pin = 18 gpio_out_pin = 17

Uložte soubor a restartujte počítač.

$ sudo restart

Krok 7: Konfigurace LIRC

Upravte soubor /etc/lirc/hardware.conf, např.:

$ sudo nano /etc/lirc/hardware.conf

a aby to vypadalo takto:

############################################################################ ####### /etc/lirc/hardware.conf## Argumenty, které budou použity při spuštění lircdLIRCD_ARGS = "-uinput --listen" ## Nezačínejte s lircmd, i když se zdá, že existuje dobrá konfigurace soubor# START_LIRCMD = false ## Nespouštějte irexec, i když se zdá, že existuje dobrý konfigurační soubor.# START_IREXEC = false ## Zkuste načíst příslušné moduly jádraLOAD_MODULES = true ## Spustit „lircd --driver = help“pro seznam podporovaných ovladačů. DRIVER = "výchozí" ## obvykle/dev/lirc0 je správné nastavení pro systémy používající udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" ## Výchozí konfigurační soubory pro váš hardware, pokud existujeLIRCD_CONF = "" LIRCMD_CONF = "" Upravte soubor /etc/lirc/lirc_options.conf a upravte řádky níže: driver = defaultdevice =/dev/lirc0

Uložte soubor a restartujte lircd.

$ sudo systemctl restart lircd

Krok 8: Testování přijímače

Chcete -li zastavit démona LIRC a otestovat přijímač, zadejte následující posloupnost příkazů.

$ sudo systemctl stop lircd $ sudo mode2

Program mode2 bude vysílat poměr značek a prostoru IR signálu do konzoly. Namiřte dálkový ovladač na váš IR přijímač a stiskněte některá tlačítka. Měli byste vidět něco takového:

prostor 16300pulse 95prostor 28794pulse 80space 19395pulse 83space 402351

až budete hotovi, stiskněte ctl-c a restartujte LIRC Daemon pomocí následujícího příkazu.

$ sudo systemctl start lircd

Krok 9: Přidejte dálkové ovladače - metoda 1

LIRC používá konfigurační soubory, které obsahují data týkající se každého dálkového ovladače, které lze emulovat pomocí LIRC. Aby tyto podsystémy LIRC fungovaly podle potřeby, musíte tyto konfigurační soubory vygenerovat nebo jinak poskytnout.

Důležité

Pro každý emulovaný dálkový ovladač musíte zadat individuální konfigurační soubor. Konfigurační soubory musí být uloženy v adresáři /etc/lirc/lircd.conf.d. Výběr názvu klíče je důležitý pro nejlepší zážitek AndyMOTE, při výběru názvů klíčů se řiďte zde uvedenými pokyny. Odtud lze také stahovat konfigurační soubory, ale mějte na paměti, že pokud je používáte, musí obsahovat pouze jednu vzdálenou konfiguraci. (Soubory konfigurace jsou jednoduché textové soubory a v případě potřeby je lze snadno upravit.

Metoda 1 vyžaduje původní dálkové ovládání pomocí následujících příkazů:

$ sudo systemctl stop lircd $ sudo irecord -n ~/FILENAME.conf

-NEBO-

$ sudo irecord -f -n ~/FILENAME.conf

Nahraďte FILENAME nějakým popisným názvem pro dálkový ovladač, který konfigurujete. Druhý příkaz vytvoří soubor „raw“a to je někdy potřeba v závislosti na vlastnostech používaného dálkového ovládání. Přepínač -n vám umožňuje použít libovolný název klíče, který se vám líbí (místo aby byl omezen na seznam LIRC Namespace).

Až budete hotovi, nezapomeňte restartovat lircd a restartovat.

$ sudo systemctl start lircd $ sudo restart

Krok 10: Přidejte dálkové ovladače - metoda 2

Metoda 2 nevyžaduje, aby původní remoteGlobal-cache udržovala cloudovou databázi s více než 200 000 IR kódy. Kdokoli se může zaregistrovat a stáhnout až 5 sad kódů denně. Tyto sady kódů lze převést na soubory LIRC conf způsobem přátelským k AndyMOTE pomocí zde popsané aplikace gcConvert.

Krok 11: Nainstalujte serverový program AndyMOTE

Nainstalujte si knihovny liblirc a libboost, jak je popsáno níže:

$ sudo apt-get update $ sudo apt-get install liblirc-dev libboost-all-dev

Dále nainstalujte git, přejděte do svého domovského adresáře a naklonujte úložiště andymoteserver

$ sudo apt install git $ cd ~ $ git clone

pak zkompilovat zdroj

$ cd andymoteserver $ make

Přesuňte výsledný soubor na vhodné místo; např:

$ sudo mkdir -p/opt/andymoteserver $ sudo mv dist/Debug/GNU -Linux/andymote/opt/andymoteserver/

Uklidit

$ cd ~ $ rm -Rf andymoteserver

Nakonec ke spuštění serveru AndyMOTE jako služby vytvořte soubor /lib/systemd/system/andymote.service s obsahem, jak je uvedeno níže:

[Unit] Description = run AndyMOTE Server as a service [Service] Type = simpleRemainAfterExit = falseRestart = alwaysRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Install] WantedBy = multi-user.target

Povolte a spusťte službu

$ sudo systemctl povolit andymote $ sudo systemctl start andymote

Krok 12: A nakonec…

A nakonec…
A nakonec…

Výše uvedený obrázek ukazuje můj server v jeho konečné poloze (vlevo). Zařízení na pravé straně fotografie je infračervený dálkový ovladač Extender, který přijímá IR signály ze serveru a znovu je vysílá přes 4 IR vysílače (není zobrazeno); tyto jsou namontovány na mých mediálních zařízeních (TV, zesilovač atd.)

Doufám, že si to užijete!

Doporučuje: