From: William U. <wil...@cs...> - 2005-03-06 00:38:17
|
On 06/03/2005, at 2:57 AM, lir...@li... wrote: > From: li...@ba... (Christoph Bartelmus) > Date: 5 March 2005 7:42:00 PM > To: lir...@li... > Cc: c.p...@it... > Subject: Re: [PATCH] DViCO remote > > William Uther "wil...@cs..." wrote: > >> Hi, >> I use a DViCO remote with Chris Pascoe's lirc patches: >> http://www.itee.uq.edu.au/~chrisp/Linux-DVB/DVICO/ . I asked him if >> if >> he'd mind submitting them upstream, and he said he'd already tried >> once, but I was welcome to try again. > > I never heard of this driver before. ahh - okie :) >> I've updated the patches for >> current CVS and attached them (patch -p0 from *within* the checked out >> lirc dir). Is there any reason these can't be checked in? > > Could you explain a bit how this is working? I'm probably not the best one for this as I didn't write the meat of the patch. I notice you cc'd Chris on your reply, so maybe he'll chip in. I'll give you my understanding though. The DViCO usb IR dongle is rather strange. It reports itself as a usb HID device, but its HID descriptor reports that the buttons are a vector measured in 'degrees Kelvin'. :) Methinks someone took a thermometer example a little too literally. The normal linux usb HID drivers recognise it, and can access it through /dev/usb/hiddev0. Aside: Unfortunately, the normal USB drivers filter out repeat events from some HID devices, so you need to patch your linux kernel to register a 'held-down' key. I submitted that patch (again, closely based on the one by Chris) to the linux usb mailing list. They said that the repeat event filtering was already going away in 2.6.12 (has already gone in 2.6.11-mm) and so the patch wasn't needed. The patch I submitted here is just a patch to lirc adding a new daemon module. No kernel module is required (unless you want auto-repeat on pre 2.6.12 kernels) or included. This patch tells lirc how to interpret data from /dev/usb/hiddev0 to generate its own events. If there was a generic hiddev daemon module, then it could replace this one. (Is there? I didn't see any DViCO driver when I first installed lirc. So I then searched on the web and found this driver. It worked and I never went back and checked if there was a generic usb module I could have used.) > Why is this using hiddev? That is where it is getting its data. > Could the kernel driver also provide a Linux input device? There is no kernel driver in this patch. > Is this a generic hiddev driver or can it only be used with the DVICO > FusionHDTV? I have no idea if this daemon module could be easily used for other remotes that already register a hiddev device. Cheers, Will :-} -- Dr William Uther National ICT Australia Phone: +61 2 9385 6357 Computer Science and Engineering Email: wi...@cs... University of New South Wales Web: http://www.cse.unsw.edu.au/~willu/ Sydney, Australia |