和大家聊聊我最近折腾的“智能家居”

2016-10-27 15:24:02 +08:00
 sneezry
起因是一台投影仪。

今年 7 月我走出校园,来到了魔都开始了完全属于自己的生活。在读书时不止一次建议家里购买一部投影仪,晚上一家人坐在一起看电影,想想就很温馨。但父母一直反对,投影仪对他们来说是一个投入高使用少的设备,不值当。但我心里一直念叨着,以后开始自己的生活一定要搞一部投影仪。

租房子时故意挑了一个没有电视的房子,并且买了一部奥图码的短焦投影仪,终于实现了自己多年的梦想。但是由于是租的精装房子,不太方便在天花板和墙壁上固定支架,每次看电影时都要先折腾一番,一段时间之后就处于吃灰的状态。后来实在不忍心几千块的设备就这样闲置了,自己在家盯着天花板看了 1 个多小时,站在凳子上窜上窜下寻觅放投影仪的地方,后来决定把投影仪放在天花板通风口的台子上。但 HDMI 输出又成了一个问题。

当时找到两种方案,一种是 HDMI 转无线,需要两个端子,一对两千上下,成本有点高。另一种是 Chromecast 这种,这种便宜,但需要软件支持。但 Chrome 浏览器是支持 Chromecast 的,作为 Chrome 开发者,认为一旦 Chrome 支持了,那基本就是啥都能干了,所以果断买了 Chromecast 。

这样折腾一番看电影果然舒服了,但脑洞又滑到了 Chromecast 的二次开发上,这样以后来客人还可以让客人自助点播。这个脑洞还没成熟,马上又有了新脑洞,再搞个线上控制投影仪啥的。这个脑洞还没想好,马上又想到那空调应该也可以控制……等等,还有扫地机器人和鱼缸……于是开始寻觅 Wifi-红外的解决方案。

当时面对 BroadLink 和小米,我选择了 BroadLink ,我没有太研究小米,但直觉告诉我小米的产品开放性可能不太乐观(直到现在我也没有证实自己的猜想)。 BroadLink 官方提供了开放平台,当时由于手机卡坏了没办法接收短信,所以没办法注册,也就没有深入研究,但比较开放平台那几个大字写在那里,就很安心的下单了。

我开始买了一个 rm mini3 , 69 包邮。到手后先测试了官方的 app ,果然很挫。又开始研究开放平台……哎?不对啊,这也不开放啊……为啥我想控制我家里的设备还必须经过 BroadLink 的服务器啊……越想越不对劲。后来在网上搜了一些有限的资料,研究后感觉非常有趣, BroadLink 的 app 控制电器走的是局域网,但 BroadLink 想走封闭路线,或者说他并不想完全开放控制权,所以数据全是加密的。

之所以说数据加密让我觉得不是安全原因,是因为加密的数据可以重放——如果有一名居心叵测的黑客成功黑入了我的局域网,同时截获了控制电器的加密指令,他无需破解数据明文,只需在未来的任何时候重新原封不动地发送一遍这个数据,也可以控制我的电器。

既然加密不能保证安全,那就是不想让别人知道他的协议咯。但正如前面所述,指令可以重放,那我还费力破解协议干啥,我的目的是控制电器又不是搞懂协议,所以挨个指令抓包咯。

嗯,正如我想得那样,完美。

空调、投影仪、鱼缸、扫地机器人全都可以控制了,而至此我的投入还不到 140 元。

上周我还是坐在家里发呆,看着头顶上的电灯……心里想着,这灯如果不能控制,只能算半个智能家居。可是租的精装房,我能改的东西有限,我思考了开关灯整个流程我能控制的节点。

首先是灯泡。(可能是)飞利浦第一个发布了智能灯泡后,国内的智能灯泡如雨后春笋出现在市场上,飞利浦买到几千的灯泡,国内的买到几十。用 Wifi 直接控制灯泡确实是最简单的方案,换灯泡不需要 code review !当我又踩在凳子上仔细端详我家的灯泡时,心有点凉了……大家知道射灯么,就是没有螺纹,直接插在灯座上的那种小灯泡,我家全是这样的灯。所以 Wifi 控制的螺纹灯泡我没办法用……

接下来就是智能灯座。同理,没有智能的射灯灯座。

智能射灯。这个有,但基本都是七彩射灯,放在 KTV 里的,而且价格很贵。

