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
ESP32 S3 serial and USB HID stall when DTR is activated a second time #9582
Comments
Is this about USB Serial Device (CDC-ACM) signals? |
@ChrGri - please keep in mind that DTR and RTS signals of the USB CDC port actually control "reset" and "boot mode" signals of the ESP32-S3. |
It may be putting the S3 into download mode... "freezing/halting" the S3 firmware execution... |
@ChrGri - Please read this: #6762 (comment) |
This behaviour can be disabled permanently by burning the correct eFuse. |
@SuGlider Thank you very much. I understood, that to enter the download mode on a regular ESP, one has to execute a specific DTR/RTS sequence, as shown below From the documentation you referenced, I understood that only the download mode flag is toggled, but the chip is never asked to reset:
BR |
I see that you are using PlatformIO. What is the Arduino Core version used with it? |
I've changed the platformIO as shown below. No difference. You can find the sample code here. I've played around with BR |
I understand that your project uses USB OTG and TinyUSB for both, HID and CDC. It may be necessary to run a deep investigation of this issue. |
Yes, CDC and HID. Do you have an idea, why Is there something I can to help to find a proper fix? Edit: BR |
I'd need to analyse it better and try to understand why it could fail. Regarding Arduino has a 1 ms time slice defined for FreeRTOS. It is necessary to see the whole picture and try to understand the sequence of actions and possible reasons for the issue. |
Board
ESP32 S3 dev
ESP32 S3 DevKitC 1 N16R8 ESP32 S3 WROOM1 N16R8 Entwicklungsboard WiFi Bluetooth 5.0 Mesh Entwicklungsboard https://amzn.eu/d/iAX62Sv
Device Description
esp32-s3-devkitc-1
The platformIO file can be found in the code section.
Hardware Configuration
USBOTG connection to PC
Version
latest master (checkout manually)
IDE Name
PlatformIO
Operating System
Win 11
Flash frequency
PSRAM enabled
no
Upload speed
Description
ESP32 S3 runs simple program that should provided USB HID gamepad and serial messages via USB OTG port. Im using the Windows inbuilt USB gamecontroller program to monitor the gamepad data and this serial monitor app to monitor the serial messages. The serial monitor app allows to set the DTR/RTS states manually, by pressing the red marked software buttons
The first activation of DTR enables the serial output as expected. When DTR is disabled, USB HID output continiues, which is also expected. But, when DTR is activated a second time, USB HID and serial output stall, which is not as expected.
DtrProblem.mp4
Apart from that, when serial and USB HID output are activated, both will stall after a while, see.
Sketch
Can be found here: https://github.com/ChrGri/DIY-Sim-Racing-FFB-Pedal/tree/develop/Validation/Joystick_Serial_test
Debug Message
Other Steps to Reproduce
I have checked existing issues, online documentation and the Troubleshooting Guide
The text was updated successfully, but these errors were encountered: