pj7,
Really ? Fentastic, it's an excellent news !
is it possible to have your hid driver, and the way for install it ?
I'm very excited.
Thanks
pj7,
Really ? Fentastic, it's an excellent news !
is it possible to have your hid driver, and the way for install it ?
I'm very excited.
Thanks
Ok, I made a deb file (asus-at3iont-i-deluxe-dkms_1.0.1_all.deb) that you guys can install.
Download it from here: http://ubuntuone.com/p/3aX/
It contains the sources (not prebuilt modules) for my driver (hid-philips-asus) for the remote and the ath3k driver for the bluetooth.
- Installation
Just install the deb file
DKMS will automatically build and install both kernel modules to your system, for your existing kernels or after any future installation.Code:sudo dpkg -i asus-at3iont-i-deluxe-dkms_1.0.1_all.deb
- Module loading
The bluetooth module (ath3k) will be loaded automatically after reboot.
The remote module (hid-philips-asus) needs special treatment:
The module depends on usbhid but it has to be loaded *before* the usbhid module, in order to claim the device. Otherwise usbhid claims the device and hid-philips-asus can not act on it.
The problem is that other loaded hid modules might depend on usbhid, so you cannot just unload it.
As a dirty workaround I made a script 'load-module.sh' which unloads all loaded hid modules, loads hid-philips-asus first and then reloads the rest of previously loaded hid modules.
The script has to be run as root:
I suggest executing this script from /etc/rc.local so that the remote operates in the desired way after boot. You can add there the line above before the exit command.Code:sudo sh /usr/src/asus-at3iont-i-deluxe-1.0.1/drivers/hid-philips-asus/load-module.sh
Note that if you use lirc then you might want to restart it after executing this script.
- Module rebuild
After you edit configuration files (see below) you can automatically rebuild the modules with this command:
Code:sudo dpkg-reconfigure asus-at3iont-i-deluxe-dkms- DKMS Configuration
The files will be placed in /usr/src/asus-at3iont-i-deluxe-1.0.1 directory.
There you will find a modules.conf file, which has one option to select which modules will be built. By default it contains both modules. On some next kernel release the ath3k module will be included by default, so then you can remove it from that list.
- Remote Configuration
You can change the default button mappings by editing the file mappings.h under drivers/hid-philips-asus subdir.
I tried to put some sane default mappings but you can change them as you like.
After editing you need to rebuild the module (step 3)
Note that the remote will operate as keyboard, so you don't really need lirc, if you map all buttons to normal keycodes.
For example you can map the middle special button to KEY_M instead of KEY_MENU. This in XBMC will bring up the menu.
Personally I don't use lirc. I just put my key mappings in the remote, and then configured various programs that I use (xbmc, mythtv, vlc, mplayer etc) to use the same key shortcuts.
That's it, install it and tell me how it went.
EDIT:
After loading the remote module as I instructed above, you should see something like this in syslog:
That means that the desired driver (philips_asus) claimed the device and applied the custom mappings.input: PHILIPS MCE USB IR Receiver- Spinel plusf0r ASUS as /devices/pci0000:00/0000:00:0b.1/usb1/1-4/1-4.1/1-4.1.3/1-4.1.3:1.0/input/input60
philips_asus 0003:0471:206C.0004: input: USB HID v1.00 Keyboard [PHILIPS MCE USB IR Receiver- Spinel plusf0r ASUS] on usb-0000:00:0b.1-4.1.3/input0
Otherwise (if usbhid got it first) it will be like this:
input: PHILIPS MCE USB IR Receiver- Spinel plusf0r ASUS as /devices/pci0000:00/0000:00:0b.1/usb1/1-4/1-4.1/1-4.1.3/1-4.1.3:1.0/input/input63
generic-usb 0003:0471:206C.0005: input,hiddev98,hidraw3: USB HID v1.00 Keyboard [PHILIPS MCE USB IR Receiver- Spinel plusf0r ASUS] on usb-0000:00:0b.1-4.1.3/input0
Last edited by pj7; May 13th, 2010 at 04:47 PM.
Thanks a million! You just saved me days!
On an unrelated note, the download link is broken with Chrome. Not that it really matters.
This is great - thanks. But I have a problem. Now that I've installed your module some of the special keys work but some of the normal keys don't, notably the OK key. If I uninstall the module the OK key starts working again.
Is there any way I can snoop the codes being sent by the remote, to see what's different on mine and adjust the source accordingly? Tried googling but didn't get very far - lost in usbcore vs. usbhid confusion, sorry!
Thanks, Alfie.
You don't need to snoop the codes, I've done it already!
Install the package and then open this file into a text editor as root:
There you will see a list of buttons and their assigned KEY_* keycode. All you have to do is change the keycode for the button you want. For example to change the OK button to Enter:Code:gksudo gedit /usr/src/asus-at3iont-i-deluxe-1.0.1/drivers/hid-philips-asus/mappings.h
You can do changes to any button you wish. Just make sure that the KEY_* keycode is a valid keycode, included in linux/input.h. If it's not then the building will fail.Code:#define BUTTON_OK KEY_ENTER
Save the file and run this command to rebuild the module:
Now reload the module:Code:sudo dpkg-reconfigure asus-at3iont-i-deluxe-dkms
That's it, your new codes should be working.Code:sudo sh /usr/src/asus-at3iont-i-deluxe-1.0.1/drivers/hid-philips-asus/load-module.sh
EDIT:
You can verify the keycodes by installing "evtest" and executing:
. Start pressing the buttons and you'll see the key events.Code:sudo evtest /dev/input/by-id/usb-PHILIPS_MCE_USB_IR_Receiver-_Spinel_plusf0r_ASUS-event-ir
Last edited by pj7; May 15th, 2010 at 12:04 AM.
@ Sankukai93
Hi. I followed instructions here: http://www.bsmdev.com/Reference/Sect...tion-1.29.html
Follow the "irman" drivers!
I don't know if irman will work with the remote that came with the motherboard, but I suppose it should work because you should be able to use any remote with irman. With the instructions you can try to configure it. I am using a remote that came with my crappy Vision digibox.
My problem now is that when my system boots, sometimes my remote works sometimes not. For some reason lirc does not load on every boot. But if I restart lirc on terminal and restart mythfrontend everything works. Also on this system my remote is a bit slow. On my desktop test machine with mythbuntu 9.10 everything works better. The remote is still useable, so when I get it to load every time I will be happy.
I'm using Mythbuntu 10.04 for now.
Rauli.
@pj7 many thanks - am making progress now - just need to decide which mappings to use best for MythTV!!
I took a slightly different direction to get my remote working.
Initially I followed pj7's directions which work great, but I wanted to use a universal remote (Atlas OCAP) so I had one remote to control Myth and my TV.
I used an IR receiver I already had to capture the cods from the remote, and converted them to an rdmu file. I then added lots of other keys (like the numbers) and programmed my Atlas with a JP1.3 cable.
You would need a JP1 programmable remote, and a way to program it to use this method, but it means I can fully utilize my universal remote (and don't actually need to use pj7's module to boot)
FYI, the Asus remote uses the MCE protocol, but with a nonstandard device and subdevice
If you are familiar with JP1, the rdmu file can be found here:
http://www.hifi-remote.com/forums/dl...e&file_id=8426
I have a Sony universal remote and was planning to have it learn the buttons from the Asus but of course it's still limited to the total number of buttons the Asus has.
I wonder is there any way to get additional buttons working from a universal remote using the Asus receiver (without additional kit)?
As an aside, the Sony universal remote (RM-VL600T) is fine but doesn't have skip back/forward buttons, ie. for DVD chapters. Just in case anyone is considering it...!
Bookmarks