Adjusting "reps" - is this still supported?

I have a number of ceiling fans being controlled by a Bond Bridge Pro. It’s kind of hit and miss whether the fans respond to commands. I have found that if I tap the button in the Bond app repeatedly, I get better results.

I did some searching online and found some (old) posts about using curl commands to adjust a “reps” setting. But when I try this, it does not appear to work (I get errors in the bond app). There also does not appear to be any UI in the bond app or the bridge’s HTML UI to change “reps.”

Is this setting still supported? If so, where can I find documentation on how to set it?

Thanks!

Still available based on local API curl commands:

Further documentation: Bond Local API

OK. Finally had time to try this, but running into an issue. I follow the steps in the video, and everything works fine. But when I pull the signal information for a command, I get HTTP/1.1 204 No Content. If I PATCH the reps, I get back content with the signal, I can see the new reps but now the command no longer works. When I tap the button in the Bond app, I get a red banner that says “Success” (never seen that before), but the light on the bridge does not flash.

Content I am getting back after PATCHing the reps: {“freq”:0,“bps”:0,“deviation”:0,“reps”:10,“modulation”:“OOK”,“encoding”:“cq”,“data”:“”,“_”:“c5df9cb6”,“__”:“c5df9cb6”}

Anyone have any ideas?

“data” looks blank in your example above, and I honestly don’t recall if that is expected.

I’ll try to poke around at my own Bridges later this week if no one else swoops in with ideas before then.

Still no success getting the Bond Bridge Pro to work when setting reps. I even reset everything back to factory, started over, and same result.

If I tap a button repeatedly in the Bond app, I can usually get the fan to respond, so setting reps seems like it would solve my problems, but can not get it to work.

Open to any ideas before I just uninstall the Bond Bridge…

Possibly important caveat I failed to remember and then make clear to you.

@merck in the video, the description mentions ”When raw-recording devices” …

(though I know a related forum post Need to hold/repeat RF signal for a few seconds - #2 by merck seems to call out both raw-recorded and template devices might work?

“ Second, did you have to record more than one button? Or did the Bond app find a result in our database?

Good news is, either way, if you are familiar with using an HTTP API, you should be able to modify this yourself.”

)

So is this device a template device? (did it present options to you for these ceiling fans after pressing one or two buttons in setup, and you chose the closest corresponding speed + light combinations?)

In either case (template or not) have you tried to make a duplicate device, and when first setting up, go into Advanced and uncheck use database lookup?
Then you’d raw record each button, but for now just choose to record one button that gives you trouble, then modify the reps as the video walks through.
This preserves your current device(s) and lets you ‘play’ with a different one.

Here’s my run of that on Windows today, which I am happy to confirm still works with a raw-recorded floor lamp.
(Yes, I had originally lied to the Bond app and claimed was a fireplace, upon initial recording of buttons.)

Changed from 1 rep to 5 as below, and then later back to 1 rep (not shared here):

C:>curl -H “BOND-Token: xxxxxxxxxxxxxxxxxx” -i http://bondID.local/v2/devices/14c80053
HTTP/1.1 200 OK
Connection: close
BOND-Flags: 4
Content-Length: 349
Content-Type: application/json; charset=utf-8

{“name”:“Floor Lamp”,“type”:“FP”,“location”:“Guest Office”,“tech”:240,“actions”:[“DecreaseFlame”,“IncreaseFlame”,“SetFlame”,“Stop”,“ToggleLight”,“TogglePower”,“TurnLightOff”,“TurnLightOn”,“TurnOff”,“TurnOn”],““:“e3125273”,”__“:“c471d290”,“commands”:{””:“f4fbcd3c”},“state”:{““:“fd5af5c3”},“properties”:{””:“2640d3da”},“skeds”:{“_”:“00000000”}}

C:>curl -H “BOND-Token: xxxxxxxxxxxxxxxxxx” -i http://bondID.local/v2/devices/14c80053/commands
HTTP/1.1 200 OK
Connection: close
BOND-Flags: 4
Content-Length: 146
Content-Type: application/json; charset=utf-8

{““:“f4fbcd3c”,”__“:“00000000”,“00e0ffa3”:{””:“f75fc62a”},“244be07d”:{““:“b0621e22”},“15c39bcd”:{””:“2e29f199”},“5b8edbb1”:{“_”:“c3cfbaa6”}}

C:>curl -H “BOND-Token: xxxxxxxxxxxxxxxxxx” -i http://bondID.local/v2/devices/14c80053/commands/00e0ffa3
HTTP/1.1 200 OK
Connection: close
BOND-Flags: 4
Content-Length: 245
Content-Type: application/json; charset=utf-8

