Creative Hardware

Getting Started: The ESP32 as the Brain of an Interactive Art Piece

Built-in WiFi and Bluetooth mean an ESP32 can trigger effects, read sensors, and talk to other software wirelessly — for under $10, without a separate networking module bolted onto a plainer microcontroller.

The ESP32 is a low-cost (often under $10) microcontroller with built-in WiFi and Bluetooth — a meaningful upgrade over a plain Arduino Uno for interactive-art and installation work specifically, since networking is native rather than requiring a separate shield or module. That makes it a natural choice for pieces that need to trigger effects wirelessly, log sensor data to a network, or serve a simple web interface for remote control.

Watch: Getting Started with ESP32 - Step-By-Step Tutorial (Tomasz Tarnowski, YouTube)

Step 1: Install board support in the Arduino IDE

The ESP32 isn’t natively supported by a stock Arduino IDE install — adding it requires pointing the Boards Manager at Espressif’s board-definition URL (added under Preferences > Additional Board Manager URLs), then installing the “ESP32” board package that appears afterward. This one-time setup step is where most first-timers get stuck; confirm the correct board (there are several ESP32 variants — plain ESP32, ESP32-S3, ESP32-C3, each with different pin layouts) is selected before writing any code.

As with any new microcontroller, confirm the basic upload-and-run pipeline works with the simplest possible program — blinking the onboard LED — before attempting WiFi, sensors, or anything more complex. This isolates board driver issues, USB/serial connection problems, and board-selection mistakes from actual project logic, the same “prove the pipeline first” principle that applies to any new hardware platform.

Step 3: Get WiFi working with a minimal example

Once basic upload works, connect the ESP32 to a WiFi network using the built-in WiFi.h library — a handful of lines to specify a network name and password and confirm a connection. This is the capability that actually differentiates the ESP32 from a plain Arduino for interactive work: once connected, the board can serve a simple web page, respond to HTTP requests from a phone or laptop, or push data to another system, all without additional networking hardware.

Step 4: Build toward a real trigger, not just a demo

A practical first interactive-art project: an ESP32 running a minimal web server that exposes a single endpoint (say, /trigger), which — when hit from a browser or another device on the same network — fires an output (an LED, a relay controlling a larger effect, a signal to another system). That single pattern — network request in, physical or digital effect out — is the basic building block underneath a large share of real ESP32-based interactive installations, regardless of how elaborate the finished piece eventually gets.