IRMP-STM32-Empfänger auf MLD

  • Ich hab mal versucht, meinen IRMP-STM32-Empfänger auf MLD 5.4 (MLD-5.4_netinstall_2018.02.11-178.22+1699_amd64.iso) zum Laufen zu bekommen.

    Mit der /etc/init.d/irmplircd hat das nicht geklappt.

    Als workaround habe ich folgende rule benutzt:

    Code
    1. cat 80-irmp.rules
    2. KERNEL=="hidraw*", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="4444", SYMLINK+="irmp_stm32" RUN+="/usr/bin/irmplircd -t /etc/irmplircd.map -d /var/run/lirc/lircd-irmp /dev/irmp_stm32" RUN+="/usr/bin/lircd2uinput -s /var/run/lirc/lircd-irmp" MODE="666"

    Mit einer passenden irmplircd.map funktioniert das.


    Hat einer das schon mal eleganter geschafft?

    Dateien

  • Ich schließe mich jrie an. Hatte zwecks meinem aktuellen Problem mit dem Thema unter easyVDR mal mit MLD ein paar Tests machen wollen und auch an der /etc/init.d/irmplircd Implementierung gescheitert.


    jrie Cooler Notbehelf.


  • Ich könnte auch versuchen, die /etc/init.d/irmplircd komplett neu aufzubauen. Aber dann gehen vermutlich ein paar andere Sachen nicht mehr, die da eingebaut sind, sondern nur der IRMP-STM32-Empfänger.

    Ich weiß nicht, wozu das mal so gemacht wurde.

    Ich kenne mich mit init-system nicht so aus, eher mit systemd.

  • Da ist Claus der Profi. Ich habe ihm einen Link auf den Thread zukommen lassen. Ansonsten kann man ihn heute Abend persönlich in unserem Videochat ausfragen und darüber diskutieren.


    Gruß


    MarMic

    SZVDR HD: Intel e5300@1,2ghz - Gigabyte GA-EP41-UD3L - 2GB ddr2 800 - Gainward G210 512mb - Silverstone LC16MR - Tevii s480 - Astra 19,2 - MLDHD-5.4 testing


    WZVDR HD: Intel g1610@1,6ghz - Intel DH61BE - Scythe Big Shuriken 2 - 4GB ddr3 1333 - Asus GT610 1024mb - Chieftec Hi-Fi HM-02 - Tevii s480 - Astra 19,2 - MLDHD-5.4 testing

  • Ich habe deine Lösung in einer Live Session umgesetzt. IRMP funktioniert bei mir tadellos unter MLD 5.3. Die Version 5.4 habe ich nicht geprüft.


    Gruß

    Obelix


  • Ich hab mir jetzt nicht die Mühe gemacht herauszusuchen wer das irmp init Script verunstaltet hat, aber der bisherige Zustand konnte beim besten Willen nicht funktionieren.

    Ich hab das nun also einmal komplett überarbeitet und auch gleich noch das Setup um eine (optionale) Auswahl des Devices und eine Funktion zum bearbeiten der map Datei erweitert.

    Das Update ist aber noch ungetestet. Rückmeldungen sind also erwünscht.

    MLD 5.1 mit vdr 2.2 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM -
    WD Green 6TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.3 mit vdr 2.3.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.1 mit vdr 2.2 - Banana Pi - softhddevice
    MLD 5.0 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT
    MLD 2.0 mit vdr 1.6 - SMT-7020s - 80GB HDD

  • Zweiter Versuch:

    Code
    1. KERNEL=="hidraw*", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="4444", SYMLINK+="irmp_stm32" MODE="666"

    Funktioniert bestens.

    Gibt es statt "sleep 1" etwas, das nur so lange wie nötig wartet?


    Ich benutze lieber den Symlink, da damit meine Konfigurationsprogramme ohne Device-Angabe funktionieren.


    @clausmuus: Da haben wir uns überschnitten.

    Ich schau mir deines mal an.

    Dateien

    • MLD.v2.tar.bz2

      (1,08 kB, 8 Mal heruntergeladen, zuletzt: )
  • Ich habe Dein sleep 1 mit übernommen. Das sleep ist nicht weiter schädlich, da das init Script im Hintergrung ausgeführt wird. Das verzögert also nicht den Startvorgang. Falls Du befürchtungen hast, das eine Sekunde unter Umständen nicht reichen könnte, kann auch abgewartet werden bis das lirc Device vorhanden ist.


    Du könntest mal mit grep HID_NAME /sys/class/hidraw/hidraw*/device/uevent nachschauen welchen Namen Dein Device hat, dann baue ich das gleich noch in der Erkennung im init Script mit ein.

    MLD 5.1 mit vdr 2.2 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM -
    WD Green 6TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.3 mit vdr 2.3.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.1 mit vdr 2.2 - Banana Pi - softhddevice
    MLD 5.0 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT
    MLD 2.0 mit vdr 1.6 - SMT-7020s - 80GB HDD

  • "sleep 1" hat bei mir bisher gereicht.


    Der Name ist "STMicroelectronics STM32 IRMP HID-Device".


    Dann gibt es noch drei Konfigurations-Programme: stm32IRalarm, stm32IRconfig und stm32IRconfig_gui. Wenn du dafür auch ein Paket baust, freuen sich bestimmt einige Benutzer.


    Der Symlink hat den Vorteil, dass stm32IRalarm und stm32IRconfig dann den Empfänger automatisch finden.


    Einen Fehler habe ich, wenn ich IRMPLIRCD_ARGS="-r 300 -s 200" setze: Alle Tastendrücke werden als neu erkannt, auch wenn es Wiederholungen sind. Abhilfe schafft lircd2uinput mit

    $LIRCD2UINPUT_ARGS zu starten, und LIRCD2UINPUT_ARGS="-t 400" in rc.config zu setzen.

    Du könntest auch das neueste lircd2uinput nehmen, da ist der default Wert höher.

  • EDIT: Falsche Frage.....


    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von obelix () aus folgendem Grund: Gelöscht wegen falscher Frage.

  • Ich hab das init jetzt auf die udev Variante umgestellt, und hab die udev Regel hinzugefügt.

    das lircd2uinput Update wird auch noch kommen, aber eher nicht in den nächsten Tagen.

    MLD 5.1 mit vdr 2.2 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM -
    WD Green 6TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.3 mit vdr 2.3.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.1 mit vdr 2.2 - Banana Pi - softhddevice
    MLD 5.0 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT
    MLD 2.0 mit vdr 1.6 - SMT-7020s - 80GB HDD