Awesome ESP
A curated list of awesome ESP8266/32 projects and code.

Both the ESP8266 and the ESP32 are low-cost Wi-Fi microchips with full TCP/IP stack and microcontroller capabilities produced by the Shanghai-based manufacturer Espressif Systems.
See Contributing for information on how to contribute to this list.
—
Contents
Firmware
-
Espressif AT - The default vanilla firmware for the ESP8266.
-
NodeMCU
- An eLua-based firmware for the ESP8266.
-
ESPBasic - A BASIC firmware for easy and wireless programming, ready for the 8266.
-
MicroPython
- An implemention of Python3 for the ESP8266 and 32.
-
ESP3D
- An experimental firmware for 3D Printers, both the ESP32 and 8266.
-
Frankenstein
- A quick and dirty firmware with cool features for the ESP8266.
-
MongooseOS
- An IoT specific firmware, with both C and JS. Available for the ESP32/8266.
-
DeviceHive - A firmware made as a client for DeviceHive’s IoT data platform, only for the 8266.
-
RT-Thread
- Chinese open source firmware available for the ESP32.
-
Sming Framework
- Superb C/C++ IoT Framework with support for ESP8266 and ESP32.
-
ESP Flash Tool - The vanilla firmware flasher for both ESP’s.
-
Arduino Core/8266
- The Arduino core for the ESP8266.
-
Arduino Core/32
- The other Arduino core for the ESP32.
-
ESPTool
- Espressif’s command line tool for bootloader comms in both ESP’s.
-
ESP-Open-SDK
- An open SDK for the ESP8266.
-
ESPTool-ck
- A CLI tool for flashing in the ESP8266.
-
ESPTool-gui
- A flashing GUI tool based on ESPTool-ck.
-
LuaNode
- A lua-only SDK for 32/8266.
-
Tuya-Convert
- A Wi-Fi firmware flasher ESP8266 that has been pre-loaded with Tuya firmware.
-
NodeMCU Flasher
- The official flashing tool for the NodeMCU OS.
-
Tasmotizer
- A graphical flashing tool for Tasmota firmware. Can manage Wi-Fi & MQTT settings, modules & templates.
-
Arduino FS Plugin
- An Arduino plugin for filesystem uploads in the 8266.
-
PlatformIO
- Cross Platform IDE and Debugger that supports both the ESP32 and ESP8266.
Projects
Smart Home and IoT
-
OpenMQTTGateway
- An implementation of a multiprotocol MQTT gateway for both ESP’s among other devices.
-
ESPHome - A full-featured system for controlling ESP’s through simple yet powerful configuration files and Home Automation systems.
-
Tasmota - An alternative firmware for Sonoff & other ESP8266/ESP32 devices. Includes a large collection of sensor drivers & integrates with Home Assistant natively or via MQTT.
-
ESPEasy
- Easily turn ESP modules into multifunction sensor devices for home automation systems.
-
Sonoff-Homekit
- An alternative firmware for Sonoff devices (and other 8266 devices) which allows control through Apple’s Homekit.
-
DoorsignEPD
- A smart doorsign with an E-Paper display using the ESP32.
-
EPaperWeatherDisplay
- A very cute e-ink weather display using the ESP32.
-
HomePoint
- Control MQTT/HomeKit smart home devices from an ESP32-powered screen.
-
openHASP - Control your home automation devices from a customizable touchscreen UI connected via MQTT.
-
SuperGreenOS
- A full-featured home farming automation software for the ESP32.
-
CanAirIO
- Citizen science project that uses mobile and fixed stations to measure air quality with ESP32 and smartphones.
InfoSec
-
ESP32-BLECollector
- A wardriving device which displays BLE devices and collects data from them, all in a nice screen interface.
-
ESP32Marauder
- An integrated suite of offensive and defensive tools for WiFi and Bluetooth.
-
ArduinoPcap
- A library which allows generation of .pcap files with network traffic, for both ESP’s.
-
WiFi Satellite - A giant Wifi “satellite” that can monitor all 14 2.4Ghz channels using, well, 14 ESP32s.
-
ESP8266 Deauther
- A very cool pseudojammer (deauther) of Wifi networks that uses the ESP8266.
-
PacketMonitor
- A beautiful OLED monitor for packet activity in a WiFi channel. Two versions for each ESP.
-
WiFiDuck
- A wireless-enabled keystroke injector, analogous, but even more awesome than the Rubber Ducky.
-
ESP8266 Beacon Spam
- Want to confuse people? This device creates hundreds of fake WiFi networks.
-
DeauthDetector
- A small device that shines a light if it detects a WiFi deauth attack. Made by the same guy as the last six projects.
Biomedical
-
HeartyPatch - A wearable BLE and WiFi connected ECG-HR patch which uses the ESP32.
-
HealthyPi v4 - An amazing open source vital signs monitor that can monitor ECG, respiration, pulse oximetry and body temperature, all run by an ESP32.
LoRa
-
Meshtastic - ESP32 LoRA boards as secure, long battery life, mesh GPS communicators.
-
ESP32-Paxcounter
- Wifi & Bluetooth driven, LoRaWAN enabled, battery powered mini Paxcounter built on cheap ESP32 LoRa IoT boards.
-
Disaster Radio - A disaster-resilient communications network powered by the sun.
Music and Audio
-
Alles
- A many speaker distributed music synthesizer using UDP multicast over WiFi, modeled after the alles machine/AMY.
-
ESP32-Radio
- Internet radio based on ESP32, VS1053 and a TFT screen.
-
ESPuino
- RFID-controlled music player powered by ESP32.
-
Knobby
- A handheld Spotify remote that encourages you to explore unfamiliar music.
-
PedalinoMini
- A wireless MIDI pedal controller for guitarists, built with the ESP32.
-
Squeezelite-esp32
- Streaming audio receiver with multi-room sync, AirPlay, Bluetooth, hardware buttons, display and more.
-
ThingPulse esp8266-spotify-remote
- Control your Spotify player from a ESP8266 with color touch display.
Smartwatches
-
mutantW_V1 - An ESP32 based open source smartwatch with 1.7 inch display, WiFi, Bluetooth, NeoPixel and vibration.
-
Open SmartWatch - A FOSS smartwatch with GPS, an inertial unit and an extremely cool 3D-printed case.
-
StickWatch
- A smartwatch module based on the M5Stick, using the ESP32.
-
Watchy - An open source e-paper watch with lots of options for customization.
Others
-
SoftRF
- A DIY aviation proximity awareness system that can be used in UAV projects.
-
Retro ESP32
- An extremely cool launcher for the Odroid Go (with the ESP32), which allows emulating several retro consoles.
-
DroneBridge
- An implementation of DroneBridge, a signal link for drones and UAV’s on the ESP32.
-
E-TKT
- An ESP32 powered DIY label maker that mixes both old fashioned and contemporary technology.
-
FreeTouchDeck
- Open source touch macropad and stream control deck with built-in web configurator.
-
SmartSpin2k
- Transform your spin bike into a smart trainer with automatic resistance knob control in fitness apps like Zwift.
-
WirelessPrinting
- Print wirelessly from Cura, PrusaSlicer or Slic3r to your 3D printer connected to an ESP module.
-
WLED - Control many types of RGB(W) LED strips with an ESP8266 or ESP32 over WiFi.
Libraries
-
Wasm3
- A lightning fast WebAssembly interpreter designed for embedded devices, compatible with both ESP’s.
-
Homie8266
- Framework implementation of the Homie protocol for the 8266.
-
ESP-Dash
- Beautiful and fast framework for creating remote dashboards in the 8266/32. No internet required.
-
ESP_mqtt
- MQTT helper library for the ESP8266.
-
GUIslice
- A drag and drop GUI framework for several devices and screen controllers. Compatible with 8266 and 32.
-
LVGL - An open-source graphics library providing everything you need to create embedded GUIs with easy-to-use graphical elements, beautiful visual effects and low memory footprint.
-
MicroWebSrv2
- A very powerful MicroPython web server which can be used in the ESP32.
-
IRremoteESP8266
- Emit and receive IR signals in the ESP8266.
-
esphomelib
- Framework to integrate with HomeAssistant in the 8266.
-
TTS
- A somehow good text to speech library for several Arduino devices, both ESP’s included.
-
Free802.11
- Library to emit arbitrary 802.11 signals with the ESP32.
-
Koyn
- A decentralized Bitcoin library for the ESP32 and the ESP8266.
-
TFTLibrary
- TFT compatibility for the ESP32.
-
UTFT-ESP
- UTFT Support for the ESP32/8266.
-
ESPAudio
- Library for playing a diverse range of audio formats in the ESP8266/ESP32.
-
ESP32-audioI2S
- Plays mp3, m4a and wav files from SD card or stream via I2S interface.
-
AsyncTCP
- Asynchronous TCP Library for both the 8266 and the 32.
-
ESP-HomeKit
- Homekit implementation for 8266 on RTOS.
-
HomeSpan
- A robust and extremely easy-to-use Arduino library for creating your own ESP32-based HomeKit devices.
-
ESPHelper
- MQTT and Wi-fi automation-oriented library for the 8266.
-
ESPHelper/32
- Port of the ESPHelper library for the 32.
-
ESP8266Wifi
- Simple Arduino Wifi library for the 8266.
-
WiFiESP
- Arduino library for Wifi management, client/server for 8266 board.
-
TinyGSM
- A quick and simple Arduino library for interaction with GSM modules which can also control the 8266 through AT commands.
-
mJS
- A lightweight and restricted JS engine that is used by MongooseOS, compatible on the 32 and 8266.
-
ESPUI
- A simply library for making interactive web interfaces for both ESP’s.
-
ESP32 ePaper
- A full-featured library for using ePaper modules with the ESP32.
-
TinyUPnP
- A lightweight UPnP IGD library for automatic port forwarding on the 8266 and 32.
-
Esp32SSHClient
- A library that implements a SSH client in the ESP32.
-
painlessMesh
- A library that takes care of the particulars of creating a simple mesh network using ESP8266 and ESP32 hardware.
-
WifiEspNow
- Arduino library for ESP-NOW, a connectionless WiFi communication protocol defined by Espressif.
-
go-mcu
- Golang package for interacting with NodeMCU-based boards.
-
CanAirIO SensorLib
- ESP32/8266 library with auto-configuration of multiple PM2.5, CO2 and environment sensors.
-
Dhyara
- A C/C++ library for making a Mobile Ad hoc Network (MANET) using ESP Now.
-
LedFx
- A library for using audio input to create realtime light shows. LedFx can control multiple devices and works great with cheap ESP8266 nodes.