we have around 500 photons deployed in our products, vast majority working flawlessly, many of them for 3+ years with multiple OTA updates. Occasionally there is a device where communication with our cloud keeps failing, in this case we need to replace the product. I am currently searching for ways how to prevent this from hapenning…
Latest case - customer reported Photon flashing cyan with one red flash, there was no communication with our cloud from that particular Photon (I can see unsuccessful connections in log). We replaced the product with new one, got that faulty back. The faulty Photon tries to contact Particle’s cloud instead of ours - it lost the address and defaults to Particle’s.
The new product arrived to customer and it shows exactly same behaviour, customer provided a DNS log from router where the second Photon is trying to reach the Particle’s servers again. We shipped third product, waiting for second faulty to get back for analysis.
The only mutual element here on customer’s side is power adaptor (he even switched several wifi networks). I guess this might be a problem…
@Dave suggested that “When you undervolt the photon you can run the risk of corrupting the flash” - does that apply also to the place in memory where keys server address is saved?
We already experienced loss of server keys in the past - the Photon was trying to connect to cloud (I saw it in the log). I will soon test 0.7.0, it should recover the public key automatically. However, I dont know how to prevent loss of cloud server address…
Maybe @justicefreed_amper experienced something similar?
we are using 0.6.3 for all Photons, the cloud runs the Brewskey fork.
Output from clouddebug by @rickkas7
0000304420 WARN: Read Server Address = type:255,defaulting to device.spark.io
0000304437 INFO: Resolved host device.spark.io to 18.104.22.168
0000304567 INFO: connected to cloud 22.214.171.124:5683
0000304567 INFO: Cloud socket connected
0000304567 INFO: Starting handshake: presense_announce=1
0000304567 INFO: Started: Receive nonce
0000304693 INFO: Encrypting handshake nonce
0000304729 INFO: Sending encrypted nonce
0000304730 INFO: Receive key
0000304866 ERROR: Unable to receive key -19
0000304866 WARN: Cloud handshake failed, code=-19
0000305117 INFO: Cloud: disconnecting
0000305117 INFO: Cloud: disconnected
0000336866 INFO: Cloud: connecting
0000336866 WARN: Read Server Address = type:255,defaulting to device.spark.io
0000336932 INFO: Resolved host device.spark.io to 126.96.36.199
0000337057 INFO: connected to cloud 188.8.131.52:5683
0000337057 INFO: Cloud socket connected
0000337057 INFO: Starting handshake: presense_announce=1
0000337058 INFO: Started: Receive nonce
0000337250 INFO: Encrypting handshake nonce
0000337287 INFO: Sending encrypted nonce
0000337287 INFO: Receive key
0000337414 ERROR: Unable to receive key -19
0000337414 WARN: Cloud handshake failed, code=-19
0000337665 INFO: Cloud: disconnecting
0000337665 INFO: Cloud: disconnected
Thanks for your replies…