射频模块。在灯座后端串联射频模块,但每个灯座都这样串联是一个很大的工作量,客厅吊灯高度我踩在凳子上也够不到,还可能造成灯的闪烁。

射频开关。这是我最后选择的方案,更换家里的墙壁开关,相对比较容易,同时 BroadLink 有相关产品,既然之前的破解方案已经有了,后面用 BroadLink 的产品应该会减少折腾成本。

但问题不会这么容易解决。我家是双控开关,也就是不同位置有两组开关控制同一组灯。这本是为了使用方便,但却成了智能家居改造的绊脚石。目前智能开关绝大多数都是单控开关,一条灯线一条火线。极少数支持双控,但控制线 AB 是信号控制总线,不是简单的电源线,需要特殊布线。

眼瞅着所有方案都落空了,正在郁闷着,突然转念一想,身为电子专业的毕业生为啥不能自己把双控线路改为单控线路呢(其实并不需要用到大学的知识)。

昨天我买的电工绝缘胶布、空白墙面盖板、智能控制开关、 BroadLink 智能控制主机都送到了,下班后回家开始改电路。该电路的过程还发现当初装修公司接错了控制线,顺便改过来。经过了几个小时的改造和安装,使用 app 进行配置,然后继续按照之前的方法抓包破解。当我在 Macbook 的终端里敲下命令的一瞬,房间里的灯熄灭了,我收好笔记本上床睡觉。

用电脑控制电器当然不是最终目标,楼主购买的 3 个 Amazon Echo Dot 正在飞往中国的路上,到时候再开放 Echo 的 Skill 接入我早已准备好的控制接口。语音控制目前还没有太多可以和大家分享的,所以今天就先写到这里吧 :-)
5579 次点击
所在节点    奇思妙想
39 条回复
karlakte
2016-10-27 15:51:05 +08:00
Light On! 非常有意思,多谢分享。
qiayue
2016-10-27 15:52:42 +08:00
楼主的确是一个能折腾的人
9hills
2016-10-27 15:55:41 +08:00
> 后来决定把投影仪放在天花板通风口的台子上。但 HDMI 输出又成了一个问题。

我当时也碰到了这个问题,解决办法是买了一个 4m 带信号增益的 HDMI 线。。。
bk201
2016-10-27 15:57:09 +08:00
租的房子不怕折腾白费嘛
ddqp
2016-10-27 15:59:27 +08:00
no 图 no 真相
sneezry
2016-10-27 15:59:28 +08:00
@bk201 哈哈,打算一直住下去的
sneezry
2016-10-27 16:00:14 +08:00
@ddqp 上班时间偷偷摸摸写了篇长 post 就很羞愧了,图下班再发给你们,不要急
cxe2v
2016-10-27 16:04:47 +08:00
厉害了, word 哥,我一直打算做个温柔唤醒冬天被窝里的人的解决方案,一直都不知道如何下手
Tink
2016-10-27 16:05:41 +08:00
上图啊亲!
ilotuo
2016-10-27 16:09:53 +08:00
这么折腾 没有带 DLNA 协议的投影仪吗
inmyfree
2016-10-27 16:48:33 +08:00
然后房东看到了,你走,这房子不租你了...
sneezry
2016-10-27 16:49:17 +08:00
@ilotuo 所以朋友只看了前三段😃
sneezry
2016-10-27 16:50:10 +08:00
@inmyfree 我做的每一样修改都能变回原样,要不不会这么艰难
lfk0000
2016-10-27 16:53:24 +08:00
@cxe2v 少盖点然后定时关暖气 /电热毯...?
xcatliu
2016-10-27 17:31:54 +08:00
厉害!我准备等将来住房稳定了也来折腾下。
cdell
2016-10-27 17:32:59 +08:00
猴塞雷~
kra
2016-10-27 17:46:21 +08:00
这个有点意思了
nuhou
2016-10-27 17:47:25 +08:00
么有图,这么多文字很难看下来啊
superdong
2016-10-27 18:46:06 +08:00
赞!

可以写成系列文章了。
yangff
2016-10-27 18:52:07 +08:00
@sneezry 房东:妈呀魔改的太爽了,不租了自己住!(笑

PS :与其用 BroadLink 不如 ESP8266 之类的…… 另外空调控制什么的有极小伤害的魔改方法……

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

https://www.v2ex.com/t/315888

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

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

© 2021 V2EX