micropython/tools
Jos Verlinde 9f74ffb6eb tools/pyboard.py: Fix ESPxx boards hanging in bootloader after reset.
This is a follow up to d263438a6e, which
solved one problem (reset on disconnect) but introduced a second one (hang
in bootloader).

To solve both probles, False/False is needed for DTR/RTS for ESPxx, but
that would then block stm32 and others.  Any unconditional combination of
DTR/RTS ends up blocking normal operation on some type of board or another.

A simple overview (for windows only):

  DTR          CTS            ESP8266/ESP32          STM32/SAMD51/RP2040
  unspecified  unspecified    Reset on disconnect    OK
  True         False          Hang in bootloader     OK
  False        False          OK                     No Repl
  True         True           Reset on disconnect    No Repl
  False        True           Reset on disconnect    No Repl

  serial.manufacturer:        wch.cn/Silicon Labs    Microsoft

  serial.description:         USB-SERIAL CH340 /     USB Serial Device
                              CP210x USB to UART
                              Bridge

The updated logic will only set the DTR/RTS signals for boards that do not
use standard Microsoft drivers (based on the manufacturer).  It would also
be possible to check against a list of known driver manufactures (like
wch.cn or Silicon Labs) but this would require a list of known drivers for
all ports.

Signed-off-by: Jos Verlinde <jos_verlinde@hotmail.com>
2023-04-04 13:30:05 +10:00
..
autobuild tools/autobuild: Create .uf2 file for seeed_xiao_nrf52. 2022-12-19 16:16:12 +11:00
mpremote all: Fix Python comparison to None and True, and use "not in". 2023-03-10 13:32:24 +11:00
.gitattributes
.gitignore
cc1
ci.sh tools/ci.sh: Add unix, stm32 and rp2 ports to code size check. 2023-02-20 11:26:23 +11:00
codeformat.py
codestats.sh
dfu.py
file2h.py
gen-changelog.sh
gen-cpydiff.py
insert-usb-ids.py
makemanifest.py
manifestfile.py
metrics.py
mpy-tool.py tools/mpy-tool.py: Initialize line_info_top. 2023-02-01 13:17:22 +11:00
mpy_bin2res.py
mpy_cross_all.py
mpy_ld.py
pyboard.py tools/pyboard.py: Fix ESPxx boards hanging in bootloader after reset. 2023-04-04 13:30:05 +10:00
pydfu.py
tinytest-codegen.py
uf2conv.py all: Fix Python comparison to None and True, and use "not in". 2023-03-10 13:32:24 +11:00
uf2families.json
uncrustify.cfg
verifygitlog.py