Particle Photon Stuck in DFU mode


I have been running a photon for about 2 years and in general it has been working well and is running on 0.6.3. Today, it stopped responding and when I checked on it, found it flashing yellow. Strange. I figured that something odd happened, but now I am wondering if it is actually dead. Here is what I have tried so far:

  1. Tried to get into safe mode, when I see the magenta LED and and release the setup button, it promptly starts fast blinking yellow.
  2. Go to the CLI and type “particle update” which appears to complete successfully but when the Photon restarts after blinking magenta briefly it starts fast blinking yellow again.
  3. Manually update the Photon using the dfu-util command. Same result (e.g. successful flash followed by a brief magenta blink on boot and then back to flashing yellow.)

I am at a loss what to do next. Is this thing just dead or am I doing something wrong?

Thank you.

Flashing yellow is a Keys issue I believe. Try searching this forum for “particle keys”.


I am not so sure. Anyway, based on your suggestion, I went and tried the following:

Particle device doctor

The app successfully flashes new firmware (the particle reboots afterwards and is flashing yellow again). It then flashes the device doctor app successfully. The program then fails with the following message:

Flash success!
The Doctor didn't complete sucesfully[sic]. Could not find serial device. Ensure the Device Doctor app was flashed

Maybe there’s a bootloader problem?

Ping @rickkas7

1 Like

I have the same issue - did you ever get a resolution to this?

No, I never figured it out and just gave up. I think that it was dead.

Hey @ikendall (and @JL_678, if you still have your unit!)

A device going to an immediate flashing yellow state can sometimes indicate a missing device OS or user application.

My recommendation would be to try and reflash the device OS, tinker, and the bootloader through particle flash and see if that remedies the bad behavior.

v1.2.1-rc.1 is our latest Device OS release at the time of this writing.

You will want to download and flash photon-system-part1@1.2.0-rc.1.bin, photon-system-part2@1.2.0-rc.1.bin, photon-tinker@1.2.0-rc.1.bin with particle flash --usb <FILENAME> while your device is in DFU mode.

Consider also putting your device into listening mode and flashing the bootloader ( photon-bootloader@1.2.0-rc.1.bin ) through the command particle flash --serial <FILENAME> command.

If you still see the device entering this state after flashing the above 4 files, please be sure to let us know by filing a support ticket at :slight_smile:

I’ve tried several times (and several versions) using SWD/STM32 to reflash the bootloader (to 0x8000000) and the device OS (part 1 0x8020000, part 2 0x8060000)… I tried v1.1.0, but not v1.2.1.-rc.1 yet. Still only get flashing yellow and the device permanently in DFU mode - I cannot get the device into listening mode at all. I’m pretty sure it’s not the MODE button.

I also did a full chip erase using the STM32, wondering if that has wiped something that is not re-programmed with bootloader/OS.

OK, tried v1.2.1-rc.1. along with tinker (to 0x80A0000) - now get rapid flash white for short time, then red SOS, with blink code 1 (hard fault) - then back to flashing yellow. I also ran keys doctor (and particle keys server) which ran successfully to install new keys, but still no luck. Think my device proper broken!?

That behavior is unlike any behavior I’ve typically observed in devices.

Manually flashing at offsets is never recommended unless the device’s bootloader is corrupted and you cannot get the device to be detected by USB (the RGB LED will be off and the D7 light will be dimly light in this case).

It is possible that the flashing may have caused some erratic behavior or erased/overwrote something important.

Feel free to file a support ticket about your Photon, referencing this topic and setting attention to me (Matthew). :slight_smile:

It took me a while to get back to this. Mine is totally dead now. :frowning:

Hey @JL_678 . No good. Sorry to hear it! Were you able to file a support ticket on the matter? If not, I still recommend doing so!