发作品签到
专业版

已开源|ESP32C3温湿度传感器AHT20+SHT30

工程标签

9.6k
0
0
24

简介

既可以充当一个温湿度传感器又能够充当ESP32C3开发板。

简介:既可以充当一个温湿度传感器又能够充当ESP32C3开发板。

开源协议

GPL 3.0

(未经作者授权,禁止转载)
创建时间:2022-11-27 23:35:49更新时间:2023-10-20 13:48:39

描述

工程来历

由于最近要交物联网通信课设,同时正在玩ESP32C3,就用ESP32C3画了这样一个传感器,来充当课设里面的传感器部分。

 

板子简介

主控采用ESP32C3,下载芯片采用CH340K,一颗WS2812的RGB灯,其接线与乐鑫ESP32C3开发板一样,同时引出I2C接口,轻松接入其他I2C传感器。带有电源管理IC:TP4057,可接锂电池,通过一颗MOS管可以是其接上电池的同时也能插上Type-C线,边冲电池,边给ESP32C3供电。(模拟电路学的少,此处要有问题还请大佬指出)

 

作品欣赏

BH1750光照传感器

3D外壳

我们小组搭建的网页

 

开发板源文件

使用arduino IDE开发。开发板实际有好几个源文件,那是我们的课设代码,而且需要连上我们自己的MQTT服务器以及在我们自己搭建网页使用,所有的规则是我们自己规定的,参考价值不大。所以我又修改了巴法云官方的源文件,让其连上米家,成为一个温湿度传感器和一个灯设备。

注意:目前温湿度传感器使用的是AHT20(SHT30因为疫情发不来),由于arduino里默认的I2C引脚为GPIO8和9,ESP-IDF里默认的是GPIO5和6,所以要修改arduino库文件,修改I2C引脚为GPIO5和6。需要先在arduino IDE安装“ DFRobot_AHT20 ”库,之后的修改方法如下:

在“ arduino ”文件找到“ libraries ”文件,在其文件找到“ DFRobot_AHT20 ”,在其文件夹下找到“ DFRobot_AHT20.cpp ”,打开之后,在64行修改为:if(!_init)  _pWire->begin(5,6);,之后保存,从而设置I2C引脚为GPIO5和6。

nBmLkd6tHxzaNo3aceMmJoz9q83iF6fD3xyZn9km.png

 

巴法云平台设置

需要先将秘钥copy到代码里,这样传输的数据才会是你自己的。之后在“MQTT设备云”里创建代码里写好的主题“temp004”和“led002”。后缀002和004代表不同的设备,002代表的是灯,004代表的是传感器,有兴趣可以看看巴法云的开发文档。

cOaUYUveVP9kpusfZ7DKXmj9PXOWuyIKGftW3jkx.png

 

米家设置

打开米家,在“我的”页面找到“其他平台设备”,在其页面点击右上角添加,找到巴法云,输入账号密码,之后同步设备即可(设备名字是在巴法云网页修改的,可任意修改)。

之后就可以用小爱同学来控制了,演示视频如下:

【巴法云接入米家测试-哔哩哔哩】 https://b23.tv/tEvjfEk

 

说在最后

后续会将它接入更多物联网平台,以及设计出更多的物联网设备。

它的三个问题:

1.不能直接使用arduino IDE的串口助手,需要借助其他串口助手,但在ESP-IDF里没有任何影响,后续会换串口芯片找出原因。

2.在不使用CH340K串口芯片而使用ESP32C3自带的USB接口,上电串口没有反应,ESP-IDF里自然下载不了程序,后续会找出原因,使用CH340K串口下载没有任何影响。

3.板子留了arduino 默认I2C引脚,GPIO8和9,但是使用不了,只好修改I2C接口,可能是没有上拉电阻?问题有待思考查找。

问题解决

1.由于arduino版本的问题,ch340K无法完全适配;

2.GPIO2、GPIO9未上拉;

更新记录

2023年10月19  增加GPIO2的上拉电阻

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

附件

序号文件名称下载次数
1
AHT20_led.zip
244
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航