MS-Tech MC-1200 Remote

MS-Tech MC-1200 Remote


Remote from the MS-Tech MC-1200 case.

= How to set up in Linux =

UDev rule
First you have to create an own udev rule to ensure, that your device nodes are always the same.

We get the physical address from /proc/bus/input/devices:

cat /proc/bus/input/devices

the output is something like this: ...

I: Bus=0003 Vendor=04b4 Product=0101 Version=0100 N: Name="Cypress Cypress USB Keyboard / PS2 Mouse" P: Phys=usb-0000:00:06.0-3/input0 S: Sysfs=/devices/pci0000:00/0000:00:06.0/usb4/4-3/4-3:1.0/input/input4 U: Uniq= H: Handlers=kbd event4 B: EV=120013 B: KEY=800000 0 e0b0ffdf 1cfffff ffffffff fffffffe B: MSC=10 B: LED=1f

I: Bus=0003 Vendor=04b4 Product=0101 Version=0100 N: Name="Cypress Cypress USB Keyboard / PS2 Mouse" P: Phys=usb-0000:00:06.0-3/input1 S: Sysfs=/devices/pci0000:00/0000:00:06.0/usb4/4-3/4-3:1.1/input/input5 U: Uniq= H: Handlers=kbd mouse1 event5 B: EV=17 B: KEY=70000 0 2010000 3978 d840d000 1e0000 0 0 0 B: REL=103 B: MSC=10

...

What we need are the values behind Phys=. In my case usb-0000:00:06.0-3/input0 and usb-0000:00:06.0-3/input1.

Now we write a new rules file for udev:

sudo nano /etc/udev/rules.d/10-irremote.rules

and put the following content in: SUBSYSTEM=="input",ATTRS{phys}=="usb-0000:00:06.0-3/input0",SYMLINK="input/irremote0" SUBSYSTEM=="input",ATTRS{phys}=="usb-0000:00:06.0-3/input1",SYMLINK="input/irremote1"

Now restart udev and trigger a new discovery:

sudo restart udev sudo udevadm trigger

Under /dev/input should now be two more symlinks; irremote0 and irremote1:

ls /dev/input

Inputlirc installation
First you have to install inputlirc and lirc:

sudo apt-get update sudo apt-get install inputlirc lirc

Then you need to configure it properly:

sudo nano /etc/default/inputlirc

and put the following content in: EVENTS="/dev/input/irremote0 /dev/input/irremote1" OPTIONS="-g -m0 -c -d /dev/lircd" (The location of lircd is different per distro/version that I've tried, for Ubuntu 10.04 it's /dev/lircd)

The entries unter EVENTS are the devices we created via udev. The OPTION entries mean the following:

Now restart inputlirc sudo /etc/init.d/inputlirc restart

You can now test the remote via 'irw': irw

This is some sample output from irw when pressing buttons: 14 0 CTRL_SHIFT_KEY_P irremote0 a4 0 KEY_LEFT irremote0 a4 0 KEY_UP irremote0 a6 0 KEY_VOLUMEUP irremote1

Configuration XBMC
The last thing you need to do is let XBMC know to what buttons to respond. This is done via the Lircmap.xml:

sudo nano ~/.xbmc/userdata/Lircmap.xml

and put the following content in: CTRL_SHIFT_KEY_P CTRL_KEY_P CTRL_SHIFT_KEY_S CTRL_SHIFT_KEY_F CTRL_SHIFT_KEY_B CTRL_KEY_F CTRL_KEY_B KEY_LEFT KEY_RIGHT KEY_UP KEY_DOWN KEY_ENTER KEY_PAGEUP KEY_PAGEDOWN KEY_1 KEY_2 KEY_3 KEY_4 KEY_5 KEY_6 KEY_7 KEY_8 KEY_9 KEY_0 SHIFT_KEY_3 KEY_KPASTERISK KEY_DELETE CTRL_KEY_R ALT_KEY_ENTER CTRL_KEY_G KEY_COMPOSE KEY_BACKSPACE ALT_META_KEY_ENTER CTRL_SHIFT_KEY_T CTRL_KEY_M CTRL_KEY_I CTRL_KEY_E KEY_POWER KEY_VOLUMEUP KEY_VOLUMEDOWN KEY_MIN_INTERESTING

Mapping
I mapped most buttons correctly however the following is different: Display = Start Title = Mouse icon (top right from navigation) Menu = Zoom Info = Guide