We are using PN7462C EVK for testing purposes. We want to develop a use case where any length of the HIF HSU input stream can be handled in PN7462 firmware. As per our current HIF HSU configuration, We can successfully handle the HIF HSU input stream less than 250 Bytes(Less than HIF HSU receive buffer size). But We can not able to receive whole data when input stream is more than 250 bytes. As per our understanding, this scenario must be handled by hardware flow control. I have referred to https://www.nxp.com/docs/en/user-guide/UM10858.pdf and found that on Page #277 below note,
Note that in case the host sends a frame longer than the buffer size, a buffer_overflow interrupt will be sent to the firmware. The RTS will not toggle to high. Data received after the error are not stored into memory. The error is signaled to the firmware by an interrupt.
Below is some scenario we have thought and tried along with issues we are facing in the scenario,
1. Handle buffer_overflow interrupt and toggle the RTS pin manually.
Que: We are unable to find a way to toggle the RTS pin from firmware. We may lose some data bytes in this scenario.
How can we handle this scenario in PN7462 firmware?
Attached our HIF HSU configuration code snippets.
I am facing the same issue with hardware flow control. In my case, I am getting data up to 4kb of the continuous stream over HIF.
You said that it can be achieved using RTS/CTS and waterlevel interrupt. I am familiar with waterlevel interrupt but how we can handle RTS/CTS with waterlevel.
Can you please with this?
Thanks for your response.
Can you please help me understand what should be taken care in hardware design in order to use hardware flow control with CTS/RTS pins?
What should we do differently in firmware to handle this?
Can't we exercise the same on the EVK?