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

SoftDeviceAPI v5 problems

I am using nRFConnect with nRF52840 Dongle. Since the last update to SoftDeviceAPI v5, nRFConnect cannot connect anymore to this specific devices (cheap JDY-10 BT/Serial adapters). Here there are more details and logs:
github.com/.../161

Sometimes the device cannot be even discovered, then I remove the USB dongle re-insert it and the scan finally find it, but still cannot connected.
As I wrote on GitHub, the device can be always found and connected if I use the Android App BLE Scanner.

I am not sure how can I help in diagnosing the issue.

  • Hi,

    I am afraid this is a bit difficult to diagnose further if all you have is a single nRF52840 Dongle.

    The best option is if in addition to the nRF52840 Dongle you have any of the nRF DKs or Dongle that are supported by the nRF Sniffer. Then you can trace what is going on over BLE, which in most cases gives a good indication of what might be the issue. Any other BLE sniffer would do the same job. As you are working on a community project I guess you do not have access to a dedicated BLE sniffer, and in that case the nRF Sniffer is a good low-cost alternative.

    If you have a J-Link programmer it may be possible to debug the connectivity firmware running on the nRF52840 Dongle. This may require you to build the connectivity firmware yourself, but allows for log output, error code/line number on asserts, etc. All of our DKs comes with a J-Link programmer on-board, that can be used for development purposes, both for programming/debugging the on-board nRF SoC and for programming/debugging nRF SoCs on other boards (such as the nRF52840 Dongle, provided that you have the proper cable for connecting the two.)

    Alternatively, if you can get a trace of the UART communication between the Dongle and the PC, then we might be able to get something useful out of that as well.

    Regards,
    Terje

  • I will try to get a trace using Ubertooth and let you know.

    Thanks

  • I tried with an old device of mine, the Adafruit nRF51822 (v2, the black PCB) which I abandoned because I couldn't capture anything more than advertising data.
    I still can't see anything very useful, but I am attaching the wireshark captures:

    1. Ble1, Ble2: captures while trying to connect to the device

    2. Ble-android-connect: capture while successfully connecting from Android

    The Mac Address for the device that cannot be connected from nRF connect is A4:C1:38:03:3C:93

    I used the most recent software from nordic to capture the traces using the latest wireshark 3 version. Unfortunately the pdfs describing setting up the adapter are probably obsolete as many steps are not relevant with the current versions.

    If you have any other suggestion to make the traces better, please let me know.

    Please not that the BT Module is probably the most popular module for any light appliance. It is the same hardware/firmware used in most of the led stripes, garden lights, bulbs and similar.

    1440.NRF.zip

  • Please let me know if I can be of further help.

  • Hi,

    I am very sorry for the delay.

    You are correct the traces doesn't reveal much.

    However I see that the Samsung device (your smartphone I assume) sends scan requests to the device (SCAN_REQ), whereas the same does not seem to happen in the other traces, except maybe once. That might be a clue. What is the device address of the nRF device acting as connectivity device?

    I also only see advertisements in the traces, and not connection setup.

    • Have you filtered the traces so that only advertisements (and scan requests) are included?
    • Have you previously bonded with the smartphone so that existing keys are used, and so the sniffer cannot MITM the connection?

    Regards,
    Terje

Related