I have a Xenon which I had claimed and named before. For some reason, however, after powering on, the device starts blinking blue as if in Listening Mode or when a brand new device is not yet set up. I tried several times the setup procedure on the IOS app but it always hangs at the penultimate step (adding the new device to the selected mesh). I performed several times the following steps:
scanned the QR code of the Xenon to be set up
selected the (existing) mesh to which the device should be added
scanned the QR code of the assisting device
entered the password for the mesh network
then I see the next screen progressing with the following notifications, i.e. “requesting permission from assisting device to add Xenon”, “Adding Xenon to the mesh network” … and this is where the sequence hangs: this step times out after a while and I do not reach the final step “Starting a secure session with the Partice Device Cloud” (“Retry” did not help).
Next, I tried the factory reset procedure as described in the Docs and subsequently the setup procedure again, with the same negative results as described above.
After that I used the CLI to claim the Xenon and to add it to my existing mesh. Both steps seem to have worked because in the console I see the device (strangely with the name I had chosen before all the problems started), and the device is correctly assigned to the selected mesh. I also tried to flash tinker over USB which gave me a “Flash success”. After all, however, it still insists on blinking blue after powering on. It does not enter into safe mode.
Any ideas?
I'm missing the step that you put the assisting device into Listening Mode.
Not too surprising as the name is stored in the cloud, so even wiping the device clean won't make the cloud forget the name stored for that immutable device ID.
Hence the fact that the name is displayed doesn't indicate that the device was setup correctly.
It may be that the "has-been-setup" flag got wiped and/or not been set correctly.
You can flash this code to ensure it being set.
#include "Particle.h"
#include "dct.h"
SYSTEM_MODE(SEMI_AUTOMATIC);
void setup() {
const uint8_t val = 0x01;
dct_write_app_data(&val, DCT_SETUP_DONE_OFFSET, 1);
// This is just so you know the operation is complete
pinMode(D7, OUTPUT);
digitalWrite(D7, HIGH);
Mesh.on();
Mesh.connect();
Particle.connect();
}
How are you powering the device?
Can you try powering it from a USB charger rather than from your computer?
What happens when you comment out the last three code lines that should establish the connection?
So, to summarise:
Your original code: Blinking blue
Your originial code with the last three lines commented out: Breathing white
Your original code with just the last two lines commented out (and Mesh.on() active): blinking blue again.
@ScruffR: I resolved the issue, although, after all, I am not quite sure how. I was almost about to give up on that Xenon when I tried a couple of things (amongst which another factory reset, flashing tinker via USB, at least two other setup attempts using the mobile app and CLI respectively), although I cannot exactly remember in what order. Anyway, after the CLI setup attempt the device started finally to blink green and cyan and connect to the cloud.
Thanks again for all your efforts, always very much appreciated!