[SOLVED] Electron high frequency flashing in cyan

It was happy for a few days breathing cyan, that the noobe in my decided to flash the latest firmware, and since then it is stuck on flashing high frequency cyan, which is not on the Electron mode list page.

It does go through listing mode and setup but stays in that mode. After a cold boot it goes back to rapid cyan flashing mode.

I would appreciate all the help

Thanks
Reza

How did you flash the new firmware?
What was the output while flashing?
Did you flash your own code or tinker after the update?
Any chance to try Safe Mode?
Any short red/orange flashesduring the rapid cyan flashing?

1 - Flashed it with particle cli and output was success both parts ( don’t have the output )
2- Flashed Tinker
3 - I will try the safe mode after this
4- No, it goes sometimes goes white briefly before blinking green and then rapid cyan

Thank you

Update on safe mode: it does not stay in safe mode and continues to DFU mode

I reflashed the update and tinker again:

electron particle flash --usb system-part1-0.5.0-electron.bin
running dfu-util -l
Found DFU device 2b04:d00a
checking file system-part1-0.5.0-electron.bin
spawning dfu-util -d 2b04:d00a -a 0 -i 0 -s 0x08020000 -D system-part1-0.5.0-electron.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 2b04:d00a
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "Internal Flash   "
Downloading to address = 0x08020000, size = 122916
Download	[=========================] 100%       122916 bytes
Download done.
File downloaded successfully

Flash success!
➜  electron particle flash --usb system-part2-0.5.0-electron.bin
running dfu-util -l
Found DFU device 2b04:d00a
checking file system-part2-0.5.0-electron.bin
spawning dfu-util -d 2b04:d00a -a 0 -i 0 -s 0x08040000 -D system-part2-0.5.0-electron.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 2b04:d00a
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "Internal Flash   "
Downloading to address = 0x08040000, size = 120436
Download	[=========================] 100%       120436 bytes
Download done.
File downloaded successfully

Flash success!
➜  electron particle flash --usb tinker
running dfu-util -l
Found DFU device 2b04:d00a
checking file /usr/local/lib/node_modules/particle-cli/binaries/electron_tinker.bin
spawning dfu-util -d 2b04:d00a -a 0 -i 0 -s 0x08080000:leave -D /usr/local/lib/node_modules/particle-cli/binaries/electron_tinker.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 2b04:d00a
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "Internal Flash   "
Downloading to address = 0x08080000, size = 5776
Download	[=========================] 100%         5776 bytes
Download done.
File downloaded successfully

Flash success!

You do release the SETUP button as soon as you see the first magenta flash?

There are multiple ways to flash the update via CLI

  • OTA
  • serial
  • DFU

which one did you use?
What does particle serial inspect tell you?
There is also a debug firmware that would output the communication with the cellular modem
You should be able to use the 0.4.8 debug app with 0.5.0 too
https://particle.faqt.co/share/h867h4

Just to make sure, you are running CLI 1.12.0 (or newer if you’ll read this in future :wink: )?


Update
I see, I was a bit late with posting this :wink:

Debugging firmware end in red blinking and with one red blink ( hard fault)

Trying to put it in safe mode takes it back to white-green then rapid cyan :frowning:

Thank you for your help

I’ll try to pull Particle attention to this thread then …
… stay tuned

I did and supplied more personal details as well … Thank you again. much appreciated …

Hey there! Fast flashing cyan usually indicates that the device is attempting to complete a handshake with the Cloud. There is one point I’d like to verify with you. When you say that the device has one red blink–a hard fault presents by first blinking the SOS pattern, then the code indicating the error mode, then the SOS pattern again. So, for a hard fault, you should see:

S-O-S = 3 fast blips, 3 long blips, 3 fast blips
Hard fault = 1 blip
S-O-S = 3 fast blips, 3 long blips, 3 fast blips

So, for a hard fault, you should see 19 red blips total.

What I’m guessing you’re seeing is fast flashing cyan, then a single red blip, then back to fast flashing cyan. This is an indication that there is a keys issue on the device, or that the device has not been properly provisioned. If this is what you’re seeing, than you should be able to put the device into DFU mode and run particle keys doctor using the CLI to resolve the issue. You can find more information about this process in the documentation, here:

https://docs.particle.io/reference/cli/#particle-keys-doctor

Does that help? Let me know!

Yes, one blip between two SOS blips after the debug firmware.
And, no there is no red blip, on power on it starts white, green and fast flashing cyan. The keys doctor did not help :frowning:

