Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hardware flow control permanently asserts RTS #95

Closed
xioTechnologies opened this issue Apr 26, 2023 · 2 comments
Closed

Hardware flow control permanently asserts RTS #95

xioTechnologies opened this issue Apr 26, 2023 · 2 comments

Comments

@xioTechnologies
Copy link

RTS is permanently asserted regardless of FlowControl::None or FlowControl::Hardware. Hardware flow control using RTS/CTS signals should assert the RTS output when the receive buffer is full, and inhibit transmission when the CTS input is asserted. I have confirmed that transmission is inhibited by the CTS input. The issue is limited to the RTS behaviour.

This is an urgent issue for us. If a fix is not easily achievable then I suggest a workaround where RTS is permanently unasserted. This will at least allow reception of data from devices using hardware flow control, even if there is a risk that the receive buffer overflows.

A potentially related issue is that I cannot find any scenario where write_request_to_send is able to write the RTS level.

I am testing on Windows 10 using an FTDI USB to UART. This issue was first reported as #118 on GitLab.

@eldruin
Copy link
Contributor

eldruin commented Apr 27, 2023

Please feel free to make a change proposal as a pull request. Then the community can discuss the concrete approach.

@xioTechnologies
Copy link
Author

I have misreported this issue. We were mistakenly measuring DTR not RTS. I have confirm that the DTR pin state can be written using write_data_terminal_ready.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants