TL;DR - Holding the SETUP button for 3 seconds causes my Photon to stop breathing when in manual mode.
With all the recent movement around user-friendly wifi configuration apps, I’ve been looking into how the process can be made even friendlier with feedback and assistance from the firmware (and not just the wifi setup app).
As an example of why I want to do this, consider one shortcoming of the setup process: when incorrect credentials are given, the Photon seems to get jammed with the only recourse being a reset. The setup app has to guess at what is going on with the process and no reliable means to know what failed, just some heuristics. Thanks to the awesome and very recent threading support, the firmware should not only be able to tell what happened but also act on it, by giving the user feedback along the way and perhaps even recovering to a good state.
My goal was to create some test firmware to play around with the setup process and see what state changes the firmware could detect to realistically be of assistance in guiding a user through the process.
To that end, I created a small application that monitors all of the connection-related boolean state values from the
Particle system libraries for changes. This works like a charm in detecting everything up to a cloud connection (assuming valid credentials are present), but when the SETUP button is held down for 3 seconds, the LED never starts to blink blue and in fact, completely stops breathing. The last bit of output I see indicates that listening mode has been entered, however:
I don’t see a Photon-XXXX network show up and the device is no longer connected to the cloud according to “particle list”. This happens whether or not I have
SYSTEM_THREAD(ENABLED);. I haven’t tested in
AUTOMATIC mode yet.
Does anyone know what the intended behavior of the SETUP button is when used to enter listening mode with