I just got my Bond Home with the v2 firmware, I have been working on code to integrate it into my HA system MisterHouse.
When I send commands to one of my fans such as “speed 6” while the fan is off, generally the fan will not come on, in addition at that point I am not able to control that fan from the Android app any more. In order to get the fan to respond to the app again, I have to push any button the regular fan remote. It seems that I can change the speed of the fan with the API commands once its already running which is odd.
Note: This behavior does not seem to be consistent, I was able to get the fan to start a few times by sending a speed command with the API directly. If I don’t send any commands with the API, I am able to consistently control the fan via the app with no issue.
I wrote a quick mock up Perl script that iterates through the devices, gets the names/commands/etc, then iterates through the commands to get the names/etc and dumps them into a hash for use by MisterHouse, from that point on MisterHouse can use the in memory hash instead of constantly pulling the info from the Bond. The problem is that HTTP calls to the Bond randomly timeout during the process of iterating through the devices/commands, I added a retry logic but waiting for a timeout and retrying takes a long time and would delay the application start up.
Version:
“target”:“zermatt”,“fw_ver”:“v2.5.2”,“fw_date”:“Thu Mar 7 19:54:03 UTC 2019”,“manufacturer”:“Olibra”,“model”:“BD-1000”,“branding_profile”:“O_BD-1000”
Fan info:
REMOTE FCCID: CHQ9053T - Frequency 303.798 MHz
$VAR1 = {
‘location’ => ‘Living Room’,
‘name’ => ‘LivingroomFan’,
‘commands’ => {
‘’ => ‘10c97285’
},
'’ => ‘bf67a838’,
‘type’ => ‘CF’
};
$VAR1 = {
‘argument’ => ‘’,
‘signal’ => {
‘’ => ‘0114fe81’
},
'’ => ‘9fdcd492’,
‘icon’ => ‘button_io’,
‘name’ => ‘Power’,
‘action’ => ‘TurnOff’,
‘tx’ => {
‘’ => ‘154a2d6a’
}
};
$VAR1 = {
‘tx’ => {
'’ => ‘5ab1c0b3’
},
‘action’ => ‘SetSpeed’,
‘name’ => ‘Speed 3’,
‘icon’ => ‘button_speed_3’,
‘’ => ‘3acec72d’,
‘argument’ => ‘’,
‘signal’ => {
'’ => ‘b03aba03’
}
};
$VAR1 = {
‘name’ => ‘Speed 2’,
‘action’ => ‘SetSpeed’,
‘tx’ => {
‘’ => ‘38161e2a’
},
‘argument’ => ‘’,
‘signal’ => {
'’ => ‘10caa39e’
},
‘icon’ => ‘button_speed_2’,
‘’ => ‘1104d773’
};
$VAR1 = {
‘icon’ => ‘button_speed_6’,
'’ => ‘346b973d’,
‘argument’ => ‘’,
‘signal’ => {
‘’ => ‘24af06e1’
},
‘tx’ => {
'’ => ‘dfb9aaca’
},
‘action’ => ‘SetSpeed’,
‘name’ => ‘Speed 6’
};
$VAR1 = {
‘icon’ => ‘button_reverse’,
‘’ => ‘7496c838’,
‘argument’ => ‘’,
‘signal’ => {
'’ => ‘ba47fcc6’
},
‘tx’ => {
‘_’ => ‘1ffc7e8e’
},
‘action’ => ‘ToggleDirection’,
‘name’ => ‘Reverse’
};