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

Implement override of default RTS/DTR behavior for DVM-V24-V2 boards with hardware boot control. #77

Merged
merged 2 commits into from
Dec 4, 2024

Conversation

W3AXL
Copy link
Contributor

@W3AXL W3AXL commented Dec 3, 2024

DVM-V24-V2 boards have optional hardware boot control, using the CP2102 RTS/DTR signals for BOOT0/RESET respectively. This allows for entering UART boot mode even with a totally corrupted program so you can recover a board without the need for an ST-Link.

Currently in dvmhost (and in most linux terminal applications in general) RTS and DTR are both forced active, which results in the V24 board receiving a valid command to enter UART bootloader mode. These changes override the default behavior and force RTS off, while also sending a second DTR reset pulse. See the scope capture below (BOOT0 is yellow, /RESET is pink).

image

Ideally, we would avoid the initial RTS & DTR pulses altogether, but there does not appear to be an easy way to achieve this with the current serial implementation.

Copy link
Member

@gatekeep gatekeep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Hopefully this doesn't break all the things.

@gatekeep gatekeep merged commit 1528894 into master Dec 4, 2024
7 checks passed
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.

2 participants