homebridge-bondbridge
v2.3.5
Published
Plugin to integrate BondBridge units by Bond to Homekit
Maintainers
Readme
homebridge-bondbridge
This plugin is to bring your Ceiling Fan with multi-tiers Dimmable Light that is fitted with a RF remote control to Homekit via Bond Bridge RF Controller.
Introduction
This homebridge-bondbridge plugin is specifically designed to bring Ceiling Fans with multi-tiers Dimmable Light that is fitted with a RF remote control to Homekit via Bond Bridge RF Controller. If your ceiling fan does not have a multi-tiers dimmer, then you should use the homebridge-bond plugin instead.
The RF remote control I am having here is Hunter Pacific LOGIC remote control A2003 (left image below). Any ceiling fan that is fitted with a RF remote control and has a multi-tiers dimmable Light should be able to take advantage of this plugin by following strictly the following rules in programming your RF remote control functions onto your Bond Bridge RF Controller.


How to programme your RF remote control functions onto Bond Bridge RF Controller
To work as intended, the RF remote control functions need to be programmed onto the Bond Bridge RF Controller as two separate "Celing Fan" devices, one for the Fan and one for the Light:
Add a "Ceiling Fan" device onto Bond Bridge RF Controller and programme the
Fan Offfunction and theFan Speedfunctions under "Fan". Name the device ending with " Fan" (e.g. "Bed 4 Fan"). Do not programme theLight On/Offfunctions here.Note that the Fan Speed has intrinsic "On" function, as such the "Fan On" function is not required, only the "Fan Off" function need to be programmed. No harm done also if you do programme both "On/Off" functions.
Add another "Ceiling Fan" device onto Bond Bridge RF Controller and programme the
Light On/Offfunctions under "Light" and programme the multi-tiersLight Dimmerfunctions under "Fan" as "Fan Speed". For example, the LOGIC RF remote control has 7-tiers dimmer, you should programme them as "Speed 1", "Speed 2", etc. Name this device ending with " Light" (e.g. "Bed 4 Light").
This plugin does not use the built-in timers but use custom-built timers within a bash script. These custom-built timers have greater flexibility and capability to turn on or off the fan and the light.
Installation
- If you have not already, install Homebridge via these instructions for Raspbian, HOOBS, macOS or Windows.
- Make sure that jq and curl are installed on your system. Install jq-1.7 if you can, it is much faster than jq-1.6
- Install
homebridge-bondbridgeplug-in via the Homebridge UIPluginstab search function.
Configuring the Plugin
(A) Users who have access to the Homebridge UI can go to the 'Plugins' tab in Homebridge UI, locate your newly installed Homebridge Bondbridge plugin and click the three dots on the bottom right, select Plugin Config and it should launch the Bond Bridge Device Settings UI.
Fill up the Bond ID or IP Address and Local Token of your Bond Bridge device, check/uncheck Enable detailed debug log for this device checkbox, then expand the Ceiling Fan and its associated Light specific settings and select an Ceiling Fan Setup Option from a drop down menu*, check/uncheck the Include timers checkbox, click SAVE then RESTART.
For advanced users, you can check/uncheck the Enable detailed debug log for this plugin under Global Plugin Settings to turned on the debugging log to diagnostic any issue with the plugin.
*The Ceiling Fan Setup Option from a drop down menu has the following options:
- Configure a Ceiling fan with SpeedControl [
fan] - Configure a Ceiling fan with SpeedControl and a Light switch [
fanLight] - Configure a Ceiling fan with SpeedControl and a Light with Dimmer [
fanLightDimmer] - Configure only a light Dimmer [
lightDimmer] - Do not configure this ceiling Fan [
doNotConfigure]
The key words within the square brackets are the possible values to the setupOption in the config.json (see example below).
(B) Users who do not have access to Homebridge UI need to make sure that the homebridge config.json contain a BondBridge config looks like the following:
{
"name": "BondBridge",
"debug": false,
"devices": [
{
"ipAddress": "<your Bond ID or ip address>",
"token": "<your Bond Bridge Local Token>",
"debug": false,
"CFsettings": {
"setupOption": "lightDimmer",
"timerSetup": true
}
}
],
"platform": "BondBridge"
}What You Expect to See in Homekit
For 'Full Setup' with 'Timers', you should expect to see 4 Homekit tiles per ceiling fan/light; one for the Fan with speed control, one for the Light with brightness control, one for the Fan Timer and another for the Light Timer (not shown, it is similar to the Fan Timer).

The Timers are custom-built timers and used 'Lightbulb' accessory as a proxy and 'Brightness' in % have a scale of 6 minutes per 1%, or 10% = 1.0 hour and a maximum of 10 hours timer can be set. You can set either time-to-on or time-to-off timer. Setting the Fan or Light Timer when the Fan or Light is in "Off" state will be a time-to-on timer and vice versa.
How You Can Help
- Report Bugs/Errors by opening Issues/Tickets.
- Suggest Improvements and Features you would like to see!
Special Thanks
Many thanks to Mitch Williams who has initiated the homebridge-cmd4-AdvantageAir plugin and has allowed me to participate in its development and in the process I have leant a lot about GitHub and on bash and javascript coding in homebridge environment.
Many thanks also to John Talbot for his fantastic homebridge-cmd4 plugin which I forked and reused most of the original logic, with some modifications and adjustments to meet the requirements of this plugin.
And never forget to thank my beautiful wife who has put up with my obsession on this.....
LICENSE
This plugin is distributed under the MIT license. See LICENSE for details.
