TLDR; We could use a calculator for mapping LED codes to human-readable descriptions
The RGB status LED is hugely expressive, and is a sign of the depth of thought Particle has given to the challenge of boiling down complex inner states to simple, unambiguous output. Unfortunately, determining device state from the status LED has aways been an imperfect science.
https://docs.particle.io/tutorials/device-os/led/xenon/ is helpful, but it doesn’t include all the possibilities. And this is likely by design, because the more variations it has, the more it requires wading through a huge list of non-relevant data to find the appropriate blinking code. And the more frustrating it is to discover by the end that the code does not exist.
The forums are full of questions about light codes, and it makes for a fair amount of duplication of effort, a lot of noise, and resurrection of long-dead threads.
I propose a calculator of some kind which takes the device model, the deviceOS, and the light pattern, and maps it to the message. Perhaps even giving relevant data and links to better understand what the device is trying to say.
This could happen via a web page, or via particle cli
. The keyboard could be used as a live input for the blink pattern (r
for red, b
for blue, c
for cyan…), where the input cadence gives the calculator the true speed. This avoids the problem of different users understanding “fast” and “slow” differently. This also makes it easier to have a precise count of the number of flashes, which is useful for the SOS blink.
Another alternative is to have the Particle app be able to process live video, in the same way it does the QR code. This has the downside of being harder to implement and requiring lots more testing, but is sort of the be-all, end-all solution.
Inevitably, there will be a flash code which does not correspond to something in the database. At this point the relevant info and video can be uploaded to Particle support. It could also open a GitHub ticket so that users with similar experiences can pool their knowledge and wisdom.
On the back end it’s really just a simple flow-chart, sort of a Particle Zork.
Thoughts?