魔百盒m401a安装homeassistant(supervioser)

本文详细介绍了在Armbian(基于Debian的Linux发行版)上安装Docker-CE的过程,包括使用balenaEtcher烧录镜像、修改uEnv.txt、通过PuTTY和WinSCP进行SSH连接和文件管理。还涉及了蓝牙功能的启用和修复,以及安装和配置Hassio自动化家居系统。文章末尾提到了HACS插件商店的安装和CDN加速下载组件的方法。
摘要由CSDN通过智能技术生成

 安装 Docker-CE准备:

1.U盘

2.刷机工具《balenaEtcher》下载地址:https://www.balena.io/etcher

3.armbian镜像(镜像下载地址:https://github.com/ophub/amlogic-s9xxx-armbian/tags),有jammy(Ubuntu最新发行版代号)或bullseye(Debian最新发行版代号)两个版本,至于这两个版本的区别,请看自行搜索,这两个版本都可以食用,我选的Armbian_23.04.0_amlogic_s905l3a_bullseye_5.15.107_server_2023.04.14.img.gz
s905l3a的6.1.12版本据说兼容性问题较多,保守起见还是推荐食用5.15.xx版本。注意以下是基于bulleyes的操作。

format,png

4、电脑插上U盘,打开balenaEtcher,拖拽下载好的armbian镜像到Selectimage

format,png

选择插入的U盘

format,png

点击Fiash等待结束。

format,png


5、将烧录好镜像的U盘插上电脑,打开boot文件夹下的uEnv.txt文件,将FTD=一栏后的dtb文件修改成:/dtb/amlogic/meson-g12a-s905l3a-m401a.dtb,如图:

format,png

(这个dtb文件相当于电脑的BIOS,m401a的硬件信息都依赖次文件调用)

保存退出。

6、接下来还有实战中需要的windows系统必备的工具:

(1)PuTTY(下载地址:https://://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)根据自己系统下载并安装备用。

4fb1b36765a54ed887a102226a474b1a.png

(2)WinSCP(下载地址:https://github.com/winscp/winscp/tags)正式版下载解压并安装。

PuTTY只要填写IP点Open就能SSH连接盒子,WinSCP需要填写IP及armbian的用户名和密码
 

安装

1.进盒子查看ip地址,电脑上安装《开心电视助手4.0版by剑心1》,软件下载网站:www.kaixindianshi.com。在我编辑这篇帖子的时候开心电视网的盒子助手变成无法下载的状况(可以浏览器搜索进行下载),解压后打开Debug目录下的YesStbToolV4D.exe 电视助手主手

format,png

在设备ip地址一栏填上之前在盒子系统中查看的ip点击连接,然后转到调试页面:

format,png


点击晶晨芯片选项卡中的,从U盘/SD卡启,不要插U盘,(看自己选择是否重新启动后选择恢复出厂设置,有可能会因为如果不恢复出厂设置,在U盘启动armbian的时候会遇到奇奇怪怪的问题)。恢复出厂后插上U盘重启,准备开战了。 

2.

1)重启,

在出现电视开机画面(我的是华为鸿蒙OS图片)后不出意外你会看见满屏的彩虹竖条,然后就是一顿跑码,最后在输入密码界面停下,接下来

2)登录设定密码2次(1234),再选1,ctrl+c退出,记下IP地址,敲reboot重启

3)电脑使用PuTTY (64-bit)输入IP地址登录armbian,用户:root 密码:1234

4)电脑打开WinSCP并登录armbian,用户和密码同上 

3.winscp打开 /etc/apt/sources.list 文件,或putty执行命令:nano /etc/apt/sources.list (用此命令需要先CTRL+K删除原有源地址,输入下面源后ctrl+X选Y回车保存退出)更换源:

deb https://mirrors.aliyun.com/debian stable main contrib non-free
deb https://mirrors.aliyun.com/debian stable-updates main contrib non-free

 4.更新源并安装蓝牙文件:将以下命令复制到PuTTY中运行

apt update && apt upgrade -y && apt install -y apt-transport-https apparmor udisks2 gpiod lrzsz avahi-daemon bluez bluetooth pulseaudio-module-bluetooth bluez-firmware

5.修复蓝牙(不修复的可以直接跳至第13步)

PS. 此处根据Xcray大佬的编译的文件,蓝牙功能仅限设备通讯,如果需要通过蓝牙播放音乐,需要修改rtl8761b_config,Xcray大佬已在原帖中提供,请通过底部的参考文章进一步了解。