➜ electron: particle keys doctor 2e0047001951343334363036
running dfu-util -l
Found DFU device 2b04:d00a
running dfu-util -l
Found DFU device 2b04:d00a
running openssl ecparam -name prime256v1 -genkey -out 2e0047001951343334363036_ec_new.pem
running openssl ec -in 2e0047001951343334363036_ec_new.pem -pubout -out 2e0047001951343334363036_ec_new.pub.pem
running openssl ec -in 2e0047001951343334363036_ec_new.pem -outform DER -out 2e0047001951343334363036_ec_new.der
New Key Created!
running dfu-util -l
Found DFU device 2b04:d00a
This file already exists, please specify a different file, or use the --force flag.
Continuing…
checking file 2e0047001951343334363036_ec_new.der
spawning dfu-util -d 2b04:d00a -a 1 -i 0 -s 3106:leave -D 2e0047001951343334363036_ec_new.der
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Deducing device DFU version from functional descriptor length
Opening DFU capable USB device…
ID 2b04:d00a
Run-time device DFU version 011a
Claiming USB DFU Interface…
Setting Alternate Setting #1
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "DCT Flash "
Downloading to address = 0x00000c22, size = 122
Download [=========================] 100% 122 bytes
Download done.
File downloaded successfully
Saved!
running openssl ec -inform PEM -in 2e0047001951343334363036_ec_new.pub.pem -pubout -outform PEM -out /var/folders/65/2v23vlv9559fmxgx4bpkblg8rmbc8g/T/11645-11929-1rm591b.pub.pem
running openssl ec -pubin -inform PEM -in 2e0047001951343334363036_ec_new.pub.pem -pubout -outform PEM -out /var/folders/65/2v23vlv9559fmxgx4bpkblg8rmbc8g/T/11645-11929-1rm591b.pub.pem
attempting to add a new public key for device 2e0047001951343334363036
submitting public key succeeded!
Okay! New keys in place, your device should restart.
➜ electron:

Thank you for your help

If you put the device into DFU mode and type the following two commands, do you still end up with a hard fault?

  1. Put the device into DFU (flashing yellow) mode while connected to the computer
  2. particle update
  3. particle flash --usb tinker

When the Electron boots up, does it still result in a hard fault?

The 'hard fault' only happened with debug firmware, all else works just fine and ends up with rapid cyan flash
Here are the output of the two

➜ electron particle update

Your device is ready for a system update.
This process should take about 30 seconds. Here goes!

! System firmware update successfully completed!

Your device should now restart automatically.
You may need to re-flash your application to the device.


➜ electron particle flash --usb tinker
running dfu-util -l
Found DFU device 2b04:d00a
checking file /usr/local/lib/node_modules/particle-cli/binaries/electron_tinker.bin
spawning dfu-util -d 2b04:d00a -a 0 -i 0 -s 0x08080000:leave -D /usr/local/lib/node_modules/particle-cli/binaries/electron_tinker.bin
dfu-util 0.9

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util / Tickets

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 2b04:d00a
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 4096
DfuSe interface name: "Internal Flash "
Downloading to address = 0x08080000, size = 5776
Download [=========================] 100% 5776 bytes
Download done.
File downloaded successfully

Flash success!

Here is a video of electron booting up after the last two commands ( update and flash tinker )

https://drive.google.com/open?id=0B0SsthVR7OaPQW5uRkc3QlJmemc

I noticed in the video you don’t have the battery connected. The battery is required for the device to function correctly when connecting to cellular. Please be sure to connect the battery.

2 Likes

Thank you, it behaves the same way

https://drive.google.com/open?id=0B0SsthVR7OaPWG4xZlBrVGttUzQ

The part of the video where the LED actually blinks cyan was rather short.
How long did you leave the device with USB power and battery do the cyan blinking?
Could you try the debug tinker and/or troubleshooting app again with both power sources too?

For the first part, I left it on for the day, blinking rapid cyan. It would sometimes cycle through white, green, end up on rapid cyan stay there …

I will do that tonight ( at work now ) and report back

Cheers,

I’m sorry that I hadn’t thought to ask for the battery earlier, but this behaviour you described does well fit the bill.
The device itself is not that power hungry, so it will make it through all these stages with only 500mA provided by your USB port, but once the cellular modem tries to connect to the cell towers the current draw will exceede these 500mA and hence the battery would need to supply the excess energy, but if it’s not there the connection will never be established properly.
It’s a bit like the saying: too little to live on, but too much to die
So you’ll find your device in Limbo.

Once, your device made it beyond this point, the current draw would go bellow the 500mA threshold for most the time.

So if you had a quality 2A USB supply you might get away without the battery too.

No worries! I have tried all the combinations to no avail. Thanks for the info and comment

1 Like