N1刷机避坑指南 篇六:Home assistant刷机接入TC1,M1,MQTT配置,Homekit

本文一共6022字,58图,需用时15分,请随意阅读。

前言


这是本人写关于Homeassistant的第二篇文章,拖了很久一直想把坑填完,先暂时把USB摄像头内容删掉了,因为网络的原因,下载一些包经常失败,不过后面进度应该就快了。M1内容的话,HACHINA大佬的配置在我这边没办法实现,还是无法收取M1的数据,所以内网劫持这个方法我就放弃了,恰好手头上又买来了TC1和JLink刷机线,所以就一并把M1也刷了。

刷机方法需要搭建MQTT,因为新版的Homeassistant弃用了自身的mqtt功能,0.93版本之前的自带mqtt的。所以本文也会讲到如何搭建MQTT,这也是新手会遇到的大坑。

Homekit实现起来非常简单,Homeassistant应该已经自带Homebridge了,如果需要远程控Homekit控制家里的电子设备,就需要Homepod、Apple TV或iPad作为家庭中枢一直放在家里,后文会讲到。N1新手请先参看前序文章。

本文TC1和M1的固件均来自GitHub大神Zip Zhang,未经其允许,本文不提供下载,请自行到GitHub下载,在此感谢Zip Zhang对斐讯产品的支持。

目录:
一、TC1刷机激活
1.1 TC1拆机
1.2 TC1刷机
1.3 TC1配网激活
二、M1刷机
2.1 M1劫持接入(本人测试未成功)
2.2 M1拆机
2.3 M1刷机
2.4 M1配网
三、MQTT搭建
3.1 Docker搭建emqx并配置
3.2 armbian搭建mosquitto并配置
3.3 zControl连入mqtt服务
四、TC1、M1接入Homeassistant
五、Homekit配置
六、总结


一、TC1刷机激活


TC1目前无法通过劫持来连入Home assistant,只能通过刷机,固件是Github上的作者a2633063所做,目前稳定在1.0.2版本,具体固件下载和刷机步骤请参考原作者,这里不做介绍,因为版本不同,可能会略有改动。原作者提供的是A1版本的固件,A2版本的可以参考其他作者,刷机更麻烦一点。

为了避免争议,本文不提供固件,请到原作者GitHub下载。

1.1 TC1拆机

作为踩坑大使,笔者当然要为你们摸清路子,拆解刷机主要的坑有:

坑1:T9螺丝,请一定要确认好自己有T9螺丝刀,一般螺丝刀小工具会包含,另外螺丝中间会有一个细柱,只需要用细的螺丝刀把它翘断即可,不需要中空的T9螺丝刀。

5e88195fba53f4269.jpg_e1080六角星这种

去掉螺丝后,还有卡扣固定住插排的,需要用力振动下来,亲测这两个位置,底下不要垫太乱的东西,用手锤的时候请在上面垫厚一点的衣服,不然有点疼。一般锤两下就搞定。

5e881b13d1c526693.jpg_e1080握拳捶这两个地方,把卡扣振开

为避免部分商家卖错货,请确认一下这个芯片,MXCHIP的才是A1版本。

5e881d61e49897833.jpg_e1080认准芯片

5e881d81a50479804.jpg_e1080盒子底部也有

1.2 TC1刷机

这款J-Link下载器可用(已测试)。

购买的J-Link下载器带的接线颜色可能会有误,请一定要确认好接地和3.3V。

坑2:一定要确认刷机接线,商家发送的Jlink刷机线有可能红色为地,黑色为3.3V,请确认触点顺序。

5e881a4517b367574.jpg_e1080确认好线序

最好是通过焊接的方式,用手摁住非常吃力,因为差不多要一分钟左右时间,一动,很容易失败。

坑3:没有电烙铁工具的,可以手摁着排针,刷机过程大约60s左右,一定不要动,不然很容易刷机失败。手不稳的还是把排针焊接上去。(使用电烙铁一定要注意安全)

5e881a5f072234828.jpg_e1080手摁着挺累的,不能抖

这是我第二个TC1,直接焊接的。当然焊接其实也不简单,不容易植锡,可能表面有油污。

注意:不要按我下图的颜色顺序,我改过的。

5e96bb75c61066672.jpg_e1080焊接的

设置部分,请按照下图或GitHub官方设置。

5e96e768551646440.jpg_e1080设置参数

然后Browse选择GitHub大神的all.bin固件,然后点Start,如果没连接好,会直接报错。

5e96e7cda88026241.jpg_e1080选择固件后点Start

刷到100%后还需要验证固件。

5e96e820651f57361.jpg_e1080验证固件

