懒人创建智能家居之一——核心树莓派路由服务器创建篇
1 概述
通常概念上的智能家居,包括小米语音助手,小度音箱,智能门铃,远程控制无线LED灯,无线控制开关,智能门锁。更广范围,还有智能家居的起始者,Amazon Echo,Echo Dot, Apple Home Assistant,以及各种独立的系统,像小众一些的青萍闹钟等等。这个系统创建,到终端设备的设计和连接,都是一个大的系统工程,而想把这些都装到一个APP应用中,可能吗?有可能吗?或者想单飞,自己做一个独立的智能家居系统,可能吗?大佬可能觉得风轻云淡,但是懒人怎么办?
其实这个完全可以有,只要玩转HomeAssistant系统(Installation - Home Assistant),低代码一站搞定。
2 所需硬件
2.1 树莓派4B。如果不想花银子的话,手头吃灰的树莓派就是首选。这里用树莓派4B一枚。其实,台式机,安卓机都可以的,不过,起手树莓派是最具性价比的,功能全,价格低。

2.2 树莓派Pico W,ESP模块等,任选。
2.3 自选受控LED,Grove Sensors。
2.4 商品化的青萍闹钟,小米电视等等。
2.5 树莓派电源,大于32G的SD卡,wifi路由器等无线组网系统。
3 开始搞一下
3.1 树莓派4B安装HomeAssistant系统。
首先下载树莓派Pi Imager

安装运行后启动Pi Imager,从其他里面选中Home Assistant最新的操作系统

然后插入读卡器中的SD卡,选择开始写入,这个过程是边下载Image文件边写入,完全自助,速度其实还很可以

成功后就可以直接报功,第一步完成。

3.2 启动HomeAssistant并初始化。
树莓派4B插入SD卡,直接用网线连接路由器的输出口,并上电,等待等待,等待等待,然后在树莓派同一个网段的任意浏览器输入这个地址
HomeAssistant:8123,就可以看到这样的显示,

童鞋们,虽然这些红字是英文的不大看得懂,但是攻城狮都知道这个没法搞下去了。一定是出错了。但是,即使这个出错了,还有一个端口
HomeAssistant:4357
是后台监视的,通常都是正常的,

恭喜你,懒人还是可以继续做下去的。
3.2 If 总是提示错误,Then断电再试一次... ...If 总是提示错误,Then断电再试一次,... ... If 总是提示错误,Then断电再试一次,总有一天,你会看到,

红色提示没有了,不用学英文,只有不是红蓝色盲就行,嫌这些字多,缩小以下提示,

虽然说是等待20分钟,但是通常,会是2个小时,运气不好,还会等多。随后总会进入下一步。
这里可能需要一点点运气,主要的原因其实是对github访问并下载的原因,github是限流的,只有多ping几次,才能连接,而且这里可以cache上一次的数据,所以,多试几次,总会把系统安装完的。
那么在后台使用HDMI连接显示器,可以看到如下成功启动的页面,

对应从浏览器的8123端口读到前端页面是

安装完成后就可以进入创建新用户,设置密码的过程的设置阶段了。
3.3 创建用户和设置

选择用户名,并输入密码,就进入时区选择

区域选择,

全部完成,就设定一些隐私和数据传输选择。

完成后就可以进入标准登录页面,

直接进入HomeAssistant控制台

通常,HomeAssistant都会先搜索一下局域网中的HomeAssistant智能家居设备,并提示一下,如下,小米电视都被抓出来了。还有一个只会蓝牙4.2连接的青萍闹钟也被发现了,

3.4 添加自定义插件
除了定制的系统,最好的部分就是自选插件,选择add-on

现在啥也木有,

往下找一找,ESPhome就是这次要找的

点击后稍等,就后台安装添加成功,

点击配置

可以添加节点,这个就是可以用树莓派Pico W或者ESP32的设备进行开发的入口了。

3.5 添加节点,
首先进入提示页面,说明这个过程和方法

这里可以选择的都是可以适用ESPhome插件的,随后选择其中的ESP32C3,

显示当前可以添加的节点所需要的连接wifi的参数

点击确认,添加节点成功。

撒花完结,添加的节点已经显示再ESPhome的面板下面了。

4 小结
前面的过程,流畅而简单,极其适合无脑的菜鸟懒人。
通过这样的系统可以直接连接,近万种品牌的智能家居设备,而且还可以自定义拓展,是夜黑风高,xxxx,居家旅行必备之良品。如果是已经商品化的智能家居产品,点击添加,按照提示一路点下去,就可以配置到起始面板,在显示页面直接显示采集的传感器数据,并且可以有控制按钮实现控制。
如上所述,青萍闹钟(具有智能温度湿度采集功能)被加入到控制前面板,实时显示温度和湿度,
这还没有完,这个插件里面有一个Text-to-speech,可以直接读出文字,在设定的条件下,启动语音交互,控制音箱,读取麦克风数据,具有智能控制的条件。不过,这个TTS是google提供的,懂的都懂,我们看看就好。不过,里面也有baidu提供智能插件,希望同样的服务,百度等也可以做到的。
本帖描述了零代码构建核心树莓派路由服务器的过程,这个过程还是相对复杂的,功能也极其丰富,不过,起手简单化,按照这个先走起,那么后面可以自己添加属于自己的智能家居。
具体到自定义设备的开发,可以预见的是一样的简单,确实实现了独特的低代码开发。不过,开发的过程就不是那么爽了,需要先理解,再开发。因为,小试之后发现,这个可能是未来项目开发的一个趋势,就是描述文本开发。也就是,用文本来描述功能,后台自动来完成参数配置,代码生成,编译,链接,全自动化开发,这样,小白可以安心永远把菜鸟当下去,效果和大佬貌似差不多。所以,这个开发流程,还是很值的学习和期待的。