TIAO USB Multi-Protocol Adapter (TUMPA)

../../../_images/tumpa.jpg

The TIAO USB Multi Protocol Adapter (TUMPA) is a multi-functional USB communication adapter for hobbyists or engineers. The adapter is based on FDTI’s flagship communication chip FT2232H, a USB 2.0 Hi-Speed (480Mb/s) to UART/FIFO IC. It has two multi-protocol synchronous serial engines (MPSSEs) which allow for communication using JTAG, I2C and SPI on two channels simultaneously. Official reference can be found here.

Configuration

You can configure debugging tool using debug_tool option in “platformio.ini” (Project Configuration File):

[env:myenv]
platform = ...
board = ...
debug_tool = tumpa

If you would like to use this tool for firmware uploading, please change upload protocol:

[env:myenv]
platform = ...
board = ...
debug_tool = tumpa
upload_protocol = tumpa

More options:

Drivers

Windows:
Mac:

macOS contains default FTDIUSBSerialDriver driver which conflicts with debug tools which are based on this chip. FTDI Chip company recommends removing this default driver from a system. Everything should work after system rebooting. See detailed instruction in official application note (Page 16, Section 4: Uninstalling FTDI Drivers on OS X) AN134: FTDI Drivers Installation guide for MAC OS X

Linux:

Please install “udev” rules 99-platformio-udev.rules. If you already installed them before, please check that your rules are up-to-date or repeat steps.

Wiring Connections

../../../_images/generic_jtag_swd_connector.jpg

JTAG Interface

TUMPA JTAG 20-Pin Connector

Board JTAG Pin

Description

1

VCC

Positive Supply Voltage — Power supply for JTAG interface drivers

4

GND

Digital ground

5

TDI

Test Data In pin

7

TMS

Test Mode State pin

9

TCK

JTAG Return Test Clock

13

TDO

Test Data Out pin

15

RESET

Connect this pin to the (active low) reset input of the target CPU (EN for ESP32)

Serial Wire Mode Interface (SWD)

TUMPA SWD 20-Pin Connector

Board SWD Pin

Description

1

VCC

Positive Supply Voltage — Power supply for JTAG interface drivers

4

GND

Digital ground

7

SWDIO

Data I/O

9

SWCLK

Clock

15

RESET

Connect this pin to the (active low) reset input of the target CPU

Platforms

Name

Description

Espressif 32

Espressif Systems is a privately held fabless semiconductor company. They provide wireless communications and Wi-Fi chips which are widely used in mobile devices and the Internet of Things applications.

SiFive

SiFive brings the power of open source and software automation to the semiconductor industry, making it possible to develop new hardware faster and more affordably than ever before.

Frameworks

Name

Description

Arduino

Arduino Wiring-based Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences

Espressif IoT Development Framework

ESP-IDF is the official development framework for the ESP32 and ESP32-S Series SoCs.

Freedom E SDK

Open Source Software for Developing on the SiFive Freedom E Platform

FreeRTOS

FreeRTOS is a real-time operating system kernel for embedded devices that has been ported to 40 microcontroller platforms

Zephyr RTOS

The Zephyr Project is a scalable real-time operating system (RTOS) supporting multiple hardware architectures, optimized for resource constrained devices, and built with safety and security in mind

Boards

Note

For more detailed board information please scroll tables below by horizontal.

Name

Platform

Debug

MCU

Frequency

Flash

RAM

AI Thinker ESP32-CAM

Espressif 32

External

ESP32

240MHz

4MB

320KB

ALKS ESP32

Espressif 32

External

ESP32

240MHz

4MB

320KB

AZ-Delivery ESP-32 Dev Kit C V4

Espressif 32

External

ESP32

240MHz

4MB

520KB

Adafruit ESP32 Feather

Espressif 32

External

ESP32

240MHz

4MB

320KB

Adafruit ESP32-S2 Feather Development Board

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit Feather ESP32 V2

Espressif 32

External

ESP32

240MHz

8MB

320KB

Adafruit Feather ESP32-S2 TFT

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit Feather ESP32-S3 2MB PSRAM

Espressif 32

External

ESP32S3

240MHz

4MB

320KB

Adafruit Feather ESP32-S3 No PSRAM

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Adafruit Feather ESP32-S3 TFT

Espressif 32

External

ESP32S3

240MHz

4MB

320KB

Adafruit FunHouse

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit ItsyBitsy ESP32

Espressif 32

External

ESP32

240MHz

8MB

320KB

Adafruit MagTag 2.9

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit Metro ESP32-S2

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit QT Py ESP32

Espressif 32

External

ESP32

240MHz

8MB

320KB

Adafruit QT Py ESP32-C3

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Adafruit QT Py ESP32-S2

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Adafruit QT Py ESP32-S3 No PSRAM

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Ai-Thinker ESP-C3-M1-I-Kit

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Ai-Thinker NodeMCU-32S2 (ESP-12K)

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

AirM2M CORE ESP32C3

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Arty FPGA Dev Kit

SiFive

On-board

FE310

450MHz

16MB

256MB

BPI-Leaf-S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Blinker WiFiduino32S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Blinker WiFiduinoV2 (ESP32-C3)

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Briki ABC (MBC-WB) - ESP32

Espressif 32

External

ESP32

240MHz

3.25MB

320KB

Briki MBC-WB - ESP32

Espressif 32

External

ESP32

240MHz

3.25MB

320KB

Connaxio’s Espoir

Espressif 32

External

ESP32

240MHz

4MB

320KB

Cytron Maker Feather AIoT S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

D-duino-32

Espressif 32

External

ESP32

240MHz

4MB

320KB

DFRobot Beetle ESP32-C3

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

DFRobot Firebeetle 2 ESP32-S3

Espressif 32

External

ESP32S3

240MHz

4MB

320KB

DOIT ESP32 DEVKIT V1

Espressif 32

External

ESP32

240MHz

4MB

320KB

DOIT ESPduino32

Espressif 32

External

ESP32

240MHz

4MB

320KB

Deneyap Kart

Espressif 32

External

ESP32

240MHz

4MB

320KB

Deneyap Kart 1A

Espressif 32

External

ESP32

240MHz

4MB

320KB

Deneyap Kart 1A v2

Espressif 32

External

ESP32S3

240MHz

4MB

320KB

Deneyap Kart G

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Deneyap Mini

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Deneyap Mini v2

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Deparment of Alchemy MiniMain ESP32-S2

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Dongsen Tech Pocket 32

Espressif 32

External

ESP32

240MHz

4MB

320KB

ESP32 FM DevKit

Espressif 32

External

ESP32

240MHz

4MB

320KB

ESP32 Pico Kit

Espressif 32

External

ESP32

240MHz

4MB

320KB

ESP32S3 CAM LCD

Espressif 32

External

ESP32S3

240MHz

16MB

320KB

ESP32vn IoT Uno

Espressif 32

External

ESP32

240MHz

4MB

320KB

ESPectro32

Espressif 32

External

ESP32

240MHz

4MB

320KB

ESPino32

Espressif 32

External

ESP32

240MHz

4MB

320KB

EspinalLab ATMegaZero ESP32-S2

Espressif 32

External

ESP32S2

240MHz

16MB

320KB

Espressif ESP-WROVER-KIT

Espressif 32

On-board

ESP32

240MHz

4MB

320KB

Espressif ESP32 Dev Module

Espressif 32

External

ESP32

240MHz

4MB

320KB

Espressif ESP32-C3-DevKitM-1

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Espressif ESP32-S2-Kaluga-1 Kit

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Espressif ESP32-S2-Saola-1

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Espressif ESP32-S3-Box

Espressif 32

External

ESP32S3

240MHz

16MB

320KB

Espressif ESP32-S3-DevKitC-1-N8 (8 MB QD, No PSRAM)

Espressif 32

On-board

ESP32S3

240MHz

8MB

320KB

FireBeetle-ESP32

Espressif 32

External

ESP32

240MHz

16MB

520KB

Franzininho WiFi

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Franzininho WiFi Board

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Franzininho WiFi MSC

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Frog Board ESP32

Espressif 32

External

ESP32

240MHz

4MB

320KB

HONEYLemon

Espressif 32

External

ESP32

240MHz

4MB

320KB

Heltec WiFi LoRa 32

Espressif 32

External

ESP32

240MHz

4MB

320KB

Heltec WiFi LoRa 32 (V2)

Espressif 32

External

ESP32

240MHz

8MB

320KB

Heltec Wireless Stick

Espressif 32

External

ESP32

240MHz

8MB

320KB

Hornbill ESP32 Dev

Espressif 32

External

ESP32

240MHz

4MB

320KB

Hornbill ESP32 Minima

Espressif 32

External

ESP32

240MHz

4MB

320KB

IoTaaP Magnolia

Espressif 32

External

ESP32

240MHz

4MB

320KB

LOGISENSES Senses Weizen

Espressif 32

External

ESP32

240MHz

4MB

320KB

Lion:Bit Dev Board

Espressif 32

External

ESP32

240MHz

4MB

320KB

MH ET LIVE ESP32DevKIT

Espressif 32

External

ESP32

240MHz

4MB

320KB

MH ET LIVE ESP32MiniKit

Espressif 32

External

ESP32

240MHz

4MB

320KB

MakerAsia KB32-FT

Espressif 32

External

ESP32

240MHz

4MB

320KB

Munich Labs RedPill ESP32-S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Node32s

Espressif 32

External

ESP32

240MHz

4MB

320KB

NodeMCU-32S

Espressif 32

External

ESP32

240MHz

4MB

320KB

OLIMEX ESP32-DevKit-LiPo

Espressif 32

External

ESP32

240MHz

4MB

320KB

OLIMEX ESP32-EVB

Espressif 32

External

ESP32

240MHz

4MB

320KB

OLIMEX ESP32-GATEWAY

Espressif 32

External

ESP32

240MHz

4MB

320KB

Pycom LoPy

Espressif 32

External

ESP32

240MHz

4MB

320KB

Pycom LoPy4

Espressif 32

External

ESP32

240MHz

4MB

1.25MB

Pycom WiPy3

Espressif 32

External

ESP32

240MHz

4MB

1.25MB

SG-O AirMon

Espressif 32

External

ESP32

240MHz

4MB

320KB

SQFMI Watchy v2.0

Espressif 32

External

ESP32

240MHz

4MB

320KB

Seeed Studio XIAO ESP32C3

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Silicognition wESP32

Espressif 32

External

ESP32

240MHz

4MB

320KB

Smart Bee Motion

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Smart Bee Motion Mini

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

Smart Bee Motion S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

Smart Bee S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

SparkFun ESP32 IoT RedBoard

Espressif 32

External

ESP32

240MHz

4MB

320KB

SparkFun ESP32 Thing

Espressif 32

External

ESP32

240MHz

4MB

320KB

SparkFun ESP32 Thing Plus

Espressif 32

External

ESP32

240MHz

16MB

320KB

SparkFun ESP32 Thing Plus C

Espressif 32

External

ESP32

240MHz

16MB

320KB

SparkFun ESP32-S2 Thing Plus

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

SparkFun LoRa Gateway 1-Channel

Espressif 32

External

ESP32

240MHz

4MB

320KB

TAMC DPU ESP32

Espressif 32

External

ESP32

240MHz

8MB

320KB

TAMC Termod S3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

TTGO LoRa32-OLED V1

Espressif 32

External

ESP32

240MHz

4MB

320KB

TTGO LoRa32-OLED V2

Espressif 32

External

ESP32

240MHz

4MB

320KB

TTGO LoRa32-OLED v2.1.6

Espressif 32

External

ESP32

240MHz

4MB

320KB

TTGO T-Beam

Espressif 32

External

ESP32

240MHz

4MB

1.25MB

TTGO T-OI PLUS RISC-V ESP32-C3

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

TTGO T1

Espressif 32

External

ESP32

240MHz

4MB

320KB

TTGO T7 V1.4 Mini32

Espressif 32

External

ESP32

240MHz

4MB

1.25MB

Trueverit ESP32 Universal IoT Driver

Espressif 32

External

ESP32

240MHz

4MB

320KB

Trueverit ESP32 Universal IoT Driver MK II

Espressif 32

External

ESP32

240MHz

4MB

320KB

Trueverit ESP32 Universal IoT Driver MK III

Espressif 32

External

ESP32

240MHz

4MB

320KB

Unexpected Maker FeatherS2

Espressif 32

External

ESP32S2

240MHz

16MB

320KB

Unexpected Maker FeatherS2 Neo

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Unexpected Maker FeatherS3

Espressif 32

External

ESP32S3

240MHz

16MB

320KB

Unexpected Maker PROS3

Espressif 32

External

ESP32S3

240MHz

16MB

320KB

Unexpected Maker RMP

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Unexpected Maker TinyS2

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

Unexpected Maker TinyS3

Espressif 32

External

ESP32S3

240MHz

8MB

320KB

VintLabs ESP32 Devkit

Espressif 32

External

ESP32

240MHz

4MB

320KB

WEMOS D1 MINI ESP32

Espressif 32

External

ESP32

240MHz

4MB

320KB

WEMOS D1 R32

Espressif 32

External

ESP32

240MHz

4MB

320KB

WEMOS LOLIN C3 Mini

Espressif 32

External

ESP32C3

160MHz

4MB

320KB

WEMOS LOLIN D32

Espressif 32

External

ESP32

240MHz

4MB

320KB

WEMOS LOLIN D32 PRO

Espressif 32

External

ESP32

240MHz

4MB

320KB

WEMOS LOLIN S2 Mini

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

WEMOS LOLIN S2 PICO

Espressif 32

External

ESP32S2

240MHz

4MB

320KB

WEMOS LOLIN S3

Espressif 32

External

ESP32S3

240MHz

16MB

320KB

WEMOS LOLIN32

Espressif 32

External

ESP32

240MHz

4MB

320KB

WeMos WiFi and Bluetooth Battery

Espressif 32

External

ESP32

240MHz

4MB

320KB

Wireless-Tag WT32-ETH01 Ethernet Module

Espressif 32

External

ESP32

240MHz

4MB

320KB

XinaBox CW02

Espressif 32

External

ESP32

240MHz

4MB

320KB

microS2

Espressif 32

External

ESP32S2

240MHz

16MB

320KB

oddWires IoT-Bus Io

Espressif 32

External

ESP32

240MHz

4MB

320KB

oddWires IoT-Bus Proteus

Espressif 32

External

ESP32

240MHz

4MB

320KB

uPesy ESP32 Wroom DevKit

Espressif 32

External

ESP32

240MHz

4MB

320KB

uPesy ESP32 Wrover DevKit

Espressif 32

External

ESP32

240MHz

4MB

320KB

unPhone 7

Espressif 32

External

ESP32

240MHz

4MB

320KB

unPhone 8

Espressif 32

External

ESP32S3

240MHz

7.94MB

2.31MB

unPhone 9

Espressif 32

External

ESP32S3

240MHz

7.94MB

8.31MB