X10 (Heyu)
homebridge-heyu · v0.3.30
Adds X10 lamp, appliance and wall switch modules and motion sensors to HomeKit via heyu.
What it says it supports
Brands
- X10
Devices it names
- CM11A
- CM17A FireCracker
- lamp modules
- appliance modules
- wall switches
- MS10/MS12 motion sensors
Shows up in Apple Home as from its README
Sensor readings in its code
What people report
Controls X10 devices through heyu with CM11a and XTB232 interfaces; some IBM/RCA CM11 variants fail to send address bytes.
- Works4
- Not working1
| Device | Status | What they said | Source |
|---|---|---|---|
| X10 CM11a interface | Works | Works with heyuSaved copyhere is another set of responses with the -v option pi@x10:~ $ heyu -v info Version:2.11-rc3 Searching for '/home/pi/.heyu/x10config' Searching for '/etc/heyu/x10.conf' Found configuration file '/etc/heyu/x10.conf' Reading Heyu configuration file '/etc/heyu/x10.conf' lockpid: Checking for file '/var/lock/LCK..heyu.write.ttyUSB0' Trying to lock (/var/lock/LCK..heyu.write.ttyUSB0) lockpid: Checking for file '/var/lock/LCK..heyu.write.ttyUSB0' /var/lock/LCK..heyu.write.ttyUSB0 is locked Alert acks are 0x52, 0x12, 0x42 lockpid: Checking for file '/var/lock/LCK..heyu.relay.ttyUSB0' lockpid: … Excerpt saved from GitHub on 2026-10-22. | Issue #7 · 2017-10 |
| X10 FireCracker CM17A | Works | Basic FireCracker support added via useFireCracker optionSaved copyWith this change, I've added a "useFireCracker" option to the configuration. This involved moving the X10 commands into an object. If the useFireCracker option is set to true, then the appropriate commands are overwritten with the FireCracker flavor. There is probably a cleaner way to do this, so I'm open to any suggestions. The end result is that the on, off, bright and dim commands are replaced with "fon", "foff", fbright", "fdim", etc. If a CM17A module is present, then the commands will be sent via RF signals to the receiver which then sends them into the power line. Excerpt saved from GitHub on 2026-10-22. | PR #3 · 2016-10 |
| X10 LM456-1 dimmer modules | Works | Dimming support added for all heyu dimmable module typesSaved copy… feature is now ready. I've been living and working on this since September. It adds support for all dimmable module types defined in the heyu man page, x10config, including the "new" LM456-1 and WS467-1. These modules, along with some others, support extended preset commands, which map very well to HomeKit dim levels. I also updated the code for modules that support pre-set levels as well. The pre-set levels (1-32) are mapped to percentages using the SmartHome Pre-set tables according to the X10 Knowledge base. I also experimented with using steps in the HomeKit levels, but ended up settling … Excerpt saved from GitHub on 2026-10-22. | PR #16 · 2018-12 |
| XTB232 X10 interface | Works | Works with heyu where CM11 variants failedSaved copyhere is another set of responses with the -v option pi@x10:~ $ heyu -v info Version:2.11-rc3 Searching for '/home/pi/.heyu/x10config' Searching for '/etc/heyu/x10.conf' Found configuration file '/etc/heyu/x10.conf' Reading Heyu configuration file '/etc/heyu/x10.conf' lockpid: Checking for file '/var/lock/LCK..heyu.write.ttyUSB0' Trying to lock (/var/lock/LCK..heyu.write.ttyUSB0) lockpid: Checking for file '/var/lock/LCK..heyu.write.ttyUSB0' /var/lock/LCK..heyu.write.ttyUSB0 is locked Alert acks are 0x52, 0x12, 0x42 lockpid: Checking for file '/var/lock/LCK..heyu.relay.ttyUSB0' lockpid: … Excerpt saved from GitHub on 2026-10-22. | Issue #7 · 2017-10 |
| IBM Homedirector and RCA CM11 interfaces | Not working | 'Unable to send address bytes' error with heyuSaved copyIt does it with any address. I will try verbose Mode and see what it shows. Thanks again. Get Outlook for iOS From: NorthernMan54 Sent: Thursday, October 19, 2017 5:55:22 AM To: NorthernMan54/homebridge-heyu Cc: tommyd75; Author Subject: Re: [NorthernMan54/homebridge-heyu] x10 with Heyu Unable to send address bytes (#7) And I tried with my cm11, and it was fine as well. I also looked at the code, and their is a verbose mode -v that gives more debug info into the issue. But with all that said, why not just leave k9 out of your setup? Sent from my iPad On Oct 18, 2017, at 10:49 PM, tommyd75 … Excerpt saved from GitHub on 2026-10-22. | Issue #7 · 2017-10 |
Gathered from the plugin’s GitHub issues, pull requests, discussions, wiki and docs, and from r/homebridge. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Local
heyu engine with serial CM11A
You’ll need
- heyu
- CM11A or CM17A
Compatibility
| Verified by Homebridge | No |
|---|---|
| Homebridge versions | >=0.2.0 |
| Homebridge 2.0 | No |
| Node.js | >=0.12.0 |
| Settings in Homebridge UI | No |
| Matter | No |
| License | Apache-2.0 |
Community signals
| Downloads a week | 28 |
|---|---|
| Downloads a month | 96 |
| GitHub stars | 7 |
| Open issues | 3 |
| Closed issues | 11 |
| Last code push | 2022-08-06 |
| Latest version | 0.3.30 (2022-08-07) |
| First published | 2016-06-08 |
| Releases | 34 |
In ReReHome
Whatever this plugin publishes reaches Apple Home as a normal HomeKit accessory behind your Homebridge bridge, so ReReHome shows and controls it like any other.
Bridges get their own settings page listing the accessories behind them.
Caveats from the README
- Missing HOUSECODE crashes startup
HomeKit services in its code
Found by scanning the published npm package. A plugin can register a service only for some devices.
- LightSensor
- Lightbulb
- MotionSensor
- Outlet
- Switch
- TemperatureSensor