Johannes Stezenbach <js@xxxxxxxxxxxxxx> writes: > > Well, I had a look at the driver mentioned above. How do you avoid > > that the keyboard events end up in the console keyboard queue? Seems > > your driver does basically the same mine does. Can the linux console > > and/or input layer configured somehow to accept keyboard events from > > some input devices only? > > Well for 2.4 one just doesn't load keybdev (you lose if you have an USB > keyboard). So far I haven't had a close look at 2.6, but I suspect the > problem has not been addressed yet. Seems with 2.6 you lose with any keyboard, not only USB ones ;) It is possible to open /dev/input/event<n> and ask for exclusive access via ioctl(). If you do that nobody else will see the events, neither the linux console nor other applications which are reading from the same device. > Maybe one of the BUS_* types could be used to distinguish IR remote > controls from other keyboards. Thats another problem. You get alot of info out of /dev/input/event<x> (see below), so this likely isn't that hard to find some reasonable heuristics and/or put stuff into a config menu for the user to pick. > But it's still unclear how one can configure the system to not put > IR key events in the normal input queue. I don't want to disable it completely. It may be useful to have the IR events in the linux console input queue. Maybe it is even better than the current way to handle it because it just works with every application, not only the ones with lirc support added. For example I can browse teletext pages using mtt (or alevt) and control them using the remote control. Neither mtt not alevtd has lirc support ... Moving the cursor in emacs works too :) This being configureable would be best, i.e. say "this (group of) input device(s) should send keyboard events to the linux console". Maybe even per virtual console, like it can be done with framebuffer devices. I havn't found a way to do that through, I suspect it is not implemented (yet?) :-/ Gerd ==============================[ cut here ]============================== eskarina root ~# ~kraxel/src/input/event /dev/input/event0 bustype : BUS_I8042 vendor : 0x1 product : 0x2 version : 43778 name : "AT Set 2 keyboard" phys : "isa0060/serio0/input0" bits ev : EV_SYN EV_KEY EV_LED EV_REP /dev/input/event1 bustype : BUS_ISA vendor : 0x1f product : 0x1 version : 256 name : "PC Speaker" phys : "isa0061/input0" bits ev : EV_SYN EV_SND /dev/input/event2 bustype : BUS_USB vendor : 0x3886 product : 0x1 version : 1 name : "GM-TEK USB Composite Device" phys : "usb-0000:02:00.1-1/input0" uniq : "" bits ev : EV_SYN EV_KEY EV_LED EV_REP /dev/input/event3 bustype : BUS_USB vendor : 0x3886 product : 0x1 version : 1 name : "GM-TEK USB Composite Device" phys : "usb-0000:02:00.1-1/input1" uniq : "" bits ev : EV_SYN EV_KEY EV_REL /dev/input/event4 bustype : BUS_I2C vendor : 0x0 product : 0x0 version : 0 name : "Hauppauge IR" phys : "i2c-1/1-0018/input0" bits ev : EV_SYN EV_KEY EV_REP open /dev/input/event5: No such device