ESC
开源 1 分钟阅读

awesome-esp32:精选值得构建、复刻或围观的ESP32项目

《awesome-esp32》是一个精选ESP32项目的开源列表,收录了可在真实硬件上运行的公开源码项目,涵盖陪伴机器人、显示器、游戏、家庭自动化、无线电通信、音频等类别,并标注了适用的开发板标签(如e-ink、s3-amoled、led-matrix等)。列表还包含ESP32开发实践指南、Waveshare AMOLED 1.8开发板手册,以及相关工具、库和模拟器。所有项目均附有可构建的源码和运

来源:GitHub

awesome-esp32

精选值得构建、复刻或围观的ESP32项目。每个条目都链接到可用的代码仓库;当演示本身就是重点时,会保留演示链接。

范围:以ESP32系列为主,也包括近亲(RP2350等),前提是项目可跨芯片移植而非仅限单一芯片。

两个顶层板块:Applications是人们在ESP32上实际构建并运行的东西;Tools, utilities & libraries是构建它们所需的工具。在Applications内,目录树只回答一个问题——项目是干什么的;标签回答另一个问题——它在什么硬件上运行。可用标签:e-ink、s3-amoled、led-matrix、p4、c3、headless、battery、ecosystem。它们位于条目的末尾,标记特殊情况:没有标签的条目是带普通屏幕的普通ESP32。

s3-amoled主要指一块开发板——Waveshare ESP32-S3 Touch AMOLED 1.8,一款带IMU、扬声器和电池支持的 pocket-size 触摸屏。买一块就能运行Play板块的大部分应用;想自己为它开发,可以从Guides中的实地指南开始。

入选标准简而言之:可构建的公开源码、在真实硬件上运行的证据(照片、视频或实况演示,而非渲染图),以及README中足够让其他人复现的内容。Star数不是标准。完整版和提交方式见CONTRIBUTING.md。待构建的内容见ideas/ideas.md。

指南

本仓库中,从所列项目的构建方式中提炼出的要点:

  • ESP32开发实践——从每个列出的项目中提炼的与具体开发板无关的经验,每条都标注了来源项目:技术栈选择、维护开发板矩阵、内存纪律、看门狗、OTA、连接、电源。
  • Waveshare AMOLED 1.8指南——面向s3-amoled开发板的实地笔记,基于真实硬件测量:引脚图、CO5300面板、触摸、IMU、音频编解码器、电源和电池,以及一份精简的“不要做”清单。

此外,@ardchain 在X上发布的帖子(第三方内容,非仓库文档;如无账号,X可能显示登录墙):

应用

陪伴设备

  • chat-stick——ESP32-S3 棒状设备上的按住说话语音接口,接Gemini Live,支持持久定时器、服务端工具和OTA更新。(演示)s3-amoled
  • xiaozhi-esp32——基于MCP的AI聊天机器人固件,驱动了一整个会说话的桌面陪伴设备生态。ecosystem
  • pixelcat——ESP32-S3 AMOLED掌机上的拓麻歌子风格像素猫,会学习你的日程,对触摸和声音做出反应,并且永远不会不可逆地死亡。(演示)s3-amoled battery
  • pocket-pet——ESP32-S3 AMOLED开发套件上的“口袋皮卡丘”风格虚拟宠物手表:像素宠物在草地上游荡,统计你的真实步数,随屏幕休眠,随行走升级。s3-amoled battery
  • InkSight——ESP32-C3上的电子墨水桌面伴侣:24种显示模式(天气、诗歌、习惯追踪)、社区市场模式,以及基于浏览器的刷写方式。e-ink c3 ecosystem

