Best apps for programming ESP32 educational robots

XDA covered a new batch of ESP32 educational robots this week, five years in the making, that let a beginner change behavior while the robot is still running. That live-programming trick used to require dedicated commercial boards. Now, thanks to a handful of open-source projects, any ESP32-based robot can be programmed in blocks, MicroPython, or C from a laptop and updated over the air in a second. We tested 7 desktop apps that make that possible.

What to look for in an ESP32 programming environment

Educational robotics has different requirements than firmware engineering. The best apps understand that.

Quick comparison

App Best for Platforms Free Cost Rating
MicroBlocks Live coding blocks on ESP32 Windows, macOS, Linux, ChromeOS, web Yes Free 4.7 (community)
Arduino IDE The default first tool Windows, macOS, Linux Yes Free 4.6
PlatformIO Pro-grade IDE with device libraries Windows, macOS, Linux, VS Code plugin Yes Free tier 4.7
Thonny Python-first, beginner friendly Windows, macOS, Linux Yes Free 4.5
ESP-IDF Espressif’s official native SDK Windows, macOS, Linux Yes Free 4.4
MakeCode for micro:bit Block-first, works with ESP32 forks Web, offline installer Yes Free 4.7
Wokwi Simulate ESP32 boards in-browser Web Yes 7/mo for Pro 4.6

1. MicroBlocks, best for live coding blocks

MicroBlocks is what the XDA story is really about. Drop a block, click run, the block executes on the robot right now. Change the block, click again, no reflash. It supports ESP32, ESP8266, micro:bit, Calliope, and dozens of educational boards through a single interface. Every block corresponds to a Smalltalk-inspired VM running on the chip.

Where it falls short: block library is smaller than MakeCode’s, and the community is smaller too.

Pricing:

Platforms: Windows, macOS, Linux, ChromeOS, and a web version that pairs over Web Serial

Download: MicroBlocks | GitHub

Bottom line: pick MicroBlocks if the goal is teaching a class where kids can see their code affect a robot in the same second.

2. Arduino IDE, best as the default first tool

Arduino IDE version 2.x is the environment most tutorials assume. Install the ESP32 board package once, and any ESP32 board shows up as a target. It handles Wi-Fi provisioning, over-the-air updates, and library management. The IDE is C++-only, so this is not the tool for a six-year-old, but it is the tool a teenager will use next.

Where it falls short: build times on macOS are still slow, and the library manager sometimes downloads three copies of the same driver.

Pricing:

Platforms: Windows, macOS, Linux

Download: Arduino IDE

Bottom line: the default. Every ESP32 project on the internet compiles here.

3. PlatformIO, best for pro-grade libraries and boards

PlatformIO runs as a VS Code extension and turns the editor into a full embedded IDE. It manages boards, frameworks, and libraries with a lockfile, so a project built today builds identically two years from now. The library registry has 20,000+ entries, including nearly every ESP32 sensor.

Where it falls short: pitched at intermediates and pros. Steep first-day experience for a total beginner.

Pricing:

Platforms: Windows, macOS, Linux, as a VS Code extension

Download: PlatformIO | VS Code Marketplace

Bottom line: the environment to graduate to once the Arduino IDE is holding the project back.

4. Thonny, best for MicroPython on ESP32

Thonny is a Python IDE for beginners with first-class MicroPython support. Point it at an ESP32 running the MicroPython firmware, and it acts like a REPL with a file browser, a debugger, and a variables inspector. Ideal for schools that already teach Python.

Where it falls short: no block editor, and the debugger can be slow over Wi-Fi.

Pricing:

Platforms: Windows, macOS, Linux, Raspberry Pi

Download: Thonny

Bottom line: the tool for the Python route. Flash MicroPython, open Thonny, write two lines of code, watch the LED blink.

5. ESP-IDF, best for native performance and every feature

ESP-IDF is Espressif’s official framework. It exposes every chip capability, from BLE mesh to secure boot. Nothing here is educational. But if a class project involves building a custom device, ESP-IDF is the layer everything else sits on.

Where it falls short: absolutely not a beginner tool. The build system is CMake plus a menu-driven config screen, and the docs assume C.

Pricing:

Platforms: Windows, macOS, Linux

Download: ESP-IDF

Bottom line: the exit ramp. When Arduino IDE and PlatformIO run out, this is what comes next.

6. MakeCode for micro:bit, best for the youngest coders

MakeCode started as Microsoft’s block editor for the micro:bit and now supports several ESP32-based educational boards through community targets. Blocks compile to JavaScript in the browser and flash to the board over WebUSB. The simulator on the left of the screen shows the code running before we plug anything in.

Where it falls short: ESP32 support depends on the specific board’s community fork, not every board is covered.

Pricing:

Platforms: Web (Chromium browsers for WebUSB), Windows and macOS installer

Download: MakeCode

Bottom line: the tool for eight-year-olds. Blocks, a simulator, and a one-tap flash.

7. Wokwi, best for simulating before touching hardware

Wokwi simulates ESP32 boards, connected sensors, LEDs, and displays in the browser. Wire up a circuit visually, drop in Arduino or MicroPython code, and hit play. The simulation runs at real speed and includes Wi-Fi, so we can test MQTT publish without a physical board.

Where it falls short: not every sensor is modeled, and the free plan caps simulation time per session.

Pricing:

Platforms: Web

Download: Wokwi

Bottom line: pair it with any of the above. Prototype in Wokwi, flash on real hardware once the wiring is right.

How to pick the right one

Mind+ is worth a look too if the target audience is Chinese-speaking classrooms, since it ships bilingual and supports the popular MakeBlock and DFRobot boards out of the box.

FAQ

What is the easiest ESP32 app for total beginners?

MicroBlocks if we want live coding, MakeCode if we want a simulator alongside the editor. Both use blocks and neither requires a compile step visible to the user.

Can I run Python on an ESP32?

Yes. Flash the MicroPython firmware (about 1.5 MB) and use Thonny or the built-in REPL. Performance is fine for teaching, marginal for real-time signal processing.

Do I need Wi-Fi to program the robot?

No. USB serial is the default. Wi-Fi enables over-the-air updates and live coding in MicroBlocks, which is convenient but not required.

Can I use these tools on a Chromebook?

MicroBlocks and MakeCode both have web versions that work on a Chromebook through WebUSB or Web Serial. Arduino IDE requires Linux mode.

Which app should a school pick?

Schools we spoke to standardize on MicroBlocks or MakeCode for the first two years and move students who want more to Arduino IDE and PlatformIO in years three and four.