{“name”:“Toggle Light”,“action”:“ToggleLight”,“argument”:null,“button_type”:“tap”,“category_name”:“Light”,“feedback”:“state.light==1”,“icon”:“light”,“hidden”:false,““:“f75fc62a”,”__“:“22ae78f3”,“signal”:{””:“ee195f71”},“tx”:{“_”:“00000000”}}

C:>curl -H “BOND-Token: xxxxxxxxxxxxxxxxxx” -i http://bondID.local/v2/devices/14c80053/commands/00e0ffa3/signal
HTTP/1.1 200 OK
Connection: close
BOND-Flags: 4
Content-Length: 6273
Content-Type: application/json; charset=utf-8

{“freq”:434000,“bps”:40000,“deviation”:0,“reps”:1,“modulation”:“OOK”,“encoding”:“hex”,“data”:“8000007FFFE01F000007C00001FFFF807FFFE01F000007FFFE01F000007C00001F000007C00001FFFF807C00000000000000000000000000000000000000000000000001F000007C00001FFFF807FFFE01FFFF807C00001F000007FFFE01F000007FFFE01F000007C00001FFFF807C00001F000007FFFE01FFFF807C00001FFFF807C00001F000007C00001F000007FFFE01F000000000000000000000000000000000000000000000000003E00000F800003FFFF00FFFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007C00001F000007FFFE01FFFF807FFFE01F000007C00001FFFF807C00001FFFF807C00001F000007FFFE01F000007C00001FFFF807FFFE01F000007FFFE01F000007C00001F000007C00001FFFF807C00000000000000000000000000000000000000000000000001F000007C00001FFFF807FFFE01FFFF807C00001F000007FFFE01F000007FFFE01F000007C00001FFFF807C00001F000007FFFE01FFFF807C00001FFFF807C00001F000007C00001F000007FFFE01F000000000000000000000000000000000000000000000000001E00000F800003FFFF007FFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007E00001F800003FFFF007FFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007C00001E00000FFFFC03FFFF00FFFFC03E00000F800003FFFF00F800003FFFF00F800003E00000FFFFF”,“_”:“ee195f71”,“__”:“ee195f71”}

C:>curl -H “BOND-Token: xxxxxxxxxxxxxxxxxx” -i -X PATCH http://bondID.local/v2/devices/14c80053/commands/00e0ffa3/signal -d "{\"reps\": 5}"
HTTP/1.1 200 OK
Connection: close
BOND-Flags: 4
Content-Length: 6273
Content-Type: application/json; charset=utf-8

{“freq”:434000,“bps”:40000,“deviation”:0,“reps”:5,“modulation”:“OOK”,“encoding”:“hex”,“data”:“8000007FFFE01F000007C00001FFFF807FFFE01F000007FFFE01F000007C00001F000007C00001FFFF807C00000000000000000000000000000000000000000000000001F000007C00001FFFF807FFFE01FFFF807C00001F000007FFFE01F000007FFFE01F000007C00001FFFF807C00001F000007FFFE01FFFF807C00001FFFF807C00001F000007C00001F000007FFFE01F000000000000000000000000000000000000000000000000003E00000F800003FFFF00FFFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007C00001F000007FFFE01FFFF807FFFE01F000007C00001FFFF807C00001FFFF807C00001F000007FFFE01F000007C00001FFFF807FFFE01F000007FFFE01F000007C00001F000007C00001FFFF807C00000000000000000000000000000000000000000000000001F000007C00001FFFF807FFFE01FFFF807C00001F000007FFFE01F000007FFFE01F000007C00001FFFF807C00001F000007FFFE01FFFF807C00001FFFF807C00001F000007C00001F000007FFFE01F000000000000000000000000000000000000000000000000001E00000F800003FFFF007FFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007E00001F800003FFFF007FFFC03FFFF00F800003E00000FFFFC03E00000FFFFC03E00000F800003FFFF00F800003E00000FFFFC03FFFF00F800003FFFF00F800003E00000F800003E00000FFFFC03E000000000000000000000000000000000000000000000000007C00001E00000FFFFC03FFFF00FFFFC03E00000F800003FFFF00F800003FFFF00F800003E00000FFFFF”,“_”:“d7a4cea6”,“__”:“d7a4cea6”}

Pay close attention to the exterior / interior double quotes in the -d(ata) payload – for instance, on Windows, I’ve had the most luck with \-escaping them, as shown above in the last command:
“{\"reps\": 5}”
This varies based on platform. Merck was using some sort of ‘nix flavor, I think, and he used single quote exterior and double quote interior, seemingly without \-escaping:
’{"reps": 10}'

The “freq”: 0 is the part that confuses me, and even the “encoding”: “cq" is different than the typical “encoding”: “hex” I see for my devices, but someone from the Bond team may have better notes about what that combination of values means, particularly the “freq”: 0.

Yes. These are templated devices—I just pressed one button during setup and then selected a matching ID…