Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

awesome-esp32

Tiny computers are having a moment online, I figured making a list of cool projects people have built using the ESP32 chip would encourage folks to continue tinkering.

The ESP32 is a microcontroller and many packaged devices use it, such as Waveshare and LilyGO boards, M5Stack units, and shipped products like the Ulanzi pixel clock. The projects will state on which of these devices it runs to facilitate discoverability.

The document is organized like this:

  • Applications are things people built and run;
  • Tools, utilities & libraries is what you build them with.
  • each entry ends with the device it runs on, in backticks, spelled as devices.md spells it. Search that name and you get every project for the hardware you own.
  • a handful of projects have no single device: they run on dozens of boards, or on a bare ESP32 plus parts you pick yourself. Those end with nothing, and devices.md says what each one takes.

If you're getting started and wonder which device to get, the list of devices used in the repo is laid out in devices.md.

This is a collaborative project, if you've built something cool see CONTRIBUTING.md and make a PR. I've also listed some ideas in ideas/ideas.md.

Guides

  • ESP32 development practices - Board-agnostic lessons pulled from every listed project, each cited to the one that learned it: choosing a stack, holding a board matrix, memory discipline, watchdogs, OTA, connectivity, power.
  • Waveshare AMOLED 1.8 guide - Field notes for the Waveshare ESP32-S3-Touch-AMOLED-1.8, measured on real hardware: pin map, CO5300 panel, touch, IMU, audio codec, power and battery, and a condensed do-not list.

Elsewhere, write-ups by @ardchain posted as threads on X (third-party, not repo documents, and X may show a login wall if you have no account):

Applications

Companions

  • chat-stick - Hold-to-talk voice interface to Gemini Live, with persistent timers, server-side tools and OTA updates, running on either an M5StickS3 or a Waveshare ESP32-S3-Touch-AMOLED-1.8. (demo) M5StickS3 or Waveshare ESP32-S3-Touch-AMOLED-1.8
  • xiaozhi-esp32 - MCP-based AI chatbot firmware powering a whole ecosystem of talking desk companions, across dozens of boards it lists itself.
  • pixelcat - Tamagotchi-style pixel cat on a Waveshare ESP32-S3-Touch-AMOLED-1.8 that learns your schedule, reacts to touch and sound, and can never irrecoverably die. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8
  • pocket-pet - Pocket-Pikachu-style virtual-pet watch on a Waveshare ESP32-S3-Touch-AMOLED-2.06: a pixel pet roams a grass field, counts your real steps, sleeps with the screen, and levels up as you walk. Waveshare ESP32-S3-Touch-AMOLED-2.06
  • InkSight - E-paper desk companion built from an ESP32-C3 board and a 4.2-inch panel: 24 display modes (weather, poetry, habit tracking), a community mode marketplace, and browser-based flashing.
  • ESP32 Codex Agent Device - Physical Codex task-status companion for a Waveshare ESP32-S3-Touch-AMOLED-1.8, with lifecycle tracking, runtime and token metrics, and a procedural avatar. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8
  • Vibe Watch - Wrist-worn M5Stack StopWatch controller for parallel AI coding agents, with physical approve/reject, haptics, and BLE HID. (demo) M5Stack StopWatch

Displays & ambient

  • awtrix3 - Turns an Ulanzi Smart Pixel Clock TC001 into a scriptable smart display with a large community of apps. Ulanzi Smart Pixel Clock TC001
  • HomePoint - Switches MQTT and HomeKit devices from a small screen, shipped as prebuilt binaries for a generic ESP32 module or an M5Stack.
  • esp32-lvgl-watchface - Renders smartwatch binary watchfaces on any board carrying a 240x240 LVGL screen, with a converter that turns watchface files into compilable code. (demo)
  • OpenEPaperLink - Repurposes electronic shelf labels into a wireless e-paper display network with an ESP32 access point.
  • trmnl firmware - Firmware behind the TRMNL e-ink dashboard, an ESP32-C3 driving a battery-friendly plugin ecosystem. TRMNL
  • esp32-vertical-card-compass - Simulates an aviation vertical-card magnetic compass on an M5Stack CoreS3: the card swings, overshoots, and reproduces the real instrument's errors. (demo) M5Stack CoreS3

