These Photons are on and working as expected. However, one of them is showing up in the Web IDE in the Devices page with a breathing magenta icon (instead of the regular cyan) and it says “Device in Safe Mode”. So I have 3 questions
How does the Web IDE know? I mean Wi-Fi and cloud connectivity are turned off
Of the 3 devices, why does only one of them show up in the Web IDE Devices section in this mode?
Why is it showing the device is in “Safe Mode” when in fact it’s on and working just fine?
It doesn’t know, it assumes from the last time it saw the device and didn’t have any message otherwise
same for 2 & 3.
You can try CLEAR CACHE in Build, if this cure the wrong info.
Also check with
particle list
if this is a cloud or only Build “issue”
Also look at https://api.particle.io/v1/devices/<yourDeviceID>?access_token=<yourAccessToke>
what the last status of the device was when the cloud saw it last.
Shows different results. The 3 Photons are not showing online, but my Electron is showing online. The Electron has been offline for about 5 hours now. On the Web IDE side, I’ve tried clearing the cache, refreshing the browser as well as clicking the refresh icon that’s available on the Devices page. It’s been showing the one Photon as online now (cyan) for hours.
Does definitely look like a caching issue. But not only a caching issue on the browser side. Using a different browser does show the correct status.
The API shows the same result as the CLI does.
@ScruffR, thanks for your reply. I learnt about the API and the particle list command. The API has a bunch of other information (and various endpoints) I could use to build my own dashboard of sorts. If only it provided more accurate and complete information.
However, I do think the Cloud side is either caching or not updating frequently enough or both, since using the API or CLI is also not showing correct information If a device does not “ping” for 5 hours, I’d expect it to show offline.
Since the Electron uses connectionless UDP to talk to the Cloud, the Cloud doesn’t really know if the device is online or not, so you cannot depend on that status for Electrons.
I understand UDP vs TCP, that’s not the issue. If a device has not pinged “home” for a while, should we assume it is online or offline? There is a last_heard datetime that is being logged.
The online/offline indication tells you (exactly) that there is an open TCP socket to that Photon/Core. There is no such thing for Electrons. I do not believe that the last heard field is being updated for electrons but I am not sure if that is by design or is a bug.
Last heard is the better choice for Electrons, but Particle is aware of the problem and is on the search for a more reliable way.
But for that reason (wrong positives) the online indicator has been removed from Build for Electrons Particle Tools Changelog - #9 by suda