IRMP auf STM32 - ein USB IR Empfänger/Sender/Einschalter mit Wakeup-Timer

  • Cooles Projekt! Genau das, was ich gesucht habe.
    Hat jemand von Euch schon die Merlin Fernbedienung zum Laufen bekommen? Bei mir funktioniert das Teil einfach nicht.
    Ich setze den roten ST-Link ein, Software compiliert (nur Merlin Protokoll aktiviert) und lässt sich flashen. Der geflashte
    ST-Link wird unter Windows und Linux sofort erkannt. Leider zeigt die Monitoringfunktion von stm43IRconfig aber nichts an.
    Auf welcher Frequenz sendet die Fernbedienung? Ich habe schon 38kHz und 56kHz gelesen. Aktuell setze ich einen TSOP 31238 ein,
    einen 31256 habe ich leider nicht rumliegen, muss ich mir erst noch besorgen.


    Danke und viele Grüße,


    Reinhard

  • 56KHz sind das.


    Viele der falschen TSOPs funktionieren trotzdem bei kurzer Entfernung. (Zumindest bei 5V; hier haben wir aber nur 3V)


    Vorschlag: Nimm als erstes den richtigen TSOP.


    ((Falls ich mal ganz viel Zeit habe probiere ichs selber mal aus))

  • Die Merlin IR-Fernbedienung läuft :] :] :]


    Ich verwende:
    IR-Empfänger: TSOP 31256 (56kHz)
    STM32: kleines rotes Board


    Konfiguration am VDR:
    Map-Datei für irmplircd, angepasst für Merlin IR-Fernbedienung: siehe Anhang irmp_stm32.map
    remote.conf: siehe Anhang remote.conf


    Den Eintrag für Merlin unter (https://www.mikrocontroller.net/articles/IRMP#MERLIN) habe ich korrigiert auf 56kHz.

  • Hallihallo,


    ich habe folgendes Problem mit dem Einschalter:


    Einschalten lässt sich der Rechner, aber das Teil wird irgendwie nicht eingebunden.


    Habe yavdr0.6 und das yavdr-addon-irmp installiert. (In der yavdr0.6 Doku wird der IMPR nicht mehr beschrieben, nur in der yavdr0.5!?)


    Code
    root@yavdr6:~# lsusb
    Bus 002 Device 003: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller
    Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
    Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 001 Device 004: ID 04b4:fd12 Cypress Semiconductor Corp.
    Bus 001 Device 003: ID 1209:4444 InterBiometrics
    Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    root@yavdr6:~#



    Als Remote wird nur die vorhandene iMON erkannt:


    Code
    root@yavdr6:~# dmesg|grep Remote
    [   14.973918] input: iMON Remote (15c2:ffdc) as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0/rc/rc0/input8
    [   14.974044] rc0: iMON Remote (15c2:ffdc) as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.3/2-1.3:1.0/rc/rc0


    Code
    root@yavdr6:~# sudo start irmplircd
    irmplircd start/running, process 9033
    root@yavdr6:~# sudo irw /var/run/lirc/irmplircd
    connect: No such file or directory


    Da es unter /etc/udev/rules.d keine passende Regel gab, habe ich die Datei 80-irmp.rules mit folgendem Inhalt angelegt:

    Code
    ACTION=="add", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="27d9", RUN+="/sbin/initctl emit irmp-detected DEVICE=/dev/%k"
    ACTION=="remove", SUBSYSTEM=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="27d9", RUN+="/sbin/initctl emit irmp-lost"



    Was fehlt noch? Wer kann helfen?


    Danke und Grüße,
    wayne

    streamdev-Server: ASRock J3160, MLD 5.5 testing, Mystique SaTiX-S2 V3 Dual + DuoFlex S2, 8GB, 60GB System,

    streamdev-Client 1: NUC6CAYS (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    streamdev-Client 2: NUC6CAYH (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    Media-Server: Synology DS215j

    AV-Geräte: Hisense H65MEC5550, Dali Zensor 5 AX, Teufel S6000SW


  • Mahlzeit, das sieht mir nach "multiplem Fehler" aus...






    lsusb zeigt nun auch bei mir dieses (glaube das war auch schon mal präziser):


    • Zitat

      Bus 001 Device 011: ID 1209:4444 InterBiometrics

      Und dann muss die UDEV-Rule die sicher aus einem der beiden Pakete mitkommt falls noch nicht seitens yaVDR passiert ist angepasst werden...

  • Die Pakete waren die richtigen. Eine udev-Regel wurde aber nicht angelegt.


    Meine war aber falsch!


    Habe die Vendor und die Product-ID angepasst.


    Nun kommen die Tastendrücke an! :]


    Danke und Grüße,
    wayne

    streamdev-Server: ASRock J3160, MLD 5.5 testing, Mystique SaTiX-S2 V3 Dual + DuoFlex S2, 8GB, 60GB System,

    streamdev-Client 1: NUC6CAYS (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    streamdev-Client 2: NUC6CAYH (Intel HD Graphics 500), MLD 5.5 testing, One For All URC 7960,

    Media-Server: Synology DS215j

    AV-Geräte: Hisense H65MEC5550, Dali Zensor 5 AX, Teufel S6000SW


  • Ich habe mal die Product-ID ins irmplircd-Paket für yaVDR 0.6 aufgenommen - die udev-Regel /lib/udev/rules.d/40-irmplircd.rules war aber schon vorher im Paket:

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • ranseyer was sind denn die aktuellen Upstream-Quellen für die Software zu dem Empfänger irmplircd, usb-ircontrol usw.?


    In den EasyVDR-Paketen für usb-ircontrol (https://github.com/ranseyer/US…tree/master/SW/ir-control vs. https://launchpad.net/~easyvdr…72/+listing-archive-extra ) und irmplircd (https://launchpad.net/~easyvdr…72/+listing-archive-extra vs. https://github.com/ranseyer/US…aster/SW/irmplircd-master) sind z.B. Änderungen drin, die nicht in deinem Git enthalten sind.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • usb-ircontrol ist für den USBasp und nicht für IRMP auf STM32.
    Es gibt irctl von olebowle: https://github.com/olebowle/irctl.
    Irmplircd ist von https://github.com/realglotzi/irmplircd.


    Hier gibt es eine Übersicht:
    https://www.mikrocontroller.ne…keup-Timer#Software_Linux

  • Oh, dann habe ich die fälschlicherweise zusammengeworfen - da es in den EasyVDR-Paketen gegenüber dem Stand in realglotzis irmplircd-Git aber noch Änderungen gibt (die nicht als Patches geführt werden), wäre das trotzdem interessant zu wissen, ob es da noch ein weiteres Repository (außer dem easyvdr-Git) gibt, wo die gepflegt werden.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Hi,
    ich nutze IRMP auf STM32 mit nem yaVDR.
    Der Empfänger ist hinter meinem TV versteckt mit USB-Kabel in den Nachbarraum.
    Funktioniert gut, nur stört mich die LED etwas.
    Kann man die abschalten?


    Gruß Jan

    1:Dell PoweEdge T20; Xeon E3-1225 v3; 32GB RAM; Proxmox 5.4; MLD 5.4 als VDR-Server; 2 x Cine S2;
    2:Intel NUC i3 Passiv; 4GB RAM; 120GB SSD; easyvdr 3.5 als client; Harmony Hub

    2:Intel NUC i5 Passiv; 4GB RAM; 120GB SSD; easyvdr 3.5 als client; Harmony Hub
    3:Raspberry Pi 3B; MLD

  • Du meinst also die LED auf der blauen Platine (=STM32-Platine=STLink) ?


    Die kann man ablöten, oder mit schwarzem Edding übermalen. Der Anbieter aus dem anderen Thread macht das sicherlich für dich... (Aber das kann er hier nicht schreiben! Hier geht es um technische Fragen zu dieser HW/SW Lösung)

  • Es sind 2 LED's ("D1" und "D2"):
    https://www.mikrocontroller.ne…-_Bauanleitung#Programmer
    Es kann aber sein, dass du nur eine leuchten siehst. Die wechseln bei IR Empfang.


    Ich würde sie mit dickem Klebeband (oder mehrere Schichten dünnes) überkleben, so dass kein Licht mehr heraus kann. Das geht eventuell besser, wenn du dazu beide Platinen auseinander ziehst.

  • Ich würde sie mit dickem Klebeband (oder mehrere Schichten dünnes) überkleben


    Hab ich so gemacht. Nun passt alles.


    Danke.


    Gruß Jan

    1:Dell PoweEdge T20; Xeon E3-1225 v3; 32GB RAM; Proxmox 5.4; MLD 5.4 als VDR-Server; 2 x Cine S2;
    2:Intel NUC i3 Passiv; 4GB RAM; 120GB SSD; easyvdr 3.5 als client; Harmony Hub

    2:Intel NUC i5 Passiv; 4GB RAM; 120GB SSD; easyvdr 3.5 als client; Harmony Hub
    3:Raspberry Pi 3B; MLD

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!