homebridge-platform-rcswitch-tx-only
RCSwitch plugin for the awesome Homebridge project.
rainlake/homebridge-platform-rcswitch
Differences from- Sniffing is removed. I found that sniffing often caused my Raspberry Pi's Homebridge process to become unresponsive.
- Transmissions are repeated to make them more likely to succeed. Every 300 ms, the current state for a switch is broadcast over the RF radio. This plugin cycles through all of the switches and broadcasts their current state one at a time. Switches with new states are prioritized to be broadcast first.
Currently supports
- Etekcity Remote Control Outlet Kit
- Other 433 Mhz remote controlled outlets
Installation
- Install libuv-dev using:
apt-get install libuv-dev
- Install homebridge using:
npm install -g homebridge
- Install this plugin using:
npm install -g homebridge-platform-rcswitch
- Update your configuration file. See the sample below.
Configuration
Configuration sample:
send_pin
is the gpio pin you are using to send signal. It is different than the physical pin you are using. See wireingpi.com for details.
switches
is the list of the "buttons" codes on your remote.
You'll need to adjust the keys platforms[0].send_pin
, bridge.name
, bridge.username
, bridge.pin
, and the on.code
and off.code
properties for each of the switches
.
{
"bridge": {
"name": "Homebridge",
"username": "AA:BB:CC:DD:EE:FF",
"port": 51826,
"pin": "123-45-678"
},
"description": "",
"platforms": [
{
"platform": "RCSwitch",
"name": "RCSwitch Platform",
"send_pin": 0,
"tolerance": 90,
"switches": [
{
"name": "Zap Plug Port 1",
"on": {
"code": 123456,
"pulse": 188
},
"off": {
"code": 123456,
"pulse": 188
}
}
]
}
]
}
Credits
Credit goes to
- wiring pi
- 433 control code ported from 433Utils
- rfoutlet project and his blog post
- http://scottfrees.com/ for his great tutorial for asynchronous calls
- inspired by [homebridge-platform-wemo] https://github.com/rudders/homebridge-platform-wemo
- rainlake/homebridge-platform-rcswitch
License
Published under the MIT License.
Development
node-gyp configure
node-gyp build