Ancient CM11A X10 Controller Pinout

I have an X10 CM11A “Two Way Computer Interface” handling the very very very few scheduled events for our house. Basically, it turns the living room lights on in the evening and everything off much later.

As a result, I tend to ignore it for years at a time. A recent power outage killed the regularly scheduled events, which suggested that the backup batteries needed changing… and, yes, they were pretty well corroded.

With that out of the way, I discovered that the last time I’d loaded a program into the thing was so long ago that the heyu config files had either gone missing or were on a system not near the top of my heap. It’s easy enough to configure, so I installed heyu and spun up a new set of config files.

All the doc I can find says the CM11A has an RJ11 modular phone jack, which mates with the standard 6-position 4-conductor dingus found on the end of every phone in this part of the world. My CM11A, however, has a 4P4C jack, the narrower dingus found on phone handsets. Given that heyu reports

Firmware revision Level = 1

I suspect that this thing is slightly older than some of the folks reading this post and the X10 factory switched to a somewhat less bizarre connector in mid-stream.

Anyhow, the DB9 (yeah, it’s a DE9, but nobody calls it that) connector has “X10 Active Home” printed on it in my very own handwriting, with a standard RJ11 plug on the end. A double-jack adapter connects a hank of cable with an RJ11 plug on one end and a 4P4C connector on the other. I have no idea where that cable came from; perhaps I replaced the 4P4C plug with something less bizarre to add that extension so the cable would stretch from PC to wall outlet?

I plugged the thing into a USB-RS232 adapter and heyu had no trouble talking to the CM11A. However, trying to execute

heyu dim n13 10

produced the discouraging report

RI serial line may be stuck.

A bit of deft multimeter work produced this pinout list, which agrees with most of the doc you’ll find elsewhere. Hold the 4P4C connector with the tab down and the cable away from you: the pin numbers are 4 3 2 1 from left to right. The RS-232 pins are printed right on the DB-9 connector.

4P4C   DB9
 1      2 RxD
 2      9 RI
 3      3 TxD
 4      5 Gnd

It’s entirely possible the USB converter doesn’t support RI or it doesn’t do a good job of it. I jammed the cable into the serial port on the back of the PC and shazam it works perfectly.

The x10.conf file, for the next time around

TTY /dev/ttyS0

HOUSECODE N

LATITUDE 	41:40N
LONGITUDE	73:53W

ALIAS MBR_Dresser	N1
ALIAS Front_Hall	N5
ALIAS RV_XCVR		N9
ALIAS Couch		N10
ALIAS Mary_Reading	N11
ALIAS LR_Ceiling	N12
ALIAS Fireplace		N13
ALIAS Kitchen		N14
ALIAS Patio		N15
ALIAS Garage_Spots	N16

START_ENGINE	AUTO

LOG_DIR		/var/log/heyu/

DATE_FORMAT	YMD '-'