Firmware Updates over UART w/Custom board using NRF52820, No Buttons, no LEDs

Current goal is to be able to program, and upgrade with the radio off, and the only connection as a UART.

But I'm both overwhelmed by the number of options (DFU, SMP, and/or MCUMGR) , and unable to find a reliable starting point. I think my question boils down to:
What are the minimal requirements to allow an initial, and future firmware upgrades over UART?

  • Device tree: UART Tx & Rx pins are swapped from default
  • proj.conf: (CONFIG_DFU_TARGET, and or CONFIG_MCUMGR...)
  • CMakeLists.txt: Looks like no libraries, or other sources but main.c)
  • and source code  - which is only main, which is only a sleeping loop, but might need more to allow future firmware upgrades.

I've unsecured the NRF52820 due to a poor programmer connection... Do I have to re-install any additional images?

I've tried starting the SDK17 secure_uart bootloader sample, with a custom board, and modified makefile (micro & no FPU), modified the linker according to  case about nRF52820 uart dfu.  And was unable to start communication. Is another image such as MCUBoot supposed to be at offset 0? Wheres the image?

I've tried the 2.6.1 toolchain SMP_SVR sample, and get a cmake error, No fprotect backend selected, while attempting to fix that ran into undefined reference to `z_nrf_clock_control_lf_on`

Related