Author: steedguo

  • 如何用google音箱控制小米智能家居

    当家里有了米家的智能灯具之后,除了按键控制、app控制和人在感应控制,免不了就想把语音控制也弄起来,但是遗憾的是,不同的智能家居体系互不相通,米家智能、Google Home、Apple Home各成体系,互不开放,如果买的不是一个体系内的,就很互相控制。而我家的灯具和开关就是米家的,而音箱则是几年前买的Google Nest mini2,在主卧和餐厅各放了一个,除了问天气这种没用的功能之外,最常用的就是吃饭时坐下来后通过Hey Google让它播放spotify上面的歌了,所以当我想要用Google音箱来控制米家的灯具的时候,有意思的部分就来了。首先,Google home里是可以对接米家的,但是,能看到的只是米家的几个摄像头,蓝牙智能开关、人在感应器这些设备都无法发现。最简单的路线已经堵死了,不得不逼我开始折腾。

    主角出场:Home Assistant!原来,在各家智能家居厂商各自的体系之外,还有一个客观、中立、开源、免费的第三方平台,叫Home Assistant,可以通过它来作为跨厂商的调用平台。正好家里有闲置着吃灰的Synology NAS,可以直接折腾起来。

    Home Assistant(简称HA)是一个功能强大的开源智能家居平台,旨在本地化运行以实现高隐私安全。它能够跨品牌、跨协议(如Zigbee、Wi-Fi、Bluetooth)接入数千种智能设备,通过统一的界面进行集中控制与复杂自动化设置。HA用户可以利用树莓派、NAS或旧电脑等硬件部署,打破设备生态壁垒。 

    第一步是NAS上部署HA。Docker是真香啊,一键拉取镜像启动,直接搞定;在GPT的支持下,又专门给申请了一个安全证书,把HA登录页面通过nas上的反向代理和端口映射,开放到了外网,这样随时随地都可以访问到家里的HA后台服务网站了。

    第二步是让HA识别出米家的设备。这一步需要在HA上先安装一个叫HACS(Home Assistant Community Store)的插件,有点类似于开源应用市场,就像在小米电视盒子上装了个当贝市场,有了这个之后就可以通过HACS浏览和下载其他插件了。这个市场里有各种各样智能家居品牌的插件,比如说大金、LG等,这些家电本来只是能通过自己家的app来控制或者通知,现在全部都可以接入到HA里面了。这里对接米家的插件,原先最有名的是一个第三方的叫做hass-xiaomi-miot,但近两年小米官方Home Assistant 米家集成也下了场,提供了Xiaomi Home的HACS插件,从小米账号登录安全角度,我还是选择了官方插件。装完之后,米家里的设备就全部在HA里面出现了,顿时满屏的设备和参数就看到了,专业感十足:

    到这里还只是能从HA上控制米家灯具,但是还得打通HA-Google Home这条链路,所以还需要第三步:让Google Home能控制这些设备。这里ChatGPT也走了些弯路,本来它让我又在docker上安装了一个matter bridge服务,然后想把灯具在HA上虚拟为一个matter设备,然后让Google Home来发现添加,但这里面它出现幻觉了,在我怎么按照指令操作都找不到它说的设置方式之后,它告诉我,这条路其实并不通,我靠……

    Matter Bridge方案不行之后,它又给了两个方案,一个是Google Assistant Integration,一个是Nabu Casa,后者是一个收费订阅的SaaS服务自然被我pass,前者免费但更加Hard Core了,需要先注册一个Google Cloud Developer,好的,注册就注册。为了避免再被ChatGPT坑,接下来的动作我转移到了Gemini来支持我。注册之后,要新建一个project,然后在里面增加一个Cloud-to-Cloud integration,有意思的是,这里还必须要提供一个140x140px的图标,后来我才知道这里相当于就是让我扮演了类似LG的一个厂商开发者的角色,把我要控制的灯具封装成了一个Google Home能认出来的设备,然后再到Google Home里面选择通过第三方认证链接添加设备,这里的第三方各大品牌的列表里,赫然就能找到我刚新建的这个Project,从而终于把我的米家灯具添加到了Googe Home。

    到这里,基本上语音控制就没问题了,Hey Google,Turn on/off bed light之类的,就可以实现语音让Google开关米家灯具,代价是因为走的公网,反应稍有延迟,但是目的实现了,用Gemini给我的总结来说,我完成的其实是一个典型的 IoT 云对接架构米家设备 (Miot) -> 局域网网关 -> Home Assistant (中枢) -> 群晖反向代理 (HTTPS 隧道) -> Google Cloud (OAuth 握手) -> Google Nest (语音终端)。

    最终,整体连续折腾时间约5小时,花了我一整个星期天的下午,连娃的舞蹈班接送都没管,但能通过自己的这一顿折腾打通壁垒,实现需求,这个研究折腾的过程所获得的满足感,和最后搞定这件事情带来的成就感本身早已经超过了目的了。这5个小时,我是沉浸在一种心流的感觉里面的,非常的投入和享受,而这种感觉已经很久没有体验过了。后来,在把家里能接入的家居如石头的扫地机、LG的厨卫家电都接入到Home Assistant之后,可玩性进一步提升,比如我又加了一条规则:因为洗衣机离主卧远,在LG的洗衣机每次洗完之后,触发主卧的Google音箱播放语音提醒及时晾衣服,哈哈。期待接下来更好玩的折腾。

  • 智能家居折腾记

    起初,这只是因为家里的两个最常用的开关不太好按了:一个是餐厅的三组灯(三开),一个是过道里控制过道和客卫的开关(二开)。加上另一点,娃现在早上自己摸黑起床上学,我看着她们每天都要先跑到家门口去开餐厅灯,觉得这个动作有点多余,如果换成智能开关,那首先可能可以升级到双开,即在过道就可以开关餐厅灯,甚至还可以配合人在传感器,变成不需要自己开灯。

    于是就开始了采买,因为家里已经有不少米家的智能设备,所以继续选择了米家的智能开关,人在传感器选择了领普的ES3,蓝牙网关纠结了一下,选择了小米最新的蓝牙中枢网关,没有搞小米智能音箱代替,因为家里餐厅和主卧已经有google的智能音箱,我觉得没必要重复了,并且小米智能音箱在海外因为版权的原因也基本是个残废。

    东西到了之后就开始装了,先是把蓝牙中枢连上路由器上线,然后拆装开关算是电工小case,零线肯定是没有的,好在现在的智能开关都是单火和零火兼容的版本了。换完之后顺利接入米家,并且把过道的二开升级为了三开,多一个按钮作为智能按钮,单击可以控制餐厅灯的开关,双击则是关闭所有灯,智能开关每个按键支持单击、双击和长按三个动作,可以触发三种不同的指令,还是很好玩的。最后再把人在传感器在客卫和餐厅各放了一个,米家里面简单设置点规则,就实现了人来灯亮,人走灯灭,至此基础升级操作就搞定了。结果后来老大因为早上餐厅人不在就自动灯灭表示抗议,我才了解到她早上把餐厅、厨房、厕所灯都开着保持家里明亮的心理需求,这一需求前期没有调研清楚,导致了后期返工,哈哈,所以接着对于自动关灯的指令加了生效时间段,排除了早上她出门前的时间段。这样基础智能灯具升级,在米家的app里就完成了,到这里其实还算不上折腾。

    真正折腾的挑战出现在第二天:如何用家里已经有的google音箱来控制米家智能的灯亮灭,这个问题网上的案例太少,因为google音箱只有墙外能用,米家智能又基本只有墙内人用,需要把这两者结合使用的场景或家庭实在太少,所以只能自己探索,这个我需要另开一篇来讲。

  • 总部搬家

    今天是公司总部的新址开幕典礼,自从2009年从雨花台中兴一期搬去江宁区正方中路之后,时隔17年,我们再次搬回雨花台,这次落地在软件大道,作为一个软件公司,回归了南京的软件谷。

    对于我个人来说,2012年离开总部来到新加坡之后,我的主线其实就已经跟总部分开了,每年回总部的机会也寥寥无几。更多时间都是在新加坡或者海外其他客户了,扳指数数,在新加坡、马来、印尼、菲律宾、泰国的子公司都办过公,其中新加坡也是搬过两次了,跟总部经历类似,先是蹭着ZTE的New Tech Park办公室,然后更名之后搬出到了Raffles Place的Singapore Land Tower,再之后去年又搬到了Bras basah的Lazada One。

    然后再想想,其实就算是新加坡的办公室,其实也没有怎么呆过,毕竟这么多年都是在做项目交付和运维,大部分时间都是拿着客户给的工卡,到客户的办公室去上班的,一开始从2012的StarHub的Taiseng机房,到Ubi的StarHub Green(2013-2019),在这里呆的时间应该是最长,做了好几个项目,当时我曾经甚至想过,难道我一辈子就在这里上班了,后来的经历证明我想多了。之后2020-2022年应该是主要呆在KL的Berjaya Times Square,U Mobile的IT办公室,再接着2023-2024又转战到Bangsar South,TM Annex 2的大楼里,直到2025年来到印尼,开始频繁进出Mega Kuningan的XL Axiata Tower并且见证它随着跟金光的合并更名XLsmart Tower,职业生涯至今也算是漂泊挺久的了,也不知下一站会在哪里。

    不过有一说一,离开总部之后就没有再过过打卡上下班的日子,也是漂泊之外的一种收获吧,很难想象还要重新过那种需要打卡上下班的生活了。

  • 恍如隔世

    如何来形容此刻的我的心情呢?我想起了人体冷冻技术,把自己放到一个低温冷冻环境,在未来的某一天再复活。只不过这一次,这个复活的对象是我的blog,我曾经断断续续写了多年的人生记录。

    当年这个blog从msn space起步,到自己买域名搭网站买vps部署wordpress,一路跟随我多年,直到后来时代早已变化,社交媒体席卷世界,更新也基本停止,我也停止了vps和域名的续费,这个博客也从互联网的一角消失了,幸好的是,在消失之前,我导出过它的备份文件,从我的电脑上看,从2012年到2020年之间我导出过多次备份,而这次恢复回来的,就是最后的这一份名叫lercitdesteedy.wordpress.2020-07-05.xml的文件,我的博客的冷冻体,我把它从我的nas上复活了。

    其实当年也尝试过把网站转移到自己的nas,无奈技术不过关,用synology自带的webstation,wordpress服务搭建不成功,就此作罢,直到最近才想起来,我有chatgpt的技术支持,有什么困难是攻克不了的呢?于是果然,并没有什么困难,一个晚上的时间,就给我的博客解冻成功了。我还跟chatgpt聊了好一阵的人生。

    chatgpt给的方式,其实也不是用synology自带的服务(连chatgpt都说自带的这个很坑爹),而是直接用docker,在docker上面拉起mariadb和wordpress的两个镜像,真的是什么配置都不用做,一键就搞定了。公网的访问方面稍微折腾了下,但是也没有太花时间,主要的原因是现在不管是遇到什么报错,chatgpt给的诊断和应对方式太精准了,这是我当年靠搜索引擎抓破头都没法找到答案的困难啊。

    所以,我的博客就这样恢复了。上一篇是停留在2019年5月,我的人生的下一个转折点还没有来,现在是2026年2月,一晃7年,这7年的人生,至少是文字方面,留了白,还是挺遗憾的。不管怎么样,恢复了就好。那就从这里开始继续吧。

  • Hello world!

    Welcome to WordPress. This is your first post. Edit or delete it, then start writing!

  • 5.10

    经过前两个星期的研究比较后,终于9号拿到了银行贷款批准信,紧接着今天上午去了趟律师行,完成了一系列的签字手续,开出了一份份的支票,剩下的部分就是由律师去exercise OTP,至此整个买房过程就基本上完成了需要我做的部分了。

    看着律师行里关于我的这份厚厚的档案袋,忍不住留下了一张照片。巧合的是,今天正是5.10,6年前全家抵达新加坡的日子。花了整整6年时间,算是完成了在另一个国家的重新“落户”“安家”,接下来就等着年底搬家了。

  • 2019

    记得以前有个说法是历史上每逢9结尾的年容易出大事,不知道今年会有什么新的大事发生。
    2019同时也是猪年,意味着属猪的我即将迎来第三轮本命年。
    总觉得青春还没走远,眼看着离40也没几年了。
    看着渐渐安定下来的自己,也不知道还有什么是能再折腾下的。
    当年今年还是有些大的家庭计划的,希望一切能顺利吧。
    工作上也希望迎来更大的业绩突破,同时也把个人能力再提升点,定个小目标。
    那个曾经每年定下(大部分都做不到的)新年目标的我,似乎都已经走远了。
    刚看完了一本书,蔡崇达的《皮囊》,写他的家人和身边的朋友,真情流露,感动不已。
    多希望我也有这样的记忆和文笔,能写下那些自己经历过的人和事。
    就这样吧。

  • XS Max

    昨天拿到了我的新手机,嘻嘻,一个午休的时间就完成了从7P的迁移,开始刷脸替代指纹的生涯。。。期待StarHub尽快支持esim这样我也终于可以用上双卡的iPhone

  • 公司更名

    工作以来第一次,我的公司换名字了,从中兴软创换成了浩鲸科技。昨天是正式的更名仪式,今天我这边的子公司也随即完成了更名。
    换名字的背后,是公司大股东的变更,我们不再是中兴系的一员,而成为阿里系的一个小小的节点。
    对于公司来说,这是一次巨大的转型,希望可以借住这次转型的机遇,能够实现从传统电信计费厂商到互联网云计算以及数字化转型专家的愿景吧。
    中兴软创从2003年成立至今15年,我加入的时候是2005年,距今也已经13年了。这是我的第一份工作,也是至今唯一的一份工作。
    虽然说谈起跟公司的感情大多数情况下属于自作多情,但还是需要承认是有这么一份感情在那边的。
    因此,祝公司好运。

  • Synology DS918+

    入一台家用nas的计划已经搁置了多年,毕竟在租的房子里不想折腾太多。不过之前老mbp的硬盘坏了两次,最近换了新的mbp存储空间又没有老本本大,就重新产生了把家里所有的照片视频文档等资料都归结到一台nas上的想法。结果,从想法到行动只花了半天的时间~
    前两天在我电子产品的好基友群里咨询,基友们推荐上DS918+,于是花很快的时间,结合张大妈(smdzm.com)上的评测快速研究对比了一下,在中高配置的DS418Play和高配置的DS918+之间摇摆了一小会儿,最终决定直接上到918+,唯一的理由就是“都花了这么多钱了,这点差价就别省了”哈哈哈。
    另一个快速入手的原因是,本来想着回国的时候买了背过来,结果一查发现,本地买比从国内买还便宜很多,那还等什么呢,直接入手了。DS918+本机支持4块硬盘,目前先同时配了两块4T的盘组成Raid1,确保数据安全性。主机+两块盘的价格是$1018新币,主机大概是占$700多新币,比国内行价便宜1000多RMB了。买自本地在线网站lazada。顺便一提,在lazada下单的时候顺便注册了其推出的LiveUp会员,感觉还挺划算的,除了在lazada和redmart两大网站购物折扣外,还关联其他网站福利,比如netflix免费6个月会员、ofo每月10趟免费骑行、foodpanda外卖免送货费等生活福利,跟后来淘宝推出的88会员非常像,也确实很实用。
    下单后两天,8.8收到货了。到手后就开始开心地开箱把玩起来,Synology群晖最备受称赞的就是他的NAS管理系统DSM,这个系统确实很不错,稳定可扩展,套件中心里各种各样的套件可以支持各种功能,管理文件、照片、视频都是基本功能,建网站、跑数据库也不在话下,甚至还可以搭建自己的dropbox服务端,以及支持类似google在线文档的私有在线功能,把家里变成了一个稳定可靠的私有云,功能太丰富了,简直够我这样的爱好者玩好久了。当然简单熟悉后第一件事就是把自己的照片视频都往上面备份。这个着实花了好几天才完成,接下来就是抽时间慢慢整理啦。有这样的东西折腾,愉悦~