出现Verify Success(软件作者少了一个c)

5e881a7c8aa513738.png_e1080刷机成功会提示Verify Sucess

如果中途连接失败,需要重新开始刷固件,按网友的经验来看刷不坏。

1.3 TC1配网激活

坑4:刷机成功后,请按照原作者Github上的方法进行配网,不要看别人文章的,旧的方法不适用于新的固件。(需要下载安卓软件zControl)

5e88176323940177.jpg_e1080这是目前1.0.2版本的配网模式

5e96c3db2090d4813.png_e1080连接zTC1热点

配网界面,输入wifi名称和密码,下一步即可。

5e96c3e843f726491.png_e1080配网界面

配网成功会有提示的。

配网后,可通过zControl连接TC1。zControl下载地址:https://www.coolapk.com/apk/com.zyc.zcontrol,目前版本1.1.0。

左上角三横进入设置,选择增加设备。

5e96ec2fb58287444.jpg_e1080增加设备

选择获取局域网设备,请确保安装zControl软件的手机和TC1在同一个局域网。

5e96ed76678187699.png_e1080获取局域网设备

然后可以看到zTC1,点击确认即可。

5e96edc9133e47416.png_e1080udp广播

未激活状态是无法使用控制插口功能的。

5e96ede560d369565.png_e1080未激活

点击右上角铅笔图标,查看mac地址,复制这个mac地址,除了激活,后续连入homeassistant也需要用到。

5e96ee2e4f9b11972.jpg_e1080复制mac地址

坑5:激活码需要加作者QQ自动发放,前提是要先得到MAC地址,配网后在zControl软件右上角铅笔图标内可以看到,按照作者格式发过去,会自动发回激活码。注意MAC地址要小写,另外不要用ios的QQ发,用windows桌面版。激活后,就可以通过zControl软件控制插排啦。

Zip Zhang作者zTC1激活码获取方法。

点击激活状态,输入激活码,就可以激活TC1啦,现在你就可以通过zControl控制TC1啦。


二、M1刷机


M1本人之前在Homeassistant老版本曾直接劫持连入成功过,但新版本一直报错用户列表为空。HACHINA大佬说可行,并给出了配置,我直接用其配置文件覆盖也不行,遂放弃了,直接刷机,有兴趣的朋友可以测试下。

2.1 M1劫持接入(本人测试未成功)

具体配网方式请看上一篇文章,需要用到安卓软件Easylink。

N1刷机避坑指南 篇三:全局 Home Assistant(热乎的0.107.7)安装,接入M1和DC1(无需刷机)本篇文章来自#大男孩的快乐#征稿活动。晒出你作为一个大男孩的快乐源泉,成功投稿可获得50金币奖励,更有三千元乐高大奖与达人Z计划专属权益等你拿哟~>活动详情戳这里服务器控制。选择重新启动,hassio安装的版本这里还有个配置检查的,可以检查yaml文件的配置是否正确,单独装的这里没看到有。重新启动会Memol|270评论227收藏2k查看详情好了,先说下M1,请参照HACHINA的大佬的文章进行配置。

斐讯悟空M1 空气管家+Homeassistant接入教程+仿Homekit LOVELACE实战 + Nodered自动化编写

本文放弃劫持接入。

M1刷机固件和TC1同个作者制作的。

这是项目地址:https://github.com/a2633063/zM1,里面有详细操作和说明,M1无需激活码激活。

2.2 M1拆机

M1的拆机需要一点点动手能力,需要从正面面板入手(请忽视这膜)。

5e96bbd788ede7585.jpg_e1080膜太脏了

在黑色面板四周慢慢用撬棒撬开,面板是通过双面胶和框架粘合的。

5e96bbfcc0c524808.jpg_e1080撬开面板

这个框是通过卡扣连接的,撬的时候很容易卡扣断裂。

5e96bc3a46b325439.jpg_e1080框架

总共有10个卡扣,如果要无损拆的话估计有点累,我反正是断了几个。

5e96bcd2841d91829.jpg_e1080断几个问题不大

可以看到温度下面是有触点的,这个应该是官方用来TTL刷机的。

5e96bcfc22040530.jpg_e1080TTL触点

拧掉显而易见的两颗螺丝,就可以把显示面板拿出来了,一定要小心,后面有几条排线。扁平排线是有扣的,要把黑色的扣打开,然后才能把排线拿出来。

5e96bd313cd153181.jpg-270_e1080排线

这就是要刷机的板子,可以看到和TC1用的同样的MXCHIP,不过型号不同,这个是EMW3080,TC1是EMW3031。

