Olimex ARM-USB-OCD¶
3-IN-1 fast USB ARM/ESP32 JTAG, USB-to-RS232 virtual port and power supply 5-9-12VDC device (supported by OpenOCD ARM debugger software). 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 = olimex-arm-usb-ocd
If you would like to use this tool for firmware uploading, please change upload protocol:
[env:myenv]
platform = ...
board = ...
debug_tool = olimex-arm-usb-ocd
upload_protocol = olimex-arm-usb-ocd
More options:
Drivers¶
| Windows: | See https://community.platformio.org/t/esp32-pio-unified-debugger/4541/20 |
|---|---|
| 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¶
| Olimex ARM-USB-OCD 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 |
| 3 | RESET | Connect this pin to the (active low) reset input of the target CPU (EN for ESP32) |
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. |
| Kendryte K210 | Kendryte K210 is an AI capable RISCV64 dual core SoC. |
| 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. |
| ESP-IDF | Espressif IoT Development Framework. Official development framework for ESP32. |
| Freedom E SDK | Open Source Software for Developing on the SiFive Freedom E Platform |
| Kendryte Standalone SDK | Kendryte Standalone SDK without OS support |
| Kendryte FreeRTOS SDK | Kendryte SDK with FreeRTOS support |
| Simba | Simba is an RTOS and build framework. It aims to make embedded programming easy and portable. |
| Zephyr | 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 | 16MB | 520KB |
| Adafruit ESP32 Feather | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| Arty FPGA Dev Kit | SiFive | On-board | FE310 | 450MHz | 16MB | 256MB |
| D-duino-32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| DOIT ESP32 DEVKIT V1 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| Dongsen Tech Pocket 32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| ESP32 FM DevKit | Espressif 32 | External | ESP32 | 240MHz | 4MB | 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 |
| Espressif ESP-WROVER-KIT | Espressif 32 | On-board | ESP32 | 240MHz | 4MB | 320KB |
| Espressif ESP32 Dev Module | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| FireBeetle-ESP32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| Frog Board ESP32 | 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 |
| MH ET LIVE ESP32DevKIT | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| MH ET LIVE ESP32MiniKit | Espressif 32 | External | ESP32 | 240MHz | 4MB | 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 |
| Silicognition wESP32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| Sipeed MAIX BiT | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| Sipeed MAIX BiT with Mic | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| Sipeed MAIX GO | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| Sipeed MAIX ONE DOCK | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| Sipeed MAIXDUINO | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| Sipeed MF1 MF1 | Kendryte K210 | External | K210 | 400MHz | 16MB | 6MB |
| SparkFun ESP32 Thing | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| SparkFun LoRa Gateway 1-Channel | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| TTGO LoRa32-OLED V1 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| TTGO T-Beam | Espressif 32 | External | ESP32 | 240MHz | 4MB | 1.25MB |
| TTGO T1 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| VintLabs ESP32 Devkit | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| WEMOS LOLIN D32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| WEMOS LOLIN D32 PRO | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| WEMOS LOLIN32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| WeMos D1 MINI ESP32 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| WeMos WiFi and Bluetooth Battery | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| XinaBox CW02 | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| oddWires IoT-Bus Io | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |
| oddWires IoT-Bus Proteus | Espressif 32 | External | ESP32 | 240MHz | 4MB | 320KB |