|
|
本帖最后由 mrmay 于 2021-6-9 21:31 编辑
本贴发在了瀚思彼岸论坛,毕竟那里玩HASS的人多,指导MQTT的人也多一些,但数码坛也是人才济济,独乐乐不如众乐乐,我自己搬运一下,始终在潜水,新站第一帖。正面:
侧面:
开孔开的着急,电磨切开后没怎么用锉刀细修而是用壁纸刀干的,近距离拍照把丑丑的开孔效果放大了,更丑了,实际不会这么近看,效果还可以,有条件的小伙伴可以3D打印。
侧面通过一个3.5耳机插座引出了一个IO口,方便后期加传感器。
功能:
通过240*320 TFT屏幕显示各传感器发送到MQTT服务器上的消息或者本地传感器的数值。
以上图片可见我家培正模块传给HASS的各种用电情况,以及另外的温度、湿度、光照强度、气压等。
玩HASS的怎么能没有各种传感器,都去网页查看还是挺麻烦的,本贴制作的显示屏可以显示各类传感器信息,算是对智能家居系统的一个小小补充。
正面两个按钮,一个复位,一个IO,右侧上方时开关,下方是人体感应,人来亮屏,人走30秒自动熄屏,延长屏幕寿命,减少碳排放。
材料:
塑料盒子以及各种开孔工具,锉刀等。
ILI9341 TFT屏幕,通过4线SPI与8266通信,这个最贵,花了接近40
esp8266 12F模块,NodeMCU最好,可以焊接前调试
3.3V LDO
人体传感器模块,这个可有可无,正好手里有就加上了
各种线若干,焊接工具等。
软件:
ESP8266刷Tasmota-Display,过程从略,论坛大把,文件附在下面
MQTT服务器以及各种能够发送MQTT信息的传感器。
过程:
屏幕正面
屏幕背面
背面右侧从上往下分别是
vcc gnd cs res D/C mosi miso sck led miso 另外的引脚是触摸用,本次不用到触摸。
其中cs res D/C mosi miso SCK 六脚都需要接IO口,Led可以接vcc常亮,也可以通过一三极管接IO口,背光电流有50mA以上,不要直接接8266IO!
由于是硬件SPI 引脚对应不能错,GPIO14(CLK), GPIO13(MOSI) and GPIO12(MISO)
焊接或者是杜邦线先连接一下刷好display 的nodemcu
盒子前盖开孔
我焊的乱七八糟,这几个IO口不挨着,导致背面各种飞线,背面就不发了。
上电,找到tasmota开头的WIFI信号链接,浏览器会自动跳转192.168.4.1,配置一下网络热点重启。
访问8266的IP地址就可以看到tasmota界面了。
进入配置界面,配置MQTT服务器,重启
配置模块Configure Module
下图是我的配置,请按照自己的连接情况设置GPIO功能,SPI相关的IO口不要变更。
IO2 我给了人体传感器,设置成了switch,IO0 我给了屏幕背光,设置成继电器,设置成PWM应该可以调节背光亮度。
查看Console,如果有如下打印应该就是识别屏幕了。
- 00:00:00.001 HDW: ESP8266EX
- 00:00:00.050 CFG: Loaded from flash at F5, Count 23
- 00:00:00.055 QPC: Count 1
- 00:00:00.059 SPI: Hardware using GPIO14(CLK), GPIO13(MOSI) and GPIO12(MISO)
- 00:00:00.163 DSP: ILI9341
- 00:00:00.167 Project tasmota Tasmota Version 9.4.0(display)-2_7_4_9(2021-04-23T10:07:21)
- 00:00:01.564 WIF: Connecting to AP1 in mode 11n as display-2119...
- 00:00:02.789 WIF: Connected
- 00:00:03.041 HTP: Web server active on display-2119 with IP address 192.168.10.152
- 21:24:34.268 MQT: Attempting connection...
- 21:24:34.292 MQT: Connected
- 21:24:34.295 MQT: tele/display/LWT = Online (retained)
复制代码
此时屏幕应该有显示了,但是可能字很小,或者只有一个角显示,如果没有显示就需要检查各种连线和设置了。
设置屏幕:
Console里面使用命令
- DisplaySize 1..4 设置屏幕显示文字大小 参数1 2 3 4 从小到大
- DisplayRotate 设置屏幕旋转
- 0 = 0°
- 1 = 90°
- 2 = 180°
- 3 = 270°
- DisplayCols 1..44 设置屏幕显示列宽1-44
- DisplayRows 1..32 设置屏幕显示行款1-32
复制代码 屏幕显示设置好之后上方会出现如开篇图上最上方的红黄时间显示,
接下来就可以设置屏幕为MQTT显示了:
稍等片刻等获取到MQTT信息就会在屏幕上显示了!恭喜
消息是滚动显示的,效果还不错!
可以显示本地传感器和MQTT,即连接到此8266的传感器。
拍照片的时候这货当了背景,也出来露个脸吧,仿制老站的12864示波器,本贴就是根据前期制作的这个51加12864的玩具示波器的外壳得到的灵感。平时测个频率还比较准,波形什么的纯属好玩。
等有空了给他刷个万年历。
测一下电流
人体传感器有人亮屏的时候大概110ma电流,熄屏后8266活动时在80ma左右,动态睡眠时20ma左右
做好之后又发的贴子,过程难免有遗漏,好了,有问题请留言吧。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|