王智刚

入坑单片机了

Misc 更新 2026年4月26日 2 分钟
目录

在 X 上看到有推友用 esp32 做了一个 Claude 助手,感觉很好玩。 激情下单后和 Claude 奋战一晚做出来了这个简单的页面,可以追踪 GitHub 的动态,显示效果非常不错。

8698739ebec6269f251693c7b83c9711.png

悲剧的是屏幕有坏点,退回换货了。。。

第二块到手,决定从头撸

换货的板子到了,第一块的 Arduino demo 拼接感太重,索性推倒重来——既然 Claude 这么好用,那就上 Rust + ESP-IDF,把这块 Waveshare ESP32-S3-RLCD-4.2(N16R8,4.2 寸反射式 LCD)当个长期项目折腾。

板子规格:

  • ESP32-S3-WROOM-1,双核 LX7 @ 240MHz,16MB Flash + 8MB Octal PSRAM
  • 4.2 寸 ST7305 反射式 LCD(300×400,无背光、类电子墨水屏观感、刷新比墨水屏快)
  • ES7210 ADC + 双 MIC 阵列、SHTC3 温湿度、PCF85063 RTC、18650 电池座、SD 卡槽

一周撸出一个仪表盘

到今天 9 天,commit 40 多个,固件已经从”读个温湿度”长成了一个塞了一堆杂事的桌面摆件:

graph LR A[ESP32-S3] --> B[ST7305 反射屏] A --> C[SHTC3 温湿度] A --> D[ES7210 双麦 + esp-sr AFE] A --> E[PCF85063 RTC] A --> F[SD 卡 / SPIFFS] A --> G[WiFi STA / SoftAP] G --> H[HTTP server] H --> I[屏幕镜像 PNG] H --> J["/system.html"] H --> K["/recordings"] H --> L["/settings"] H --> M["/logs 实时流"] D --> F A --> N[GitHub GraphQL]

主页是信息密集仪表盘——大时钟 + 温度湿度 + sparkline 历史曲线 + 内存/Flash/PSRAM 进度条 + 电池 + WiFi + IP,一屏看全:

dashboard

切到第二页是 GitHub 页——从 GraphQL contributionsCalendar 拉真热力图,对齐真实 weekday,再叠 28 天 commit / active days / streak / PR / 未读 notifications,最后一行是最新事件 + 相对时间(5m ago / 2h ago):

github

板子自己还起了个 HTTP server。在浏览器打开 IP,能直接看屏幕实时镜像(fb 推 PNG)、改运行时配置、看实时日志、播放录音文件、看完整硬件状态:

system

想到的能写、能继续做的事

写这篇当总览,技术细节按主题拆了几篇:

下一步想搞的:

  • ES8311 + 喇叭打通,搞个能播报的语音助手(绕回最初的 Claude 助手设想)
  • 接 ASR / TTS / Claude API,做个真”小智”
  • 桌面摆件向继续加:日历提醒、邮件未读、IoT 控制面板

固件代码全开源在 GitHub(如果有同款板子的朋友想参考),Windows + Rust + ESP-IDF 的环境坑都记在 README 里,少走我走过的弯路。