A1a template up/down lights

Welcome, @tcrisall !

According to the notes above, this is expected, (assuming the bottom light was the last to be turned off).
Would you prefer both lights turn on when saying “turn lights on”? Not sure if the Bond team has had that specially requested, or if so, how often.

Ahhh - I missed the comment saying that was as per API spec… That provides me a different perspective.

To be honest - I was thinking from the perspective of a ‘room’ in the google home app. In my ‘room’ I have 3 lights, one which is actually a plugin with my desk lamp (integration X) - and 2 which were imported as part of the Bond integration. Looking at my ‘room’, if I detail into the 'lights; i am presented with a on/off button and a link which details the 3 lights. If I change the state of Google Home ‘room lights’ from off to on - I’m thinking that all 3 should turn on and indeed when I detail into the link for the 3 lights - after having pressed the ‘room lights’ ON function it considers all 3 lights to be in the on state (my plug, my down AND my up) however only 2 of the 3 are actually on - the plug + the lower. If I cheat and turn the upper light on with the remote (leaving google home thinking the light is on and now it actually is) and I now press the ‘room lights’ off button - it turns all 3 lights off and there is a noticeable delay (a second or less) between lower (which is turned off first) and upper (which is turned off second).

So - I guess my thoughts on how it work are really formed by the presentation of the Google Home app and the behaviour for controlling the ‘room lights’ (at least for the off function). I hope that’s a clear enough explanation.

Thanks for responding.

The upper and lower being different is quirky in my setup as well.
If it continues to be a frustration, please do respond back here so the Bond team can see that feedback, and they can let us know of any future options or modifications.

Thanks for the reply,

I guess my final say on this for the Bond team is that purely from the Google Home perspective, this appears as a bug. When you assume your turning all lights on it only turns on the bottom light, google thinks that it has turned them all on . When you turn all lights off, google indeed turns all lights off.

I would actually be interested in understanding what the difference is between ‘on’ and ‘off’ such that one SEEMS to only control one light (did it only send 1 command? or did it send both with no delay and the fan missed one?) and the other SEEMS to control two lights with a visible time difference between the two commands…

Thanks

@merck / @natan / @endy : anything you want to have @tcrisall try?
I know “Flow B” Chris described above is sort of expected- but I would think Google Home should be reporting only one light on.
So if GH expects integrations to turn on all lights when called out as a room or a device, perhaps Bond should think about either doing that when handling a GH voice command, or sending a “light off” command / status back to GH for the upper or lower light which was not turned on because of the ‘turn on only last turned off light’ behavior of Bond.

We will try to reproduce this and figure out whether this is a “Google thing” or a “Bond thing”.

Theory 1: Google Home is actually sending multiple actions down, and this is confusing things. We would expect just one TurnLightOn, but perhaps it’s doing TurnUpLightOn and then TurnLightOn or something like that.

Theory 2: Bond Bridge may be transmitting both signals, but somehow not leaving enough space between the transmissions so that the receiver can honor both requests. We may need to add more spacing at the end of the transmission.

Running a “live log” during the experiment will be the way to figure out what’s happening.

In case it helps … my fan that has an up and down light works like this with Google with “Bond Bridge” firmware v2.15.8:

  1. OK Google turn fan light on … The down light turns on.

  2. OK Google turn fan light off … the down light turns off.

  3. OK Google turn fan down light on … The down light turns on.

  4. OK Google turn fan down light off … the down light turns off.

  5. OK Google turn fan up light on … The up light turns on.

  6. OK Google turn fan up light off … the up light turns off.

If the up light is on asking Google to do actions 1 - 4 only effects the down light.

I see there is new firmware so I will try that. I updated to v.2.17.4. It still works as described above.

Hope that helps.

Hmm - One more bit to add to the puzzle… As I say, my room has a total of 3 lights in it, desk lamp, upper light and lower light. I just realized that if I walk into the room and say:

OK Google - turn on the lights … as discussed before, the lower light turns on, the desk lamp turns on.

if I now say:

OK Google - turn off the lights … the desk lamp is turned off, the lower light is turned off and the upper light turns on!

I can turn it off with a further OK Google - turn off the upper light.

So - I think I understand the states as described earlier in this thread and why the light is toggling the way it is, however, the Google integration seems to assume something different. It would be nice if this could be fixed but I also understand the devil is often in the details and it may be what it is :slight_smile:

Thanks for your time!

I’ve begun testing first party Bond <–> Google Home control today.

Currently I have set up my living room fan (A1a template with up/down light), and an RF lamp I also control through a Bond Bridge in the same Google Home “room” (as a fireplace, but with a “light” command present).

Flow 1:

  • Start with Bond app and Google Home agreeing with the real world that Up Light, Down Light and Fireplacelamp Light are all ON in the Google Home “Living Room”.
  • Ask Google Home to turn OFF all “Living Room Lights” - all 3 turn off with 3 distinct RF commands.
  • Ask Google Home to turn ON all “Living Room Lights” - Google says turning ON 3 lights, but only successfully sends 2 RF power toggle commands (one for Up Light and one for Fireplacelamp, which are then both turned ON). Down Light remains OFF in the real world, but Bond app and Google Home think it is ON.
  • Ask Google to turn OFF all “Living Room Lights” - Google says turning OFF 3 lights, and sends 3 successful RF power toggle commands. End result in real world: Up Light and Fireplacelamp are now turned OFF, Down Light is now turned ON. Google Home and Bond think all 3 are OFF.

Flow 2:

  • Start with Bond app and Google Home agreeing with the real world that Up Light, Down Light and Fireplacelamp are all OFF in the Google Home “Living Room”.
  • Ask Google Home to turn ON all “Living Room Lights” - Google says turning ON 3 lights, but only successfully sends 2 RF power toggle commands (one for Up Light and one for Fireplacelamp, which are then both turned ON). Down Light remains OFF in the real world, but Bond app and Google Home think it is ON.
  • Ask Google to turn OFF all “Living Room Lights” - Google says turning OFF 3 lights, and sends 3 successful RF power toggle commands. End result in real world: Up Light and Fireplacelamp are now turned OFF, Down Light is now turned ON. Google Home and Bond think all 3 are OFF.
    (LiveLog of Flow 2 incoming to you, @merck)

I assume that your Fireplace Lamp is on a different Bridge. Is that right?

Here’s what we see in your Flow 2 log:

  1. Bridge receives TurnUpLightOn & TurnDownLightOn actions from Google Home.
  2. Bridge sends two transmissions.
  3. Bridge receives TurnUpLight Off & TurnDownLightOff actions from GH.
  4. Bridge again sends two transmissions.

So, we don’t see any errors or clear misbehavior from the logs. (I was half expecting to see something wrong with the trust-state logic blocking one of the transmissions.)

We are checking here to repro this, and see if anything unusual is happening at the RF level. It may be that the receiver requires a longer delay between transmissions or else it will ignore the second command. If that’s the case it’s a pretty simple tweak for us in FW (or potentially could even be worked around via a PATCH to the data on the API.) — We will advise…

1 Like

Ah, whoops. Yes, I picked the wrong Bridge device so that’s why you don’t see those commands in the LiveLog (I have FireplaceLamp on 2 bridges for A/B testing, and chose the wrong one for this log). Sent a v2 log which has the extra device.

Let me know if I can help in any more flow testing or whatnot.