I currently have a board using a nrf52840 that has a reliable connection to AWS via a Quectel BG95.
I have DFU implemented and working via Bluetooth with config settings
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
I currently have a board using a nrf52840 that has a reliable connection to AWS via a Quectel BG95.
I have DFU implemented and working via Bluetooth with config settings
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_NCS_SAMPLE_MCUMGR_BT_OTA_DFU=y
Hi,
I'm not certain how the module you refer to work, but here's a couple of resources that might get you started anyways:
https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/net/aws_iot/README.html#aws-iot with focus on the fota section.
If this does not help, then in short terms: If you have set up your device with MCUboot, a primary application slot and a secondary application slot, you should be able to
Let me know if this is enough to get you started
Kind regards,
Andreas
Hi,
I'm not certain how the module you refer to work, but here's a couple of resources that might get you started anyways:
https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/net/aws_iot/README.html#aws-iot with focus on the fota section.
If this does not help, then in short terms: If you have set up your device with MCUboot, a primary application slot and a secondary application slot, you should be able to
Let me know if this is enough to get you started
Kind regards,
Andreas
I've made some progress.
The firmware I want to install is app_update.bin (stored in build/zephyr after a successful build)
I have built and fully tested firmware and associated server software that will reliably download the app_update.bin from the AWS cloud to my board
It looks like the DFU Target library is perfect for what I want to do - which is
1. initialize the target (dfu_target_init())
2. Download my fiemware - using dfu_target_write() to move each block of downloaded data into the mcu_boot_secondary partition.
3. finalize the download with dfu_target_done.
4. Stage the update with dfu_target_schefule_update().
5. Reboot
I've modified my build to use static partitions (I copied build/partitions.yml to pm_static.yml)
Currenty my prj.conf has