Indholdsfortegnelse:

AndyMOTE Server: 12 trin
AndyMOTE Server: 12 trin

Video: AndyMOTE Server: 12 trin

Video: AndyMOTE Server: 12 trin
Video: Helbreath Oly (12): Why I don't really play anymore 2024, Juni
Anonim
AndyMOTE Server
AndyMOTE Server

Jeg ville have en universel fjernbetjening til min mancave og regnede med, at jeg skulle kunne gøre dette med en app på min mobiltelefon (for at give brugergrænsefladen) og en Raspberry PI til at levere Infra Red 'Blaster'. Efter en lille undersøgelse opdagede jeg LIRC -projektet, der så ideelt ud til 'Blaster'. Jeg skrev min egen Android -app (AndyMOTE) og et lille 'Server' -program for at give en grænseflade mellem de to.

Denne instruktør viser dig, hvordan du bygger serveren

Instruktionerne her skal fungere med Raspian Jessie, de fungerer ikke med Raspian Buster, og på dette tidspunkt forstår jeg, at Raspian nu er blevet erstattet med Raspberry Pi OS, jeg har et opdateret sæt instruktioner på mit websted (se link nedenfor), der fungerer med Raspian Stretch-Lite eller Raspian Buster-Lite

Trin 1: Vareliste

  • RaspberryPi Zero WH
  • Energenie ENER314-IR infrarød controller
  • Micro SD -kort (klasse 10) (16 GB)
  • Raspberry Pi strømforsyning
  • (Valgfrit) Etui (f.eks.: Pibow Zero W)
  • (Valgfrit) Infrarød fjernbetjeningsforlænger* (1 modtager; 4 sendere)

Du skal også bruge en skærm, et tastatur og kabler, der er i stand til at forbinde disse emner med din Raspberry Pi

Trin 2: Forbered din Raspberry Pi

Download Raspian Lite herfra, og installer det derefter på dit SD -kort (vejledning her).

Når Raspian Lite er installeret på dit SD -kort, og før du flytter kortet til din Raspberry Pi; monter kortet på din pc. Opret en tom fil /boot /ssh (dette muliggør SHH på serveren) og foretag følgende redigeringer af filen /boot/config.txt

# Indstil HDMI til Normal outputhdmi_drive = 2# Indstil HDMI til DMT-tilstand (kan bruges til skærme) hdmi_group = 2# Indstil opløsning til 800x600 @ 60hzhdmi_mode = 9dtoverlay = lirc-rpi, gpio_in_pin = 18, gpio_out_pin = 17

(Se her for vejledning om videoindstillinger)

Trin 3: Saml serveren

Saml serveren
Saml serveren

Først skal du indsætte dit forberedte SD-kort i Raspberry Pi. Sæt Raspberry Pi i sin sag. Jeg havde et problem, at ENER314-IR Infra Red Controller forstyrrede Pibow-sagen, så jeg brugte ikke to af stykkerne.

Sæt derefter Energenie ENER314-IR Infra Red-controlleren i Raspberry Pi (se billede).

Tilslut derefter Raspberry Pi til tastaturet (ved hjælp af USB -stik) og skærm (ved hjælp af HDMI -stik … Adaptere kan være nødvendige).

Endelig tænd og vent på, at enheden starter.

Trin 4: Opsætning af netværk

Først skal du åbne wpa-supplicant-konfigurationsfilen ved hjælp af din foretrukne editor (f.eks. Nano).

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Gå til slutningen af filen, og tilføj dit netværk (f.eks.).

netværk = {ssid = "YOUR_SSID" psk = "YOUR_KEY" prioritet = "1" id_str = "YOUR_SSID_NAME"}

Udskift YOUR_SSID, YOUR_KEY og YOUR_SSID_NAME, alt efter hvad der er passende for dit netværk.

Gem filen, genstart WPA -supplikanten og genstart.

$ wpa_cli -i wlan0 omkonfigurer $ sudo genstart

Trin 5: Opsætning af statisk IP -adresse

Det anbefales, at din server har en fast IP -adresse. Du kan muligvis opnå dette ved at konfigurere din DHCP -server korrekt eller for at indstille wlan0 -grænsefladen til en statisk adresse på Raspberry Pi, redigere filen /etc/dhcpcd.conf og inkludere linjerne.

# Eksempel på statisk IP -konfiguration: interface wlan0static ip_address = 192.168.1.116/24static routers = 192.168.1.1static domain_name_servers = 192.168.1.1 8.8.8.8

Skift 192.168.1.1 til den faktiske adresse på din router og 192.168.1.116 til den faktiske statiske adresse, du har brug for til din applikation.

* Du vil muligvis køre raspi-config-værktøjet og foretage eventuelle konfigurationsændringer på dette tidspunkt.

Genstart, når du er færdig.

Trin 6: Installer LIRC

Installer LIRC ved hjælp af kommandoen.

$ sudo apt-get install lirc

Rediger filen /etc /modules; f.eks:

$ sudo nano /etc /modules

og tilføj linjerne:

lirc_devlirc_rpi gpio_in_pin = 18 gpio_out_pin = 17

Gem filen og genstart.

