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

  • Wie funktioniert das, bzw. wie wird das eingerichtet? Kann ich die gleiche Taste dann trotzdem noch am VDR als "Power"-Taste anmelden?


    einrichten: wakeup anlernen
    gleiche Taste: sollte gehen


    Viel Spaß beim Ausprobieren ;)

  • Sehe ich das richtig, dass an den Blauen dann nurnoch "remappt" betreiben kann. Im "nicht remappten" Modus war TCK ja für die Toggle-LED. Wenn man über USB flashen kann ist das aber ja eigentlich eh egal ob remappt oder nicht.


    Am Sourcecode für die Firmware selber scheint sich ja nichts geändert zu haben. So wie ich das sehe setzt dein Bootloader-Patch auch den USB-Disconnect wieder zurück.

  • Dieses Projekt bietet sich doch eigentlich dafür an, es mit einem der nun umschaltbar erhältlichen 433&868MHz-Module wie CC1101 (Pollin.de 810257 oder aus günstigerer Quelle) wie etwa in http://forum.fhem.de/index.php?topic=24651.160 erwähnt zum "eierlegenden Wollmilchtransceiver" (IR+AM) aufzubohren:
    Szenen-/Haussteuerung (Funksteckdosen, Licht, Leinwand, Rolläden etc.) könnte dann herstellerübergreifend ebenfalls LIRC übernehmen...
    (In https://github.com/tandersson/…aster/rfbb_cmd/rfbb_cmd.c findet sich schon ein Vorbild für CUL.)


    Ich habe nicht vor, *dieses* Projekt mit AM „aufzubohren“.
    Das wäre eher etwas für ein neues Projekt.


    Habe selbst meinen LIRC mit einer IR2AM-433MHz-Funkbrücke verlängert und per Gegenstück diverse Funkfernbedienungen nach LIRC gesampled - das funktioniert seit dem letzten Jahrzehnt ganz gut. :]
    Für eine elegantere Lösung am VDR kann ich leider nur den Vorschlag und keine Umsetzung liefern; freut mich aber, wenn es als Inspiration dient. ;)

  • Ich habe diesen Thread bisher eher oberflächlich verfolgt. Mich interessiert die Entwicklung für Mikrocontroller sehr, aber ich hatte einfach keinen Anwendungsfall.
    Das könnte sich jetzt aber ändern. Ich spiele gerade mit einer Wetek Play herum, einem ARM-Powered "HTPC" der wirklich sehr nett werden könnte.


    Was mir jetzt noch fehlt ist die Möglichkeit, dass der VDR die Wetek play aus dem ausgeschalteten Zustand wecken könnte. Leider gibt es sowas wie ACPI-Wakeup nicht und WOL geht auch nicht.
    Allerdings gehört zu der Box eine Funkfernbedienung, die dazu sehr wohl in der Lage ist. Da der dazugehörige USB-Empfänger einfach in einem interen USB-Port ohne weitere Verkabelung
    steckt, gehe ich davon aus, dass die Box USB-Wakeup beherrscht. Da fiel mir dieses Projekt ein.


    Es sollte doch möglich sein die USB-Wakeup-Funktionalität des STM32-Boards zu verwenden und auf die Funktion als Fernbedienung zu verzichten, oder spricht wider erwarten etwas dagegen?


    Nach dem Studium des Threads und kurzer Suche auf ebay und aliexpress scheint es wohl das Günstigste zu sein sich zwei von diesen roten ST-Links zu besorgen, liege ich da richtig?


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Die Wakeup-Zeit wird mit "irctl" gesendet. Das geht direkt auf das "hidraw"-Device. Du müsstest also nichtmal den irmplircd laufen lassen. Angegeben wird die Wakeup-Zeit in "Sekunden von jetzt". Wenn ich mich recht erinnere ist das ein Wert den der VDR direkt an die "shutdown.sh" gibt.

  • Die Wakeup-Zeit wird mit "irctl" gesendet. Das geht direkt auf das "hidraw"-Device. Du müsstest also nichtmal den irmplircd laufen lassen.


    Das hört sich doch schon mal sehr gut an.

    Angegeben wird die Wakeup-Zeit in "Sekunden von jetzt". Wenn ich mich recht erinnere ist das ein Wert den der VDR direkt an die "shutdown.sh" gibt.


    Hmm, beim ACPI-Wakeup ist es glaube ich der Zeitpunkt des Aufwachens in Sekunden. Aber das kann ja auch schlicht aufsummiert sein.


    Liege ich denn richtig mit der Hardware? Ich möchte zeitnah bestellen, das wird ja ne Weile dauern.


    Oder hat hier vielleicht jemand ein Exemplar übrig, dass er mir verkaufen mag?


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Oder hat hier vielleicht jemand ein Exemplar übrig, dass er mir verkaufen mag?



    Ja ich hätte für Dich einen übrig.


    Aber: bin gerade zeitlich sehr knapp. Heisst mit Bootloader habe ich mich noch gar nicht beschäftigt. Am liebsten würde ich aber ein Exemplar mit funktionierendem Bootloader abgeben.
    ed: Dass du also künftig per USB flashen kannst...


    -Der HW Part dazu ist kein Problem.
    -aber zuerst ist der Bootloader zu patchen, kompilieren und zu flashen, testen.
    Wenn einer der aktuell aktiven den fertigen Bootloader (am besten gleich mit Befehl zum Flashen bereitstellt) würde ich das sehr zügig fertigmachen...


  • Ja ich hätte für Dich einen übrig.


    Das freut mich sehr, danke! Ich kontaktiere dich per PM.

    Aber: bin gerade zeitlich sehr knapp. Heisst mit Bootloader habe ich mich noch gar nicht beschäftigt. Am liebsten würde ich aber ein Exemplar mit funktionierendem Bootloader abgeben.


    Na ja, würde ich bestellen müsste ich ja wohl auch einen Monat warten, brennt also nicht so sehr.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Die Wakeup-Zeit wird mit "irctl" gesendet.


    Ich hab das Programm recht abstrakt ausgelegt, so dass man hoffentlich noch andere Projekte überzeugen kann es zu benutzen. Ich habe angefangen den USBASP Einschalter auch mit in irctl zu integrieren. Allerdings hab ich momentan echt wenig Zeit. Aber das soll auf jedenfall noch mit rein. Danke auch nochmal an ranseyer für den HW Support!

  • Momentan ist es nur ein Platzhalter. Aber wenn ihr ja jetzt gerade am Bootloader dran seit könnte man das ja dann evtl. integrieren. Die neue FW wird dann wohl per dfu-util geflasht? Das könnte man gegebenenfalls von irctl aus aufrufen.

  • Da ich in den nächsten Wochen nicht viel bis gar keine Zeit haben werde, habe ich alles, was in meiner Pipeline war, ins github gepackt, auch wenn es nur auf dem Devel-Board getestet ist.
    Bei den ST-Links könnten dann wieder Fehler (nur beim beim Konfigurieren?) auftreten. Hoffentlich werden die dann auch mal gefixt ;) .
    Anbei noch der Bootloader für den „remappten“ Blauen, damit es schneller geht für gda ;) .
    (Ist nicht die letzte Version, aber die letzte, die ich getestet habe.)

  • Danke für das Binary.


    Meine Frage bezog sich vor allem darauf an welche Adresse der Booloader geflasht werden muss.

    Zitat

    ./st-flash --reset write xxx/bootloader.bin 0x8000000



    Denke mal nicht an die 0x8000000 sonder an "0" ???


    ed: Ich habe zwar auch mal den originalen gezogen und versucht zu patchen. Aber da hagelt es massig an Rejects. Mir ging es aber eher um nen Hinweis zum Flashen, und scheint mir recht stark an Olimex Programmer ausgelegt zu sein...
    https://github.com/tormodvolde…ader/tree/unify_platforms

  • olebowle: Magst du für dein irctl auf github mal ein release erzeugen? Du musst es ja nicht als stable flaggen. Der Hintergrund ist der, dass ich für den OpenELEC-Build Zugriff auf ein Online-tgz brauche. Sonst müsste ich dich forken und selbst releasen.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Ich hab es mal als Version 0.1 getagged. Dabei habe ich auch gleich noch eine README hinzugefügt und irmp aktualisiert.
    EDIT: Ich hab den Tag gerade noch einmal angepasst. Ich weiß macht man eigentlich nicht, aber es waren ja nur ein paar Minuten.

Jetzt mitmachen!

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