Photon: Can't flash software or Tinker, but shows as online in dashboard

I recently unboxed a photon that has been on the shelf for months. Claiming the device through the Android app went as normal, and it breathes cyan when booted, but after claiming two strange problems are persisting:

  • The Photon never shows as online in the Android app, but always shows as online in the dashboard and web IDE target list when it is powered
  • Flashing to the Photon from the web IDE always times out

Clearly the image on it is at least partly working because the device can connect, so this seems like a different case to existing troubleshooting threads. So far I have tried un-claiming and reclaiming the device, and using a different WiFi network. I have other Photons working normally on the same networks as well.

I am not sure what step to take next to solve this problem. Does anyone have a suggestion for the best avenue to pursue?

(I am on Windows, but have only used the web tools thus far)

  1. Is the photon breathing cyan?
  2. Can you place it in Safe mode and try flashing again?

Thanks for replying

  1. Yes, the Photon consistently breathes cyan when powered (after the usual green-flash, cyan-flash sequence to connect to the cloud)
  2. I have tried flashing in Safe Mode since your post. Sadly, this is producing the same result as earlier: the device just continues to breathe cyan while the IDE waits, and eventually times-out the request to flash. I have also tried re-flashing Tinker from the Android app with the same result. It seems that as far as the Photon itself is concerned, the flashing process never starts.

Can you run

particle list

and post the output along with a screenshot of your full Web IDE window with the target drawer open?

Running particle list produced an interesting result indeed! The output was

the_problem [1d002e001147343339383037] (Photon) is offline
photon_A [38001e000a47343432313031] (Photon) is online
photon_B [270025000347343233323032] (Photon) is online
   int digitalread(String args)
   int digitalwrite(String args)
   int analogread(String args)
   int analogwrite(String args)

This output was received while the_problem was plugged in, breathing cyan, and showing as online in the dashboard/console.

IDE screenshot attached.

Any thoughts?

P.S. photon_A is intermittently online by design - it just happened to be online when particle list was run and offline by the time the IDE device list was refreshed. the_problem was “online” (as much as it can be) during the whole test.

the_problem doesn’t show any system version in the bottom right corner of Web IDE.
Can you click on the > icon next to the name and post that bit too?

For such cases CLI is the Swiss Army Knife

After installation, just for safe measure I’d also do (in DFU Mode)

particle update
particle flash --usb tinker
1 Like

Thanks for your help ScruffR!

I ran particle update with the device in DFU mode, and it seems to have done the trick. The device will now accept new software flashed from the cloud.

Despite seeming to have worked, the output from particle update indicated an error (below) - maybe someone on the Particle team will want to take a look? My immediate problem is fixed though :slight_smile:

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

! An error occurred while attempting to update the system firmware of your device:

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:

That suffix error is more like a warning that can be ignored.

Thanks @kennethlimcp @ScruffR for the help!