Ich bedanke mich recht herzlich für die Hilfe. Ich habe das eingeben und siehe da scrollrad funzt
Gruß
Ich bedanke mich recht herzlich für die Hilfe. Ich habe das eingeben und siehe da scrollrad funzt
Gruß
Yup, kann ich auch bestätigen, dass das Scrollrad damit geht. Nur die TBS6981 funzt ab diesem Zeitpunkt nicht mehr. Und wenn ich den Treiber der Karte neu kompiliere, ist das Scrollrad wieder weg. Hat vielleicht dafür - trotz dem angespannten Verhältnis vom yaVDR-Team zum TBS-Treiber - einen Tipp für mich?
Gruß, Schef
Nur als erster Tipp, du musst den Scrollradcode aus linux-media-dkms in den TBS Softwarequellcode packen. Willkommen in der Welt der beschissenen DVB Treiber Releases
cu
Hat vielleicht dafür - trotz dem angespannten Verhältnis vom yaVDR-Team zum TBS-Treiber - einen Tipp für mich?
Naja du wirst da vermutlich den rc-core Teil der Treiber (Linux/drivers/media/rc) aktualisieren müssen, bevor du sie baust - keine Ahnung auf welchem alten Stand die Treiber von TBS basieren und ob das so einfach geht...
Ja, ich kann es jetzt auch bestätigen.
Ich habe heute einen yaVDR 0.5.0 aufgesetzt. Nachdem ich linux-media-dkms installiert habe funzt das Scrollrad meiner X10
Aber Geduld ! Die Installation dauerte bei mir ewig
Noch eine letzte Anmerkung:
Damit am Ende auch die Tasten der X10 (Pollin Scrollad) korrekt funktionieren muss man eine eigene EventMap anlegen. Dazu geht man wie folgt vor:
Verwendete ID's auslesen (Vendor & Product):
cat /proc/bus/input/devices
I: Bus=0003 Vendor=0bc7 Product=0006 Version=0100
N: Name="X10 Wireless Technology Inc USB Receiver"
P: Phys=usb-0000:00:1d.0-2/input0
S: Sysfs=/devices/pci0000:00/0000:00:1d.0/usb2/2-2/2-2:1.0/rc/rc0/input5
U: Uniq=
H: Handlers=kbd event5
B: PROP=0
B: EV=100013
B: KEY=400000010afc332 200204300000000 0 108000 180c0000801 9e168000000000 ffc
B: MSC=10
Alles anzeigen
In die Datei "/lib/udev/rules.d/98-eventlircd.rules" wird eine neue Regel eingefügt (ID's wie oben).
ENV{ID_VENDOR_ID}=="0bc7", ENV{ID_MODEL_ID}=="0006", \
ENV{eventlircd_enable}="true", \
ENV{eventlircd_evmap}="rc-medion-x10.evmap"
Datei "/etc/eventlircd.d/rc-medion-x10.evmap" erzeugen und alle unschlüssigen Tasten übersetzt.
Hier mein Beispiel:
KEY_AUDIO = KEY_MODE # 06 Auswahl Tonspur
KEY_BACK = KEY_ESC # 20 zurueck
KEY_VIDEO = KEY_PVR # 2d Aufnahmen
KEY_POWER = KEY_POWER2 # 02
KEY_DVD = KEY_VIDEO # 04 ohne Funktion
? = KEY_Time # 05 Timer
KEY_SELECT = KEY_MENU # 1b
KEY_LAST = KEY_PREVIOUS # 1c letzter Kanal
KEY_PREVIOUS= KEY_BACK # 21 Titel zurueck
KEY_CAMERA = KEY_PVR # 18 Aufnahmen
KEY_FORWARD = KEY_FASTFORWARD # 26
Alles anzeigen
Fertig !!
________________________________________________________________________________________
Um die verwendeten Events der FB herauszufinden geht man wie folgt vor:
Tool evtest installieren:
sudo apt-get install evtest
eventlirc stoppen und evtest aufrufen.
Es werden zunächst alle vorhandenen Events deser FB angezeigt.
Wenn man nun auf den Tasten der FB drückt werden die zugehörigen Events angezeigt.
root@vdr:/var/lib/vdr# sudo stop eventlircd
root@vdr:/var/lib/vdr# sudo evtest /dev/input/event5
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0xbc7 product 0x6 version 0x100
Input device name: "X10 Wireless Technology Inc USB Receiver"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 2 (KEY_1)
Event code 3 (KEY_2)
Event code 4 (KEY_3)
Event code 5 (KEY_4)
Event code 6 (KEY_5)
Event code 7 (KEY_6)
Event code 8 (KEY_7)
Event code 9 (KEY_8)
Event code 10 (KEY_9)
Event code 11 (KEY_0)
Event code 103 (KEY_UP)
Event code 105 (KEY_LEFT)
Event code 106 (KEY_RIGHT)
Event code 108 (KEY_DOWN)
Event code 113 (KEY_MUTE)
Event code 114 (KEY_VOLUMEDOWN)
Event code 115 (KEY_VOLUMEUP)
Event code 116 (KEY_POWER)
Event code 119 (KEY_PAUSE)
Event code 128 (KEY_STOP)
Event code 139 (KEY_MENU)
Event code 158 (KEY_BACK)
Event code 159 (KEY_FORWARD)
Event code 167 (KEY_RECORD)
Event code 168 (KEY_REWIND)
Event code 207 (KEY_PLAY)
Event code 212 (KEY_CAMERA)
Event code 352 (KEY_OK)
Event code 353 (KEY_SELECT)
Event code 358 (KEY_INFO)
Event code 365 (KEY_EPG)
Event code 377 (KEY_TV)
Event code 385 (KEY_RADIO)
Event code 388 (KEY_TEXT)
Event code 389 (KEY_DVD)
Event code 392 (KEY_AUDIO)
Event code 393 (KEY_VIDEO)
Event code 398 (KEY_RED)
Event code 399 (KEY_GREEN)
Event code 400 (KEY_YELLOW)
Event code 401 (KEY_BLUE)
Event code 402 (KEY_CHANNELUP)
Event code 403 (KEY_CHANNELDOWN)
Event code 405 (KEY_LAST)
Event code 407 (KEY_NEXT)
Event code 412 (KEY_PREVIOUS)
Event code 442 (?)
Event type 4 (EV_MSC)
Event code 4 (MSC_SCAN)
Event type 20 (EV_REP)
Testing ... (interrupt to exit)
Alles anzeigen
Beenden mit CTRL-C
Nicht vergessen den eventlirc wieder zu starten:
sudo start eventlircd
Die vom eventlirc verwendeten events für die Übersetzung findet man unter:
http://www.yavdr.org/documenta…/ch02s03.html#remote.conf -> Tabelle 2.2 "Tastenname durch Eventlircd"
Es zeigt:
Found /sys/class/rc/rc0/ (/dev/input/event10) with:
Driver ati_remote, table rc-medion-x10-digitainer
Supported protocols: other
Enabled protocols: other
Repeat delay = 500 ms, repeat period = 125 ms
Ursprünglich hatte ich versucht mittels Keymap die Tasten anzupassen. Das hatte aber nicht wirklich funktioniert. Dann sah das Ergebnis immer so aus, und das Scrollrad funktionierte nicht mehr:
Found /sys/class/rc/rc0/ (/dev/input/event10) with:
Driver ati_remote, table rc-medion-x10-digitainer
Supported protocols: other
Enabled protocols:
Repeat delay = 500 ms, repeat period = 125 ms
Ich bin mir nicht ganz sicher, aber ich meine, das Anfangs das Scrollrad ootb funktioniert hätte, aber nachdem ich die evmap aktiviert hatte ging es nicht mehr. Wie gesagt bin mir da nicht ganz sicher.
Schön wäre es wenn ich noch am "Repeat delay" herumspielen könnte, denn bei der Lautstärkeregelung ist mir die Reaktion noch etwas zu langsam (aber akzeptabel).
Kannst du bitte mal das Skript laufen lassen (ohne "set") und die Ausgabe posten oder Anhängen?
Hilfsskript für rc-core Empfänger
Hallo,
du scheinst ja sehr fleißig zu sein
Schöner script !
Hier die Ausgabe:
root@vdr:/home/wolle# ./list-rc-core.sh
###*** sudo ir-keytable for rc0 ***###
Found /sys/class/rc/rc0/ (/dev/input/event10) with:
Driver ati_remote, table rc-medion-x10-digitainer
Supported protocols: other
Enabled protocols: other
##########################################
*** keytable rc-medion-x10-digitainer for ati_remote ***
# table rc-medion-x10-digitainer, type: other
0x0000 = KEY_MUTE
0x0002 = KEY_POWER
0x0004 = KEY_DVD
0x0005 = KEY_IMAGES
0x0006 = KEY_AUDIO
0x0008 = KEY_VOLUMEDOWN
0x0009 = KEY_VOLUMEUP
0x000b = KEY_CHANNELUP
0x000c = KEY_CHANNELDOWN
0x000d = KEY_1
0x000e = KEY_2
0x000f = KEY_3
0x0010 = KEY_4
0x0011 = KEY_5
0x0012 = KEY_6
0x0013 = KEY_7
0x0014 = KEY_8
0x0015 = KEY_9
0x0016 = KEY_TEXT
0x0017 = KEY_0
0x0018 = KEY_CAMERA
0x0019 = KEY_MENU
0x001a = KEY_UP
0x001b = KEY_SELECT
0x001c = KEY_LAST
0x001d = KEY_LEFT
0x001e = KEY_OK
0x001f = KEY_RIGHT
0x0020 = KEY_BACK
0x0021 = KEY_PREVIOUS
0x0022 = KEY_DOWN
0x0023 = KEY_NEXT
0x0024 = KEY_REWIND
0x0025 = KEY_PLAY
0x0026 = KEY_FORWARD
0x0027 = KEY_RECORD
0x0028 = KEY_STOP
0x0029 = KEY_PAUSE
0x002c = KEY_TV
0x002d = KEY_VIDEO
0x002e = KEY_RADIO
0x002f = KEY_INFO
0x0031 = KEY_EPG
0x0032 = KEY_RED
0x0033 = KEY_GREEN
0x0034 = KEY_YELLOW
0x0035 = KEY_BLUE
0x0070 = KEY_DOWN
0x0078 = KEY_UP
### End of Keytable for rc-medion-x10-digitainer ####
*** suggested entry for custom keytable in /etc/rc_maps.cfg: ***
ati_remote rc-medion-x10-digitainer /etc/rc_keymaps/rc-medion-x10-digitainer
Alles anzeigen
Ach ja, das mi dem "Repeat delay" & der "repead period" war ganz einfach:
root@vdr:/home/wolle# ir-keytable -D 300 -P 75
Repeat delay = 500 ms, repeat period = 125 ms
Changed Repeat delay to 300 ms and repeat period to 75 ms
Leider hat das aber keine Auswirkung.
Ich probiere noch ein bisschen rum.
Ich würde die richtige Tastenbelegung für diese Fernbedienung gerne in yaVDR einbauen. Über evmaps geht das schlechter, lieber wäre mir die Lösung per Keymap. Wenn du magst kannst du mal schauen, ob es so geht:
Die Regel kannst du zum Testen einfach in die /etc/rc_maps.cfg eintragen:
Mit deinen Änderungen aus der evmap wäre also sowas als /etc/rc_keymaps/rc-medion-x10-digitainer denkbar (dann die udev-Regel, die die evmap zuweist wieder rausnehmen):
# table rc-medion-x10-digitainer, type: other
0x0000 = KEY_MUTE
0x0002 = KEY_POWER2 # KEY_POWER
0x0004 = KEY_VIDEO # KEY_DVD
0x0005 = KEY_IMAGES
0x0006 = KEY_MODE #KEY_AUDIO
0x0008 = KEY_VOLUMEDOWN
0x0009 = KEY_VOLUMEUP
0x000b = KEY_CHANNELUP
0x000c = KEY_CHANNELDOWN
0x000d = KEY_1
0x000e = KEY_2
0x000f = KEY_3
0x0010 = KEY_4
0x0011 = KEY_5
0x0012 = KEY_6
0x0013 = KEY_7
0x0014 = KEY_8
0x0015 = KEY_9
0x0016 = KEY_TEXT
0x0017 = KEY_0
0x0018 = KEY_SCREEN # KEY_CAMERA
0x0019 = KEY_MENU
0x001a = KEY_UP # generic X10 Up - not on remote with scroolwheel
0x001b = KEY_MENU #KEY_SELECT
0x001c = KEY_PREVIOUS # KEY_LAST
0x001d = KEY_LEFT
0x001e = KEY_OK
0x001f = KEY_RIGHT
0x0020 = KEY_ESC # KEY_BACK
0x0021 = KEY_PREVIOUS
0x0022 = KEY_DOWN # generic X10 Down - not on remote with scroolwheel
0x0023 = KEY_NEXT
0x0024 = KEY_REWIND
0x0025 = KEY_PLAY
0x0026 = KEY_FASTFORWARD #KEY_FORWARD
0x0027 = KEY_RECORD
0x0028 = KEY_STOP
0x0029 = KEY_PAUSE
0x002c = KEY_TV
0x002d = KEY_PVR # KEY_VIDEO
0x002e = KEY_RADIO
0x002f = KEY_INFO
0x0031 = KEY_EPG
0x0032 = KEY_RED
0x0033 = KEY_GREEN
0x0034 = KEY_YELLOW
0x0035 = KEY_BLUE
0x0070 = KEY_DOWN
0x0078 = KEY_UP
Alles anzeigen
Klappt das so?
Hallo,
ich hatte das Anfangs genau so gemacht.
Danach war other nicht mehr enabled, und das Scrollrad fungierte wieder als Maus.
Ich werde es gleich nochmal verifizieren.
OK,
ich habe es gerade eingebaut.
Das Scrollrad funktioniert. Aber die Keymap funktioniert nicht. Z.B. funktioniren KEY_POWER2 und KEY_ESC nicht.
root@vdr:/home/wolle# ./list-rc-core.sh
###*** sudo ir-keytable for rc0 ***###
Found /sys/class/rc/rc0/ (/dev/input/event5) with:
Driver ati_remote, table rc-medion-x10-digitainer
Supported protocols: other
Enabled protocols: other
##########################################
*** keytable rc-medion-x10-digitainer for ati_remote ***
# table rc-medion-x10-digitainer, type: other
0x0000 = KEY_MUTE
0x0002 = KEY_POWER
0x0004 = KEY_DVD
0x0005 = KEY_IMAGES
0x0006 = KEY_AUDIO
0x0008 = KEY_VOLUMEDOWN
0x0009 = KEY_VOLUMEUP
0x000b = KEY_CHANNELUP
0x000c = KEY_CHANNELDOWN
0x000d = KEY_1
0x000e = KEY_2
0x000f = KEY_3
0x0010 = KEY_4
0x0011 = KEY_5
0x0012 = KEY_6
0x0013 = KEY_7
0x0014 = KEY_8
0x0015 = KEY_9
0x0016 = KEY_TEXT
0x0017 = KEY_0
0x0018 = KEY_CAMERA
0x0019 = KEY_MENU
0x001a = KEY_UP
0x001b = KEY_SELECT
0x001c = KEY_LAST
0x001d = KEY_LEFT
0x001e = KEY_OK
0x001f = KEY_RIGHT
0x0020 = KEY_BACK
0x0021 = KEY_PREVIOUS
0x0022 = KEY_DOWN
0x0023 = KEY_NEXT
0x0024 = KEY_REWIND
0x0025 = KEY_PLAY
0x0026 = KEY_FORWARD
0x0027 = KEY_RECORD
0x0028 = KEY_STOP
0x0029 = KEY_PAUSE
0x002c = KEY_TV
0x002d = KEY_VIDEO
0x002e = KEY_RADIO
0x002f = KEY_INFO
0x0031 = KEY_EPG
0x0032 = KEY_RED
0x0033 = KEY_GREEN
0x0034 = KEY_YELLOW
0x0035 = KEY_BLUE
0x0070 = KEY_DOWN
0x0078 = KEY_UP
### End of Keytable for rc-medion-x10-digitainer ####
*** suggested entry for custom keytable in /etc/rc_maps.cfg: ***
ati_remote rc-medion-x10-digitainer /etc/rc_keymaps/rc-medion-x10-digitainer
Alles anzeigen
OK, ich hatte einen Tippfehler, und da ich einen shuttown gemacht hatte konnte ich die Fehlermeldung natürlich nicht sehen.
Aber jetzt hat er ein Problem mit dem Protokoll "other":
root@vdr:/etc/rc_keymaps# sudo ir-keytable -w /etc/rc_keymaps/rc-medion-x10-digitainer
Protocol other invalid
Invalid parameter on line 1 of /etc/rc_keymaps/rc-medion-x10-digitainer
Invalid parameter(s)
ir-keytable: -w: (PROGRAM ERROR) Option should have been recognized!?
Try `ir-keytable --help' or `ir-keytable --usage' for more information.
Moment, da war noch ein Fehler:
In der Keymap rc-medion-x10-digitainer muss dass Leerzeichen vor other weg. Dann gehts
Auf die Details kommt es an. Wahrscheinlich hatte ich mich bei meinem ersten Versuch bereits hier oder da vertippt.
Danke,
Wolle
Das Protokoll other ist aber wieder nicht aktiviert. Da aber alles funktioniert soll mich das nicht stören.
Hier nochmal die Ausgabe deines scriptes:
root@vdr:/home/wolle# ./list-rc-core.sh
###*** sudo ir-keytable for rc0 ***###
Found /sys/class/rc/rc0/ (/dev/input/event5) with:
Driver ati_remote, table rc-medion-x10-digitainer
Supported protocols: other
Enabled protocols:
##########################################
*** keytable rc-medion-x10-digitainer for ati_remote ***
# table rc-medion-x10-digitainer, type:
0x0000 = KEY_MUTE
0x0002 = KEY_POWER2
0x0004 = KEY_VIDEO
0x0005 = KEY_IMAGES
0x0006 = KEY_MODE
0x0008 = KEY_VOLUMEDOWN
0x0009 = KEY_VOLUMEUP
0x000b = KEY_CHANNELUP
0x000c = KEY_CHANNELDOWN
0x000d = KEY_1
0x000e = KEY_2
0x000f = KEY_3
0x0010 = KEY_4
0x0011 = KEY_5
0x0012 = KEY_6
0x0013 = KEY_7
0x0014 = KEY_8
0x0015 = KEY_9
0x0016 = KEY_TEXT
0x0017 = KEY_0
0x0018 = KEY_SCREEN
0x0019 = KEY_MENU
0x001a = KEY_UP
0x001b = KEY_MENU
0x001c = KEY_PREVIOUS
0x001d = KEY_LEFT
0x001e = KEY_OK
0x001f = KEY_RIGHT
0x0020 = KEY_ESC
0x0021 = KEY_PREVIOUS
0x0022 = KEY_DOWN
0x0023 = KEY_NEXT
0x0024 = KEY_REWIND
0x0025 = KEY_PLAY
0x0026 = KEY_FASTFORWARD
0x0027 = KEY_RECORD
0x0028 = KEY_STOP
0x0029 = KEY_PAUSE
0x002c = KEY_TV
0x002d = KEY_PVR
0x002e = KEY_RADIO
0x002f = KEY_INFO
0x0031 = KEY_EPG
0x0032 = KEY_RED
0x0033 = KEY_GREEN
0x0034 = KEY_YELLOW
0x0035 = KEY_BLUE
0x0070 = KEY_DOWN
0x0078 = KEY_UP
### End of Keytable for rc-medion-x10-digitainer ####
*** suggested entry for custom keytable in /etc/rc_maps.cfg: ***
ati_remote rc-medion-x10-digitainer /etc/rc_keymaps/rc-medion-x10-digitainer
Alles anzeigen
Ah ok, dann passe ich das Skript besser mal an - dann kann ich das also so für die X10 mit Scrollrad übernehmen?
Du meinst die Anpassung mit "type: other" im Keymap, wo kein Space vor other stehen darf?!
Gerne.
Verstehst du das mit dem type, und wofür der da ist ??
In deinem script wurde er in der Sektion des Keymap ja nicht angegeben (siehe letzten post). Und enables ist er auch nicht.
Obwohl er ja im keymap steht ??
Und zuletzt: Was würde das Protokoll other bewirken ?
Ich meinte vor allem die Regel für die rc_maps.cfg und die Keytable - wenn das so passt, baue ich es in die yaVDR-Paketquellen ein.
Zum Type/Protokoll:
Es gibt Empfänger, die mehr als ein Protokoll beherrschen (z.B. die CIR-Empfänger).
Du kannst dann damit angeben auf welche IR-Signale sie reagieren sollen (z.B. RC-6, RC-5, NEC, SONY).
Für die X10 Funkfernbedienungen sind die Möglichkeiten da natürlich eingeschränkt, aber es ist einfach das gleiche Treibergerüst.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!