显示与环境

  • awtrix3——将Ulanzi像素时钟变成可脚本化的智能显示器,拥有庞大的应用社区。led-matrix ecosystem
  • HomePoint——用于控制MQTT和HomeKit设备的小型ESP32屏幕。
  • esp32-lvgl-watchface——在240x240 LVGL屏幕上渲染智能手表二进制表盘,并附带一个将表盘文件转换为可编译代码的转换器。(演示)
  • OpenEPaperLink——将电子货架标签改造成无线电子墨水显示网络,以ESP32为接入点。e-ink ecosystem
  • trmnl firmware——TRMNL电子墨水仪表盘背后的固件,ESP32-C3驱动一个电池友好的插件生态。e-ink c3 battery ecosystem

游戏

  • tinydraw——面向ESP32-S3/RP2350触摸AMOLED掌机的手指绘画应用,支持可变宽度笔触、缩放、撤销和SVG/PNG导出。(演示)s3-amoled
  • infinite-golf——ESP32-S3 AMOLED掌机上的程序化生成迷你高尔夫;你物理挥动设备,IMU测量击球。(演示)s3-amoled
  • esp32-gameos——同一AMOLED设备上的掌上游戏操作系统:启动器加六个完全程序化的游戏,60帧/秒,无引擎、无素材文件。(演示)s3-amoled
  • esp32-fluidbox——设备外壳内的3D粒子流体:约900个粒子随加速计晃动,就像屏幕后面有液体。(演示)s3-amoled
  • puck apps——时钟、四子棋等:按puck约定编写一次即可在其两块板上运行的小应用。(实况画廊)s3-amoled
  • 67——ESP32-S3 AMOLED掌机上的抛接派对游戏;屏幕在空中闪烁随机数字,接住时锁定,五分之一的概率停在红色67上以选出输家。(演示)s3-amoled

家庭与控制

  • Tasmota——刷入即忘的固件,让现成的智能插头和灯泡获得本地MQTT控制。ecosystem
  • WLED——可寻址LED固件,带效果、分段和围绕它构建的控制器生态。ecosystem

无线电与通信

  • Meshtastic——离线、加密的LoRa网状网络消息系统;ESP32无线电项目的参考之作。ecosystem
  • Waycast——ESP32-P4触摸屏仪表盘上的车对车LoRa网状网络:地理瞬时危险报告、车队位置共享和离线地图,完全不需要蜂窝网络。(网站)p4

音频与音乐

  • squeezelite-esp32——在裸ESP32上实现的多房间音频播放器,支持AirPlay/Spotify/蓝牙端点。headless
  • esp32_basic_synth——用一颗芯片加一个DAC实现的复音MIDI合成器。headless

实用工具与装置

  • ESP-KVM——基于ESP32-P4和TC358743 HDMI桥的IP-KVM:捕获目标机屏幕,向目标机模拟USB键盘鼠标,并将两者呈现在浏览器中,甚至可操作无操作系统的电脑BIOS。(演示)p4 headless

工具、实用程序与库

框架与语言

  • ESP-IDF——乐鑫官方开发框架。
  • esp-hal——面向ESP32芯片的裸机Rust支持。
  • MicroPython——芯片上的Python,对ESP32有一流支持。
  • ESPHome——用YAML描述设备,生成固件;ESP32进入Home Assistant的默认方式。ecosystem

实用程序与SDK

  • ESP Web Tools——通过浏览器经WebSerial刷写固件,无需安装工具链。
  • openHASP——构建用于家庭自动化的自定义触摸屏控制面板,通过MQTT驱动。
  • psiop——面向ESP32的紧凑型软件3D渲染库。(演示)
  • openai-realtime-embedded——OpenAI官方SDK,用于从ESP32-S3经WebRTC与Realtime API通信。

模拟器

  • Wokwi——在浏览器中模拟ESP32板、传感器和显示器;桌面无硬件时快速尝试固件的最快方式。(模拟器)
  • espressif/qemu——乐鑫的QEMU分支:用于CI和调试的全系统ESP32仿真。
  • puck——用于在小型计算机(RP2350和ESP32-S3)之间迁移应用的规范和模拟器,带经过测试的像素级精确移植。

许可

CC0 1.0。引用处的描述归其各自项目的作者所有。