Need help with Lenovo IR receiver and Ubuntu 12.04 (LIRC)?

  Thread Rating:
  • 1 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
BigB42078 Offline
Junior Member
Posts: 13
Joined: Apr 2012
Reputation: 0
Post: #1
[Image: 14-1.jpg]

[Image: 24-1.jpg]

I bought this on ebay. It seems to be recognized by Ubuntu 12.04, it lights up when receiving ir signals. But can't get it to work XBMC. I used these settings in Lirc

“Windows Media Center Transceivers/Remotes (all)”

“Microsoft Windows Media Center V2 (usb) : Direct TV Receiver”

It shows this in Windows 7:

Keyboards:
Microsoft eHome MCIR 109 Keyboard
Microsoft eHome MCIR Keyboard
Microsoft eHome Remote Control Keyboard keys


Universal Serial Bus controllers:
Microsoft eHome Remote Control Keyboard keys
(This post was last modified: 2012-07-17 02:53 by BigB42078.)
find quote
BigB42078 Offline
Junior Member
Posts: 13
Joined: Apr 2012
Reputation: 0
Post: #2
When I type in lsusb which was recommended in the ubuntu forums it is recognized as:

Bus 009 Device 003: ID 0609:0357 SMK Manufacturing, Inc.
Bus 009 Device 004: ID 17ef:602b Lenovo

I also have the Lenovo N5902 Multimedia Remote with keyboard, but I believe it is this one:
Bus 004 Device 002: ID 04d9:0022 Holtek Semiconductor, Inc. Portable Keyboard

The N5902 wouldn't conflict with the IR receiver would it?
find quote
eleon216 Offline
Junior Member
Posts: 5
Joined: Jul 2012
Reputation: 0
Post: #3
I got myself the same one, and I just got it working on debian wheezy (should be similar on ubuntu)

it's just another mceusb device but the vendor/product-id isn't recognized. btw it's this device "Bus 009 Device 003: ID 0609:0357 SMK Manufacturing, Inc."

so first try this:
disconnect the device run this as root:
Code:
rmmod mceusb
modprobe mceusb
echo 0609 0357 > /sys/bus/usb/drivers/mceusb/new_id
this way mceusb recognizes the device. then connect the device and run
Code:
dmesg
to check if the driver has initialized the device.
it should look like this:
Code:
[   55.757051] usb 1-1.2.1: new full-speed USB device number 6 using ehci_hcd
[   55.852806] usb 1-1.2.1: New USB device found, idVendor=0609, idProduct=0357
[   55.852810] usb 1-1.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   55.852813] usb 1-1.2.1: Product: WMC RECEIVER Emulator Device 2009
[   55.852814] usb 1-1.2.1: Manufacturer: SMK CORPORATION
[   55.852816] usb 1-1.2.1: SerialNumber: PA110328094713F
[   55.924632] Registered IR keymap rc-rc6-mce
[   55.924731] input: Media Center Ed. eHome Infrared Remote Transceiver (0609:0357) as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2/1-1.2.1/1-1.2.1:1.0/rc/rc1/input9
[   55.924853] rc1: Media Center Ed. eHome Infrared Remote Transceiver (0609:0357) as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2/1-1.2.1/1-1.2.1:1.0/rc/rc1
[   55.924964] input: MCE IR Keyboard/Mouse (mceusb) as /devices/virtual/input/input10
[   55.925210] rc rc1: lirc_dev: driver ir-lirc-codec (mceusb) registered at minor = 0
[   56.132340] mceusb 1-1.2.1:1.0: Registered SMK CORPORATION WMC RECEIVER Emulator Device 2009 with mce emulator interface version 2
[   56.132344] mceusb 1-1.2.1:1.0: 2 tx ports (0x0 cabled) and 2 rx sensors (0x0 active)

after the driver is working you can configure lirc:
my /etc/lirc/hardware.conf looks like this:
Code:
# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS=""

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false

#Don't start irexec, even if a good config file seems to exist.
START_IREXEC=true

