yaUsbIR V1 LIRC-fähiger USB IR Empfänger/Sender mit Einschalter

  • Hinweis: Mittlerweile gibt es die Version 3!
    -> yaUsbIR V3 LIRC USB IR Empfänger/Sender/Einschalter


    Dieser Beitrag hier gilt nur für yaUsbIR V1, und ist somit veraltet! Siehe yaUsbIR V3!


    Projektvorstellung LIRC-fähiger USB IR Empfänger/Sender mit Einschalter .


    Gesucht habe ich ein USB Empfänger mit Einschalter ohne Beschränkung auf einer speziellen Fernbedienung. Angeschaut habe ich mir IRMP, Igor, FTDI bitbang, Arduino, AVR based IR-Empfänger (avrlirc), Y.A.R.D., und viele andere USB-Varianten und auch teilweise nachgebaut (AVR, IRMP, FTDI).


    Bei der AVR-Variante mit dem USB in Software hatte ich arge Probleme mit S3. Der USB-Softwarestack funktionierte nur unzuverlässig, und bei der hälfte meiner vielen getesteten Motherboards überhaupt nicht.


    So entschloss ich mich einen eigenen USB-Empänger zu entwickeln, das ganze sollte universell wie die "serielle lirc-Variante" sein, und ohne viel Softwareänderung auf der PC-Seite, ohne IR Protokoll Einschränkungen, und mit den vorhanden lircd.conf-Konfigurationen funktionieren.
    Somit wurde "yaUsbIr V1" geboren.


    yaUsbIr V1


    yet
    another
    USB
    infrared
    receiver



    yaUsbIr V1 -Hardware:
    - IR Empfänger
    - IR Sender
    - USB in Hardware in der MCU
    - USB über internen Motherboard USB Anschluss
    - Power Status LED rot
    - IR-Signal und Einschalter-Status über LED grün
    - Einschalter für Power-Button Anschluss (oder Wake-On-LAN)
    - Anlerntaste
    - kleine Bauform (40 mm x 34 mm), passt in meine FullHD-Clients (ZBOX)


    yaUsbIr V1 -Software:
    - IR empfangen
    - IR senden (Trägerfrequenz 38kHz) (neu)
    - IR Einschalter (und Ausschalter), anlernbar mit jeder handelsüblichen Infrarot Fernbedienung
    (alle üblichen IR Protokolle, nicht nur RC5/RC6)
    - (neu) "Anlernbare Fernbedienung": es können bis zu 5 weitere Tasten angelernt werden,
    die wiederum ein anlernbares IR-Signal zu weiteren IR-Empfänger (TV, Verstärker) senden. Somit
    können normale IR-Fernbedienungen (Fernbedienungen ohne Lernfunktion) fremde Geräte steuern ohne über den
    Umweg irexec (VDR).
    Was den WAF erheblich steigert, da meine Frau nur die "eine" Fernbedienungen haben möchte und bei ausgeschalteten VDR die Stehlampe einschalten möchte.
    Anwendungsbeispiel ist auch: Lautstärke am Verstärker steuern (notwendig bei DTS-HD pass-through), TV ein/ausschalten
    - die Hardware meldet sich als RAW-HID-Gerät, somit sind keine zusätzlichen Treiber auf Betriebsystemebene notwendig
    - es wird keine kopierte oder geklonte USB VID/PID verwendet (eigene registrierte USB VID/PID)


    Als externe Variante kann die Hardware über ein normales USB-Kabel (mit Typ Mini-B 5-polig (Standard) Anschluss, USB-Handykabel) angeschlossen werden. Die Hardware habe ich mit einer Reihe von verschieden Fernbedienungen getestet. U.a. auch mit einer Universalfernbedienung mit diversen verschiedenen Codes.


    Auf der PC-Seite habe ich im ersten Schritt einen kleinen UDP-lirc-Daemon (yausbir_lirc) geschrieben, der die IR-Codes per UDP zum lircd sendet. Häufig ist schon lirc mit UDP kompiliert.
    Compile:
    gcc -o yausbir_lirc main.cpp -lusb


    start lircd:
    lircd --driver=udp [config-file]
    yausbir_lirc [-f]
    In diesem Daemon ist nur das Empfangen der IR-Codes implementiert.


    NEU 24.03.2012!!!
    Ein Userspace LIRC-daemon ist absofort verfügbar : ya_usbir ( lirc-0.9.0_ya_usbir.diff.tar.gz ). Dieser kann nun IR-Codes senden und lesen. Der UDP-yausbir_lirc wird nicht mehr benötigt.


    Installation, LIRC patchen:
    tar -xjf lirc-0.9.0.tar.bz2
    cd lirc-0.9.0
    patch -p1 < lirc-0.9.0_ya_usbir.diff
    autoreconf --install
    ./configure --with-driver=ya_usbir
    make


    LIRC mit Treiber ya_usbir starten:
    mkdir /var/run/lirc
    ./daemons/lircd --driver=ya_usbir lircd.conf


    Die Hardware ist als OSHW und die Software für LIRC Open Source.


    Falls einer an einer fertig aufgebauten und geprüften Hardware + Kabel + Empfänger (+Sender (mit Aufpreis)) interessiert ist kann mir eine PN zusenden.



    Gruß Uwe


    Edit: "Anlernbare Fernbedienung" ist in Funktion
    Edit 18.3.2012 : neues yausbir_lirc
    Edit 21.3.2012 : Anleitung und Hardwarebeschreibung hinzugefügt
    Edit 24.3.2012 : LIRC-Patch für yaUsbIr hinzugefügt ( lirc-0.9.0_ya_usbir.diff.tar.gz )
    Edit 28.3.2012 : Anleitung und Hardwarebeschreibung überarbeitet, das Dokument ist nur mit 75dpi, ein PDF-Dokument mit größere Auflösung kann per PN angefordert werden.

    Bilder

    Dateien

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

    Dieser Beitrag wurde bereits 24 Mal editiert, zuletzt von uwe67 ()

  • Nettes Teil! Hast du Fotos vom Einbau in der Zbox? Wo hast du den Einschalter angeschlossen?


    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

  • Klingt interessant - wie hoch sind da die Stückkosten für einen Empfänger? Ich hab etwas ähnliches auf Basis eines Arduino nano in Planung, das wird etwas dicker aber von der Grundfläche ähnlich kompakt.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • gerald

    Nettes Teil! Hast du Fotos vom Einbau in der Zbox? Wo hast du den Einschalter angeschlossen?


    Gerald

    Den Einschalter direkt am Powerbutton vorne im Gehäuse eingebaut, bzw. angelötet.


    Gruß Uwe

    Bilder

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • @ seahawk1986

    Klingt interessant - wie hoch sind da die Stückkosten für einen Empfänger? Ich hab etwas ähnliches auf Basis eines Arduino nano in Planung, das wird etwas dicker aber von der Grundfläche ähnlich kompakt.

    Über Stückkosten habe ich mir noch keine Gedanken gemacht. Das Teuerste an der ganzen Sache ist die Leiterplatte. Werde mal das mal zusammenrechnen. Die neue Version 2 ist schon in Planung und wird 1/3 kleiner sein.


    Gruß Uwe

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Projektvorstellung LIRC-fähiger USB IR Empfänger/Sender mit Einschalter.


    Hut ab Uwe.


    Albert

  • Gerald
    Den Einschalter direkt am Powerbutton vorne im Gehäuse eingebaut, bzw. angelötet.


    Danke, das doofe an der ZBox ist, dass man drinnen keinen USB-Port abgreifen kann :(


    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

  • Hallo,
    das ist ja genial, quasi alles in einem und dann auch noch per usb,
    wenn du folgendes noch geklärt hast:

    würde ich darauf sehr gerne zurück kommen:

    Zitat

    Falls einer an einer fertig aufgebauten und geprüften Hardware interessiert ist kann mir eine PN zusenden.


    [size=10]nOpacity: Icons
    [size=10]skindesigner: tryoutsglassy

  • Edit, Hochschieb...

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Update daemon yaUsbIr_lirc.
    Gruß
    Uwe

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Super Sache...


    Könnte man das auch in einen Funk- transceiver umbauen?
    Ich denke da an Steckdosen, Dimmer, Motorleinwände und dergleichen. Wenn das Modul die Signale aufnehmen und über Kommandozeile wiedergeben kann, kann ich mir eine Menge in Richtung Heimautomatisierung vorstellen.

    Grüße


    Hannemann

  • Sehr interessantes Projekt, ich wäre auch an einer fertigen Platine interessiert. Primär brauche ich nur den IR-Sender.
    Ich habe einen USB IRtoy, aber dieser stürzt leider immer nach ein paar Sendevorgängen ab.


    hannemann : HF-technisch (430 MHz) gibt es schon was sehr gutes: Tellstick. Es gibt davon drei Typen (USB TX, USB RX/TX, Ethernet RX/TX)
    Die Ethernet-Variant kann man leider nicht per Kommandozeile steuern, aber vielleicht geht das mittlerweile auch.
    Ich habe den Tellstick USB mittlerweile seit einem Jahr und der Stick läuft sehr zuverlässig und schaltet bei mir Billig-Funksteckdosen und einen Paulmann Funktrafo.
    Schau Dir einfach mal die Website an: http://www.telldus.se/


    Grüße
    Fux

    Hardware: Asus M3N78-EM µATX GF 8300 | AMD Sempron 140 | Display VFD USB MDM166A | DVB-S2 TT-3600 USB | RAM 1 GB | WD20EARS 2 TB
    Software: yaVDR 0.5

  • Edit 21.3.2012.
    Anleitung und Hardwarebeschreibung hinzugefügt.


    Gruß Uwe

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • hannemann

    Super Sache...


    Könnte man das auch in einen Funk- transceiver umbauen?
    Ich denke da an Steckdosen, Dimmer, Motorleinwände und dergleichen. Wenn das Modul die Signale aufnehmen und über Kommandozeile wiedergeben kann, kann ich mir eine Menge in Richtung Heimautomatisierung vorstellen.

    Danke!!


    Funk- transceiver, hier sollte man die fertige Hardware aus dem Baumarkt benuzen, billiger geht es nicht.


    Gruß Uwe

    Multiroom-System:
    Server: ASRock J4105, openSUSE Tumbleweed, 14TB HD, Cine S2 (4Tuner), vdr2.4.0, streamdev-server

    FullHD-Client1: Zotac ZBOX HD-ND22, openSUSE 13.1, vdr2.2.0, streamdev-client, xineliboutput, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    FullHD-Client2: Zotac ZBOX HD-ND22, openSUSE 42.1, vdr2.2.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5
    Test-Client: ASRock B85M, openSUSE Tumbleweed, vdr2.4.0, streamdev-client, softhddevice, IR-Empfänger/Sender/Einschalter yaUsbIR V3.5

  • Das Ding ist, das ich die fertige Hardware aus dem Baumarkt ja nicht mit meinem PC fernsteuern kann. Oder bin ich nicht auf dem neuesten Stand?


    Ich habe z.B. einen Marmitek Funkbrücke für Infrarotfernbedienungen. Ich kann den Infrarot Empfänger von dem Set dazu missbrauchen, Signale meiner Fernbedienung in Funk umzusetzen und dadurch mit der Harmony z.B. das Licht ein und auszuschalten. Das ganze läuft auf der Frequenz 433 MHz. Meine Leinwand funkt aber mit vermutlich 315 MHz. Jedenfalls steht das auf dem Bauteil (saw 315A). Die Leinwand kann ich damit also nicht steuern.


    Hätte ich einen lernfähigen Transceiver, der über die Kommandozeile Steuerbar ist und auf der richtigen Frequenz sendet bzw. zwecks anlernen empfängt, könnte ich mit meiner Harmony über z.B. den umweg irexec ebenfalls die Leinwand steuern. Ich könnte mir auch vorstellen mehrere von den Dingern zu verwenden, die jeweils auf der benötigten Frequenz funken.


    Falls es da aber was fertiges geben sollte, bin ich für jeden Vorschlag offen :-)


    Vielleicht kann man ja auch einfach das Beuteil in dem Empfänger der Leinwand austauschen. Geht das? Ist die Frequenz dem Decoder bzw. dem Rest der Platine egal oder kann ich das knicken?

    Grüße


    Hannemann

  • Meines Wissens nach darf man 315 MHz in Europa nicht benutzen. Wenn du also in Europa bist, wäre ich vorsichtig.


    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

  • Oh cool... Vielleicht war die Leinwand deswegen so günstig... Noch ein Grund mehr, da endlich Hand anzulegen.


    Naja... wenn man alle paar Tage vor und nach einem Film für bruchteile einer Sekunde auf der Frequenz sendet, wird das wohl kaum jemand mitkriegen, oder?

    Grüße


    Hannemann

  • Denke die spannensten Fragen sind wohl:


    • Wie, wo und wann ist er zu erwerben ?
    • Was kostet er ?
    • Bausatz oder Fertiggerät (bei der SMD ausführung wohl eher Fertig ?)
    • Veröffentlichst du die Schaltung und µc-Code (zb unter einer freien Lizenz - oder wie ist dein Geschäftsplan damit?)


    lg,
    joe

  • Sehr geil.... hätte da auch Interesse!


    Gruß
    iNOB

  • Würde wohl auch einen Fertigen haben wollen...sofern der Preis einigermaßen im Rahmen ist und ich keine Niere versetzen muß... :D


    Olli

    1. VDR 2.4.0 und VNSI Plugin auf Debian Stretch Server

    2. Client 1 = NVIDIA Shield mit KODI 18

    3. Client 2 = NVIDIA Shield mit KODI 18

    4. 75 Zoll Samsung UHD TV mit Pioneer AVR VSX923

    5. 50 Zoll Samsung HD TV


    in Planung: HD Fury zur Audio Auskopplung