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

Is it possible to record HCI logs using nRF52840?

Hi all.

I have written an application using a softdevice and I want to analyse an interesing behavior I don't understand at the moment.
So I want to record a trace/log of the used HCI commands to see what's going on on deeper levels.

Is this possible?

Thanks in advance
Cheers Michael

Parents Reply Children
  • 2766.Test.zip
    I have made a trace, recorded the logs and added a screenshot with some explanations.
    GPIO lines for button press and led display are also included in the trace. When the LED is enabled I would expect a connection request will already be sent during the first advertisement group.

    Thanks in advance
    Cheers Michael

  • Thank you. However, I'm not seeing any connection requests in the trace you sent. Is the LED and BUTTON signals used to indicate activity on the scanner side? Either way I will have to take a closer at this Monday.

  • Yes, the Nordic board is a kind of remote control. A button is pressed, the led is enabled and a command is sent

    .

    Have a nice weekend.

    Cheers Michael

  • Hello Michael,

    Thank you for the clarification, I was a bit confused at first, but I believe it's more clear now. The problem was that I assumed this was related to address matching on a peripheral device, not on a central. So I was basically expecting to see ignored connection requests. That is my fault.

    Michael-1965 said:
    Yes, the IRK is visible in the list, but I don't see the advertised address of my device as "input address".
    But Nordic has connected to my device.

    My monitoring code is set up to trigger the interrupt when the input address does *not* match the whitelist. And the fact that you do not get this event for your device indicates to me that the random address is always resolved correctly with the IRK held in your whitelist.

    The address matching happens in real-time and should not impact the performance. Have you made any observations that indicate otherwise? Another thing, the peripheral is advertising for almost 20 seconds, are you sure the central is actively scanning during this time (I'm not sure if the LED indication is supposed to be active high or not)?

    Cheers,

    Vidar

  • Hi Vidar.

    Thanks for your feedback. We are getting closer to the problem.

    Ok, your test code proves the address is resolved always, just from the beginning.

    In the attached picture you see:

    • First the button is pressed, goes to low
    • This triggers the event, the led is turned on, the GPIO signal goes to low, led is active low.
    • Now, scanning is started, the devices in the white list are searched.
    • The first triple of advertisements appears. According to your test code the address is resolved, but why is there no connection request? The device is scanning already for about 100ms. Please use the Ellisys trace for better resolution to see it better. There is also no CRC problem of the advertisements.
    • The second triple of advertisements appears. Here the connection request is sent, the central connects, the command is sent, and after this, the connection is canceled and the led is turned off.

    I think, starting the scanning will not use much time, so why is the first triple of advertisements not used for a connection?

    Because my application should have the smallest possible latency for sending the remote command, it is important for me to know, what's going on here.


    Cheers Michael


Related