InfiniTimeOrg / InfiniTimeOrg/InfiniTime
DFU fails with "Android DFU library" for version > 1.11.1
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 3.4k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
Verification
- I searched for similar bug reports (including closed issues) and found none was relevant.
What happened?
Firmware update failed with error message: "Disconnected from GATT server"
What should happen instead?
Firmware should be updated
Reproduction steps
Create a flutter app
Install dependency:
nordic_dfu: 6.0.1
Add code for DFU with this library.
Build the flutter application
Try updating the infinitime image with the new built firmware.
The firmware update fails with error message:
Disconnected from GATT server
More details?
Logs for DFU failure:
2023-12-22 13:13:20.835 11446-16181 DfuImpl com.project.project I Sending Start DFU command (Op Code = 1, Upload Mode = 4)
2023-12-22 13:13:20.924 11446-16181 DfuImpl com.project.project I Sending image size array to DFU Packet (0b, 0b, xxxxxxb)
2023-12-22 13:13:26.100 11446-16181 DfuImpl com.project.project I Sending the Initialize DFU Parameters START (Op Code = 2, Value = 0)
2023-12-22 13:13:26.189 11446-16181 DfuImpl com.project.project I Sending 14 bytes of init packet
2023-12-22 13:13:26.189 11446-16181 DfuImpl com.project.project I Sending init packet (Value = xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx-xx)
2023-12-22 13:13:26.194 11446-16181 DfuImpl com.project.project I Sending the Initialize DFU Parameters COMPLETE (Op Code = 2, Value = 1)
2023-12-22 13:13:27.231 11446-16181 DfuImpl com.project.project I Sending Receive Firmware Image request (Op Code = 3)
2023-12-22 13:13:27.323 11446-16181 DfuImpl com.project.project I Uploading firmware...
2023-12-22 13:13:32.410 11446-11464 BluetoothGatt com.project.project D onClientConnectionState() - status=0 clientIf=5 device=xx:xx:xx:xx:xx:xx
2023-12-22 13:13:32.410 11446-11464 DfuBaseService com.project.project I Disconnected from GATT server
2023-12-22 13:13:32.411 11446-16181 DfuImpl com.project.project E Disconnected while sending data
The android-dfu-library version used in the project is: 2.3.0.
The latest working stable version of android-dfu-library for updating the firmware is 1.11.1.
For same chip with this flutter application (with newer android-dfu-library version), DFU works for firmwares other than Infinitime.
URL for Android DFU library: https://github.com/NordicSemiconductor/Android-DFU-Library
Version
main
Companion app
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No repository file or test is named. Start by reproducing the failure with nordic_dfu 6.0.1 and android-dfu-library 2.3.0, then compare it with the working 1.11.1 setup using the supplied GATT and DFU logs. Done means identifying the compatibility cause and verifying a firmware update with the newer library.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, flutter
- Domain
- embedded-iot, mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100