This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DFU OTA updates client code

I would like to implement DFU OTA updates without the Master Control Panel, and I have a couple questions:

  1. Is there example code for the client-side of the DFU service or a guide on how to write client code?
  2. In the DFU documentation, the mandatory properties listed are "WriteWithoutResponse", "Write", and "Notify". Does the "Write" property here mean that the client expects a Write Response? If so, then what's the point of the Notifications?

I'm referring to the documentation here: developer.nordicsemi.com/.../a00103.html

For reference, I'm developing using the S110 (with the Peripheral acting as the DFU client) and SDK v8.0.0.

  • Hi Sagha,

    1. We don't have example code for DFU master on PC. However we have the python source that Master Control panel uses and you can find that in C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.10.0.14\lib\dfu. Also you can refer to the source code of the DFU library for the iOS and Android app here.

    2. Correct, "Write" means write with response and the client expect a response. However, this is just for the client to know if the write request it sends has been received by the client and if it's a successful write or not. The notification on the other hand let the server to send data to client when needed. In this case, it's the status code if the command from DFU client is accepted or not, also about the number of packet the server receives.

Related