NUS example UART RX can't receive all data

NCS v2.7.0

peripheral_uart (nRF52832-DK)

central_uart (nRF52840-DK)

PC console -> JLink VCOM -> BLE peripheral(nRF52832-DK) -> BLE central (nRF52840-DK) -> JLink VCOM -> PC console 

1) send 240 bytes (repeat "0123456789" to form one 240 bytes packet) from PC UART in 100ms interval to peripheral_uart side, UART RX central_uart side sometimes can't receive all data in PC UART, like 

...01234567890127890123456789...

lost 4 bytes.

2) modify peripheral_uart and central_uart according to thread 

 nRF Connect SDK NUS throughput modifications and issues for peripheral_uart/central_uart example applications 

3) add 

CONFIG_UART_0_NRF_HW_ASYNC=y
CONFIG_UART_0_NRF_HW_ASYNC_TIMER=1
according to thread
4) attached my projects for reference.

Parents
  • Tested peripheral on nrf52832 and central on nrf52840 dk. Not sure how you are sending the bytes from central to peripheral but I tried to do it manually from terminal and the reception looked ok

    Did not see any missing bytes

    I did not use adruino in the overlap file but instead had this in app.overlay

    &uart0 {
    	status = "okay";
    	current-speed = <1000000>;
    	hw-flow-control;
    };

Reply
  • Tested peripheral on nrf52832 and central on nrf52840 dk. Not sure how you are sending the bytes from central to peripheral but I tried to do it manually from terminal and the reception looked ok

    Did not see any missing bytes

    I did not use adruino in the overlap file but instead had this in app.overlay

    &uart0 {
    	status = "okay";
    	current-speed = <1000000>;
    	hw-flow-control;
    };

Children
Related