do not enable cts when setting alternate rx xbar pin #754
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SerialHardware.setRx()
currently enables CTS if the provided pin is an xbar pin. AFAICT this prevents the pin from being used for rx, and also results in the tx buffer filling up (assuming you are sending data) and causes the program to halt.Testing
You can use this sketch to confirm that tx buffer fills up after using
setRX()
with an xbar pin:To confirm this patch works you can setup two teensy4.x wired to use xbar pins for rx, and then make sure they can communicate back and forth.
Here is the setup I used to test:

I'm running the same sketch on both devices, and using pin 41 to set the mode each device will run as.
Here is my sketch:
Against this branch you see the expected output in the serial console for the master device:
Against the
master
branch, you'll see the first tx message and nothing else.