有没有懂智能家居开发的大神可以指导下的

2024 年 12 月 22 日
 Gct012
我目前家里的地暖有一个温控面板,可以通过手机 app 远程控制( wifi ),但是这个 app 感觉有点粗糙,经常性会出现预设的配置加载不出来,手机上的设置无法在短时间内下达到温控器上这些情况(应该是后台服务网络较差)。因为这个温控器逻辑非常简单所以想自己弄一个 app 替换当前这个,后台服务器有白嫖的云主机。我之前没做过这个方向的开发(只能做一些基础的 java 和前端开发),想问下需要掌握哪些技能以及可行性
3911 次点击
所在节点    程序员
25 条回复
Tink
2024 年 12 月 22 日
抓包逆向伪造请求
crac
2024 年 12 月 22 日
既然考虑到替换,那就先把 app 扒出来反编译看看?
M003
2024 年 12 月 22 日
远程是只能在 WIFI 情况下? 如果这样,是不是没后台呢? 局域网通信呢?

如果在可以流量的情况下使用. 那就只能研究抓包了. 是面板定时给服务器发信息给数据.还是你打开 app,服务器才找面板要数据.
Gct012
2024 年 12 月 22 日
@M003 可以用流量的,不是局域网呢。我看这个 app 感觉像是个人开发的,我的想法是找老板要一下这个温控器的一些技术资料,看看是不是可以自己对接一下。这样比抓包和反编译可能效率高一些
yihy8023
2024 年 12 月 22 日
抓包 app 分析下用什么方式实现的,比如 ESP32 、米家 miot 、tuya 涂鸦等等。集成智家家居模组的概率挺大的,如果是这样就可以在提取到 ip 、鉴权等信息后,直接接入到 Home Assistant 里面。
Ackvincent
2024 年 12 月 23 日
地暖面板是控制壁挂炉还是分水器的? 直接买一套好用的控制器不久结了,搞硬件比软件更简单高效。
zhangeric
2024 年 12 月 23 日
感觉应该是 app 服务器网络不行.
hwb
2024 年 12 月 23 日
直接抓包就好了,之前搞过一个智能插座,他甚至没有权限控制的,都是明文传输。我直接抓了接口自己写脚本去模拟请求,忘了通过巴法云还是哪个平台,用小爱同学去控制
Gct012
2024 年 12 月 23 日
@Ackvincent 我的是电地暖,其实很简单,就是通过温控器检测温度来控制打开和关闭,没其他功能了,所以才想着自己弄一下
Gct012
2024 年 12 月 23 日
@yihy8023 @hwb 那我这边还有个疑惑就是我的理解 app 只能通知后台,然后后台服务下发指令给到温控器(我自己理解的不知道对不对),我猜目前响应慢是因为后台服务或者网络比较慢,这个通过抓包能解决嘛?
ljl024
2024 年 12 月 23 日
如果是水地暖的话,一般面板就是个温控开关,可以考虑换个灵活性更好的,直接接入 HA 或者米家的这类平台,然后用自动化流程去控制
yihy8023
2024 年 12 月 23 日
@Gct012 你这种电地暖的,应该可以把面板换成支持米家的,直接加到米家就行。淘宝上搜一下。
wisej
2024 年 12 月 23 日
@Gct012 你的温控器与外部通过蓝牙/wifi 通信的?
“这个通过抓包能解决嘛?” 只要协议逆向出来当然可以。指令从你本地发出不走 app 服务器
Ackvincent
2024 年 12 月 23 日
@Gct012 那更简单 直接换控制器,甚至一个米价插座配合温度传感器就能搞定。还搞什么协议,浪费时间。
XXWHCA
2024 年 12 月 23 日
换支持米家的面板最简单,地暖面板通常只有 3 根线,控制分水器电磁阀,接上就行了
LXGMAX
2024 年 12 月 23 日
抓包多费神,直接线拉出来接别的控制器
Gct012
2024 年 12 月 23 日
@wisej 对,我就是想指令不走 App 服务器,那温控器和外部是通过 wifi 通信的,这块我不太懂,您指的是抓温控器的包对吧?我只会手机 App 的抓包,有什么工具吗?
isSamle
2024 年 12 月 23 日
1. 地暖、电热之类的不建议魔改,存在安全隐患,如果故障导致出现意外情况,可能会因为这个原因不予赔偿
2. 推测业务逻辑是:手机 APP 指令→后台服务器→地暖板子
3. 纯开发方法(个人理解可以尝试的方向、没试过):给家里路由加下拦截,看下能不能看到指向这个地暖的请求,然后修改本地的域名解析,将这些请求全部替换成自己的
4. 找会硬件的,改一下控制器,如果能不能改成接收红外信号之类的遥控器指令,然后加个开发板实现代码发送指令
IvanLi127
2024 年 12 月 23 日
先抓包看看情况吧。我觉得最好情况就是他明文走的 MQTT 协议连运营方的服务器,本地把 IP 劫持到本地服务器上,就能愉快玩耍了。
Gct012
2024 年 12 月 23 日
@IvanLi127 还有个问题就是我的路由器是小米的,我看了一圈后台界面,有什么办法可以抓温控器和路由器之间的包么...

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.xtra.eu.org/t/1099413

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX