nRf54L15多连接透传通信速率是否可达到5KB/s

Hi,大家好

目前基于nRF54L15芯片,以及基于ncs3.1.1实现BLE主从一体的功能;在BLE主机已实现可支持同时连接3个从机的透传通信。并且,在主从一体的固件上亦是添加上ISO时间同步功能。

在串口波特率为115200,且发送数据长度128字节,BLE主机同一时刻以25ms的间隔循环向三个从机发送数据,而从机接收到数据后立刻向主机返回已接收到的数据。如此测试时,BLE主从均会存在数据丢失的问题;并且ISO时间同步的引脚波形亦是出现不同步的问题。

因此,请教大家帮忙回复以下两个问题:

1. 在nRf54L15 的BLE一对三双向透传通信上速率是否可支持达到5KB/s?

2. 该如何避免BLE透传通信时影响到ISO时间同步的引脚波形问题?

Parents
  •   

    Thank you very much for your reply. I am aware that the baud rate of 115,200 is too low; I am currently debugging and will change the baud rate to 921,600.

    Regarding BLE connection parameters and MTU values.The BLE connection parameters are 20–40 ms; its latency is 0, and the connection timeout is 4 seconds. The MTU value is 244.

    I am currently testing a baud rate of 921,600; once BLE is connected, I will simply test whether data loss occurs during UART communication.

    Testing method:

    Upon receiving data via the UART interrupt, the data is immediately returned through the UART.Using the Serial Debug Assistant, send 1,000 bytes of data to the nRF54L15 module in a loop at 20 ms intervals; upon receiving the data, the module immediately returns it.

    Issue :

    When the BLE connection is inactive, the aforementioned test method confirms that no data loss occurs during UART communication; however, when the BLE connection is active, the same test method reveals that a few bytes of data are lost during UART communication.

    The UART driver code is referenced from the example in samples/drivers/uart/passthrough in ncs3.1.1.

  • Hello,

    Do you see anything from your logs? Any error messages? 

    When you add BLE, what happens is that the bluetooth stack and SoftDevice controller generates interrupts, so the UART doesn't get access to the CPU 100% of the time. 

    I thought I understood your application, but now I am no longer sure.

    You have one central and 3 peripherals, right?

    Is the central only an nRF54L15, or is it another MCU? For some reason I thought this was an HCI application, but apparently it is not. 

    So it is your application that handles both BLE and UART, right?

    Since you are using the UART for your application, try enabling RTT logging and see if any errors or warnings are reported in the log.

    Best regards,

    Edvin

Reply
  • Hello,

    Do you see anything from your logs? Any error messages? 

    When you add BLE, what happens is that the bluetooth stack and SoftDevice controller generates interrupts, so the UART doesn't get access to the CPU 100% of the time. 

    I thought I understood your application, but now I am no longer sure.

    You have one central and 3 peripherals, right?

    Is the central only an nRF54L15, or is it another MCU? For some reason I thought this was an HCI application, but apparently it is not. 

    So it is your application that handles both BLE and UART, right?

    Since you are using the UART for your application, try enabling RTT logging and see if any errors or warnings are reported in the log.

    Best regards,

    Edvin

Children
No Data
Related