SC16IS740 Tx failure after sending large number of large packets

cancel
Showing results for 
Search instead for 
Did you mean: 

SC16IS740 Tx failure after sending large number of large packets

241 Views
kaushalyas
Contributor I

I am experiencing a strange behavior in the above UART expander chip in the following configuration.

1. Chip used SC16IS740IPW,112

2. Host - Artik 530s

3. OS - Linux 4.4.113

4. PHY - RS485

5. Chip configuration - Auto RTS enabled, in RS485 mode

When I am sending larger data packet of 100 bytes continuously in about 1 sec intervals, the first few hundred transmissions goes on without any problem.  After a while it only transmits couple of bytes out of the 100 bytes and doesnt recover.

I have checked driver behavior and found out the following.

When successful transmissions it starts by sending the first 64 bytes (full tx fifo size) and then in 8 byte chucnks and finish with last 4 bytes.

In failed transmissions it starts with sending 64 bytes (which doesnt seem to transmit - only first few bytes gets transmitted) and in the next cycle it sends the remaining 36 in one go. 

I modified the driver to send 8 bytes after the initial 64 and then I didnt see the error.

Has anyone seen this kind of behavior? Any ideas whats going on?

Thanks,

Kay 

Tags (1)
0 Kudos
0 Replies