用WinSCP查看/lib/firmware/rtlbt目录,确保其中有rtl8761b_fw文件,如果没有,到/lib/firmware/rtl_bt/下面找那个带.bin后缀的,拷过来改名,或者在PuTTY链接也行:链接命令如下

ln -s /lib/firmware/rtl_bt/rtl8761b_fw.bin /lib/firmware/rtlbt/rtl8761b_fw 

6.PuTTY执行以下命令,补全配置文件:

wget https://github.com/ophub/amlogic-s9xxx-armbian/files/9582582/rtl8761bt_config.zip

unzip rtl8761bt_config.zip

mv rtl8761bt_config /lib/firmware/rtlbt

rm rtl8761bt_config.zip

rm -rf __MACOSX/

7.将rtk_hciattach文件通过winscp软件拷贝至/usr/bin目录,并在PuTTY中增加可执行权限,命令如下:

chmod 755 /usr/bin/rtk_hciattach

8.添加开机蓝牙重置,编辑/etc/rc.local文件,在exit0之前加入代码:

#bluetooth
/usr/bin/rtk_hciattach -n -s 115200 ttyAML1 rtk_h5 &
#bluetooth reset
gpioset -s 1 -m time 0 82=0
gpioset 0 82=1

format,png

9.  reboot重启 

执行以下命令,检查蓝牙是否启动:

systemctl status bluetooth
hciconfig

format,png

10.编辑/etc/systemd/system/bluetooth.target.wants/bluetooth.service

行尾添加参数

--noplugin=sap

format,png

12、禁止升级内核时重新写u-boot和bootloader,这个写入毫无意义,并且有很大风险编辑/etc/ophub-release,把MAINLINE_UBOOT这一行改成:

MAINLINE_UBOOT=''

format,png

13.利用好u盘剩余空间,执行

armbian-tf

选e,按回车 

14.安装Hassio
1)

2)安装Docker  ce,因为Hassio依赖Docker

安装基础环境

apt install \
apparmor \
jq \
wget \
curl \
udisks2 \
libglib2.0-bin \
network-manager \
dbus \
lsb-release \
systemd-journal-remote -y

  安装 Docker-CE

curl -fsSL get.docker.com | sh

//

若不成功,换下面这种方法安装docker,这是从armbian拉取的docker,不能安装supervisor但可以安装homeassistant

首先输入“apt update”更新下软件,然后如图示输入“armbian-config”,依次选择“software—softy—docker”,用空格选中docker,然后按回车install docker。等它进度条走完,docker就装好了,在命令行输入“docker version”就可以看到docker版本了。

format,png

format,png

format,png

format,png

15。安装Hassio 

wget https://github.com/home-assistant/os-agent/releases/download/1.3.0/os-agent_1.3.0_linux_aarch64.deb


dpkg -i os-agent_1.3.0_linux_aarch64.deb



wget https://github.com/home-assistant/supervised-installer/releases/download/1.4.2/homeassistant-supervised.deb

dpkg -i homeassistant-supervised.deb

注意!!

安装前请仔细阅读HA Supervised的系统要求:

https://github.com/home-assistant/architecture/blob/master/adr/0014-home-assistant-supervised.md

受支持的HA Supervised系统有诸多要求,如:

必须安装在原生Debian Linux Debian 11 aka Bullseye (no derivatives) 上
除hass外无其他软件包等
在非受支持的系统中安装Home Assistant Supervised,会有启动警告,但仍可使用插件安装、系统备份等原有功能。

supervised-installer 自1.4.0 版本起阻止了不受支持系统的安装。用户若在非HA支持的发行版(即非原生Debian 11,如Deepin、Ubuntu或Raspberry Pi OS 等)上安装Home Assistant Supervised时,请选择supervised-installer的1.3.1或更早的版本,系统升级不受限制。

由于ipv4不能ping通checkline.homeassisitant,io,所以需要将盒子的ipv6开启,

ipv6配置
启动配置ipv6 (其实默认也是启动的)

sudo vim /etc/sysctl.conf
#开启
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0

#通常无需转发 但如果使用 docker wireguard之类的或是路由器 需要开启
net.ipv6.conf.default.forwarding = 0
net.ipv6.conf.all.forwarding = 0
 

开机无法获取ip请参考电视盒子刷armbian开机获取不到ip解决方案_armbian获取不到ip-CSDN博客

16.选择qemuarm-64 

format,png

安装时间比较长,可以用魔法,如果有的话。supervisor版本会自动下载homeassistant 不需要再另外拉取;

17.

