Bug Bounty: Electron not booting after battery discharges completely

yeah I understand and agree.

Try adding code to enable brownout reset. It can’t hurt anything, might fix your problem, and if not, you can tell us so we can try to narrow down the root cause of the issue:

Is it an AssetTracker v1 or v2?

The reason why i asked is to reproduce a setup on my side if possible and see what went wrong.

v2 in the two most recent cases. i have two of each and it happens on all of them, though. i don’t think the GPS has anything to do with it.

1 Like

Awesome. I have a AssetTracker V2 so that helps.

Don’t have a 6V 6W Solar panel but i will use something from the stash and see what happens.

Sorry for the bummer!

1 Like

Hey All, we recently released v0.7.0-rc.1 pre-release firmware that offers many improvements for flash memory robustness.

A summary is here

Full changelog here

The pertinent bits are as follows:

  • System firmware now restores public server key and server address if missing
  • Added CRC checking to the Electron DCD & Photon/P1 DCT implementation so that write errors are detected.
  • Added a critical section around flash operations and around DCD/DCT operations to make them thread safe.
  • Fixes possible corruption of event data in multi-threaded firmware
  • Use backup registers instead of DCD/DCT to store system flags to avoid chance of a DCD/DCT corruption

:notepad_spiral: :pencil2: For those of you that can unfortunately replicate your issues quite easily… I would really appreciate your thoughts on the improvements made above and if they help in your applications.

4 Likes

@BDub Are you saying these updates should help eliminate the memory corruption issues with Electrons where the battery is allowed to drain to empty?

That’s the intention.

Yes, we’ve seen various types of flash corruption that can occur that 0.7.0-rc.1 proposes solutions to.

2 Likes

:clap:

Hi

I was running a unit with 0.7.0-rc.2 and it got corrupted when the battery went flat. - How do we recover from this, I have STLINKv2 etc but can’t get it to connect, although following the docs, its difficult to get it connect anyway.

A second unit suffered from never connecting to the Particle Cloud after the battery went flat (ie Fast Cyan Flash) even after reflashing with 0.7.0-rc.3 and new application code. It connects to the cellular OK, and then gets stuck at Fast Cyan Flash.

Regards
Marshall

I managed to wipe and relaod the bootloader and system firmware on the electron using the STLINK utility

now I get the following message

"I didn’t recognize that device name or ID, try opening https://api.particle.io/v1/devices?access_token=xxxxxx "

when I do a “particle flash tinker”

What do I do to make it work again?

This is sooo frustrating, this is supposed to just work, I really want to deploy this product and keep getting tripped up.

Thanks
Marshall

depending on what “wipe” means you might have to setup like new or reclaim the device. you can try particle flash --usb tinker or particle flash --serial tinker with device connected via usb

@marshall, you may want to try the latest version of CLI (1.24.0) which now implements device doctor to recover devices to “factory” state. :wink:

1 Like

device doctor fails on a windows machine

Put the device in DFU mode
Tap RESET/RST while holding MODE/SETUP until the device blinks yellow.
? Select Continue when ready Continue
Okay! New keys in place, your device will not restart.
Error creating keys… Error: Command failed: C:\WINDOWS\system32\cmd.exe /s /c “openssl ecparam -name prime256v1 -genkey -out 1234567890987654321_ec_new.pem”
‘openssl’ is not recognized as an internal or external command,
operable program or batch file.

That’s a PATH issue on your machine, not a CLI shortcoming.

1 Like

Not if you don’t have openssl on your machine by default though.

I didn’t think that Windows shipped with openssl?

I have got that working now by finding openssl in my mingw dir and running device doctor from there.

Next step it connected to particle and immediately breathes violet, I thought it was getting an OTA upgrade but it has been like that for about 10minutes

any ideas?

@marshall, the Windows installer for CLI also installs openSSL.

1 Like

OK - I’ll check my path issues.

I now have 2 electrons that have been doctored. both seem to connect to particle, (fast cyan flash) but rather than progressing to breathing cyan they are instead progressing to breathing violet, like the OTA / serial listen mode.

I’ll see if I can see them on particle somehow.

@marshall, your Electrons are likely in Safe mode, waiting for your app. If you are connected via USB, you can flash the code over via serial or DFU.