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

  • Ich habe noch etwas getestet... leider fliegt mir irmplird nach einer gewissen Zeit weg....


    Code
    un 23 13:44:36 obelix irmplircd[25358]: Started
    Jun 23 13:46:06 obelix systemd[1]: irmplircd@hidraw2.service: Start operation timed out. Terminating.
    Jun 23 13:46:06 obelix systemd[1]: irmplircd@hidraw2.service: Control process exited, code=killed, status=15/TERM
    Jun 23 13:46:06 obelix systemd[1]: irmplircd@hidraw2.service: Failed with result 'timeout'.
    Jun 23 13:46:06 obelix systemd[1]: Failed to start Start irmplircd on irmp_stm32 device.
    Jun 23 13:46:06 obelix audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=irmplircd@hidraw2 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=failed'
    Jun 23 13:46:06 obelix kernel: audit: type=1130 audit(1561290366.508:103): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=irmplircd@hidraw2 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=failed'



  • Ich habe den Fehler gefunden. Bei der ganzen Testerei hatte ich die Option -f gesetzt gehabt. Ohne -f geht es. D.h. zu der vdr4arch Konfiguration habe ich folgendes ergänzt:


    /usr/lib/udev/rules.d/80-irmp.rules:

    Code
    ACTION=="add", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="1209", ATTRS{idProduct}=="4444", TAG+="systemd", ENV{SYSTEMD_WANTS}="irmplircd@%k.service", SYMLINK+="irmp_stm32"    


    /usr/lib/systemd/system/irmplircd@.service:

    Code
    [Unit]
    Description=Start irmplircd on irmp_stm32 device
    
    [Service]
    Type=forking
    ExecStart=/usr/bin/irmplircd -t /etc/irmp_stm32.map /dev/irmp_stm32
    SuccessExitStatus=0 71


    Ich habe die Variablen wie bei seahawk1986 bei der Testerei weggelassen. Das ändere ich und mach mal ein PKGBUILD, falls einer das brauch....



  • Anbei die Veränderungen. Ein makepkg erstellt ein entsprechendes Paket für Arch / Manjaro.


    irmplircd.tar.gz


    Gruß

    Obelix



  • das macht die Logitech "von alleine" über eine Aktion, oder habe ich dich nicht richtig verstanden ? ...

    Aha, ok.

    Auch dafür gelten die Tipps in #892.

  • Allerdings wird die Platine vom Rechner nur als "nackter" Maple erkannt

    Das könnte an der USB Reenumeration liegen.
    Das kannst du mit einem Multivoltmeter sehen. Du könntest mal messen, ob USBDP kurz runter geht nach dem Bootloader-Blinken.

    Zum Verständnis lies ab #101.

  • Hi,


    bei einer der letzen Bestellungen sind zwei Sticks dabei gewesen, die ich nicht mit openocd vorbereitet bekomme:


    Ich habe mal Google bemüht aber so richtig schlau werde ich daraus nicht. Die beiden Sticks unterscheiden vor allem dadurch, dass die Platine bei den Anschlüssen keine Bohrungen haben sondern vorbereitete Lötpunkte mit Beschriftung.



  • So wie die?

    Nein. Auf dem Chip steht:


    cks32f 103c8t6





  • Scheint ein Clon zu sein. Probier mal set CPUTAPID 0x2ba01477

    Siehe hier.

    Das hat funktioniert:



    aber st-flash will dann auch nicht:




  • Das mit st-flash sieht nach dem aus:


    Support for CS32F103C8T6 #756



  • Da könntest du im Source von stlink/include/stlink.h die STM32VL_CORE_ID von 0x1ba01477 in 0x2ba01477 ändern.

    Ich habe gerade gesehen, im AUR von Archlinux gibt es stlink-git und da soll es ja drin sein. Ich schaue mir das morgen an. Gute Nacht.



  • - du benutzt das dafür vorgesehene Feature (*)

    (*) per irmpexec send_magic auswerten.

    Das geht so noch nicht.

    Werde ich noch überarbeiten.

  • So, mit dem stlink-git hat es funktioniert. Danke jrie für die Unterstützung.


    Was war noch mal der Unterschied bei den Firmware Versionen "transfer to F105, firmwares" bzw. "firmwares with RCMM" ?


    Gruß

    Obelix



  • Ich bin hier am aufräumen und habe noch zwei neue Sticks, die ca. 1 1/2 Jahre alt sind. Die sind noch von meiner aller ersten Lieferung damals als ich mit den Sticks anfing. openocd funktioniert aber ich bekomme den Bootloader nicht drauf....



    Gehen die Dinger vom herumliegen kaputt?



  • Mir sind sehr wenige kaputt gegangen. Und die Wenigen vermutlich durch statische Aufladung (Lederhausschuhe auf Wollteppich).

    Von Martin habe ich gehört, ihm seien einige durch Herumliegen kaputt gegangen.


    Die Qualität aus China ist sehr unterschiedlich. Ich kaufe bevorzugt nur noch bei bestimmten Händlern, mit denen ich gute Erfahrungen gemacht habe, z.B. Baite (MapleMini, Grüne) oder "cuiisw module Store" (Schwarze).

  • Wie führt man bei den Sticks eigentlich ein Reset durch? Ich habe irgendwo mal gelesen, dass man irgendwas gegen GND verbinden muss. Ich vermute RST ist es nicht, denn das wäre ja zu einfach, oder?



Jetzt mitmachen!

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