User Tools

Site Tools


esp:esp32:esp-idf-environment:serialconnection

This is an old revision of the document!


Serial USB Connection


KVM Virtual Machine USB

ESP32 development environment is running inside Virtual Machine. To forward the USB port to the VM do the following steps in Virtual Machine Manager on the host:

  • Connect the ESP32 board to the PC using the USB cable.
  • Select Virtual Machine –> Redirect USB device
  • Select Silicon Labs CP2102 USB or similar. A WROOM-32U is recognized as a CP210x: CP210x USB to UART Bridge.

Check USB device in client

Check if the USB port is not recognized within the Virtual Machine:

# lsusb
-------
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 10c4:ea60 Silicon Labs CP210x UART Bridge
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd QEMU Tablet
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Find USB Port used

When plugged in ESP boards might use different tty ports, based upon the UART chipset and driver used. Some examples:

  • original ESP32-Devkit-WROOM –> /dev/ttyUSB0
  • ESP32-C3 mini –> /dev/ttyACM0

To find out which port is used, run the following command and unplug/plug the ESP32 board:

sudo udevadm monitor -u

Check port on Linux

To check the device name for the serial port of your ESP32 board (or external converter dongle), run this command two times, first with the board / dongle unplugged, then with plugged in. The port which appears the second time is the one you need:

ls /dev/tty*

Adding user to dialout

The currently logged user should have read and write access the serial port over USB. On most Linux distributions, this is done by adding the user to dialout group with the following command:

sudo usermod -a -G dialout $USER

Connect with Miniterm

Connect to the ESP with the miniterm that is part of the ESP-IDF installation:

~/development/esp32/idf-tools/python_env/idf4.2_py3.7_env/bin/miniterm.py /dev/ttyUSB0 115200
esp/esp32/esp-idf-environment/serialconnection.1788003729.txt.gz · Last modified: by oscar