运行docker images看看都有啥镜像下载好了,或者docker ps看看哪些容器起来了,

直到那个ghcr.io/home-assistant/qemuarm-64-homeassistant:2023.xx.xx起来,(1.xxG)才算安装完成。

format,png

format,png

告警处理

当你访问如下地址

http://your.ip.address.here:4357

会提示

Supervisor:Connected

Supported:Unsupported

Healthy: Healthy

想让Supported显示Supported可以参考如下方法解决该问题。

步骤:编辑/boot/uEnv.txt,在APPEND=...的最后加上:

apparmor=1 security=apparmor systemd.unified_cgroup_hierarchy=false
  1. 编辑/etc/os-release,把第一行PRETTY_NAME=...改为:
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
  1. 重启系统

注意:如果不想让Healthy显示为Unhealthy 不要在该系统上再启用和 home assistant 不相关的容器,否则会使Healthy显示为Unhealthy。例如你在该系统下安装管理Docker 的 Portainer 后,Healthy就会显示为Unhealthy。

安装portainer

docker run -d --restart=always --name=portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data 6053537/portainer:linux-arm64 

18.紧接着就是安装HACS商店 

HACS(Home Assistant Community Store)即Home Assistant官方的插件商店,提供各种设备集成、前端装饰等的下载,是Home Assistant必备的插件。

1)安装HACS可以通过 https://github.com/hacs/integration/releases/ 下载离线包,解压后将hacs文件夹通过FTP软件拷贝至/usr/share/Hassio/homeassistant/custom_components(没有此路径的话新建一个)。

2)或者在SSH中输入以下命令一键安装。

wget -O - https://get.hacs.xyz | bash -
然后在后台界面选择“配置”-“系统”,右上角点击“重新启动”。

重启后,在“配置”-“设备与服务”中添加集成。

format,png


此界面全部勾选,点提交。

532d58a39317446388d5925590840956.webp
复制下方代码,打开上面的Github链接。(如果没有Github账号就注册一个)


在弹出的页面粘贴代码。

69e20d260cb046c39b2854f455b95303.webp
点击Authorize hacs即可。

 73fd1f6f8e4b4e65bd16126e68dd4cab.webp

6da170957b09437d8b6ad0004232d0b8.webp


回到之前页面,等待片刻,HACS安装完成,此时,左边栏就会出现HACS的选项。

1198c3eb2ae64578924871f1eb88e2c3.webp

HACS安装完成
至此,Home Assistant的基础配置基本完成。

19、hacs加速(cdn加速)

介绍了如何安装HACS,以及授权GitHub账号等相关操作,在一顿操作过后,结果发现,不管咋整,在安装组件的时候,总是加载转圈圈,不知道啥时候是个头?到最后总是会莫名其妙的失败。

毫无意外,出现这种情况,肯定是网络的锅

路由器:看我干啥,不关我事.jpg

既然出了这种事情,总得要解决啊?

所以本期的主要内容就是介绍如何解决HACS下载安装组件困难的问题

既然要解决问题,所以必须得明白问题的本质是什么?

HACS安装组件的核心功能就是通过调用GitHub的api接口获取到组件的文件真实地址,然后根据对应的类型下载到对应的文件夹中

所以问题出在下载文件这个环节,因为网络问题,特别是下载大文件的情况下,极其容易出现下载超时,然后直接就异常失败了

面对这个问题,我们首先需要寻找是否有国内的代理源,以及相关的替换解决方案

关于这方面的解决方案当然有很多,但是受限于技术方案的难易度和使用成本,一般不怎么稳定,对于不熟悉的用户来说,可能就有点困难,

还有就是毕竟是白嫖别人的服务,可能piao着piao着,服务就停止了

鉴于以上种种大坑,我也只能在坑中找到那些还算比较靠谱的解决方案推荐给大家

其中一种比较稳定的解决方案是使用CDN的方式

jsDelivr是一个免费、开源的加速CDN公共服务,托管了许多大大小小的项目,可加速访问托管的项目目录或图片资源

官方网站:https://www.jsdelivr.com/

关于如何利用好jsDelivr请看官方文档,本篇内容着重介绍在HACS中的使用

整体操作非常的简单,分三步走

  1. 找到hacs下载文件的方法

  2. 替换文件下载地址

  3. 重启homeassistan

首先我们找到hacs的执行下载方法的模块文件

文件路径:custom_components/hacs/ base.py 修改download函数

然后找到下载方法的名称:async_download_file,你可以使用快捷键Ctrl+F搜索,然后将以下内容放到

