Hi,
According to your IOS-Pods-DFU-Library GitHub repo: https://github.com/NordicSemiconductor/IOS-Pods-DFU-Library#service-changed-characteristic
In order the DFU to work with iOS, the target device MUST have the Service Changed characteristic with Indicate property in the Generic Attribute service. Without this characteristic iOS will assume that services of this device will never change and will not invalidate them after switching to DFU bootloader mode.
Based upon the literature I reviewed, the [#define IS_SRVC_CHANGED_CHARACT_PRESENT 1] flag in main.c is a specific
requirement for iOS DFUs. In addition, upon review of their latest v 12.3.0 SDK [nRF5_SDK_12.3.0_d7731ad], this flag is present in many of their BLE SDK examples; but
Interestingly enough, not specifically dfu.
So my question is, do we need to set this flag when running DFU updates. For example when using thenRF Tool Box app you provide?
see: https://itunes.apple.com/us/app/nrf-toolbox/id820906058?mt=8
Or is this flag only required to be set when running an initial boot loader.
According to our FW Engineer, we are able to run updates on iOS with no SDK changes. So, I want to gain further clarity from you.