nRF54L15-DK: Burning the hci_uart Example and Using Bluez

Regarding the nRF54L15-DK development board and its use with BlueZ on an Ubuntu virtual machine: After flashing the hci_uart example onto the nRF54L15-DK board, I used the command "sudo btattach -B /dev/ttyACM0 -S 1000000 -R“. When using Btmon, the manufacturer is recognized and prints ”Manufacturer: Nordic Semiconductor ASA (89)“. However, when I run the command ”sudo hciconfig hci0 up“, it displays ” Can't init device hci0: Operation not supported (95)“. Querying with ‘hciconfig’ shows the ”BD Address“ as all zeros and the status as ‘DOWN’. Why is this happening? I'd appreciate help resolving this. Additionally, when I send HCI hexadecimal commands directly via serial port tools like ”UartAssist 5.0.2“—such as the reset command ” frame format 01 03 0C 00“, it responds with ”04 0E 04 01 03 0C 00", indicating an unknown HCI command. Why is this happening? After flashing the hci_uart example onto the nRF54L15-DK board, can I directly flash it onto the development board, or do I need to perform additional steps?

Parents
  • Hello,

    First, please ensure you the flow control lines enabled for the USB - UART bridge. This is required as the hci_uart sample enables HW flow control by default. 

    then run sudo btattach -B /dev/ttyACM1 -S 1000000 -P h4 followed by "sudo btmgmt info" from another terminal to confirm if your new hci inferface got added.

    Best regards,

    Vidar

  • Hello, This method worked. Thanks again for your reply. With this setup, I can now use “bluetoothctl” to make my phone discover the development board. The board can also discover and connect to devices via “scan on”. However, I noticed a minor issue: after successfully connecting to a device, it disconnects on its own after a short while, showing

    "[CHG] Device 60:F4:3A:D0:4D:47 ServicesResolved: yes

    [CHG] Device 60:F4:3A:D0:4D:47 ServicesResolved: no

    [CHG] Device 60:F4:3A:D0:4D:47 Connected: no"

    I'm wondering if this is a characteristic of BLE or if there's an issue. I'm only attempting a simple device connection and haven't initiated any data exchange yet.

  • Hello,

    Glad to hear that it worked. From reading other discussions it seems like Bluez is only displaying the address if the controller has a public address, but I haven't been able to confirm this. Regarding the disconnect, have you tried checking with btmon for what the disconnect reason is? Is it connection terminated by bluez or by the remote device..?

  • Hello, I checked the btmon output and found that the remote device terminated the connection. This might be related to the Bluetooth headset I'm connected to.

  • I see. Most bt headsets that support LE have dual mode chipsets and only use LE for pairing and control functions, while the audio stream is over bluetooth classic. I'm not sure why it's terminating the connection though, maybe because you are not initiating pairing.

Reply Children
Related