Probleme mit lirc und VDR

  • Hey,


    ich hab Probleme eine Fernbedienung über Events an vdr weiterzuleiten. Hatte vorher ein X10 (ist immer noch angeschlossen tut
    aber nicht mehr. Hintergrund war hatte diverse patche und lilipan packete installiert und seither tut lirc nicht mehr.


    Hatte jetzt gelesen das es über die Events geht, hab schon einiges Versucht komm jetzt aber nicht mehr weiter.


    root@VDR:/etc/vdr# uname -a
    Linux VDR 2.6.32-5-amd64 #1 SMP Sun Sep 23 10:07:46 UTC 2012 x86_64 GNU/Linux


    root@VDR:/etc/vdr# vdr -V
    Feb 24 21:52:28.540 [general.debug] using new 1.7.11+ capture code
    vdr (1.7.28/1.7.28) - The Video Disk Recorder





    root@VDR:~# dmesg | grep lirc
    [ 4.235092] lirc_dev: IR Remote Control driver registered, major 252
    [ 4.250802] lirc_atiusb: disagrees about version of symbol lirc_register_driver
    [ 4.250808] lirc_atiusb: Unknown symbol lirc_register_driver
    [ 6.587888] lirc_i2c: disagrees about version of symbol lirc_register_driver
    [ 6.587894] lirc_i2c: Unknown symbol lirc_register_driver
    [ 6.591615] lirc_i2c: disagrees about version of symbol lirc_register_driver
    [ 6.591620] lirc_i2c: Unknown symbol lirc_register_driver



    root@VDR:~# dmesg | grep -i Formosa21
    [ 1.794604] usb 1-4.3: Manufacturer: Formosa21
    [ 1.827429] input: Formosa21 USB IR Receiver as /devices/pci0000:00/0000:00:13.5/usb1/1-4/1-4.3/1-4.3:1.0/input/input2
    [ 1.828360] generic-usb 0003:04B4:0100.0001: input,hidraw0: USB HID v1.11 Keyboard [Formosa21 USB IR Receiver] on usb-0000:00:13.5-4.3/input0



    irw funktioniert aber beim VDR geschieht nichts.


    Hatte schon folgende einträge in vdr.default versucht:


    root@VDR:~# dmesg | grep -i Formosa21
    [ 1.794604] usb 1-4.3: Manufacturer: Formosa21
    [ 1.827429] input: Formosa21 USB IR Receiver as /devices/pci0000:00/0000:00:13.5/usb1/1-4/1-4.3/1-4.3:1.0/input/input2
    [ 1.828360] generic-usb 0003:04B4:0100.0001: input,hidraw0: USB HID v1.11 Keyboard [Formosa21 USB IR Receiver] on usb-0000:00:13.5-4.3/input0


    more /etc/vdr/vdr.default
    #VDR_EXTRA_OPTIONS="--lirc=/var/run/lirc/lircd -w 60"
    #VDR_EXTRA_OPTIONS="remote --input=/dev/input/event2"


    Meine hardware.conf
    root@VDR:/etc/lirc# more hardware.conf
    # /etc/lirc/hardware.conf
    #
    DRIVER="dev/input"
    DEVICE="/dev/input/event2"
    #Chosen Remote Control
    REMOTE="Linux input layer (/dev/input/event2)"
    REMOTE_MODULES=""
    REMOTE_DRIVER="devinput"
    REMOTE_DEVICE="/dev/input/event2"
    REMOTE_LIRCD_CONF="generic/devinput.conf"
    REMOTE_LIRCD_ARGS=""


    #Chosen IR Transmitter
    TRANSMITTER="None"
    TRANSMITTER_MODULES=""
    TRANSMITTER_DRIVER=""
    TRANSMITTER_DEVICE=""
    TRANSMITTER_LIRCD_CONF=""
    TRANSMITTER_LIRCD_ARGS=""


    #Enable lircd
    START_LIRCD="false"


    #Don't start lircmd even if there seems to be a good config file
    #START_LIRCMD="false"


    #Try to load appropriate kernel modules
    MODULES=""
    LOAD_MODULES="true"


    # Default configuration files for your hardware if any
    LIRCMD_CONF=""
    LIRCD_CONF="/etc/lircd/lircd.conf"


    #Forcing noninteractive reconfiguration
    #If lirc is to be reconfigured by an external application
    #that doesn't have a debconf frontend available, the noninteractive
    #frontend can be invoked and set to parse REMOTE and TRANSMITTER
    #It will then populate all other variables without any user input
    #If you would like to configure lirc via standard methods, be sure
    #to leave this set to "false"
    FORCE_NONINTERACTIVE_RECONFIGURATION="false"
    START_LIRCMD=""


    lircmd.conf


    root@VDR:/etc/lirc# more lircmd.conf
    #UNCONFIGURED
    #
    # To find out how to get a proper configuration file please read:
    #
    # /usr/share/doc/lirc/README.Debian
    root@VDR:/etc/lirc# more lircd.conf
    include /usr/share/lirc/remotes/devinput/lircd.conf.devinput


    Auszug aus remote.conf


    root@VDR:/etc/vdr# more remote.conf
    softdevice-dfb.Up 000000000000F027
    KBD.Up 0000000399390000
    LIRC.Up UP
    LIRC.Down DOWN
    LIRC.Commands MENU
    LIRC.Ok OK
    LIRC.Back BACK
    LIRC.Left LEFT
    LIRC.Right RIGHT
    LIRC.Red RED
    LIRC.Green GREEN
    LIRC.Yellow YELLOW
    LIRC.Blue BLUE
    LIRC.0 0
    LIRC.1 1


    Ich hoffe es kann mir jemand helfen..


    Gruss


    craidt


  • LIRC-Kernelmodule passen nicht zum Kernel (bzw. übergeordnete Module) => neu kompilieren oder andere, passende LIRC Module installieren

  • Und zu der anderen Fernbedienung...


    Liefert "evtest /dev/input/event2" zu jedem Tastendruck auf der FB ne Ausgabe? (evtest evtl. nachinstalieren)
    Weil prinzipiell scheint die ja OOTB zu funktionieren.



    BTW: Was macht "lirc_i2c" da? Die X10 braucht "lirc-dev" und "lirc-atiusb", alternativ geht (notfalls!) für die X10 auch der lirc Userspacetreiber (aber das ist der am wenigsten Entwickelte).


    cu

  • Hey,


    also hier mal die Ausgabe von irw:


    root@VDR:/etc/init.d# irw
    1c 0 KEY_ENTER event2
    8 0 KEY_7 event2
    9 0 KEY_8 event2
    a 0 KEY_9 event2


    evtest


    root@VDR:/etc/init.d# evtest /dev/input/event2
    Input driver version is 1.0.0
    Input device ID: bus 0x3 vendor 0x4b4 product 0x100 version 0x111
    Input device name: "Formosa21 USB IR Receiver"
    Supported events:
    Event type 0 (Sync)
    Event type 1 (Key)
    Event code 1 (Esc)
    Event code 2 (1)
    Event code 3 (2)


    ......
    Event code 256 (Btn0)
    Event type 4 (Misc)
    Event code 4 (ScanCode)
    Event type 20 (Repeat)
    Testing ... (interrupt to exit)



    evtest reagiert nicht auf tasten. Hab irgendwie das gefühl entweder tut irw oder evtest.
    Check hier leider nicht durch. Mach momentan nur trial and error..


    Die x10 ignorier ich jetzt mal, konzentrier mich auf Event2 ist die Formosa..
    Die module sind evtl noch von früher als ich ohne events gemacht hab.

  • Könnte sein das du lircd stoppen musst bevor du evtest aufrufst.


    Wenn lircd da Tastendrücke rausbekommt dann muss evtest das auch können. Ferner ist es wirklich wichtig das du prüfst ob alle Tasten der FB gehen.
    Weil wenn nicht dann versuchst du es auf "/dev/input0"


    cu

  • Hey,


    wenn ich den hier abschiesse:


    root@VDR:~# ps -ef | grep lirc | grep -v vdr
    nobody 1813 1 0 20:42 ? 00:00:00 /usr/sbin/inputlircd -g -m 0 /dev/input/event2



    dann bekomm ich mit evest folgende ausgabe:
    .....
    Event code 119 (Pause)
    Event code 127 (Compose)
    Event code 256 (Btn0)
    Event type 4 (Misc)
    Event code 4 (ScanCode)
    Event type 20 (Repeat)
    Testing ... (interrupt to exit)
    Event: time 1361822133.893629, type 4 (Misc), code 4 (ScanCode), value 7001e
    Event: time 1361822133.893674, type 1 (Key), code 2 (1), value 1
    Event: time 1361822133.893681, -------------- Report Sync ------------
    Event: time 1361822133.909609, type 4 (Misc), code 4 (ScanCode), value 7001e
    Event: time 1361822133.909633, type 1 (Key), code 2 (1), value 0
    Event: time 1361822133.909639, -------------- Report Sync ------------
    Event: time 1361822134.725751, type 4 (Misc), code 4 (ScanCode), value 70028
    Event: time 1361822134.725798, type 1 (Key), code 28 (Enter), value 1
    Event: time 1361822134.725804, -------------- Report Sync ------------
    Event: time 1361822134.741729, type 4 (Misc), code 4 (ScanCode), value 70028
    Event: time 1361822134.741756, type 1 (Key), code 28 (Enter), value 0
    Event: time 1361822134.741761, -------------- Report Sync ------------
    Event: time 1361822135.629857, type 4 (Misc), code 4 (ScanCode), value 70051
    Event: time 1361822135.629895, type 1 (Key), code 108 (Down), value 1
    Event: time 1361822135.629901, -------------- Report Sync ------------
    Event: time 1361822135.653897, type 4 (Misc), code 4 (ScanCode), value 70051
    Event: time 1361822135.653936, type 1 (Key), code 108 (Down), value 0
    Event: time 1361822135.653942, -------------- Report Sync ------------



    Evtl. stimmen nur die übergabe parmeter für den vdr nicht?

  • Wo kommt den inputlircd auf einmal her? Ich glaube du bastelst an zu vielen Baustellen auf einmal.


    Fakt ist, dein Kernel hat keinen rc-core, also wird da irgendein Treiber /dev/input für den Empfänger machen. Nimm also erst mal lircd und Co. da raus, nicht das die da in deinen Test rumfummeln (z.B. nen lircd Userspacetreiber oder irgendein lirc Modul da rumfummelt) und alles verfälschen.



    BTW: Zeige mal "lsmod", interessiert mich jetzt mal was für ein Modul deinen Receiver überhaupt bedient.


    BTW: Die evtest Ausgabe sieht doch gut aus ("1", "OK" und "Pfeil runter"), aber du hast immer noch nicht probiert ob alle Tasten der FB ne Ausgabe bringen.


    cu

  • Hey,


    hat leider nichts mit Basteln zu tun. Ich blicks einfach nicht, steh mit dem teil auf Kriegsfuss....:-(
    War damals schon froh als ich das lirc am laufen hatte. Und jetzt nach
    installieren von dvb-s2api-liplianin und v4l-dvb konnte ich lirc nicht mehr
    kompilieren.


    Da die alte lirc konfiguration auch nicht mehr getan hat,
    hab ich versucht auf dieses eventlirc / inputlircd umzusteigen.

  • Hey,


    noch zur info, es funktionieren fast alle Tasten. Vier gehen nicht, brauche ich aber auch nicht. (Ausgabe irw).
    Evtl. Fehlen bei mir nur die Parameter für den VDR, damit der richtig hört. Hab leider nicht rausgefunden
    wie ich das konfigurieren muss.

  • Ist doch kein Problem, evtest zeigt dir doch die Tastendrücke. Aber ich gebe dir jetzt erst mal Zeit endlich mal den Test zu machen.


    cu

  • (Ausgabe irw).


    Was meint das denn jetzt?


    Schmeiss jetzt doch entlich mal lirc runter. Ist ja schon fast zwanghaft bei dir damit rumzufummeln ;)


    cu


  • Wenn lirc die Taste auf event2 findet dann muss evtest die dort auch finden. Aber schmeiss lirc doch jetzt endlich mal runter.


    Such die fehlende Taste mal mit

    Code
    evtest /dev/input/event0


    Heir auch alle Tasten probieren.


    cu

  • evtest /dev/input/event2


    alle Tasten tun. Aber vdr bekommt noch immer nichts mit.


    Natürlich nicht, das ist ja jetzt der nächste Schritt ;)


    Da du jetzt schon inputlirc drauf hast nimmst du das um aus "/dev/input/event2" "/var/run/lirc/lircd" zu machen (Darauf achten das inputlirc auf "/dev/input/event2" lauscht (Kommandozeilenparameter)). Und auf "/var/run/lirc/lircd" lauscht dann der VDR.


    cu

  • Hey,


    also inputlirc ist auf /dev/input/event2 eingestellt


    root@VDR:~# ps ax |grep inputlirc
    1808 ? Ss 0:00 /usr/sbin/inputlircd -g -m 0 /dev/input/event2


    vdr mit parameter
    --lirc=/var/run/lirc/lircd


    4959 ? Sl 3:33 /usr/bin/vdr -v /video.00 -c /var/lib/vdr -L /usr/lib/vdr/plugins -r /usr/lib/vdr/vdr-recordingaction -s /usr/lib/vdr/vdr-shutdown.wrapper -E /var/cache/vdr/epg.data -u vdr -g /tmp --port 6419 --lirc=/var/run/lirc/lircd -P sc -P wirbelscan -P sysinfo -P dvd -C /var/cache/vdr/dvd -P skinenigmang --logodir=/usr/share/vdr-enigmang-icons --epgimages=/var/cache/vdr/epgimages -P imag..........


    ls -altr /var/run/lirc/lircd


    wird nicht gefunden. Wo wird das definiert? Oder muss ich da ein Softlink anlegen?

  • Code
    -d socket
        Location of the UNIX socket to which LIRC clients can connect. The default is /dev/lircd


    Also
    ---
    -d /var/run/lirc/lircd
    ---


    Anstatt /dev/input/event2 würde ich aber dann den richtigen Eintrag unter /dev/input/by-id/ nutzen. Die Nummer kann sich verschieben. by-id ist eindeutig.


    cu

  • root@VDR:~# ls -altr /var/run/lirc/lircd
    srw-rw-rw- 1 root root 0 26. Feb 23:38 /var/run/lirc/lircd


    root@VDR:~# ps ax |grep inputlir
    1581 ? Ss 0:00 /usr/sbin/inputlircd -g -m 0 -d /var/run/lirc/lircd /dev/input/event2


    vdr reagiert leider immer noch nicht..

  • Starte mal irw (aber Finger weg von lircd ;) ). Vermutlich stimmt deine remote.conf einfach nicht.


    cu

Jetzt mitmachen!

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