5e96bd6ddc4eb3263.jpg-270_e1080主板

刷机主要要接1、2、16、17四个引脚。

5e96c0901e9362058.jpg_e1080刷机引脚

2.3 M1刷机

M1刷机可以通过TTL也可以通过JLink刷机,我推荐后者,直接用编译好的固件,固件下载请参考项目原文。虽然都是JLink刷机,但是刷机软件和TC1的不同,并且如果先M1刷机,驱动需要更换并卸载,然后重新安装TC1的刷机软件才能再次刷TC1。

引脚1:SWD CLK

引脚2:SWD DIO

引脚16:VD33

引脚17:DGND

引脚16是在引脚17的上方那个,借用下原作者的图片。

5e96f1c196a16461.jpg_e1080引脚连接

整理时发现没有拍接线引脚照片,我也是直接把接线头用砂纸磨细了,然后直接插在引脚孔里的,没有焊接,可以参看GitHub文档,烧录软件和固件请都从原作者GitHub下载。

首先需要把下载的*.all.bin文件名称改成all.bin文件,然后放入烧录软件firmware文件夹。

5e96f05447dfe8180.jpg_e1080改为all.bin

然后运行烧录软件中的先运行分割.bat脚本。

5e96f0c0d7b8c5563.jpg_e1080先运行分割.bat

然后cmd界面会运行一些时间进行固件分割。

5e96f0e16dca65961.jpg_e1080固件分割

all.bin分割为三个bin文件。

5e96f132c14f22832.jpg_e1080分割完成

然后到Jlink driver文件夹,运行zadig.exe,在option里选择list all devices,下面拉选J-Link,然后Replace Driver上选libusb-win32,然后点击Replace Driver。

5e96f21bc067c8587.jpg_e1080Replace Driver

5e96f27e5365e4458.jpg_e1080更换成功

然后去设备管理器确认一下,看libusb里是否有J-Link。

5e96f29c9ba1b4275.jpg_e1080确认驱动

最后确认下是否接好引脚,然后点击烧录软件里的再运行烧录.bat脚本,cmd界面10几秒就自动关闭了。

5e96f32158a695063.jpg_e1080烧录过程

是否刷机成功需要看上电后是否有zM1的热点,具体请看配网部分。

2.4 M1配网

刷机完成后,重新上电,M1会开启wifi热点,只要用手机连入该热点即可,一般为zM1开头的。

5e96c2e728b877722.png_e1080ZM1热点

连入热点后,手机浏览器输入192.168.0.1,登入到配网界面。填写WIFI名称和密码,下一步即可,激活码不需要填。

5e96c359e5f879318.png_e1080配网界面

显示成功后即配网成功,此时可以通过zControl连接M1设备,添加设备界面默认会自动识别到M1。

5e96f37489cc88219.jpg_e1080mdns识别

如果没有识别,可以点击获取局域网设备,会通过udp广播扫描附近设备,点击确认即可。

5e96f3d94e5fd1624.png_e1080udp广播识别

5e96f4042b4a43148.png_e1080M1界面

虽然M1不需要激活,但是还是需要通过右上角铅笔进入设置,然后复制M1的mac地址,在接入homeassistant处需要。


三、MQTT搭建


MQTT服务的搭建,对于接触过的朋友来说其实很简单,但对于一些新手小白来讲就是无法上手,教程很多,但是很容易出错,并且有些教程太老,或者是系统不一样,不适用于N1。本章主要讲解两种方法搭建MQTT服务器,分别是Docker搭建图形化emqx和armbian搭建mosquitto。

3.1 Docker搭建emqx并配置

我是使用的小钢炮里的docker,SSH连接小钢炮,然后root下输入命令。

docker run -d --restart=always --name="emqx" -v /etc/localtime:/etc/localtime -p 18083:18083 -p 1883:1883 killadm/aarch64-emqx:30

然后等待,为此我又装了个小钢炮。

5e96f55998dba9103.jpg_e1080安装过程

安装成功后自动开启emqx的图像化网页。可以通过IP:18083来登录,默认用户名是admin,密码public,登录后可以更改。

5e96f660a316c5773.jpg_e1080emqx login

emqx管理界面。

5e96f6a876b4e7283.jpg_e1080emqx管理界面

至此emqx安装完成,ip为docker终端IP,端口:1883,账户:admin,密码为默认public或者你修改后的。

3.2 armbian搭建mosquitto并配置

root用户下,输入命令。

apt-get install mosquitto

5e96e16be2bcb2315.jpg_e1080安装mosquitto

如果安装失败,请更换网络,或者更换armbian源,安装完成后,需要设置用户名密码。

