This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

hciconfig is not showing my nrf52840 dongle on my linux terminal

Hi,

I flashed my nrf52840 dongle by nrf Desktop connect app with ble-blinky hex file from nRF5_SDK_15.2.0_9412b96 SDK and I am able to connect to it from nrf connect ios app.

But unable to see the device on hciconfig.

Basing on this below link flashed the dongle with ble_connectivity_s140_usb_hci_pca10059.hex which I got from SDK instead of Zephyr BLE HCI_USB controller firmware as I didn't find its hex file.

devzone.nordicsemi.com/.../flashing-nrf52840-dongle-to-support-bluez

What should be done to make the dongle visible in hciconfig.. ??

Parents
  • nRF connect desktop uses serialized softdevice (Nordic BT stack) API to communicate with the connectivity chip, not HCI commands. In other words, ble_connectivity_s140_usb_hci_pca10059.hex will not work with the Bluez host. 

    Do you have a programmer to program the dongle, or do you need to upload the FW through USB DFU? 

  • Zephyr does not include any pre-compiled .hex files so the samples need to be built from source. I have built the example for you, but not verified if it works, see attached. 

    zephyr.hex

  • Thanks for the hex

    With this hex I am able to see the device but its mac id is wrong.

    santhosh@santhosh:~/Desktop/gw$ hciconfig
    hci0:    Type: BR/EDR  Bus: USB
        BD Address: 00:00:00:00:00:00  ACL MTU: 27:7  SCO MTU: 0:0
        DOWN
        RX bytes:215 acl:0 sco:0 events:16 errors:0
        TX bytes:72 acl:0 sco:0 commands:16 errors:0

  • I belive there is a HCI command to set the address, please refer to the Zephyr documentation for more details. 

  • I am trying to change the address with bdaddr but it is throwing the following error

    pi@raspberrypi:~/bluez-5.50/tools $ sudo ./bdaddr
    Can't read version info for hci0: Network is down (100)

    kernel version

    pi@raspberrypi:~/bluez-5.50/tools $ uname -a
    Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

    Bluetooth status

    pi@raspberrypi:~/bluez-5.50/tools $ sudo service bluetooth status
    ● bluetooth.service - Bluetooth service
       Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled)
       Active: active (running) since Wed 2019-01-30 08:17:09 UTC; 51min ago
         Docs: man:bluetoothd(8)
     Main PID: 862 (bluetoothd)
       Status: "Running"
       CGroup: /system.slice/bluetooth.service
               └─862 /usr/local/libexec/bluetooth/bluetoothd

    Jan 30 08:17:09 raspberrypi systemd[1]: Started Bluetooth service.
    Jan 30 08:17:09 raspberrypi bluetoothd[862]: Starting SDP server
    Jan 30 08:17:09 raspberrypi bluetoothd[862]: Bluetooth management interface 1.14 initialized
    Jan 30 08:17:09 raspberrypi bluetoothd[862]: Failed to open crypto
    Jan 30 08:17:09 raspberrypi bluetoothd[862]: No Bluetooth address for index 0
    Jan 30 08:17:09 raspberrypi bluetoothd[862]: Failed to set privacy: Rejected (0x0b)
    Jan 30 08:17:12 raspberrypi bluetoothd[862]: Endpoint registered: sender=:1.16 path=/MediaEndpoint/A2DPSource
    Jan 30 08:17:12 raspberrypi bluetoothd[862]: Endpoint registered: sender=:1.16 path=/MediaEndpoint/A2DPSink
    Jan 30 08:17:13 raspberrypi bluetoothd[862]: Endpoint unregistered: sender=:1.16 path=/MediaEndpoint/A2DPSource
    Jan 30 08:17:13 raspberrypi bluetoothd[862]: Endpoint unregistered: sender=:1.16 path=/MediaEndpoint/A2DPSink

    Can you suggest me how to change the BD address and make it work on my raspberrypi

  • I upgraded the kernel and tried to change the BD address

    It is not updated and throwing the following error

    pi@raspberrypi:~/bluez-5.50/tools $ sudo ./bdaddr -r 00:19:1D:6D:D9:DA
    Manufacturer:   not assigned (1521)
    Device address: 00:00:00:00:00:00 (XEROX CORPORATION)

    Unsupported manufacturer

Reply Children
Related