DFU over BLE using MCUMgr fails with “No available ACL buffers!” and “Unexpected first L2CAP frame” – SDK v2.8.0

Hello Nordic team,

I've recently upgraded my application from nRF Connect SDK v2.7.0 to v2.8.0, and the previous BLE Disconnect issue has been resolved — thanks again for your support!

However, I am now facing a new issue during DFU over BLE using MCUMgr. While DFU via mobile app works fine, using MCUMgr CLI often leads to the following errors:

E: No available ACL buffers!
E: Unexpected first L2CAP frame

These typically appear right after the log: 'Connection parameters updated' During each iteration.

After several iterations, at a random point, the device stops responding and the Disconnect event is not triggered, leading to failed reconnection attempts from MCUMgr.

Key Differences I observed are:

  • Mobile App DFU: Single connection during file transfer.

  • MCUMgr DFU: Multiple rapid connection/disconnection cycles per session.

This issue did not occur with SDK v2.7.0, and only started after migrating to v2.8.0.

I’m following this MCUMgr DFU process:
https://docs.nordicsemi.com/bundle/ncs-3.0.1/page/nrf/app_dev/bootloaders_dfu/dfu_tools_mcumgr_cli.html

Questions:

  1. Are there any changes in buffer handling or controller-side behavior in SDK v2.8.0 that might explain this?

  2. Should I tune CONFIG_BT_BUF_ACL_RX_COUNT, TX_COUNT, or related L2CAP parameters?

  3. Is there a recommended way to handle these frequent connections/disconnections more robustly?

Logs for reference:

Following is one of the log for the reference:
[2025-07-15 18:32:55.416] I: 711689 [SWU]SMP BLE advertising started
[2025-07-15 18:32:55.416] I: 711693 [DL]DFU over SMP started
[2025-07-15 18:33:10.193] I: 726498 [DL]Current number of connections: 1/1
[2025-07-15 18:33:10.215] I: BLE Connected
[2025-07-15 18:33:10.422] I: 726726 [DL]Current number of connections: 0/1
[2025-07-15 18:33:10.438] I: BLE Disconnected: 13
[2025-07-15 18:33:16.322] I: 732607 [DL]Current number of connections: 1/1
[2025-07-15 18:33:16.323] I: BLE Connected
[2025-07-15 18:33:16.546] I: 732837 [DL]DFU Image upload started
[2025-07-15 18:33:17.370] I: Connection parameters updated.
[2025-07-15 18:33:17.370]  interval: 9, latency: 0, timeout: 42
[2025-07-15 18:33:25.985] I: 742273 [DL]Image 0 download completed successfully
[2025-07-15 18:33:26.012] I: 742296 [DL]Current number of connections: 0/1
[2025-07-15 18:33:26.012] I: 742301 [DL]DFU-BLE-Disconnected : 19
[2025-07-15 18:33:26.012] I: BLE Disconnected: 13
[2025-07-15 18:33:38.259] I: 754544 [DL]Current number of connections: 1/1
[2025-07-15 18:33:38.259] I: BLE Connected
[2025-07-15 18:33:38.483] I: 754775 [DL]DFU Image upload started
[2025-07-15 18:33:39.308] I: Connection parameters updated.
[2025-07-15 18:33:39.308]  interval: 9, latency: 0, timeout: 42
[2025-07-15 18:34:20.727] I: 797016 [DL]Image 1 download completed successfully
[2025-07-15 18:34:20.749] I: 797035 [DL]Current number of connections: 0/1
[2025-07-15 18:34:20.750] I: 797039 [DL]DFU-BLE-Disconnected : 19
[2025-07-15 18:34:20.750] I: BLE Disconnected: 13
[2025-07-15 18:34:27.892] I: 804177 [DL]Current number of connections: 1/1
[2025-07-15 18:34:27.892] I: BLE Connected
[2025-07-15 18:34:28.115] I: 804417 [DL]DFU Image upload started
[2025-07-15 18:34:28.957] I: Connection parameters updated.
[2025-07-15 18:34:28.957]  interval: 9, latency: 0, timeout: 42
[2025-07-15 18:34:28.957] E: No available ACL buffers!
[2025-07-15 18:34:28.973] E: Unexpected first L2CAP frame
[2025-07-15 18:38:53.691] I: 1069979 [DL]Image 2 download completed successfully
[2025-07-15 18:38:53.691] I: 1069997 [DL]Current number of connections: 0/1
[2025-07-15 18:38:53.711] I: 1070001 [DL]DFU-BLE-Disconnected : 19
[2025-07-15 18:38:53.711] I: BLE Disconnected: 13
[2025-07-15 18:39:01.356] I: 1077664 [DL]Current number of connections: 1/1
[2025-07-15 18:39:01.372] I: BLE Connected
[2025-07-15 18:39:01.612] I: 1077899 [DL]Current number of connections: 0/1
[2025-07-15 18:39:01.612] I: BLE Disconnected: 13
[2025-07-15 18:39:05.960] I: 1082249 [DL]Current number of connections: 1/1
[2025-07-15 18:39:05.960] I: BLE Connected
[2025-07-15 18:39:06.174] I: 1082463 [DL]DFU_ImgConfirmHandler: Nordic Image Confirmed by MCUMgr
[2025-07-15 18:39:06.190] I: 1082497 [DL]Current number of connections: 0/1
[2025-07-15 18:39:06.206] I: BLE Disconnected: 13
[2025-07-15 18:39:13.392] I: 1089681 [DL]Current number of connections: 1/1
[2025-07-15 18:39:13.392] I: BLE Connected
[2025-07-15 18:39:13.606] I: 1089896 [DL]DFU_ImgConfirmHandler: Nordic Image Confirmed by MCUMgr
[2025-07-15 18:39:13.623] I: 1089929 [DL]Current number of connections: 0/1
[2025-07-15 18:39:13.638] I: BLE Disconnected: 13
[2025-07-15 18:39:21.267] I: 1097576 [DL]Current number of connections: 1/1
[2025-07-15 18:39:21.289] I: BLE Connected
[2025-07-15 18:39:21.576] I: dfu_header_data.image_count: 4
[2025-07-15 18:39:22.341] I: Connection parameters updated.
[2025-07-15 18:39:22.341]  interval: 9, latency: 0, timeout: 42

Best regards,
Prashant

Parents
  • hello,

    The root trigger for the this issue is HCI/L2CAP fragmentation from the central. This is common with Bluetooth 4.x devices that lack Data Length Extension (DLE), they have no choice but to fragment large L2CAP packets into multiple ACL packets. We can not guarantee that a modern phone/device supporting v5.x data length extensions will not start using fragmentation (depending on its installed applications using Bluetooth/co-existence/BR-EDR audio in use, it can switched to fragmenting to better schedule/use its radio).

    Kind Regards,

    Abhijith

Reply
  • hello,

    The root trigger for the this issue is HCI/L2CAP fragmentation from the central. This is common with Bluetooth 4.x devices that lack Data Length Extension (DLE), they have no choice but to fragment large L2CAP packets into multiple ACL packets. We can not guarantee that a modern phone/device supporting v5.x data length extensions will not start using fragmentation (depending on its installed applications using Bluetooth/co-existence/BR-EDR audio in use, it can switched to fragmenting to better schedule/use its radio).

    Kind Regards,

    Abhijith

Children
No Data
Related