Play

  • tinydraw - Finger-drawing app for the Waveshare ESP32-S3-Touch-AMOLED-1.8 and RP2350-Touch-AMOLED-1.8, with variable-width ink, zoom, undo, and SVG/PNG export. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8 or Waveshare RP2350-Touch-AMOLED-1.8
  • infinite-golf - Procedurally generated mini-golf on a Waveshare ESP32-S3-Touch-AMOLED-1.8; you physically swing the device and the IMU measures the shot. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8
  • esp32-gameos - A handheld gaming OS for the Waveshare ESP32-S3-Touch-AMOLED-1.8: launcher plus six fully procedural games at 60 fps, no engine, no asset files. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8
  • esp32-fluidbox - A 3D particle fluid living inside the case of a Waveshare ESP32-S3-Touch-AMOLED-1.8: ~900 particles slosh with the accelerometer as if liquid sat behind the screen. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8
  • puck apps - Clock, connect 4, and friends: small apps written once against the puck convention, each running on both the Waveshare ESP32-S3-Touch-AMOLED-1.8 and the RP2350-Touch-AMOLED-1.8. (live gallery) Waveshare ESP32-S3-Touch-AMOLED-1.8 and Waveshare RP2350-Touch-AMOLED-1.8
  • 67 - Throw-and-catch party game for a Waveshare ESP32-S3-Touch-AMOLED-2.06; the screen flickers random numbers while airborne and locks in on catch, landing on a red 67 one time in five to pick a loser. (demo) Waveshare ESP32-S3-Touch-AMOLED-2.06

Robots

  • MicroLink Crawler - Pocket FPV exploration rover on 7 mm 3D-printed linked tracks, needing all four of an M5Stamp Pico for the motors, an M5Stack AtomS3R-CAM for live video and red-object detection, an M5Stack Atom JoyStick to drive it, and an M5Stack Core2 as the monitor. (demo) M5Stamp Pico and M5Stack AtomS3R-CAM and M5Stack Atom JoyStick and M5Stack Core2

Home & control

  • Tasmota - Flash-and-forget firmware giving off-the-shelf smart plugs and lights local MQTT control, on a device list of its own that runs to thousands.
  • WLED - The addressable-LED firmware, with effects, segments, and an ecosystem of controllers built around it.
  • The Lantern Project - Addressable RGB LED strip controller you build as a pair: an ESP32 remote with 32 modes and 14 lock screens, talking to an ESP8266 that drives the strip. (demo)

Radio & comms

  • Meshtastic - Off-grid, encrypted LoRa mesh messaging on the LoRa boards it lists itself; the reference ESP32 radio project.
  • Waycast - Car-to-car LoRa mesh on a Waveshare ESP32-P4-Module-DEV-KIT with a 7-inch touch panel, a USB LoRa dongle and a USB GPS: geo-ephemeral hazard reports, convoy position sharing, and offline maps, with no cellular dependency. (site) Waveshare ESP32-P4-Module-DEV-KIT
  • familybox - Photo and voice messages between a travelling parent and a child too young to read: the phone sends, a Waveshare ESP32-S3-Touch-AMOLED-1.8 shows the photo, and two buttons play the note or record a reply. (demo) Waveshare ESP32-S3-Touch-AMOLED-1.8

Audio & music

  • squeezelite-esp32 - Multi-room audio player and AirPlay/Spotify/Bluetooth endpoint on a bare ESP32.
  • esp32_basic_synth - A polyphonic MIDI synthesizer from one chip and a DAC.

Utilities & appliances

  • ESP-KVM - IP-KVM on a Waveshare ESP32-P4-ETH and a TC358743 HDMI bridge: captures the target machine's screen, presents itself to that machine as a USB keyboard and mouse, and puts both in a browser, down to the BIOS of a box with no working OS. (demo) Waveshare ESP32-P4-ETH
  • Midbar - Hardware data vault for credentials and notes, built across a dozen MCUs including the ESP32: keys derive from the boot-time master password, joined by RFID cards on some versions.

Tools, utilities & libraries

Frameworks & languages

  • ESP-IDF - Espressif's official development framework.
  • esp-hal - Bare-metal Rust for ESP32 chips.
  • MicroPython - Python on the chip, with first-class ESP32 support.
  • ESPHome - Describe a device in YAML, get firmware; the default way ESP32s enter Home Assistant.

Utilities & SDKs

  • ESP Web Tools - Flash firmware from the browser over WebSerial, no toolchain installed.
  • openHASP - Build custom touchscreen control panels for home automation, driven over MQTT.
  • psiop - A compact software 3D rendering library for the ESP32. (demo)
  • openai-realtime-embedded - OpenAI's official SDK for talking to the Realtime API over WebRTC from an ESP32-S3.

Emulators & simulators

  • Wokwi - Simulate ESP32 boards, sensors and displays in the browser; the fastest way to try firmware with no hardware on the desk. (simulator)
  • espressif/qemu - Espressif's QEMU fork: full-system ESP32 emulation for CI and debugging.
  • puck - Convention and emulator for apps that travel between tiny computers (RP2350 and ESP32-S3), with harness-verified pixel-exact ports.

License

CC0 1.0. Descriptions belong to their projects' authors where quoted.

关于 About

Hand-picked ESP32 projects worth building, copying, or watching run
awesomeawesome-listembeddedesp32esp32-s3iot

语言 Languages

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
64
Total Commits
峰值: 31次/周
Less
More

核心贡献者 Contributors