$ sudo genstart

Trin 7: Konfigurer LIRC

Rediger filen /etc/lirc/hardware.conf, f.eks.:

$ sudo nano /etc/lirc/hardware.conf

og få det til at se sådan ud:

#################################################### ####### /etc/lirc/hardware.conf## Argumenter, der vil blive brugt ved lancering af lircdLIRCD_ARGS = "-uinput --listen" ## Start ikke lircmd, selvom der ser ud til at være en god konfiguration fil# START_LIRCMD = false ## Start ikke irexec, selvom der ser ud til at eksistere en god konfigurationsfil.# START_IREXEC = false ## Prøv at indlæse passende kernemodulerLOAD_MODULES = true ## Kør "lircd --driver = hjælp" for en liste over understøttede drivere. DRIVER = "standard" ## normalt/dev/lirc0 er den korrekte indstilling for systemer, der bruger udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" ## Standardkonfigurationsfiler for din hardware, hvis nogenLIRCD_CONF = "" LIRCMD_CONF = "" Rediger filen /etc/lirc/lirc_options.conf, og rediger linjer som nedenfor: driver = defaultdevice =/dev/lirc0

Gem filen og genstart lircd.

$ sudo systemctl genstart lircd

Trin 8: Test af modtageren

Indtast følgende sekvens af kommandoer for at stoppe LIRC -dæmonen og teste modtageren.

$ sudo systemctl stop lircd $ sudo mode2

Mode2-programmet udsender mark-space-forholdet mellem et IR-signal og konsollen. Ret en fjernbetjening mod din IR -modtager, og tryk på nogle knapper. Du bør se noget i stil med dette:

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

når du er færdig, skal du trykke på ctl-c og genstarte LIRC Daemon ved hjælp af følgende kommando.

$ sudo systemctl start lircd

Trin 9: Tilføj fjernbetjeninger - metode 1

LIRC bruger konfigurationsfiler, der indeholder data vedrørende hver fjernbetjening, der kan efterlignes af LIRC. Du skal generere eller på anden måde levere disse konfigurationsfiler, for at LIRC -undersystemet kan fungere som ønsket.

Vigtig

Du skal angive en individuel konfigurationsfil for hver fjernbetjening, der skal emuleres. Konfigurationsfilerne skal gemmes i biblioteket /etc/lirc/lircd.conf.d. Valg af nøglenavn er vigtigt for den bedste AndyMOTE -oplevelse. Når du vælger navne til dine nøgler, skal du følge retningslinjerne her. Konfig -filer kan også downloades herfra, men pas på, at hvis du bruger dem, skal de kun indeholde én fjernkonfiguration. (Config -filer er enkle tekstfiler og kan let redigeres om nødvendigt.

Metode 1 kræver den originale fjernbetjening ved hjælp af følgende kommandoer:

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

-ELLER-

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

Erstat FILENAME med et beskrivende navn til den fjernbetjening, du konfigurerer. Sidstnævnte kommando opretter en 'rå' fil, og dette er undertiden nødvendigt afhængigt af egenskaberne ved fjernbetjeningen, du bruger. Omskifteren -n giver dig mulighed for at bruge ethvert keyname, du kan lide (i stedet for at være begrænset til LIRC -navnerumslisten).

Husk at genstarte lircd og genstarte, når du er færdig.

$ sudo systemctl start lircd $ sudo genstart

Trin 10: Tilføj fjernbetjeninger - metode 2

Metode 2 kræver ikke, at den originale remoteGlobal-cache opretholder en skybaseret database med over 200.000 IR-koder. Alle kan registrere og downloade op til 5 kodesæt om dagen. Disse kodesæt kan konverteres til LIRC conf -filer på en AndyMOTE -venlig måde ved hjælp af gcConvert -applikationen beskrevet her.

Trin 11: Installer AndyMOTE -serverprogrammet

Installer Libraries liblirc og libboost som beskrevet nedenfor:

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

Installer derefter git, gå til din hjemmemappe og klon andymoteserver -depotet

$ sudo apt installer git $ cd ~ $ git klon

kompiler derefter kilden

$ cd andymoteserver $ make

Flyt den resulterende fil til en bekvem placering; f.eks:

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

Ryd op

$ cd ~ $ rm -Rf andymoteserver

Til sidst, for at køre AndyMOTE Server som en tjeneste, skal du oprette filen /lib/systemd/system/andymote.service med indhold som vist herunder:

[Enhed] Beskrivelse = kør AndyMOTE Server som en tjeneste [Service] Type = simpleRemainAfterExit = falseRestart = alwaysRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Install] WantedBy = multi-user.target

Aktiver og start tjenesten

$ sudo systemctl aktiver andymote $ sudo systemctl start andymote

Trin 12: Og endelig …

Og endelig…
Og endelig…

Ovenstående billede viser min server i sin endelige position (venstre). Enheden til højre på billedet er den infrarøde fjernbetjeningsforlænger, denne modtager IR-signalerne fra serveren og transmitterer dem igen via 4 IR-sendere (ikke vist); disse er monteret på mine medieenheder, (tv, forstærker osv.).

Jeg håber du nyder!

Anbefalede: