Bridge Firmware v2.11.2: Increase/DecreaseSpeed Fix

Hey all, just released v2.11.2 to Beta for Bond Bridges.

This version has a fix for the Increase & Decrease Speed actions, which were broken in a recent update. As we go, we’re adding more and more firmware tests to ensure that these API breaks are caught before release.

2 Likes

So dumb question, but is the way to load beta firmware just through REST calls to the API?

1 Like

There is, you need to know the URL of the beta firmware and some metadata about it for validation though. I can put together a request for you, but if you’ve got Python 3 on your machine I’ve got a quick solution for you:

pip install bond-cli
bond discover
bond select {Bond ID}
bond upgrade --release beta

If you don’t already have Python (or maybe you have Python 2? I really should get it working for older versions), let me know and I’ll throw together a request for you.

1 Like

Exactly what I need. However, I get this upon upgrade:

f:\Python37\Scripts>python bond upgrade --release beta
Connecting to BOND…
Detected Target: zermatt
Selected Branch: beta-zermatt
Current Version: v2.10.21
Installing Version: v2.11.2-beta
Are you sure? [N/y] y
Requesting upgrade…
Traceback (most recent call last):
File “bond”, line 7, in
app.run()
File “F:\Python37\lib\site-packages\bond\app.py”, line 22, in run
bond.cli.execute_from_command_line(sys.argv)
File “F:\Python37\lib\site-packages\bond\cli\main.py”, line 28, in execute_from_command_line
args.func(args)
File “F:\Python37\lib\site-packages\bond\commands\upgrade.py”, line 137, in run
do_upgrade(bondid, version_obj)
File “F:\Python37\lib\site-packages\bond\commands\upgrade.py”, line 45, in do_upgrade
progress = rsp[“b”][“progress”]
TypeError: ‘NoneType’ object is not subscriptable`

1 Like

Ouch, okay, I’ll put some more work into it. For now, the endpoint to hit is

PUT /v2/sys/upgrade

with the body

{“path”: “/bond-updates/v2/zermatt/beta-zermatt/zermatt.v2.11.2-beta.app.bin”, “host”: “s3.amazonaws.com”, “http_port”: “80”, “version”: “v2.11.2-beta”, “sig”: “”, “info”: “b485b129f252fe3724b65385e0268f846f7f6ce4e00737c9c8590be96d8b6315:zermatt:v2.11.2-beta”, “port”: “443”, “reboot”: 1}

The last key/value will make the Bond reboot into the new firmware automatically.

(Documented here)

1 Like

I found that the bond-cli problem is due to the token not being set! bond select {id} only gets the token if it’s unlocked (that is, shortly after a boot or after you unlock it via the API)

I’m going to make this clear in the output of bond select. There’s also a bond token command that lets you manually set the token.

Great! Thanks. I will bookmark this for future beta upgrades. The 2.11.2 is working well for my integration.

2 Likes