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

 找回密码
 立即注册
楼主: XCray

[新奇玩法] (多个)蓝牙网关 TTL->MQTT,支持任意米家蓝牙设备接入HA/NR

  [复制链接]

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2020-10-5 17:33:52 | 显示全部楼层
maybeloveu 发表于 2020-10-5 10:33
连入路由的wifi,输入ip/update 之后可以打开升级页面,链接那个多出来的wifi 192.168.4.1/update 也可以 ...

显然,你的esp模块在接入wifi接入点的同时,自己也在提供热点信号。而我提供的代码和固件不是这么干的(成功连接wifi之后会关闭配网热点,只有在没有连接wifi的时候才会提供配网热点,并且这个热点是需要密码的)。

之前有坛友碰到过这个问题,分析应该是其他固件提供的配网功能在刷机时没有被覆盖掉,所以我前面一再强调,刷写前一定要做全盘擦除。
回复

使用道具 举报

13

主题

400

帖子

2790

积分

金牌会员

Rank: 6Rank: 6

积分
2790
金钱
2390
HASS币
0
发表于 2020-10-5 20:28:18 | 显示全部楼层
XCray 发表于 2020-10-5 17:33
显然,你的esp模块在接入wifi接入点的同时,自己也在提供热点信号。而我提供的代码和固件不是这么干的( ...

如何全擦除?
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2020-10-5 21:29:20 | 显示全部楼层

可以试下ESPHome的刷写工具,或者参考一下这个帖子的53楼
回复

使用道具 举报

13

主题

400

帖子

2790

积分

金牌会员

Rank: 6Rank: 6

积分
2790
金钱
2390
HASS币
0
发表于 2020-10-5 22:51:08 | 显示全部楼层
XCray 发表于 2020-10-5 21:29
可以试下ESPHome的刷写工具,或者参考一下这个帖子的53楼

ESPHome-Flasher-1.3.0-Windows-x64 用的就是这个,刷的过程有擦除
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2020-10-6 06:55:31 | 显示全部楼层
maybeloveu 发表于 2020-10-5 22:51
ESPHome-Flasher-1.3.0-Windows-x64 用的就是这个,刷的过程有擦除

感觉你每次说话都只说一半。。。

那就换一个刷写工具,比如官方的,根据自己模块的flash大小,找一个或者自己搞一个对应大小的全是00的bin文件刷一遍。

问题很明显,就是你的esp模块上有多余的、其他固件残留的代码。

我提供的固件使用的配网热点名称是mqttl_xxxx,并且有密码,你说的那个ESP_xxxx的热点显然是其他代码搞的。
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2020-10-7 14:24:02 | 显示全部楼层
本帖最后由 dscao 于 2020-10-7 14:32 编辑

我的也有类似情况,但不影响使用:
连入路由的wifi,输入ip/update 之后可以打开升级页面,链接那个多出来的ESP_xxxx的热点用192.168.4.1/update 也可以打开升级页面,且也只能打开这一个页面。但 /update 需要密码才能进入,,所以一般情况也不影响安全性(除非是坛子里的人到一起了)。
配网热点名称是mqttl_xxxx,有密码,安全性也没什么大问题。
已经实测两个多月了,无发现什么大的问题。蓝牙设备基本也没发现丢包,有时外网断了就没有消息,但米家app也没有消息。估计米家的蓝牙必须要联网到云端的才会有消息发送。
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2020-10-7 14:30:33 | 显示全部楼层
另外发现一个也许是bug吧:
新房那边还没有入住,偶偶过去一下。有一次断电后重开,路由及wifi还没开启好,这个mqttl网关先启动好了,应该一直在配网状态,等了两天多才正常连网。而其它的mqttl设备如果电表的Tasmota或hasssmart开关等都没发现这个问题。
这两天准备弄个博联的开关专门给这个用,以便出现这种情况时给它断电重开一下。无奈新款的sp mini3不支持hass的集成。于是重新研究了一下这里的代码,发现这里的超时应该不是毫秒了,可能是秒了。于是修改一下编译了固件,测试了一下,果然现在5分钟后自动重新连网了。

#define AP_PASSWORD   "mqttlpassword"
#define HTTP_PORT      80
#define WIFI_TIMEOUT   30000
#define TIME_ZONE      8;


修改为:

#define AP_PASSWORD   "mqttlpassword"
#define HTTP_PORT      80
#define WIFI_TIMEOUT   300
#define TIME_ZONE      8;
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

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

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2020-10-7 17:10:28 | 显示全部楼层
dscao 发表于 2020-10-7 14:24
我的也有类似情况,但不影响使用:
连入路由的wifi,输入ip/update 之后可以打开升级页面,链接那个多出来 ...

你的意思是可以看到“mqttl_xxxx”和“ESP_xxxx”两个配网热点信号???太神奇了吧?!

从程序代码和我自己使用的经验来说,成功连接wifi后就不会再出现配网热点信号。

我自己没遇到过,之前有坛友反映在正常连接wifi的同时可以看到不属于这个固件的ESP_xxxx热点信号,当时推测应为其他固件遗留的功能没有被擦除也没有被覆盖,全盘擦除后解决。算上你和192楼的朋友,这是3例了。

~~~~~~~~~~~~~~~~~~~~
你说的另一个问题倒是很让人恼火,就是外网断了就没有消息那个。如果蓝牙网关在没有外网的时候TTL就无法正常输出消息,那么真应该找来小米的程序员暴打一顿!

哪天我也测试一下。

至于你说的超时30000改300的事,我自己还真没有测试过。照你这么说单位应该就是秒而不是毫秒。
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2020-10-7 18:25:46 | 显示全部楼层
配网时只有一个热点,正常连接后会多出一个热点。应该是esp8266固件中wifi模块部分的问题,可能是故意那么设置的用于特定用途的。
回复

使用道具 举报

77

主题

1391

帖子

2万

积分

元老级技术达人

积分
24293
金钱
22862
HASS币
290
发表于 2020-10-7 19:29:31 来自手机 | 显示全部楼层
外网断了,自动化门锁开门开灯,蓝牙夜灯感应开灯都没反应了。查看门锁及夜灯状态都没有更新,外网恢复立马正常。
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-23 04:40 , Processed in 0.270782 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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