『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 15782|回复: 17

自制ESP8266的MQTT消息显示屏,基于Tasmota-display

[复制链接]

1

主题

48

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
金钱
210
HASS币
0
发表于 2021-6-9 21:08:55 | 显示全部楼层 |阅读模式
本帖最后由 Mrmay 于 2021-6-9 21:32 编辑

来论坛以来一直在学习,首次发帖,先上图正面
IMG_20210607_224158.jpg
侧面:
IMG_20210607_224235.jpg
开孔开的着急,电磨切开后没怎么用锉刀细修而是用壁纸刀干的,近距离拍照把丑丑的开孔效果放大了,更丑了,实际不会这么近看,效果还可以,有条件的小伙伴可以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信息的传感器。

过程:
IMG_20210609_194051.jpg
屏幕正面
IMG_20210609_194128.jpg
屏幕背面
背面右侧从上往下分别是
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
IMG_20210609_194143.jpg

我焊的乱七八糟,这几个IO口不挨着,导致背面各种飞线,背面就不发了。

上电,找到tasmota开头的WIFI信号链接,浏览器会自动跳转192.168.4.1,配置一下网络热点重启。
访问8266的IP地址就可以看到tasmota界面了。
进入配置界面,配置MQTT服务器,重启
配置模块Configure Module
下图是我的配置,请按照自己的连接情况设置GPIO功能,SPI相关的IO口不要变更。
[size=1.2]

捕获.JPG
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.791 WIF: Connected
00:00:03.042 HTP: Web server active on display-2119 with IP address 192.168.10.152
20:11:45.298 MQT: Attempting connection...
20:11:45.318 MQT: Connected
20:11:45.321 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显示了:
displaymode 5
稍等片刻等获取到MQTT信息就会在屏幕上显示了!恭喜
消息是滚动显示的,效果还不错!
displaymode 4
可以显示本地传感器和MQTT,即连接到此8266的传感器。

拍照片的时候这货当了背景,也出来露个脸吧,本贴就是根据前期制作的这个51加12864的玩具示波器得到的灵感。平时测个频率还比较准,波形什么的纯属好玩。
等有空了给他刷个万年历。
IMG_20210607_224330.jpg
做好之后又发的贴子,过程难免有遗漏,好了,有问题请留言吧。







IMG_20210609_190827.jpg

tasmota-display.zip

409.62 KB, 下载次数: 64

评分

参与人数 1金钱 +8 收起 理由
XCray + 8 有创意!

查看全部评分

回复

使用道具 举报

1

主题

48

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
金钱
210
HASS币
0
 楼主| 发表于 2021-6-9 21:11:21 | 显示全部楼层
最后一图忘了说,人体传感器有人亮屏的时候大概110ma电流,熄屏后8266活动时在80ma左右,动态睡眠时20ma左右。
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-6-10 06:43:01 | 显示全部楼层
可以考虑用esphome,ha里所有的数据都可以拿来显示
回复

使用道具 举报

1

主题

48

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
金钱
210
HASS币
0
 楼主| 发表于 2021-6-10 08:09:29 来自手机 | 显示全部楼层
XCray 发表于 2021-6-10 06:43
可以考虑用esphome,ha里所有的数据都可以拿来显示

嗯,我看了看esphome的文档,也支持这款屏,我用tasmota是因为对这个比较熟悉
回复

使用道具 举报

3

主题

68

帖子

727

积分

高级会员

Rank: 4

积分
727
金钱
659
HASS币
0
发表于 2021-6-10 09:17:40 | 显示全部楼层
对你的示波器更感兴趣,能不能发个教程
回复

使用道具 举报

0

主题

44

帖子

168

积分

注册会员

Rank: 2

积分
168
金钱
124
HASS币
0
发表于 2021-6-10 09:27:56 | 显示全部楼层
8266支持的屏幕太小了,显示中文的话可显示信息太少了
回复

使用道具 举报

1

主题

48

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
金钱
210
HASS币
0
 楼主| 发表于 2021-6-10 09:49:17 来自手机 | 显示全部楼层
jgx2003 发表于 2021-6-10 09:17
对你的示波器更感兴趣,能不能发个教程

DIY简易示波器的测试-STC12C5A60S2+12864(ST7920)|http://bbs.mydigit.cn/read.php?tid=2288330&page=1

评分

参与人数 1金钱 +8 收起 理由
jgx2003 + 8 感谢楼主分享!

查看全部评分

回复

使用道具 举报

43

主题

412

帖子

3806

积分

元老级技术达人

积分
3806
金钱
3389
HASS币
136
发表于 2021-6-15 23:41:54 | 显示全部楼层
diy兄弟都不容易啊。,一看8266就是隔壁老王的模块拆解的
回复

使用道具 举报

1

主题

48

帖子

258

积分

中级会员

Rank: 3Rank: 3

积分
258
金钱
210
HASS币
0
 楼主| 发表于 2021-6-17 12:31:24 来自手机 | 显示全部楼层
hunterfox 发表于 2021-6-15 23:41
diy兄弟都不容易啊。,一看8266就是隔壁老王的模块拆解的

哈哈哈,对的对的,老王家常客,那个模块屯了好多个
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2021-6-24 14:54:06 来自手机 | 显示全部楼层
hass001 发表于 2021-6-10 09:27
8266支持的屏幕太小了,显示中文的话可显示信息太少了

何出此言?!

现成的有10.1寸的可以用,分辨率1024x600,可以显示很多中文信息。

愿意弄的话,多大的屏幕都不是问题,显示内容也可以很随意。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 20:20 , Processed in 0.115384 second(s), 36 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表