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

set up MOS for full-duplex comms #109

Merged
merged 2 commits into from
Dec 5, 2024
Merged

set up MOS for full-duplex comms #109

merged 2 commits into from
Dec 5, 2024

Conversation

stevesims
Copy link
Contributor

@stevesims stevesims commented Dec 3, 2024

sets up UART0 to do both RTS and CTS

wait_ESP32 now does a pure wait, with no timeout, as an Agon can’t operate without a working VDP, and the VDP hasn’t supported the lower baud rate in forever.
on successful receipt of a “general poll” response it now sends a "set feature flag" command to switch the VDP to use full duplex comms

from experimentation it seems that MOS doesn’t actually really need to care whether the VDP actually switches over to full-duplex mode or not - it will carry on working regardless, therefore no checking is done to verify the switch has happened

includes a fix to UART1_serial_GETCH which was looking at the incorrect flag bit to determine if UART1 was connected - it was looking at the bit for UART0 so would always find a connection

based on a PR to Quark by S0urceror (breakintoprogram/agon-mos#126), but with a few additional changes

sets up UART0 to do both RTS and CTS

`wait_ESP32` now does a pure wait, with no timeout, as an Agon can’t operate without a working VDP, and the VDP hasn’t supported the lower baud rate in forever.  it will call the “general poll” command sending a value of 2, which will trigger a compliant VDP to switch to full duplex

from experimentation it seems that MOS doesn’t actually really need to care whether the VDP _actually_ switches over to full-duplex mode or not - it will carry on working regardless

includes a fix to `UART1_serial_GETCH` which was looking at the incorrect flag bit to determine if UART1 was connected - it was looking at the bit for UART0 so would always find a connection

based on a PR to Quark by S0urceror, but with a few additional changes
@stevesims stevesims merged commit 74812eb into v3 Dec 5, 2024
@stevesims stevesims deleted the full-duplex branch December 5, 2024 13:34
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

Successfully merging this pull request may close these issues.

1 participant