I did a side by side comparison of the latest nrfutil v6.0.0a0 vs v5.2. It looks like v6.0.0a0 is much slower.
Looking at the log from the target device, it looks like the new version is only sending 20 bytes at a time instead of 244.
nrfutil v5.2 reports:
2019-10-09 10:02:17,457 BLE: Connected to [208, 137, 193, 106, 28, 248]2019-10-09 10:02:18,493 Successfully Connected2019-10-09 10:02:18,496 BLE: Service Discovery2019-10-09 10:02:19,641 BLE: Enabling longer ATT MTUs2019-10-09 10:02:19,677 ATT MTU exchanged: conn_handle=0 att_mtu=2472019-10-09 10:02:19,894 Sending init packet...2019-10-09 10:02:20,033 Sending firmware file...2019-10-09 10:02:56,092 Image sent in 36.1979999542s2019-10-09 10:02:56,092 BLE: Disconnecting from target2019-10-09 10:02:56,128 BLE: Disconnected with reason: BLEHci.local_host_terminated_connectionDevice programmed.
nrfutil v6.0.0a0a reports:
2019-10-09 10:04:56,754 BLE: Connected to [208, 137, 193, 106, 28, 248]2019-10-09 10:04:57,755 Successfully Connected2019-10-09 10:04:57,755 BLE: Service Discovery2019-10-09 10:04:58,706 BLE: Enabling longer ATT MTUs2019-10-09 10:04:58,887 Sending init packet...2019-10-09 10:04:59,340 Sending firmware file...2019-10-09 10:09:49,185 Image sent in 290.2987735271454s2019-10-09 10:09:49,185 BLE: Disconnecting from target2019-10-09 10:09:49,242 BLE: Disconnected with reason: BLEHci.local_host_terminated_connection2019-10-09 10:09:49,247 serial port COM7 closed.Device programmed.
There seems to be a missing confirmation that the MTU has changed to 247.
In the device log:
It looks like there is an update request that doesn't happen with 6.0.0a0.
Is there something I'm missing with v6.0.0a0?
You're using the master branch on GitHub?
Since it is not a release candidate yet, there might be some bugs in it. I've made the development team aware of this.
Thanks for the input :-)
Yes, I am using the master branch on GitHub. I'm also using the master branch of pc_ble_driver_py. It looks like this issue might be related.
MTU Setting on v0.12.0 fails: https://github.com/NordicSemiconductor/pc-ble-driver-py/issues/112
If you want to, you can create an issue on the GitHub repo like the issue you linked :-)
This issue is now fixed in the GitHub repo, ref pull.
Thank you, I'll check it out