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 different reset strategies based on host OS and communication method #349

Closed
jessebraham opened this issue Feb 1, 2023 · 4 comments · Fixed by #487
Closed
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@jessebraham
Copy link
Member

This is a newer feature in esptool, see: https://github.com/espressif/esptool/blob/cc062082fb8ba0ca40cdd32e14fc673562b7b38f/esptool/reset.py

@jessebraham jessebraham added the enhancement New feature or request label Feb 1, 2023
@jessebraham jessebraham self-assigned this Feb 1, 2023
@jessebraham jessebraham linked a pull request Feb 1, 2023 that will close this issue
@jessebraham
Copy link
Member Author

jessebraham commented Feb 3, 2023

I had implemented this, but it doesn't actually seem to solve any problems. Given the additional code and bump in MSRV required, I'm not sure this is even worth implementing at this point.

@jessebraham jessebraham removed their assignment Mar 24, 2023
@AVee
Copy link

AVee commented Apr 15, 2023

This reset strategy seems to be added to EspTool to fix espressif/esptool#712. It looks like it all about the timing of setting the RTS and DTR pins which appears to differ depending on the combination of OS, USB ports and USB-Serial converter chip. I'm getting the impression it is (mostly?) and issue with usb 3.x ports and/or usb-c serial converters, so it might well become more common over time.

I think I can come up with a fix which at least doesn't need the MSRV bump, and might end up being a bit more compact. I'll create a pull request once I've tested and cleaned it.

AVee added a commit to AVee/espflash that referenced this issue Apr 16, 2023
Adds a reset approach for *nix called UnixTight reset by Espressif to avoid
timing issues with USB-serial connections on Linux and macOS. See
espressif/esptool#712 for details.
AVee added a commit to AVee/espflash that referenced this issue Apr 16, 2023
Add a #[cfg(unix)] I forgot (so it actually builds on windows).
@AVee
Copy link

AVee commented Apr 16, 2023

I created a pull request: #387

AVee added a commit to AVee/espflash that referenced this issue Apr 19, 2023
AVee added a commit to AVee/espflash that referenced this issue May 11, 2023
Keep comments consistent.
AVee added a commit to AVee/espflash that referenced this issue Jun 1, 2023
Fix #[cfg(unix)] (and windows build).
AVee added a commit to AVee/espflash that referenced this issue Jun 1, 2023
@SergioGasquez SergioGasquez linked a pull request Oct 6, 2023 that will close this issue
@SergioGasquez SergioGasquez self-assigned this Oct 6, 2023
@SergioGasquez
Copy link
Member

Can anyone affected by this issue check if #487 fixes the issue?

cargo install --git https://github.com/SergioGasquez/espflash --branch fix/resets cargo-espflash espflash

@SergioGasquez SergioGasquez added this to the v3 milestone Oct 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Archived in project
3 participants