I have a Photon running an application in System Mode MANUAL, so it should not connect to the cloud until it is instructed to do so by an action of the user.
After I flash new firmware to the device, the Photon starts breathing Cyan for some seconds (although from the particle console I can see that it is not online!), then it starts breathing Green for some seconds and finally it starts breathing Dark Blue continuously.
The only way to get the firmware starting again is to switch power off and on.
The new firmware then seems to be installed and is working correctly.
However, I do not understand this behaviour, and what’s more until yesterday -when I wanted to update the firmware on this very same device- this behaved the way I am used to: after a new flash ending up in breathing White ( because of the manual mode).
Does anyone have any idea what went wrong here or does anyone have a cluie in which direction I should look for a solution???
Providing the new code does not require a device OS update. If it does the device will try to auto-update the device OS OTA.
Without more background on the issue it's hard to say.
- What is the current device OS version on the device?
- What is the targeted version in the new firmware?
- How did you flash?
- What's the code?
- Does this only happen immediately after flashing?
- What did the device do prior the flashing?
- What kind of user interaction would trigger the device to connect?
- Could this be happening accidentally during flashing?
- ...
Maybe I used the wrong expression: when I said updating firmware, I meant to say updating my application software; I was not aware that “firmware” is referring to the OS.
(What is the regular way to indicate the application software?)
Before digging into the details of the program:
The OS version on the photon is 1.4.4
I’m using the Web IDE to flash.
Immediately after flashing: there are some Magenta falshes and then the sequence as I described (starting with Cyan)
Normally the device would be triggered to connect by a pulse-switch attached to D2 (pinMode(D2, INPUT_PULLUP); attachInterrupt(D2, harder, RISING)
Under normal circumstances this would not ahppen occasionally, unless there is a hardware fault in the switch (However I could not detect that until so far)
The term firmware actually applies to both the system firmware (aka device OS) as well as the user/application firmware since both are developed as software but then flashed into the device making it "firm" (non-volatile).
But application and system firmware have to be compatible, meaning the device OS has to be at a verision same or greater than the application target.
So when flashing application firmware that is targeted to anything higher than the currently installed device OS version the system tries to automatically upgrade to a device OS that will allow that application to run on.
After crosstesting with other PCB’s and Photons I discovered that the unit that demonstrated this strange behaviour had a short circuit on the header on the PCB, so it was not a Photon issue at all!
Thanks for your help anyway and have a good holiday!
Item closed.