self.log.debug("Downloading %s", url) 下面,请仔细看图

        # 显示原始下载地址
        print(url)
        # 源文件
        if "https://raw.githubusercontent.com" in url:
            arr = url.replace("https://raw.githubusercontent.com/", "").split("/")
            arr[1] = arr[1] + "@" + arr[2]
            arr[2] = ""
            _list = ["https://cdn.jsdelivr.net/gh"]
            for item in arr:
                if item != "":
                    _list.append(item)
            url = "/".join(_list)
            self.log.debug("下载链接:%s", url)
        # 发布文件
        if "https://github.com/" in url and "/releases/download/" in url:
            url = url.replace('https://github.com/', 'https://hub.fastgit.org/')
        # 修改后的下载地址
        print(url)

 c7e2a43acc6349ba9bd1d0f77b58b046.png

在重启之前,请千万认真非常仔细的瞄一瞄,格式是否正确,python对于缩进格式非常的严格,多一个或少一个空格可能就跑不起来,所以请万分注意

print方法是为了在终端上显示下载的文件地址,这样可以很直观的看到下载了哪些文件

重启完成之后,接下来就到了下载组件的时候,咱们首先安装一个小米设备集成组件试试水

be186eb79bae41c0741d1c50889f9ebf.png

25fbc559b082c2a41f6b6e31ad109e6b.png

468e89df2a1a6f4a1ed77133df93421d.png

b9cbfc6bc89aad1c907c66cf21413fcc.png

点击下载后,我们就在终端中看到每一个下载的文件信息,然后在自定义组件目录中发现已经下载完成的文件了

e65660053bf9b6f82dc040c0289e2cc6.png

选择主分支版本的下载方式有所不同,需要注意

9f6e9552ef65cbe0393c7165e6cc06f4.png

5274db4af915f19c1e171ce394a21f19.png

静ip

nano /etc/network/interfaces
source /etc/network/interfaces.d/*
#auto lo
#iface lo inet loopback
auto eth0
iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        gateway 192.168.1.1
        dns-nameservers 114.114.114.114 8.8.4.4

【大功告成】更新:完美蓝牙 M401A/CM311-1a盒子Armbian安装方案 - 『HomeAssistant』综合讨论区 - 『瀚思彼岸』» 智能家居技术论坛 - Powered by Discuz!

魔百和M401A刷armbian并安装homeassistant小白教程 - 哔哩哔哩

CM311-1a安装HomeAssistant Supervisor (Hassio)&修复蓝牙—让你的电视盒子身价翻倍! - 哔哩哔哩

魔百和CM311-1A盒子刷入Armbiam并安装Docker - 哔哩哔哩

home assistant docker镜像安装遇到的坑

n1盒子安装官方Home Assistant Supervised(原HassIO)文字教程 - 哔哩哔哩

HACS使用CDN加速下载自定义组件

M401a img固件 U盘安装,是指将M401a打印机的固件 img 文件通过U盘安装到打印机中。下面将具体介绍U盘安装的步骤: 1. 首先,我们需要准备一台用于安装的电脑以及一个U盘。确保U盘是可读写的状态,并且容量足够大,能够存储M401a的固件文件。 2. 接下来,我们需要下载M401a的固件 img 文件。可以通过官方网站或者其他可信的资源网站下载到最新的固件文件。确保下载的固件文件与您的打印机型号完全匹配。 3. 下载完成后,将U盘插入电脑的USB接口,并打开U盘的文件管理器。 4. 将下载的固件 img 文件复制到U盘的根目录中。请注意,不要将文件放在任何子文件夹中。 5. 在电脑上安全地弹出U盘,然后将其从电脑上移除。 6. 现在,将U盘插入M401a打印机的USB接口。 7. 打开M401a打印机的设置菜单。具体操作步骤可能因机型而异,请参考您的打印机说明书。 8. 在打印机的设置菜单中,找到固件更新或固件升级选项。选择该选项后,打印机将开始搜索连接的U盘上的固件文件。 9. 选择U盘中的固件 img 文件,然后按照提示完成固件升级过程。 10. 在固件升级过程中,请务必不要断电或拔出U盘,以免导致固件损坏或打印机无法正常工作。 11. 等待固件升级完成,打印机将自动重启。 12. 最后,检查打印机的固件版本是否已成功升级。可以在打印机的设置菜单中找到固件版本信息。 通过以上步骤,您可以顺利将M401a固件 img 文件通过U盘安装到您的打印机中。请注意,不同的打印机型号可能会有一些细微的差异,请根据您的具体情况来操作。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值