首页 >> 知识 >> Arduino + ESP32 高分开源项目推荐

Arduino + ESP32 高分开源项目推荐

文章目录

作为一个 ESP32 重度用户,并且一直使用 Arduino 框架开发嵌入式应用的爱好者,在过去开发的项目过程中使用过不少开源项目,这里稍微总结一下比较有意思的,以及比较有用的开源项目列表。

其中一些项目不光是固件方面的程序,也包含了对应的硬件设计,可以当作一个电子 DIY 入门的学习项目。

开源项目集合awesome-esp

项目地址:http://github.com/agucova/awesome-esp

一个国外爱好者收集的 ESP32/ESP8266 开源项目集合,主要偏完整的固件应用。

固件应用

这里是一些完整的固件开源项目,通常也会包含一个完整的硬件项目,不管是用来学习硬件开发,还是学习嵌入式软件开发,都是很好的例子。

ESPHome

项目地址:http://github.com/esphome/esphome

算是最流行的开源智能家居固件之一了,通过编写 YAML 配置文件的方式来快速集成各种传感器、开关、屏幕等设备到一个固件中,并且内置了 Home Assistant 等智能家居平台的支持,可以一键添加到这些平台中。

要使用 ESPHome,基于上只需要了解大概的 GPIO 知识,I2C 以及 SPI 总线的概念就可以上手了,传感器或者其他外设的驱动都已经包含在固件中,并且官方文档也包含了详细的配置教程。

之前就使用 ESPHome 快速搭建了两个应用:

超简单 DIY - AirCube 空气检测站

http://xujiwei.com/blog/2023/12/aircube-diy-environment-monitor-station/

使用 ESPHome + INA219 模块构建一个简易功率计

http://xujiwei.com/blog/2023/10/build-power-meter-with-esphome-and-ina219/tasmota

项目地址:http://github.com/arendst/Tasmota

另外一个支持 ESP32/ESP8266 的智能家居固件,但是配置方式和 ESPHome 不太一样。ESPHome 是基于配置文件去编译每个设备需要的固件,Tasmota 是基于它的 WebUI 去配置所需要使用的外设,相对而言,可能对于不喜欢写配置文件的用户来说,Tasmota 用起来更方便。

X-Knob

项目地址:http://github.com/SmallPond/X-Knob

基于 smartknob 和 X-Track 的一个开源无刷电机旋钮固件,相比原版的自定义绘制界面,X-Knob 使用 LVGL 渲染界面,扩展性和开发的便捷性要好很多,并且作者也搭建了一套 UI 生命周期管理,在页面管理上更加舒适。

WLED

项目地址:http://github.com/Aircoookie/WLED

开源的 WS2812B 灯带控制固件,配套有 App 和 Web 控制界面,可以提供各种灯光切换效果,使用流水灯、彩虹灯之类,并且固件还提供了 API 来控制灯带,理论上淘宝上随便买一个滴胶 WS2812B 灯带再加上一个 NodeMCU/ESP8266 开发板,就可以代替 YeeLight 那些卖得巨贵的灯带了。

AWTRIX

项目地址:http://github.com/awtrix/AWTRIX2.0-Controller

网红像素钟,包含了各种应用,天气预报、空气质量、时间、日期、各个平台粉丝数等,我复刻了两个版本,一个直接使用淘宝上购买的 32x8 WS2812 像素屏,使用的 5050 封装灯珠,体积比较大,另外一个就是自己画板子做了个小尺寸的,使用 3528 封装的灯珠。

AWTRIX 配套的服务器功能还挺强大的,不光可以安装应用,还支持画图标等,也有 API 来推送通知,这样可以拿 AWTRIX 像素钟当一个通知中心。

这个项目是使用 ESP8266 的,目前已经停止维护了,作者新开了一个坑使用的 ESP32,不过功能和生态并不如旧版强大,主要是可以单机运行,不再需要单独部署一个服务端,但是如果想要扩展

网站地图