Device Restore over USB (DFU) from a browser!

Experimental full software update of Device OS, bootloader, soft device (on Gen 3), and Tinker (or Tracker Edge) in DFU mode from a Chromebook browser. No software install or extensions required.

Can upgrade or downgrade, no need to download binaries separately. You just select a version from a popup menu.

Here’s a 28 second video of a Photon flash:

Also works on Windows, Mac, and Linux on Chrome, Edge, and Opera with caveats. Here’s a video of a Boron flash from a Mac:

Also works from an Android phone in Chrome with USB OTG, no apps or extensions required.

Here’s the page, which lists all of the many caveats:

https://docs.particle.io/device-restore-usb/

10 Likes

@rickkas7 could this be updated somehow so that user firmware could be flashed instead tinker? like have a file location for the user firmware?

That’s technically feasible. That’s what’s done with the hex generator for manufacturing using JTAG/SWD.

The USB device restore tool wasn’t really intended for production use, but it’s a reasonable feature request.

it could also be really helpful if we had this available on our own website. Where if clients have issues with OTA bad cell signal etc. they could easily get it updated by going to a website of ours. This would also be really help for production as all files would be maintained in one spot so everytime a version changes we dont have to reconfigure 4 or more computers.

I added custom user firmware binary feature to Device Restore over USB:

In addition to the Tinker option, there are now two (sometimes three) new options:

  • Custom User Firmware Upload
  • Custom User Firmware from URL

The first has a file selector button that allows you do supply your own user firmware .bin file from your browser. This is done entirely within your browser and the binary isn’t uploaded to any servers.

The second downloads the binary from a web server. I tested it using Github Pages and it worked great.

When you use the from URL option, the URL in the browser will change to be the Custom URL restore URL. If you give that URL to someone, it will pre-populate the URL and hide the unnecessary options in the page when opened.

If your binary targets a Device OS version that there is no restore available for, then the next higher version will be used.

2 Likes