I have an older photon that hasn’t been used in a while. I’m not sure how old it is but it’s more than a year, probably closer to two. I don’t know what version of the device FW is installed.
I was able to get it connected to the cloud using the particle app, and it shows up in Particle Console, and I can ping it. Console lists system firmware as unknown. When I use “particle list” on the CLI (v1.29.0), it’s showing as offline. The device is in safe mode. I changed the account it was registered to during the setup process.
Things I have tried:
Flashing Tinker via cloud on CLI --> Flash device failed. Timed Out.
Flashing Tinker via DFU on CLI --> TYPICAL DFU SUFFIX MESSAGE “Error during download get_status”
Particle Device Doctor on CLI --> Same error as flashing tinker via DFU
Flashing Tinker via Serial on CLI --> “Flash success”, however device is still breathing magenta
Flashing a simple Blink app via Particle Build --> “Flash unsuccessful” using multiple versions of target FW.
Particle Update on CLI --> same as other DFU errors plus “Cannot read property ‘code’ of undefined”
Any suggestions for further things to try before I pitch this thing?
I did a manual DFU-UTIL update with version 0.4.7 thanks to this post by @ScruffR. However, when I try to update to version 0.7.0 using either “Particle Update” on CLI or manual DFU-UTIL update, I am stuck in safe mode again.
Interestingly, Particle Console says the System Firmware is 0.4.7 but Particle Identify says it’s 0.7.0.
Oh my god, thank you!! I had been stuck on this for days, and had almost given up until I tried this and it all worked. Thank you!!!
For anyone else reading, if you have a super old photon that you never used up until now, you will most likely run into this problem due to super outdated firmware. Need to manually update the firmware.
The photon registered fine
and connected to my WIFI and was Online and
Cyan-Breathing/Cnected to the Internet
I could see it on web and cli.
I could identify flash the led.
BUT could not flash any code (flash failed including tinker).
In the web interface it does not dispaly an “On Device Version”.
I can get to Listening Mode and DFU Mode.
I have tried RESET and SAFE MODE.
I Connected to CLI via USB serial with photon in listening mode…
particle serial identify
Your device id is 2a002a000747343232363230 Unable to determine system firmware version
particle serial inspect
d:\Users\mg\Downloads>particle serial inspect Could not get inspect device:
Unexpected token m in JSON at position 0
I tried loading several bootloaders in Listening Mode:
In DFU mode I tried flashing tinker
Also tried this from the iOS App:
Particle flash --usb tinker Error writing firmware: Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release!!!
Error during download get_status
I guess after you did do as previous posters suggested it won't be relevant anymore, but I guess your device OS was predating the introduction of version display via particle identify and particle serial inspect.
However, in Listening Mode connecting via a serial terminal (not particle serial monitor) you can send the letter v to get the installed version.
With your particle flash ... commands it may be helpful to add the -v (verbose) switch to see some more info.
The particle update got an error...but seemed to fix my problem anyway:
In DFU mode:
particle update
! An error occurred while attempting to update the system firmware of your device:
Error: VError: Error writing firmware: Invalid DFU suffix signature
A valid DFU suffix will be required in a future dfu-util release!!!
Error during download get_status
Please visit our community forums for help with this error: https://community.particle.io/
Cannot read property 'code' of undefined
I was then able to identify and flash the new bootloader then I could flash my software.
particle identify
Your device id is 2a002a000747343232363230
Your system firmware version is 1.4.4