Saturday, January 22, 2011

CM19a X10 Transceiver on Ubuntu 10.04

The CM19a is a USB based X10 Transceiver. This is a modified version of
the more popular CM11/CM11A/CM15/CM17 versions all of which have serial
interfaces

** All of this information is from :
http://www.cuddon.net/search/label/CM19a ** I'm only posting it here so
that I can find it again easily

1. The Python driver written by Andrew (www.cuddon.net), requires
sudo/root permissions. To make the USB driver work for any user, do the
below:

Add this to /etcudev/rules.d/cm19a.rules
#Allow all users to read and write to the CM19a X10 Transceiver (USB)
SYSFS{idVendor}=="0bc7", SYSFS{idProduct}=="0002", MODE="666"

2. Blacklist two modules (in 10.04) so that the CM19a is seen by the system:

Edit using vim or nano /etc/modprobe.d/blacklist.conf

Add the following two lines at the bottom of the file:

blacklist lirc_atiusb
blacklist ati_remote

Reboot the machine so that the modules are unloaded and the udev rules
are updated at the same time.

Visit Andrew's site for Python drivers for the CM19a
http://www.cuddon.net/search/label/CM19a

1 comment:

nategood said...

For those of you using a newer version of the CM19A on Mac OSX, you may find that you need to update the end points. For me, those endpoints were 0x083 and 0x004. You can find these in the CM19aDriver.py file.

Use:

READ_EP_ADDRESS = 0x083
WRITE_EP_ADDRESS = 0x004

Instead of

READ_EP_ADDRESS = 0x081
WRITE_EP_ADDRESS = 0x002

The receiving was causing issues as well, so I ended up removing it (as I only need to be able to transmit myself). SImply commenting out `self.receive()` does the trick. Hope that helps.