Electron OTA updating system firmware to 0.5.0 fail

I’ve done
particle flash YOUR_DEVICE_NAME system-part1-0.5.0-rc.1-electron.bin
Put into safe mode again or it will fail
particle flash YOUR_DEVICE_NAME system-part2-0.5.0-rc.1-electron.bin
Both success

Powered off/on

On the device: 0.4.8
in the IDE

Please help?

You don’t want to do that system update OTA - that will suck some big chunks of your monthly data allowance :wink:

Rathet go via USB with

// put device into DFU mode
particle flash --usb system-part...
// if your device still is in DFU Mode after part 2, flash some app code like
particle flash --usb tinker

Then go to Web Build IDE set the target for 0.4.8 and flash, after that you should see your device system version updated (that’s a quirk that will be solved some time)

I’ve tried and failed to do OTA update to 0.5.0 as well without success. I’ll update over USB when I can, but when the units are remote, sorta need that OTA update to work.

Is it expected to work? I had the same problems as sbright33 at first and when I just tried again, the flash call failed entirely.

+1 on knowing if OTA is expected to work for upgrading Electron from 0.4.8 to 0.5.0.

As for data allowance, I understand it could take up a large chunk for some users, but defaulting to that mode of thinking for all users seems overly simplistic. For example, my Electron’s are mostly in the field, and require me to drive and then walk to them. I am happy to pay an extra $0.99 for data if I don’t have to do this.

You can download the system firmware and flash it yourself OTA using the CLI if you prefer to use OTA updates.

I also can’t get to my devices physically to update via USB, and I am having this problem as well. Has anyone else been able to get this to work?

I flashed part1 and part2 OTA from the CLI, got “Flash device OK: Update started” for both. Tried flashing my code (from Particle Dev, presumably targeting 0.5.0 by default) and the Electron went into safe mode so I reset and reflashed system binaries OTA and got the same responses and then, as @ScruffR suggested, I flashed Tinker from Build with 0.4.8 (On device) targeted but it has not updated to 0.5.0 and again when I flash my code it still goes back to safe mode.

I’m not really sure how to look into this any further, is there any way to get verification that the system firmware is updating from the OTA flash? It doesn’t seem that the update is actually happening even though the flash call from the CLI returns a success message.


Have you hit CLEAR CACHE in Build properties drawer after you did that?

BTW, what did https://dashboard.particle.io/user/logs report while you were doing your OTA update?

The logs show status started events but nothing more. One of these for each system OTA flash:

Flashing the tinker at the end failed first but on the second attempt gave me:

And then clearing the cache didn’t change anything in build, but it seems like from this that the problem is before that.

This doesn’t look like a system firmware update?

I wasn’t really sure what I was supposed to see upon flashing the 0.5.0 parts OTA but, since I saw a ‘started’ event but not a ‘success’ event, I assumed that indicated that the system update hadn’t been fully completed. Is the ‘started’ event all I am supposed to see when doing the system firmware update?

Yup, there is no more than two spark/flash/status started responsed on the dashboard, so I flashed this simple sketch to see what I’ve got

void setup() 

void loop() { }

Which should report 0.5.0 if your update succeeded.

@mdma Could you please provide step by step instructions on flashing system firmware OTA using CLI. We have a device shipped to a customer and we really need flash system firmware OTA.

Hi @Falcon

The files are on the github firmware releases page here:

The instructions in general are on github too, but here are the specific Electron instructions: