Skip to content

ESP32-C3 Serial instability #7716

Open
Open
@bill88t

Description

@bill88t

This has been a long standing issue that just nobody has bothered with.
It applies to all CP versions.

Under several circuimstances, CircuitPython on ESP32-C3 decides to lock up stdin or go out of sync.

Some ways to reproduce it:

  • Press any key before before circuitpython has finished init.
  • Press too many keys at once.
  • Work with serial for more than 3 minutes.
  • Use ljinux. It very heavily relies on ANSI escapes for graphics.

Ctrl+C usually makes it through regardless, but doesn't clear stdin (this could be used as a workaround).

Too many Ctrl+C at once send garbage:

[board@ljinux| ~]> [[[[[5;20R[[^C
> ;ins5;ins5ins5ins5;20Rins5ins5ins5ins5ins5ins5ins5ins5ins5ins5ins5ins5ins5;20R

In some rare cases stdin goes out of sync instead of locking up.
What this means is that I type abcdef, abc is echo'ed back and then if I press ghi, def is echo'ed.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions