刷机过程主要参考了 https://blog.csdn.net/u012132482/article/details/128375679 这篇文章
也是用这篇文章里的固件。
刷机时注意要点 少走弯路
双头usb的制作。
找2根淘汰的usb数据线 两头留0.5米
白色(D-)对 白色(D-)
绿色 (D+) 对 绿色 (D+)
黑色 (GND)对 黑色(GND)
这3根线一一对应接好 用胶带包一下 裸漏的铜线
红色的线断开 不接 (电脑usb带不动机顶盒 这导致很多人刷机失败的原因 所以 这里使用盒子自己的电源给自己供电)
2. 刷机
刷入带启动选择器的安卓
A 做好的 双头usb 一头插电脑 一头插盒子靠近网口的那个usb口。
B 打开刷机软件 Amlogic USB Burning Tool v2.2. 0 加载固件 TVrbox-华为科技动画语音支持多机型安卓9.0 S905L3A-B完美线刷-20221126.img 点开始
C 插上盒子电源 关闭盒子的电源开关 拿牙签把下面图孔里的reset开关按下去一直按住直到刷机完成 打开盒子的电源开关 给盒子通电 这时 刷机软件识别到设备 并开始刷机了,等完成 再松开reset ( 先按住reset键 再通电 reset要一直按住直到刷机软件完成刷机)
我的盒子按网上教程短接是没有用的 reset必须一直按住 松手就提示失败
如果要短接的话 请用1k的电阻短接 免得烧坏盒子, 庆幸这盒子只要reset按住就行 短接太麻烦了 (两只手不够用啊)
刷好后 重启就进入安卓机顶盒的界面
接下来 制作armbian usb安装盘
找个空白U盘删除所有分区 建个 1个fat32的分区
镜像选的是Armbian_23.02.0_amlogic_s905l3a_bullseye_6.1.10_server_2023.02.07.img
用Win32DiskImager 把 上面的镜像写入到 刚才的那个u盘里 变成armbian启动盘(这里有个小插曲 开始用rufus-3.21_BETA.exe 制作 U盘启动后 armbian刷入emmc时报找不到dtb文件,看了一下有目录异常 改用Win32DiskImager 制作 就一切正常了)
写好后 U盘会有2个分区 一个是fat32分区 一个是ext4分区
ext4分区是linux下的分区格式 windows不能识别 就会提示未格式化 看到提示 点否 不要格式话
另一个fat32 是可以识别的
dtb/amlogic/meson-g12a-s905l3a-m401a.dtb 这个是对应的是M401a的设备
这个分区里的根目录下有个uEnv.txt。这个文件是uboot的环境配置
文件里的FDT项是设备硬件配置文件的路径 (硬件设备描述树文件路径)
FDT=/dtb/amlogic/meson-g12a-s905l3a-m401a.dtb
meson-g12a-s905l3a-m401a.dtb 这个是对应的是M401a的设备
改成上面的 保存 顺便看一下dtb/amlogic 下是否有对应的dtb文件
接下来开始装armbian U盘插入盒子 打开启动管理器 (建议用键盘或遥控器操作 鼠标的话有时点不上)切换引导 等自动重启后 就从U盘引导了 (如果屏幕显示不全的话 换hdmi接口的显示器或直接接到电视上)
等上一段时间的初始化 直到跳出 要你设置root密码 第一次跳出来的是设置u盘上armbian系统的密码 创建新用户 设置地域 设置键盘等 这些都是在U盘上armbian系统 不是盒子里的armbian,到现在还没开始刷入呢。这一过程 很卡 很慢 需要耐心,10-20分钟吧 。看到root@armbian:~# 就可以开始刷入 了
输入 armbian-install 回车
出现start selecting device
options please input id
输入306 回车 (306对应的是meson-g12a-s905l3a-m401a.dtb 这个 )
继续跑
出现 start selecting file system type
1 ext4
2 btrfs
options please input id
输入 1 回车 (选ext4 ext4这个在linux下属于主流 btrfs小众一点 )
直到出现succes successful installed
写入成功
现在拔掉U盘 重启盒子
盒子里的armbian跑起来了 又来一次初始化步骤 (这次是盒子里的armbian初始化)
到这里 安装就完成了
为了方便以后使用 改一下源 并 设置一下主机名
输入ip addr |grep eth0 看一下ip地址
inet 172.16.4.50/21 brd 172.16.7.255 scope global dynamic noprefixroute eth0
ip地址是172.16.4.50
接下来 就可以用winscp远程操作 了
先修改国内源 使用阿里云的源
/etc/apt/sources.list 备份一下 (远程复制 后缀改成.bak)
然后清空sources.list 复制下面的进去 并保存
deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
开启 电脑名访问
使用winscp整合的pytty 进入熟悉shell界面
apt-get update (先更新一下源)
apt-get install samba (安装samba)
hostnamectl set-hostname mqtt (mqtt是我给盒子起的名 以后可以用mqtt代替ip远程 )
systemctl enable nmbd
systemctl start nmbd
重启盒子
在windows下ping一下mqtt
测试成功
以后winscp 连接盒子 主机名填mqtt就行了 再也不怕ip地址变来变去了
安装的emqx也能用主机名直接访问了