Photon setup flashing cyan with a "quick red burst" (now orange burst) [Solved]

How did you fix that? Did you go into “yellow mode”? I got all mine but the one to work now with a simple factory reset.

Yellow blinking is DFU mode - https://docs.particle.io/guide/getting-started/modes/photon/#dfu-mode-device-firmware-upgrade-

I finally compiled a ‘good’ firmware and uploaded it to my Dashboard… If only one of your devices is having a problem, then your issue is probably different than mine.

Also, I have had a better experience working with the recent v0.4.4 firmware release.

Sorry, now it is to late :wink:
My Photon was rescued by this thread (fast blinking cyan with very short flashes of red in between, later then only fast cyan)
I tried a lot, including firmware-reset, create new key … but after

dfu-util -d 2b04:d006 -a 1 -s 2082 -D ./Downloads/cloud_public.der

all works perfect.

How did i get into the Problem ?
My photon worked out of the box. I claimed it. did a few tests with tinker. …
Days later i assembled the photon and adjusted the Voltage … In this process i had the photon multiple times connected and disconnected to power. I wondered why the photon did blink in some unusual colors, but i couldn´t undo the power-off.
So i think in my case the reason was an interrupted auto-update.

Hi mdma - I have the rapid cyan, looks like will connect - then short red flash problem too,
I tried Dave’s solution to do a “particle keys send DEVICE_ID KEY_FILE”

I got;
C:\Users\CHRIS>particle keys send DEVICE_ID KEY_FILE
Couldn’t find KEY_FILE.pub.pem

I tried your suggestion “particle keys new” and got this response on the terminal

C:\Users\CHRIS>particle keys new
running openssl genrsa -out device.pem 1024
Error creating keys… Error: Command failed: ‘openssl’ is not recognized as an
internal or external command,
operable program or batch file.

Any idea what I’m doing wrong here?

I guess you don’t have openssl installed? You’ll need to install that on Windows first.

Yes, that was my first thought - but definately installed - and re-installed. Sorry, should have pointed that out. And, the Particle CLI works in all other respects

Then it looks like it’s not in your path. Please see “Adding OpenSSL to Windows path” in the link above.

OOOOhhh Kay, may have overlooked something here and really screwed things up. I found the guide to setting the path for Open SSL really confusing. But I managed to find the .bin directory and run a command prompt from there - entering your suggested “particle keys new” and got the response “new keys created” I then realised this is the approach if you have NEVER had the unit connected to the cloud. Mine has - for some time. Have I “bricked” it?

Not bricked, you should be fine, just be sure to also run particle keys send with the new keys so the cloud accepts the new keys from the device. (There’s a post about that further up.)

I had a working Photon and was trying to integrate a Super Cap to provide a power off alert via a webhook - my problem occurred after the Cap slowly discharged VIN, so I guess pretty much the same as a brown-out

Thanks a lot for your advice - much appreciated. But seems a bit beyond me - nothing I try seems to work. I think my biggest problem is getting the OpenSSL to work “globally” - and retrieving the key. I ran Kenneths suggested process for updating the public key and that seemed to work - but same outcome (flash red). Will have another go soon.

Please also try updating the server public key, since that might have changed too:

// grab this file https://s3.amazonaws.com/spark-website/cloud_public.der
particle keys server cloud_public.der

OK, managed to update that too - still no response. The terminal output is as follows:

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>dfu-util -d 2b04:d006 -a 1 -s 2082 -D

cloud_public.d
dfu-util 0.7

Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2012 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Filter on vendor = 0x2b04 product = 0xd006
No DFU capable USB device found

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>dfu-util -d 2b04:d006 -a 1 -s 2082 -D

cloud_public.d
dfu-util 0.7

Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2012 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Filter on vendor = 0x2b04 product = 0xd006
Opening DFU capable USB device… ID 2b04:d006
Run-time device DFU version 011a
Found DFU: [2b04:d006] devnum=0, cfg=1, intf=0, alt=1, name="@DCT Flash /0x00000000/01*016Kg"
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
No valid DFU suffix signature
Warning: File has no DFU suffix
DfuSe interface name: "DCT Flash "
Downloading to address = 0x00000822, size = 402
.
File downloaded successfully

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>particle keys server cloud_public.der
running dfu-util -l
Found DFU device 2b04:d006
checking file cloud_public.der
spawning dfu-util -d 2b04:d006 -a 1 -i 0 -s 2082 -D cloud_public.der
dfu-util 0.7

Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2012 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

Filter on vendor = 0x2b04 product = 0xd006
Opening DFU capable USB device… ID 2b04:d006
Run-time device DFU version 011a
Found DFU: [2b04:d006] devnum=0, cfg=1, intf=0, alt=1, name="@DCT Flash /0x00000000/01*016Kg"
Claiming USB DFU Interface…
Setting Alternate Setting #1
Determining device status: state = dfuDNLOAD-IDLE, status = 0
aborting previous incomplete transfer
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 = 0x00000822, size = 402
.
File downloaded successfully
No valid DFU suffix signature
Warning: File has no DFU suffix
Okay! New keys in place, your device will not restart.

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>^A

What do you mean?

Sorry, still getting the red flash

I’m not sure why you have 3 copies of the same output above.

Here’s the full list of steps for completeness:

particle keys new
particle keys load device.pem
particle keys send <device_id> device.pub.pem

// grab this file https://s3.amazonaws.com/spark-website/cloud_public.der
particle keys server cloud_public.der

If you’ve done this and still getting a red flash then it’s not a keys problem but a connection issue.

2 Likes

OK - will seek help with the Open SSL issue. If I run step 1 from the directory containing the OpenSSL bin, I get :
C:\OpenSSL-Win32\bin>particle keys new
running openssl genrsa -out device.pem 1024
running openssl rsa -in device.pem -pubout -out device.pub.pem
running openssl rsa -in device.pem -outform DER -out device.der
New Key Created!

If I go to step 2 in the same directory, I get

C:\OpenSSL-Win32\bin>particle keys load device.pem
running dfu-util -l
Error saving key to device… dfu-util is not installed

I see the files in the directory - but clearly no link to DFU. Probably a newbie prob - just not able to understand the guide to making the OpenSSL and DFU talk to each other.

Thanks for your patience. Will revisit in next couple of days.

@DRCO, you need to add the folder where dfu-util is located in the windows PATH.

Hi Peekay, I followed the guide as best I could and think I have both the OpenSSL and DFU in PATH. I followed the instructions to “force” the update when run from the DFU directory- but get this response on the command line:
C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>particle keys load device.pem
running dfu-util -l
Found DFU device 2b04:d006
This file already exists, please specify a different file, or use the --force flag.
Error saving key to device… This file already exists, please specify a different file, or use the --force flag.

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>particle keys load device.pem --force
running dfu-util -l
Found DFU device 2b04:d006
running dfu-util -l
Found DFU device 2b04:d006
running dfu-util -d 2b04:d006 -a 1 -s 34:612 -U pre_device.der
running openssl rsa -in pre_device.der -inform DER -pubout -out pre_device.pub.pem
Error saving key from device… Error: Command failed: ‘openssl’ is not recognized as an internal or external command,
operable program or batch file.

Error saving key to device… Error: Command failed: ‘openssl’ is not recognized as an internal or external command,
operable program or batch file.

C:\Users\CHRIS\Desktop\DFU\dfu-util-0.7-binaries\win32-mingw32>