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

Problem in data transfer in Bluetooth at 10ms

Hi,

We are using NRF52840 Dk board to transfer the data at 10ms through Bluetooth which is central and peripheral  as other cc250moda controller  Bluetooth. Our objective is to send the data of 8 bytes at  10ms from the NRF52840 Bluetooth to other Bluetooth. We are able to send the data from NRF52840 Bluetooth of 8 bytes at 30ms,50ms,100ms,500 ms to other controller Bluetooth correctly which means at every 50ms  we are sending 8  of bytes data which is receiving  8 bytes of data at every 50ms in the receiving controller Bluetooth. The problem here is when we are sending the  8 bytes of data at 10ms from NRF52840  Bluetooth to  receiving Bluetooth it should read  8 bytes of data at 10ms but here the problem is it is reading as 8 bytes, 16 bytes ,24 bytes ,0 bytes ,0 bytes, 24 bytes,16 bytes, 0 bytes, 0 bytes  as such at every 10 ms.Can you please tell me what is the problem . How to resolve the issue.

  • No problem at all, I am happy to help!

    I see.
    Could you provide me with a sniffer trace of the BLE traffic you are seeing?
    On my end, the central is communicating as expected, and I am not seeing these deviations.
    With a sniffer trace, I would be able to pinpoint if the issue is with your central, peripheral or the BLE link.

    What else, other than receiving BLE communication, is the peripheral doing?
    Could you ensure that the peripheral always has enough time to process the received data?

    Looking forward to resolving this issue,

    Best regards,
    Karl

  • Thanks for the reply.

    sorry for the delayed response.

    I am here by attaching the  sniffer log  central(NRF52840) and peripheral( CC2564MODA Bluetooth).

    Plz give me the solution.LOG12.pcapngLOG22.pcapng

  • sharmelaraju said:
    sorry for the delayed response.

    It is no problem at all - I fully understand these days being hectic. We resume whenever you are able to reply back.

    sharmelaraju said:
    I am here by attaching the  sniffer log  central(NRF52840) and peripheral( CC2564MODA Bluetooth).

    What do you mean by this?
    Preferably the sniffer trace is taken while the transfer from the central to the peripheral is taking place.
    What I would like to see in the sniffer trace is what is happening at the same time as your peripheral reads an abnormal amount of bytes(24, 16, 0).
    Could you ensure that the sniffer traces contain these exchanges?


    Looking at LOG12 and LOG22(assuming the 24:5c is the correct device):
    - There is no connection happening in these logs: only a single device advertising its presence and manufacturer specific data.
    - It is advertising very frequently for the first 500ms, with intervals as low as ~2-3 ms.
    - After 500 ms it advertises roughly every 100 ms.

    The device address is the same in both these logs, and their behavior is also similar: Could you verify that these were the logs you meant to send?
    If this in fact was the logs you meant to send, could you tell me what process what going on when these logs were captured?
    Please verify that the transfer over BLE is happening while the sniffer trace is captured.

    I still suspect that the issue is on the peripheral end of things.

    Best regards,
    Karl

     

  • Thanks for the reply.

    The log data which i have sent is sniffer data between the central and peripheral device.I have placed the development board(NRF51422) which runs the NRF sniffer  between the central (NRF52840 ) device and peripheral (cc2564 moda other controller bluetooth) .I have opened the  wire shark application and log the data.

    I have observed that while logging the data the source address kept on changing every time  whenever  i have closed the wire shark application and opened the application and logging.

    one more doubt is the peripheral Bluetooth is  other  controller Bluetooth(CC2564MODA bluetooth) so while logging  in nrf sniffer  will it be able to capture the data of other controller Bluetooth because i am not using the same controller Bluetooth on  central and peripheral.

    please you give me the  solution.

    I am here by attaching the log of the snif  data  between central and peripheral device.IBP_LOG_DATA.pcapng

  • Hello again,

    sharmelaraju said:
    Thanks for the reply.

    No problem at all, I am happy to help!

    Looking at the new log you have provided, I again only see advertising - no connections is happening. The advertising follows the same pattern as I saw in the previous logs.

    sharmelaraju said:
    I have observed that while logging the data the source address kept on changing every time  whenever  i have closed the wire shark application and opened the application and logging.

    That sounds strange. Do you make any changes to the code running on the central device?

    sharmelaraju said:
    one more doubt is the peripheral Bluetooth is  other  controller Bluetooth(CC2564MODA bluetooth) so while logging  in nrf sniffer  will it be able to capture the data of other controller Bluetooth because i am not using the same controller Bluetooth on  central and peripheral.

    Yes, the Sniffer tool will see all BLE traffic happening around it - it does not differentiate between different chip-sets or vendors.

    Please have a look at the Wireshark sniffer trace I have attached to this comment.
    The log illustrates how the connection should look between the central(master) and the peripheral(slave).
    Notice that the peripheral only advertises its presence for the first 4-5 seconds, before the central comes online and establishes a connection.
    The central in the log I have supplies is using the code I provided you earlier - notice that it is sending your custom message as a write command to the peripheral every 10 ms.
    Since this is working as intended on my end, I am having a hard time replicating and debugging your error - and this is strengthening my suspicion that your peripheral might be at fault here.

    master_slave_communication.pcapng


    Could you attempt to capture a sniffer trace like the one I sent you now, with the connection between central and peripheral?

    Best regards,
    Karl

     

     

Related