Hi all,
I am currently working on a project which uses the ble_app_uart_c example. I have a nRF52840DK as central. The central receives NUS pakets with a average data rate of ~120 kBit/s. Each NUS paket has the same length.
The received data should be printed on the UART( for accessing it at the COM-Port of a pc). I am using the following parameters for the UART:
#define UART_RX_BUF_SIZE 32768 #define UART_TX_BUF_SIZE 32768 .baud_rate = UART_BAUDRATE_BAUDRATE_Baud1M APP_IRQ_PRIORITY_HIGHEST
My problem is that I still loose some bytes after 1 to 10 minutes. I am using the default for-loop of the ble_app_uart_c example to print the data on the UART.
I already identified that the UART on the central side looses the data. The NUS pakets which I receive are okey.
For my application I am not allowed to loose random bytes. Can you please provide me some help?
Here are my questions:
1. Which parameters provide the highest throughput?
2. How can I prevent a overflow of the uart tx buffer?
3. Is there another way to call app_uart_put(), because I have a defined data_len?
4. How do I achieve a reliable transmission via UART at this 120kBit/s?
Thank you very much in advance.
Kind regards,
Maria