Dear all, a couple of weeks ago I decided to control my server, which plays music using remote login anyway, using a RF remote control. I read a lot about different models, mostly X10 or compatibles seemed to be common and even supported by linux via lirc and, in newer 2.6 kernels, via the kernel module ati_remote.
So I got a "Qsonic Master Remote 6in1" from ebay. I assumed it would be compatible to the usual X10. However, as you might guess, that is not completely true, as turned out later. It identifies itself as 0x0bc7:0x005. The remote is labeled UR86EL and the USB receiver is labeled CM21A. Now, lirc (in version 0.7.1) claims to support this type. The problem was that I never got any reaction to any keypress. I read that someone else had the problem that the 'PC' key (which you use to activate the PC mode - the remote can also be used for other devices) was programmed to some other key. So I tried several 'reset' codes from the web, nothing worked. Finally I stumbled over the note in some manual, that recarchable batteries are not good, especially during the learning process (and guess, I used such). Thus I went and bought usual alcali batteries. Going through a couple of reset codes I finially found one working (for the record: press SETUP (until LED goes on), STOP, STOP, MUTE). I do not know if I tried this one before, so I do not know if it was the code or the batteries that are responsible for the success. I also did not care so much at that point. :) How did I actually see, that it worked now? First, the mouse was now activating the LED at the remote and, using the ati_remote kernel module (kernel version 2.6.8 and patched to accept also the 0x005 product id) the pointer actually moved. Wow. But I also got a lot of 'Weird data' entries into my logs. However, I was happy at that point, since firstly I was sure now that the device actually was not broken and sencondly I realized that it should not be so hard to make it working completely. I was doing some debug and created a complete code table. However, except the mouse buttons, all buttons have different codes than the one in the recent ati_remote module (version 2.2.1 from kernel version 2.6.11.10). It even has another format (10 bytes instead of 8, completly other relation between the data). So to me, that calls for another key table and another validation function for this type of remote. Now _you_ come into play. *hehe* Ich have a couple of questions before I begin working on this more. (Meaning to provide a patch for this remote) 1. Does anyone know if this already has been done by someone? I do not want to spend my time on this just to dicover that I duplicted the work of someone else. I searched the web for a really long time, but found nothing. 2. Which version of ati_remote.c would be best for creating a patch against it? I found a number of patches on more than one mailing list which did not seem to have entered the driver yet. (I am always speaking of the one in the last stable kernel (2.6.11.10). 3. I know that some remotes can be switched to different channels. I do not know how to do that with my remote, so I do not know how the codes change if I change the channel (if the remote supports that actually). Does someone know how to change the channel, even if it is not exactly the same model? I read about this once in some manual but could not find it again. I could find out the different codes myself, I only need the way to change the channel on the remote itself. 4. Do you think my work plan (below) is reasonable? plan ---- At each point I would provide a patch to keep seperate things in seperate patches, but since it is very likely that the patches overlap, one thing would have to go after the other. a) Include support for the new type with as less changes to the actual code as possible b) Convert some of the warn() to dbginfo() because I do not want to have my logs filled with unknown codes someone else is sending. This actually happened to me while testing. c) Provide more options to the module to be able to configure the remote more without having to recompile the module every time. This includes: b1) some special key <-> event mappings, which are questionable in any way (example: KEY_PLAY <-> KEY_PLAYCD) b2) maybe even a way to configure the whole table, but I have to think about it more. b3) option to disable the mouse part b4) whatever comes to my (or your) mind later d) Maybe tidy up the existing code table as well. It seems to me that two numbers for each key are not needed. One number would do, since theother one can always be computed from the first one. (I would have to check that again and would have to have someone testing that, because I do not have the hardware.) Do not expect something after b) happening soon, as I am busy with other things as well and it is not really needed to get me a working remote control. It would also be nice, if the maintainer of the module (Torrey Hoffman?) could say something about it. :) So, what do you think? Last but not least I want to thank everybody who has put work into this driver, I would not be able to write my own from scratch. greetings, Frank PS: I am on this list, you do not have to CC me. ------------------------------------------------------- This SF.Net email is sponsored by Yahoo. Introducing Yahoo! Search Developer Network - Create apps using Yahoo! Search APIs Find out how you can build Yahoo! directly into your own Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel