Softdevice Controller does not send HCI event "LE Data Length Change"

I've built a firmware based on the hci_uart sample with the softdevice controller. The board is custom made and has a nrf52840 on it. Over USB-CDC HCI commands are sent to the device.

Most things seem to work fine, but I've found out, that the softdevice controller does not send the "LE Data Length Change" event. 

Test-Case:
- Send HCI commands to initialize the contoller
- Scan for devices
- Connect a device
- Initiate a data length update

Expected:
- The controller should send a data length changed event over HCI.

Actual:
- No event is generated

I've recorded the HCI communication for verification. In wireshark I see that no data length changed is generated. The HCI log is attached.capture.zip

I've checked, that the event mask is configured correctly. Also has the remote device support for data length extension. The same test with a PTS dongle works as expected. What can be wrong here?

Environment:
- nRF Connect SDK/Toolchain 2.9.0

Parents
  • Hi Hung

    I've created a sample to reproduce the issue. It is basically the hci_lpuart example with configuration for the softdevice controller. The project is attached with built files for a nrf52840DK. There are two builds included. One build without ISO features and one with the ISO features. The HCI is configured to the VCOM of the nRF52840DK and uses 115200Baud.

    hci_lpuart.zip

    To build the example the following command lines have been used with NCS 2.9.0:

    DLE WORKS (without ISO support)
    west build -b nrf52840dk/nrf52840 --pristine --build-dir "build_nrf52840dk_dle-works_cli" -- -DCONF_FILE=prj.conf -DEXTRA_CONF_FILE="dle-works.conf" -DCMAKE_BUILD_TYPE=Release -DBOARD_ROOT="."

    DLE DOESN'T WORK (with ISO support)
    west build -b nrf52840dk/nrf52840 --pristine --build-dir "build_nrf52840dk_dle-not-working_cli" -- -DCONF_FILE=prj.conf -DEXTRA_CONF_FILE="dle-not-working.conf" -DCMAKE_BUILD_TYPE=Release -DBOARD_ROOT="."

    Hope that helps to reproduce the issue.

    Regards Adrian

Reply
  • Hi Hung

    I've created a sample to reproduce the issue. It is basically the hci_lpuart example with configuration for the softdevice controller. The project is attached with built files for a nrf52840DK. There are two builds included. One build without ISO features and one with the ISO features. The HCI is configured to the VCOM of the nRF52840DK and uses 115200Baud.

    hci_lpuart.zip

    To build the example the following command lines have been used with NCS 2.9.0:

    DLE WORKS (without ISO support)
    west build -b nrf52840dk/nrf52840 --pristine --build-dir "build_nrf52840dk_dle-works_cli" -- -DCONF_FILE=prj.conf -DEXTRA_CONF_FILE="dle-works.conf" -DCMAKE_BUILD_TYPE=Release -DBOARD_ROOT="."

    DLE DOESN'T WORK (with ISO support)
    west build -b nrf52840dk/nrf52840 --pristine --build-dir "build_nrf52840dk_dle-not-working_cli" -- -DCONF_FILE=prj.conf -DEXTRA_CONF_FILE="dle-not-working.conf" -DCMAKE_BUILD_TYPE=Release -DBOARD_ROOT="."

    Hope that helps to reproduce the issue.

    Regards Adrian

Children
No Data
Related