Basically the title says it all. My electron is entering listening mode when it cannot connect to the cellular network.
In other words, after the led flashes green for a while it starts flashing dark blue (listening mode). How do I prevent this? Because this is effectively blocking my application code and kinda makes the whole thing pretty useless. Last night it entered listening mode and it was still in listening mode the following morning. Please help me out! My electron is running firmware version 0.4.8.
I’m seeing the same issue right now. My Electron jumped into Listening Mode, and I don’t know how to get it out of it (at the moment I’m limited to Build IDE and other browser based solutions, if that makes any difference).
Before my device entered listening mode, it was spending prolonged periods flashing green, looking to connect to 3G, and just before Listening Mode arrived my Electron would quickly flash cyan followed by a quick burst of red, which I believed signified a “keys error” or a SIM card issue.
I will post updates as I have them.
Good luck, @nodemand .
Got mine “fixed” (is not showing a burst of red light after flashing cyan each cycle).
I was able to exit listening mode (upon reset) by adjusting the position of the SIM card (which was… not inside of the Electron).
My Electron has been flashing dark blue all night up until right now (11am) when I had enough of it and pressed the reset button. That effectively resets the device and it ends up breathing cyan again. But this is not the way it should go. It should not enter listening mode in the first place. So my problem still remains.
I checked the sim card. It fits snug into the sim card holder.
So how do I prevent my Electron from going into Listening Mode? I cannot (as of yet) confirm that my Electron also blinks red before entering into Listening Mode like with @lomuscio. I’ll have to wait and watch it for a while…
The problem is known.
More in the following link.
Any updates on this “jumping to listening mode” issue? It is over 2 years now as the issue is known but all that is available and suggested is reseting the device by processing the handler of the mode changed to “listening”. Not a solution at all, if you ask me.
I am running firmware 1.27.1 Particle Electron and still have this issue.
Any chances this will be addressed?
I doubt that. The most recent firmware is 0.8.0-rc.2. The version you are quoting there is the version of CLI.
BTW, the issue linked above has been closed Nov. 2016 and the respective Pull Request was already merged to 0.6.1ff
You are right - it must be the CLI version. Ooops, sorry.
particle identify gives back:
Your device id is undefined Your system firmware version is undefined
How do I check the firmware version?
You should not get this response.
Try putting your device into DFU Mode (blinking yellow) and run
particle update. This should bring your device up to 0.6.4 (most recent official release of Electron).
> particle update Your device is ready for a system update. This process should take about 30 seconds. Here it goes! System firmware update successfully completed! Your device should now restart automatically.
Still not clear how to know which version of firmware my Electron is running.
After the update
particel identify (in Listening Mode) may give you a better result than before.
Your device id is undefined
Your system firmware version is undefined
But hey! Jumping to “listening mode” stopped! So now
does not work.
It does not block me, but I would like to understand why it does not work (it definitely worked on my other US version of Electron). Also I would like to know why suddenly “jump to listening mode” is not happening.
Maybe try a differen USB cable and port.
If you are using Windows try to remove the COM drivers for the device and let Windows re-apply the USB Serial drivers.
Nope - no change when swapping the USB port. And that is ok, because DFU works (can load user apps), serial communication works (user code can Serial.print() ). So, USB is ok.
Interesting that I could not find that error message “Your device id is undefined”
Where does it come from?
False alarm - found it in the CLI sources:
commands/SerialCommand.js:317: console.log(‘Your device id is’, chalk.bold.cyan(data.id));
commands/SerialCommand.js:326: console.log(‘Your device id is’, chalk.bold.cyan(data));
No idea, and as said earlier, it shouldn’t happen.
But some more things you can try.
You can put your device into Listenin Mode again and post the output of
particle serial inspect
If you feel adventerous you could go an download the system binaries for 0.8.0-rc.2 from here
and flash these via DFU Mode
particle flash --usb system-part1-0.8.0-rc.2-electron.bin particle flash --usb system-part2-0.8.0-rc.2-electron.bin particle flash --usb system-part3-0.8.0-rc.2-electron.bin
and then in Listening Mode flash the bootloader from here
particle flash --serial bootloader-0.8.0-rc.1-electron.bin
The most common reason for an undefined device ID is that the firmware on the device is interfering with the listening mode commands. If you have SYSTEM_THREAD(ENABLED) your code will run at the same time as listening mode, and if, for example, you’re constantly writing out data by USB serial, you could interfere with the output from listening mode. Blocking loop can also cause problems.
The easiest workaround is to go into safe listening mode. Go into safe mode by holding down RESET and MODE, release RESET and hold mode until the status LED blinks magenta, then release MODE. Wait until the status LED breathes magenta, then hold down MODE until the status LED blinks dark blue (listening mode).
Of you can flash tinker to your device in DFU mode (blinking yellow).
Your system firmware version is 0.6.4
What I did was flashing tinker instead of my user application. So, @rickkas7 was right - it had to do with the traffic over USB (my code does send some debug input).
Important is (at least I did not know that) that particle identify works only in “listening mode”. In the application running mode (breathing white) it will say that the version is undefined.
Next time I have an issue (where the system firmware is a suspect) - I will definitely give a try to release candidate 0.8.0 as you suggested, before posting here.
Once again - thanks for helping me!
Hello everyone! I am experiencing problems on connecting an electron to the cloud. To explain better, I had 2 electrons and both of them were offline since 1 year. I powered up the first one with the SIM card of the second (my error, I did not check numbers).
Immediately I have seen in the particle dashboard that the electron and the SIM card went online, but the strange thing was that I was not able to call functions on the electron from the particle cloud. So I decided to connect it via USB and use the CLI to “particle update” and flash a new user firmware, just changing the name of the particle functions. The firmware are only a couple of lines of code, no system mode changes or thread enabled,(just a loop with particle.publish every 5 seconds)
Doing so, the electron is no more able to connect to the cloud: it remains breathing white, and after about 25/30 seconds it goes to breathing blue. Then, after 30 seconds, it starts blinking blue. Then after 2/5 minutes, again breathing blue.
I tried doing so:
(firmwares updates, but still the problem)
“particle flash --usb tinker”
(loads firmware but problems remains)
Not able to call “particle identify”, because I cannot enter in safe mode as the electron is disconnected.
“particle device doctor”
(followed procedure, when done, electron is not able to connect).
“particle keys server”
"particle doctor " (electron ID got from cloud dashboard)
tried with changing sim with the other electron.
Nothing happens, the electron does not want to connect with the cloud…
Tried all these steps again with a personal very simple firmware or tinker but problem still here.
I also tried to push quickly the mode button to check how many signal blinks are available, but nothing happens as Electron is not breathing cyan but white…
Do anyone have a solution? I do not think it is a hardware problem, is there a way to check it?