深入了解开源智能家居平台,解决品牌割裂的终极利器?
Posted 智哪儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了深入了解开源智能家居平台,解决品牌割裂的终极利器?相关的知识,希望对你有一定的参考价值。
有人觉得买一套米家硬件组一个智能家居,就已经很折腾了。其实,智能家居领域还有更硬核的玩法——开源智能家居平台。虽然有一定的门槛,但一旦深入,就发现奥妙无穷。随着版本的迭代,诸多开源平台对普通用户也越来越友好,潜能无限。
当前智能家居的最大痛点是什么?当然是品牌各自为政,生态割裂。每个品牌都有自己独立的平台,与其他品牌互不相通。用户在组建智能家居时,时常面临各种选择题。
业界有Thread、Matter等「大一统」协议来试图穿针引线,以期达到类似WiFi技术那样的普及过程(WiFi也是从一个技术标准推行开来的)。但这中间埋藏着潜在的利益冲突。随着联盟成员的推动,相信会有越来越多的IoT品牌入局,不过这些协议真正实现统一,还有待时日。
这时候,开源智能家居平台的价值就体现出来了。「智哪儿」来为大家深度科普。
1.
什么是开源智能家居平台?
开源智能家居平台,本质上是一个物联网的本地操作系统。它可以接入成千上万的第三方设备,由用户自定义控制逻辑。甚至于,PS5游戏机、特斯拉等非智能家居产品,也能与智能家居实现联动。
它相当于一个Home Hub,即智能家居中控平台,跟米家、天猫精灵、小京鱼、小度、HomeKit等是一个层级的东西。只不过它要运行在一个独立的设备上,比如一台NAS,一个树莓派,或者你的PC上。
到底是怎么实现的呢?这就归功于开源智能家居平台的最大特性:开源。开源意味着,全世界的开发者都可以提交代码,来共同完善它的能力。我们以大名鼎鼎的Home Assistant为例说明。
Home Assistant(以下简称HA)在安装到独立的运行设备上后,用户可以在其官方商店搜索各类组件。这些组件有些是HA官方开发的,有些是第三方开发者提交的。组件有什么作用呢?
所谓的组件,就是一个驱动。通过它,HA可以跟某品牌下面的设备联动。而组件的诞生,其实来源于开发者的逆向工程(通俗理解)。它是通过非官方的渠道,「破解」某平台或产品的接口或指令,来实现控制。
比如,HA中集成了HomeKit组件,其实就是模拟原生HomeKit的API来跟苹果的设备对话。对于一些常见品牌的常见产品,HA社区都有专门的组件,或是官方编写,或是民间大神出品。安装这些组件后,系统会自动搜寻相关的设备接入HA中。对于小众产品,可以通过MQTT协议实现对接,只是配置过程更加复杂。
要实现这些功能,HA通常要获取设备的IP地址、MAC地址、Token等信息。不同的品牌有不同的控制逻辑。有些品牌甚至会主动开放协议接口。
2.
为什么说开源平台更强大?
其实,相比品牌化的物联网平台,开源智能家居平台的威力是十分巨大的。由于可以串联起各种品牌的智能硬件、电器设备,它可以做到强大的包容性。我们举一个简单的例子,来说明开源平台的可玩性有多强。
首先,你不再局限于单一平台内的用户逻辑。比如某个生态链的空调,在设置联动时,温度和风速可能只有三挡可调,局限性很大。那么你可以摘除这个设备,换成调教空间更大的设备,由开源平台统一控制。
这样可以实现非常人性化的场景:当你的手机离家1km时,系统自动打开空调,设置为26℃,风速最低,且自动播放某音箱的曲目,走廊灯亮起。这种类似的场景,在某些物联网平台上也可以实现,但设备品牌和可操作范围会受到很大的限制。
所以,开源智能家居平台,最大的价值就是把各个品牌、各个生态的产品,纳入到一个界面来统一管理,由用户在一个地方设置联动逻辑。甚至于,那些只支持其品牌自有APP控制的家电,也可以纳入进来。
比如某品牌的洗衣机,它具备WiFi功能,可以通过该品牌自己的APP实现一些控制。这个时候,它是没有接入任何第三方生态的。通过开源平台,可以在同一个WiFi网络下抓取洗衣机的指令报文,在明确这些报文对应的功能后,就可以接入开源平台统一控制。
在开源平台的开发社区中,有很多的民间大神推出了各种组件,可以来满足上述功能。用户只需要下载组件,做一些基本的设置即可。
当然,所谓的基本设置,也并非点选几个按钮那么简单。对于大部分普通人来说,这是一非常折腾的过程。它虽然不涉及编程,但需要用户了解一些文件格式。比如前面提到的Home Assistant是用Python语言编写的,那么用户不熟悉Python也无妨,但需要了解一种叫做YAML的文件格式。
这种文件格式是作为编程语言的配置文件存在的,用户需要在其中创建和键入一些关键参数。虽然看上去很简单,但仍然需要一定的编程语言理解能力。不过,开源社区都有详细的配置教程,照葫芦画瓢基本也能解决问题。
只要折腾完成,你的智能家居就是真正符合自己意愿的一套系统,随着各类组件的丰富,用户可以组合出各种新奇的玩法。甚至有国外大神开发了特斯拉的组件,让你在开源平台的APP终端上,可以实时查看车辆的各种状态,比如位置、续航、车内温度等等,由此与家中的设备实现一些联动。
开源平台能解决割裂问题吗?
目前常见的开源智能家居平台,有Home Assistant、openHAB、Domoticz、ioBroker、OpenMotics、Jeedom等等,数量高达几十个。相对来说,前三个平台的开发者社区是最为活跃的,尤其是Home Assistant,在组件、开发文档、生态建设上比较完善。
那么,这些开源平台,能否从小众的技术流,走向大众化的选择呢?
得益于开源属性,开源平台的进步速度非常快,从最早需要编程能力,到如今只需要编写文件格式,开源平台对用户的友好程度在不断增加。事实上,对于一些大生态的支持,开源平台已经可以做到点选式的操作,极大降低了普通用户的门槛。
从用户体验来说,诸如Home Assistant这类开源平台,做到小白都可以操作,只是个时间问题。它完全可以实现零代码的操作。当前的安装与配置流程中出现的各种bug,也会一个个优化,平台的易用性会得到改善。
但问题是,开源平台对第三方生态的控制,基本上是没有官方认可和支持的。这导致某些情况下,平台的使用体验会受到影响。比如前面说到的对于特斯拉的控制,此前HA官方曾推出过组件,但频繁出现账号登录问题。后来开发者社区自行推出了特斯拉组件,但使用体验也并非100%完美。
从用户角度看,开源平台确实是目前唯一能解决生态割裂的办法。但从整个行业的角度看,由于缺乏商业化的支持,开源平台较长一段时间,仍会是极客文化的代表,很难成为主流。
如果开源平台的话语权足够强大,可以倒逼各品牌开放接口,为用户带来更稳定的体验。但没有商业化的推动,开源平台恐怕很难拥有较大的话语权。由于开源平台的运营经费来自于订阅和资助,并非商业化的推广,所以从财务层面,也很难快速扩大影响力。
在行业层面,基本上有两种路径来解决割裂问题:一是建立统一的协议,比如Thread和Matter,从应用层来规范不同生态之间的数据对接,这需要整个行业的大力推动和融合;二是通过开源系统的方式实现,比如华为的HarmonyOS。
虽然华为的路径潜力也很大,但目前来看,前一种路径的可行性是更强的。毕竟你不能期望小米的设备去搭载华为的微内核系统。这时候开源智能家居平台,便可以以中立的姿态去解决问题,并且赋予了用户极大的自由度。
问题的核心还是在于,开源平台的话语权和影响力太小。参照android开源项目的经验,如果没有Google的推动,其仍然难以成为主流的移动操作系统。
小结
可以肯定的说,开源智能家居平台,尽管门槛高,对普通用户不够友好,但它确实是目前唯一能解决跨平台、跨生态的智能家居方案。随着开源社区的发展,这类软件的易用性会得到提升,普及度也会增加,但很难成为主流选择。
它需要更大的力量去推动,就像Android系统一样,每个手机品牌都有不同的ROM,但都可以运行.apk的文件。照搬在智能家居领域,如果HA的核心文件被几个大厂采纳,做出各自不同UI不同交互方式的前端,那么海量设备的接入,就成为了现实。
智哪儿原创文章,转载请至智哪儿公众号(smartanywhere)获取授权。
以上是关于深入了解开源智能家居平台,解决品牌割裂的终极利器?的主要内容,如果未能解决你的问题,请参考以下文章
JMH - Java 代码性能测试的终极利器必须掌握(务必收藏)!
EMR 重磅发布智能运维诊断系统(EMR Doctor)——开源大数据平台运维利器
阿里云开源 image-syncer 工具,容器镜像迁移同步的终极利器