Chapter 4. API Guides
(UART) used for upload of application to ESP32-S2's flash.
Now ESP32-S2-Kaluga-1's JTAG interface should be available to the OpenOCD. To carry on with debugging
environment setup, proceed to section
Linux
1. Using standard USB A / micro USB B cable connect ESP32-S2-Kaluga-1 board to the computer. Power on
the board.
2. Open a terminal, enter ls -l /dev/ttyUSB* command and check, if board' s USB ports are recognized
by the OS. You are looking for similar result:
user-name@computer-name:~/esp$ ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Jul 10 19:04 /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 1 Jul 10 19:04 /dev/ttyUSB1
3. Following section"Permissions delegation" in
USB ports.
4. Log off and login, then cycle the power to the board to make the changes effective. In terminal enter again ls
-l /dev/ttyUSB* command to verify, if group-owner has changed from dialout to plugdev:
user-name@computer-name:~/esp$ ls -l /dev/ttyUSB*
crw-rw-r-- 1 root plugdev 188, 0 Jul 10 19:07 /dev/ttyUSB0
crw-rw-r-- 1 root plugdev 188, 1 Jul 10 19:07 /dev/ttyUSB1
If you see similar result and you are a member of plugdev group, then the set up is complete.
The /dev/ttyUSBn interface with lower number is used for JTAG communication. The other interface is
routed to ESP32-S2's serial port (UART) used for upload of application to ESP32-S2's flash.
Now ESP32-S2-Kaluga-1's JTAG interface should be available to the OpenOCD. To carry on with debugging
environment setup, proceed to section
MacOS
On macOS, using FT2232 for JTAG and serial port at the same time needs some additional steps. When
the OS loads FTDI serial port driver, it does so for both channels of FT2232 chip. However only one of these channels
is used as a serial port, while the other is used as JTAG. If the OS has loaded FTDI serial port driver for the channel
used for JTAG, OpenOCD will not be able to connect to the chip. There are two ways around this:
1. Manually unload the FTDI serial port driver before starting OpenOCD, start OpenOCD, then load the serial
port driver.
2. Modify FTDI driver configuration so that it doesn't load itself for channel B of FT2232 chip, which is the
channel used for JTAG on ESP32-S2-Kaluga-1.
Manually unloading the driver
1. Install FTDI driver from
2. Connect USB cable to the ESP32-S2-Kaluga-1.
3. Unload the serial port driver:
sudo kextunload -b com.FTDI.driver.FTDIUSBSerialDriver
In some cases you may need to unload Apple's FTDI driver as well:
• macOS < 10.15:
sudo kextunload -b com.apple.driver.AppleUSBFTDI
• macOS 10.15:
sudo kextunload -b com.apple.DriverKit-AppleUSBFTDI
Espressif Systems
Run
OpenOCD.
OpenOCD' s
Run
OpenOCD.
https://www.ftdichip.com/Drivers/VCP.htm
1374
Submit Document Feedback
README, set up the access permissions to both
Release v4.4
Need help?
Do you have a question about the ESP32-S2 and is the answer not in the manual?