Exit Listening Mode - Boron

Is there a way to exit the listening mode via the two buttons on the boron? The boron was was already claimed but my customer accidentally held the mode button and the boron entered listening mode. I want to avoid having him send it back for me to just issue the command.

@oraclerouter ,

Pressing the reset button or power cycling the device will take the device out of listening mode.

Are you sure it is not in “setup” mode? Same blue flashing light but it will persist in this mode until setup is complete or you run a sketch that includes the command to exit set up mode (see link above).

Chip

Thanks @chipmc.

It continues flashing blue after reboot so it does seems to be in the setup mode but how is that possible if it was running a custom firmware for 3 months?

Is there a way to exit setup mode with the buttons?

Not 100% sure what mode it’s currently in however, I believe you are able to clear the setup done flag using the Mode/Reset buttons weather mistakenly or by accident. I am pretty sure I did this early on to several devices while learning/by accident myself: Factory Reset

To factory reset, hold down the MODE button and tap RESET. The status LED will blink:

  • Magenta (red and blue at the same time, safe mode)
  • Yellow (DFU mode)
  • Fast blinking yellow (restore factory firmware)
  • Fast blinking white (factory reset)

This will:

  • Restore the factory backup user firmware (if present)
  • Clear mesh credentials (1.5.2 and earlier)
  • Boron: Clear any saved APN and default to internal SIM
  • Argon: Clear Wi-Fi credentials
  • Ethernet: Clear the using Ethernet flag
  • Clear the setup complete flag, to force setup mode again

I personally haven’t done this before… but I wonder if you can have him put the device in “Safe Mode”. I think it would attempt to connect to the cloud yet even the setup done flag was not set. If so, you could then download application firmware to it and within that firmware reset the setup done flag… not really sure. I personally use this in my application firmware to set the setup done flag.

// This clears the setup done flag on brand new devices so it won't stay in listening mode
// https://community.particle.io/t/setup-done-flag-in-setup-ok-to-leave-in-with-production-firmware/61367
  uint8_t read_value = 0x01;
  dct_read_app_data_copy(DCT_SETUP_DONE_OFFSET, &read_value, 1);
  if(read_value != 1){
    const uint8_t write_value = 1;
    dct_write_app_data(&write_value, DCT_SETUP_DONE_OFFSET, 1);
  }

Best of luck!

1 Like