Closed gugagop closed 2 years ago
Where exactly the loop is happening? Do you have more logs? The ones you've sent look correct, but incomplete.
The problem is that it gets into this final log and stops responding. Just to clarify, I'm trying to implement the dfu without using the sdk and it is already working on Android, but in iOS I'm having this issue. Because of that, I want to know if there is something specific that is needed to implement in iOS.
Hmm...
After Sending firmware to DFU Packet characteristic...
the library is sending data (it is not logging it, as it slows down upload and the data sent are actually not relevant).
In my opinion you're not sending PRNs (Packet Receipt Notifications) back to the phone. Have a look at
Packet Receipt Notif enabled (Op Code = 2, Value = 12)
this means you enable them on iOS and set the value to 12. If I had to guess, the library sent 12 packets and is awaiting a PRN notification. You may have it disabled on Android.
Try turning it off also on iOS by setting it to 0: https://github.com/NordicSemiconductor/IOS-DFU-Library/blob/fc05e4629df3f71de7492dea9a377b82d5500a24/Example/iOSDFULibrary/View%20Controllers/DFUViewController.swift#L234
Thank you so much! The problem was actualy it. I changed the packet receipt notif enabled to 0 and it worked. Now I know that the problem is something related to that in my firmware.
DFU Bootloader version :
Device information:
Your question We are using the lib to update nrf51 chips using DFU. With android, it is working fine, but with iOS, we are having a issue that we start sending firmware to DFU Packet characteristic but it stays like that in a loop. Is there anything I have to do to DFU work with iOS specifically? Down there we have the generated Logs.
Logs