I am trying to use some Xenons just as BLE devices. I was thinking I could locally flash the latest boot loader (xenon-bootloader@1.4.4.bin) and then my application which is compiled for 1.4.4. I also have this code in my setup.
const uint8_t val = 0x01;
dct_write_app_data(&val, DCT_SETUP_DONE_OFFSET, 1);
I am trying to upload the new boot loader by putting the Xenon in Flashing Blue serial listening mode, but as soon as I start sending the file, it shows a purple light and then reboots. However, I’m back being stuck in blue listening mode which makes me think that the boot loader update didn’t take.
Is their a lower boot loader version I need to flash first before flashing 1.4.4?
So I believe I need to flash the 1.2.1 boot loader first, and then 1.4.4 which I believe have worked, although I am not positive. At least no errors from the terminal.
However the device still acts like it isn’t set up yet and when I do a particle serial inspect, I see this for one of the sections.
Platform: 14 - Xenon
Modules
Bootloader module #0 - version 501, main location, 49152 bytes max size
Integrity: PASS
Address Range: PASS
Platform: PASS
Dependencies: PASS
System module #1 - version 1406, main location, 671744 bytes max size
Integrity: PASS
Address Range: PASS
Platform: PASS
Dependencies: FAIL
Bootloader module #0 - version 501
Radio stack module #0 - version 202
User module #1 - version 6, main location, 131072 bytes max size
UUID: 254124699ACB9EBC93ED8DB9DDE9B3030F9577C7920A7980184A31C531E971EC
Integrity: PASS
Address Range: PASS
Platform: PASS
Dependencies: PASS
System module #1 - version 1406
Radio stack module #0 - version 169, main location, 192512 bytes max size
Integrity: PASS
Address Range: PASS
Platform: PASS
Dependencies: PASS
in DFU mode. This will fix the bootloader, softdevice, and Device OS.
From the dependency failures you need an upgrade of the bootloader (to the 1.4.4 version) and the SoftDevice (radio stack module).
The reason the Xenon goes into listening mode (blinking blue) is that it has unmet dependencies. The normal solution is to get them OTA, but for a standalone BLE Xenon there is no way to get the parts OTA since there’s no cloud, so the device just goes into listening mode.
And once you have your device updated to the version you want, your application needs to be running SYSTEM_MODE(MANUAL) (as noted in the “standalone Xenon” link).