Description
所需工具:
外设:
- 显示屏
- hdmi线
- 网线
- 光猫/路由器
- 金士顿16G U盘
- 双usb线
- 一小段导线(用于线刷短接)。
软件:
- USB_Burning_Tool_v2.1.6.8(线刷工具)
- rufus-4.5.exe(镜像烧录工具)
- 开心电视助手 - YesStbTool v6.0 (ADB)
- MobaXterm_Personal_24.2.exe(SSH)
镜像:
- [ATV桌面]S905L3B通刷ATV9原生固件2024.img 见原帖:https://www.znds.com/tv-1247230-1-1.html
- Armbian_24.8.0_amlogic_s905l3b-e900v22e_jammy_6.1.96_server_2024.07.01.img
注意:刷机过程中本人遇到的各种问题写在了文章末尾,并附上了本人的解决办法,欢迎大家参考。
线刷ATV桌面
- 连接电源、网线、hdmi线,usb连接电脑。
- 关机,进入线刷模式。5800-2amba02主板线刷短接点参考:https://www.znds.com/tv-1235169-1-1.html
- 使用USB_Burning_Tool进行线刷,选择ATV9镜像刷机后拔下USB,开机,进入ATV9桌面。
烧录armbian镜像
- U盘连接电脑,备份文件后格式化为FAT32。
- 打开RUFUS,引导文件选择armbian镜像,点击「开始」写入镜像。
U盘引导启动armbian
- 打开路由器管理页,确认盒子内网ip。打开开心电视盒子,输入内网ip连接。(固件默认已开启ADB,若未开启需自行打开USB调试)
- 点击 调试>晶晨芯片>「从U盘/SD卡启动」
- 盒子开始关机重启。屏幕一开始会显示恢复模式安卓小绿人,一段时间后屏幕黑掉。根据分享山东移动E900V22D刷armbian+引导程序 #1256 得知,此为主板5800-2amba02通病,armbian启动后hdmi无信号。因此需打开路由器管理页寻找设备连接情况,如armbian运行并联网成功,则会在设备列表中显示;否则,说明固件有问题,建议换其他固件/dtb重试。
SSH登录盒子,安装armbian到板载emmc
- 由于没有hdmi输出所以没办法直接调试,但好在网络是好的,我们可以借助ssh进入盒子系统。这里我使用MobaXterm,其他ssh终端理论上都可行。ssh输入ip,端口22,账号root 密码1234,进入系统。
- 安装命令:armbian-install -m yes,格式选择ext4,dtb选择第122项。安装成功。
过程中遇到的问题
-
本人安装ATV9镜像之前曾经胡乱线刷了一堆镜像,把原厂的mac地址丢失了,导致ATV9每次开机都是随机地址,但可以正常上网。然而在U盘引导Armbian后,机器无法连接到网络。解决方法:通过https://www.znds.com/tv-1213499-1-1.html 帖子找到了大神VastStarGames的博客:http://vaststargames.com/read.php?tid=24 ,在录入底板上的原mac地址后,随机mac问题再也没有出现,并且armbian可以正常上网了。
-
刷入ATV9后意外发现ATV9非常好用,而且发现它可以调用遥控器传感器,所以研究了一下ATV9使用遥控器的方法。本人将从帖子https://www.znds.com/tv-1235401-19-11.html 找到的安卓4.4固件刷入盒子后发现遥控器完全可以正常使用,因此产生想法想将遥控码文件移植到ATV9上。然而比对后发现,安卓4.4与安卓9的遥控码文件存在些许差异,安卓4.4为:/etc/remote.conf,安卓9为:/vendor/etc/remote.tab1。移植需要做的措施:
使用开机助手盒子导出文件,文本编辑器打开两个文件,找到remote.conf的「factory_code = 0xc43b0001」 ,其中「0xc43b」为遥控器设备编号。对应remote.tab1中的「custom_code = xxx」。将xxx替换为「0xc43b」(或者你的factory_code中的值);
将key_begin至key_end的值从remote.conf原封不动替换到remote.tab1,自此移植完成,保存。
再使用开心盒子助手导入文件,遥控器便可以正常使用了。
-
本人一开始使用balenaEtcher烧录,但一直报错,且无法引导。最终使用rufus-4.5烧录成功。
-
细心的网友会注意到,本人选择烧录的固件为:s905l3b-e900v22e.dtb,其中对应的armbian的安装列表为124项,但在我烧录的时候使用124项安装报错:
dd: fsync failed for '/dev/mmcblk2': Input/output error 8191+0 records in 8191+0 records out 4193792 bytes (4.2 MB, 4.0 MiB) copied, 2.09829 s, 2.0 MB/s [ ERROR ] Failed to write bootloader using [ dd ].
-
在更换安装列表122项后,刷机成功。