NordicSemiconductor / IOS-nRF-Connect-Device-Manager

A mobile management library for devices supporting nRF Connect Device Manager.
https://www.nordicsemi.com/Software-and-tools/Software/nRF-Connect-SDK
Apache License 2.0
88 stars 40 forks source link

Unnecessary broadcast after reboot #102

Closed vlasty-proglove closed 10 months ago

vlasty-proglove commented 1 year ago

Hi all, first, thank you for your contribution and what you have achieved with your SDK.

We have a somewhat specific flow and I noticed that the problem originates from the SDK. Namely, when uploading firmware to a device with 2 cores and using the option to not reset it after completion, but on the next reboot, the device starts broadcasting for a connection. As for the device with 1 core, the behavior is as expected and does not start broadcasting after a reboot. Can this automatic broadcast be excluded after a successful install of the firmware on the device with 2 cores as well?

dinesharjani commented 12 months ago

@vlasty-proglove I don't follow completely. Not reset after completion ? You cannot complete DFU update without a reset. During the reset is when the image swap happens. Then the DFU Library awaits for the device to reset, reconnects, and verifies using the SMP List command that indeed the uploaded images are now running on the two cores.

vlasty-proglove commented 11 months ago

@dinesharjani thank you for the clarification. To rephrase my question. Is it possible to somehow just send a test request and check if the FW is uploaded? In our case, we just need the FW to be uploaded and initiate a reset and update when the device is restarted or put to a charger, not when it is still connected.

dinesharjani commented 11 months ago

I'm referring to @philips77 for this one

philips77 commented 11 months ago

Hello, Using the ImageManager you may send the image without resetting. The FirmwareUpgradeManager wraps functionality of ImageManager and the DefaultManager (should be OsManager, and allows automatic DFU using the most common procedure, with 3 modes: Test+Reset, Confirm+Reset, Test+Reset+Confirm, but when you only want to upload the image and send Test command, use the ImageManager directly.

In nRF Connect Device Manager app you may do this using the Advanced pane of the Image tab.

vlasty-proglove commented 11 months ago

Thank you @philips77 and @dinesharjani I found a solution that might benefit me. Yes, as you said, I need to use the ImageManager directly, the "list" method returns pending images, so I am able to do something with that.

vlasty-proglove commented 10 months ago

Thank you for your replies, I resolved my problem and will close the ticket.