然后输入命令

mosquitto_passwd -c /etc/mosquitto/pwfile 你的用户名
会返回Password: 然后输入你的密码。
返回Reenter password: 再次输入密码。

回车,无报错则创建成功。

5e96e1907ddad4040.jpg_e1080创建用户名和密码

mosquitto的ip地址就是armbian的ip,端口默认是1883,用户名和密码就是上一步刚设置的。

如果无法设置用户名和密码,可以先把mosquitto进程关闭,设置好后在开启,正常应该不用。

ps -ef | grep mosquitto

借用一下https://blog.csdn.net/weixin_30443731/article/details/95701086的图。

5e96e4b7c0f728542.png_e1080

然后关闭掉相关进程,kill 数字代码

5e96e4c81df4b7521.png_e1080

3.3 zControl连入mqtt服务

zControl软件界面,左上角三横进入软件设置,然后左下角齿轮设置。

5e9700b6b1a9241.jpg_e1080左下角进入mqtt设置

分别填入MQTT的地址,IP:1883,用户名和密码。

5e970179243ad7955.png_e1080配置MQTT信息

配置完成后,软件主界面左下角会显示已连入mqtt服务器,需同步。然后在TC1或者M1的控制界面,点击右上角云朵图案,进行一次同步即可。

5e9701e7743e41054.png_e1080云朵图案进行

同步成功后,就可以用MQTT方式控制TC1和M1了。zControl界面可以配置插口的开启和关闭时间以及M1的亮度定时调节,功能也还不错。


四、TC1、M1接入Homeassistant


TC1和M1接入到Homeassistant可以参考 GitHub作者a2633063的官方文档,主要是配置package里的yaml文件,对于新手来说可能要先了解一下yaml文件编写规则。这里提供package完整文件,但是请替换MACMAC为自己TC1或者M1的mac地址,packages(提取码:u7nj)

替换后,直接将tc1.yaml文件和m1.yaml文件放入到package文件夹中,注意请一定要把MACMAC替换成你自己设备的12位小写mac地址。

5e97059513b318183.jpg_e1080替换MACMAC

然后请打开configuration.yaml文件,确保里面包含以下语句。

要包含packages配置。

5e97064594dba9467.jpg_e1080packages

mqtt配置以及homekit配置。

5e9705fc0e96d8146.jpg_e1080mqtt和homekit

然后重启,去实体里寻找你的TC1和M1。实体配置部分请参考之前一篇Homeassistant文章。


五、Homekit配置


Homekit配置非常简单,因为Homeassistant自带HomeBridge,所以只要在configuration.yaml里写入homekit:就可以了。可以和第四章一起配置,少一次重启,如上图。

重启后会提示有新通知。

5e970a888417b8310.jpg_e1080通知

然后可以看到Homekit的8位连接代码。

5e970a99219979168.jpg_e1080

Homekit代码

然后打开iOS手机,找到应用家庭,打开后选择添加配件—>我没有或无法扫描代码—>输入代码。

5e96b8ffc9dbd9285.jpg_e1080设置三联

然后输入Homeassistant提示的8位数字代码。

第一次连入设置需要配置每一个开关或者传感器的位置,可以根据自己的要求分配。

5e970837317e52236.jpg_e1080设置三联

如果想要Homekit远程控制,需要一个苹果的家居中枢。Apple TV,HomePod或者iOS10以上的iPad。我没有设备,所以无法提供教程,你们可以测试下。


六、总结


Homeassistant目前笔者装了三个版本,hass.io的0.108版本,docker的0.109版本和armbian全局安装的0.107版本。hass.io相对于后两者有点臃肿,没那么流畅,不知道是不是网络的原因。docker下的homeassistant用着也还可以,小钢炮的docker还是不错的,有了docker,就可以做很多事情了。

Homeassistant的路还很长,目前离我的最小需求还差一个USB摄像头,就像平时没事情看看家里的娃娃,以后再找机会淘个二手pad,当homekit家庭中枢,上班也能看到娃,岂不乐哉。

N1作为一代玩物,游戏机、下载器、播放器、智能家居中枢、轻量化nas,可以说能胜任很多工作,并且功耗是真的低,唯一短板就是USB2.0的口,不过轻量化的要求也足够了,当然,人是不可能满足的,都希望各个功能集于一身,所以nas的配置才会越来越高。

N1刷机避坑指南的后续文章还有小钢炮的docker内容,以及轻量化nas的实现,nextcloud部署,一步一步来,我会带你们先走一遍的,哈哈哈哈。

最后,谢谢支持,希望这篇文章对你们有所帮助。

the-end

Related Post

发表回复