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.