#Try to load appropriate kernel modules
LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="default"
# usually /dev/lirc0 is the correct setting for systems using udev
DEVICE="/dev/lirc0"
MODULES="lirc_dev mceusb"

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

and if you are using a mce-remote, copy /usr/share/lirc/remotes/mceusb/lircd.conf.mceusb to /etc/lirc/lircd.conf
or use the appropriate config for your remote, or create a config with irrecord if there is none for your remote (I didn't try it but I guess it should be possible to use other types of remotes)

restart lircd, run irw and start pressing keys on you remote to test it.
Code:
/etc/init.d/lirc restart
irw

So if you get results you are fine, there are only 2 more things to do:
1. Automate adding the vendor/product-id
2. Disable the IR Keyboard/Mouse-inputdevice in X11 so that the remote triggers only lircd otherwise you will get every command twice, through lircd and as keystroke on the the virtual keyboard.

1.
create /etc/udev/rules.d/95-mceusb.rules with the following content:
Code:
SUBSYSTEM=="usb", ATTR{idVendor}=="0609", ATTR{idProduct}=="0357", RUN="/etc/udev_mceusb.sh"
and /etc/udev_mceusb.sh
Code:
#!/bin/sh
modprobe mceusb
echo 0609 0357 > /sys/bus/usb/drivers/mceusb/new_id
and make this file executeable
Code:
chmod 755 /etc/udev_mceusb.sh

2. add this to /etc/X11/xorg.conf:
Code:
Section "InputClass"
    Identifier "Remote"
    MatchProduct "Media Center Ed. eHome Infrared Remote Transceiver"
    Option "Ignore" "True"
EndSection
Section "InputClass"
    Identifier "Ignore MCE IR keyboard"
    MatchProduct "MCE IR Keyboard/Mouse (mceusb)"
    Option "Ignore" "True"
EndSection

That's it.
and this should work for other mce-receivers, too. Just change the vendor/product-ID.
find quote
yogensha Offline
Junior Member
Posts: 1
Joined: Aug 2012
Reputation: 0
Post: #4
(2012-08-03 10:23)eleon216 Wrote:  it's just another mceusb device but the vendor/product-id isn't recognized. btw it's this device "Bus 009 Device 003: ID 0609:0357 SMK Manufacturing, Inc."

so first try this:
disconnect the device run this as root:
Code:
echo 0609 0357 > /sys/bus/usb/drivers/mceusb/new_id

Made my weekend, thanks!
find quote
BigB42078 Offline
Junior Member
Posts: 13
Joined: Apr 2012
Reputation: 0
Post: #5
Thanks eleon216 you rock! All I needed was the first 3 commands to recognize the IR receiver and everything worked out of box. I can now use my "One For All" "OARI06G" with Media Center PC code in XBMC Eden. i was ready to give up on this receiver, even the guys at the Ubuntu forums couldn't give me an answer. I will post this there too in case anyone runs into it there.

Thanks Again
(This post was last modified: 2012-08-05 06:02 by BigB42078.)
find quote
poserdonut Offline
Senior Member
Posts: 100
Joined: Jun 2009
Reputation: 0
Post: #6
When I manually do the modprobe and echo as root it works but I tried adding the udev rules and the bash script but the remote doesn't work after reboot.

This is using XBMCbuntu.

Code:
Distributor ID: Ubuntu
Description:    Ubuntu 11.10 - XBMCbuntu
Release:        11.10
Codename:       oneiric

Is there any other way to make sure the script is run so it works?
find quote
poserdonut Offline
Senior Member
Posts: 100
Joined: Jun 2009
Reputation: 0
Post: #7
Ooops. I inserted an extra letter in the rules config which broke it. Now it's working. Thanks for the help eleon216.
find quote
HansieNL Offline
Junior Member
Posts: 1
Joined: May 2013
Reputation: 0
Post: #8
eleon216 you made my day. Now I can use my remote in Raspbmc.
If I update Raspbmc will these changes being kept?
find quote