20737s PUART FIFO size?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

===

SDK: 2.1.

Tag: 920737.

app: OTA hello-sensor.

OTA firmware size ~ 18KB.

===

Description:

We try to send data via PUART to other device component from 20737s; data length is around 100Byte.

I would like to know any FIFO buffer limitation or where to configure it for larger buffer size. Or we find

some data is truncated and didnt get in Rx side.

0 Likes
7 Replies
MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

Moving to the BLE forum.

0 Likes
JacobT_81
Employee
Employee
250 replies posted 100 replies posted 50 replies posted

The PUART FIFO for RX and TX is 16 bytes. There's no way to reconfigure this as it is a hardware FIFO.

The hardware user guide has useful information about the PUART: WICED Smart Hardware Interfaces​ It notes that without the use of flow control, it is the application's responsibility to service the FIFO before the TX FIFO empties or before the RX FIFO fills to prevent data loss.

Jacob

Anonymous
Not applicable

Jacob,

Got it.

In our application, we try 16 bytes for sending to other site of component by using PUART; however, in Rx,

we only get 15 bytes always and the last byte is always truncated or missed? is any idea about this issue or
the FIFO size is 15 bytes only?

0 Likes

Does lowering the baud rate help? Is it the same on both sides? And btw, puart will not work when the chip is sleeping.

0 Likes
Anonymous
Not applicable

Baudrate is same as 9600-bps.

I use a PC UART tracer to role-play as Rx to check data sent from device PUART.

0 Likes

A data size of 100 bytes is rather long and you may like to consider implementing flow control. You can also set the water mark on the tx side to 0 so that it trigger a call back once the fifo buffer is empty.

0 Likes

Here's a very good thread on the topic: UART Routines

0 Likes