说明:
联通(数码视讯)Q7盒子(以下简称Q7)做为一个电视盒子应该是没有什么可取之处, 但还可以做点别的, 比如, 做Openwrt盒子。
恩山论坛的flippy大侠推出了"55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件", 是基于amlogic(晶晨)的S9xx系列arm SOC的openwrt固件, 现在支持包括基于amlogic(晶晨) S922x、S912、S905x、s905x2、S905x3、S905d等多款SOC的盒子。
但是, flippy大侠的固件说明中, 并未明确指出对S905L的支持, 而Q7用的SOC是S905L。
查到维基Amlogic说明中是这么说的:
Amlogic S905L: 与S905X相似,不同之处在于它支持HDMI 2.0b,但缺少VP9解码,摄像头接口和TS输入。
按这种说法, S905L可能是和S905X差不多, 支持S905X应该就能支持S905L, 那么Q7就应该能用。
推论如此, 然后在网上找到了一个实例, 恩山论坛的Len_大侠在"联通北京数码Q7,S905L电视盒刷成了openwrt系统路由器"贴子里, 明确说明他已经成功完成了将Q7刷上了Openwrt, 虽然没有详细说明, 但从帖子里可以看出来大概是怎么做的, 那么, 就跟随Len_大侠, 让Q7废物利用吧。
为了简单化(偷懒😁), 选用的是使用外接存储(U盘或TF卡)启动Q7的方式。
Q7自带TF卡槽, 这倒是为数不多的优点之一。
另:
在Github上找了下flippy大侠的源码, 感觉应该是这个: lllrrr/mknop
tuanqing/mknop这个肯定是分支。
另外, flippy大侠还做了Docker Openwrt, 看看里面引用的内核源代码来源:
内核源码来源说明(两个平*的内核都来自各自最活跃的上游发布者):
Amlogic内核: https://github.com/150balbes/Amlogic_s905-kernel (5.3.0)
Rockchip内核: https://github.com/ayufan-rock64/linux-mainline-kernel/releases (5.3.0)
公版内核补丁: https://kernel.org (当前最新5.3.6补丁)
FullCone-Nat: netfilter-full-cone-nat + 952-net-conntrack-events-support-multiple-registrant.patch
(来自openwrt源码)
exfat: https://github.com/dorimanx/exfat-nofuse
Wireguard: https://git.zx2c4.com/WireGuard
深了......
一、参考帖子
"55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件" - flippy大侠
"联通北京数码Q7,S905L电视盒刷成了openwrt系统路由器" - Len_
二、所需工具及软件
说明: 可以使用U盘或TF卡启动, SD卡没准也可以。 这里使用的是TF卡。
除了"联通(数码视讯)Q7电视盒子刷机成功, 但这Q7盒子是真的垃圾!"帖子中所用的工具及软件外, 还需要用到:
1. 4G或以上大小的TF卡 + 读卡器
用于制做盒子启动TF卡。
2. 镜像写入U盘工具
用于把固件镜像文件写到TF卡里。
Windows上这类工具很多, 选用的是USB Image Tool, 绿色软件, 不需要安装。
3. 安卓调试工具ADB
用于设置Q7从TF卡启动。
4. 下载"55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件"文中所附的固件包。
用的是目录"N1-Openwrt_U盘直刷包"下的最新固件包, 当前是:
"openwrt_s905d_n1_R21.2.1_k5.4.105-flippy-55+o.7z"
解开压缩文件, 其中"openwrt_s905d_n1_R21.2.1_k5.4.105-flippy-55+o.img"就是要用的固件包。
三、刷机流程
1.破解Q7
按照"联通(数码视讯)Q7电视盒子刷机成功, 但这Q7盒子是真的垃圾!"帖子的做法, 破解Q7.
按恩山论坛的Len_大侠的说法, "Q7需要刷过第三方固件才能确定能从卡和U盘启动", 而Q7原厂固件无法确定能做到。
2.打开Q7的USB调试功能。(大概操作, 跟安卓手机也差不多)
正常打开Q7, 按正常方式使用遥控器操作, 进入"设置"(类似安卓的设置界面), 找到"关于设备"-"版本号", 连续点击版本号很多次, 可能是十次, 也可能是七次, 试吧...
然后退回"设置"界面, 就出现"开发者选项", 进去就可以找到"USB调试", 然后打开"USB调试"。
3.制作启动TF卡
1) 选择镜像文件
按Len_大侠的说法, 在目录"N1-Openwrt_U盘直刷包"下的包都可以刷, 选了最新的55+o版本, 文件是"openwrt_s905d_n1_R21.2.1_k5.4.105-flippy-55+o.7z", 解压出"openwrt_s905d_n1_R21.2.1_k5.4.105-flippy-55+o.img"文件。
2) 用镜像写入U盘工具把img文件写到TF卡里
3) 修改TF卡根目录下的"uEnv.txt"文件, 如下图:
4.把TF卡插入到Q7的TF卡槽中, 使用ADB工具, 设置Q7从TF卡启动
连接Q7:
# adb connect Q7地址
查看连接状态:
# adb devices
重启Q7, 并设置成用cf卡或U盘等外围存储设备启动
# adb shell reboot update
(上面这个命令需要确认)
正常的话, 会重新从TF卡启动系统。
4.从做好的TF卡启动盒子
正常启动盒子, 进入电视盒子界面.
下载"Reboot to LibreELEC", 这个apk设置系统首先从外部存储设备启动, 比如TF卡, 或者U盘.
在盒子的界面上, 安装"Reboot to LibreELEC"这个应用, 安装完成后运行这个APK, 并选择"ok"
但是, Q7这个盒子比较奇葩, 如果设置好了能从TF卡启动, 那么就只能从TF卡启动, 不插TF卡时会死在第一屏界面.
5. 把系统安装到内部存储
四、完成
使用tf卡启动, 成功地在Q7上运行了openwrt.
openwrt缺省地址: 192.168.1.1, 缺省用户/密码: root/password
但:
1) 不能设置wifi
可能无线网卡不能正常驱动。
五、使用图片
五.1 补充关于移动魔百盒R3300L(红)
可以用给Q7做的启动TF卡.
用"Reboot to LibreELEC"可以正常工作, 插卡从卡启动, 不插正常启动.
用CoreMark测试分数比Q7略低, 差不多.
R3300L和Q7内部配置基本一致,甚至包括芯片组:
相同的CPU,
相同的wifi芯片,
相同的内存+存储配置,
壳子都是卡扣结构,
都能从usb口给盒子供电,不受电源开关控制,
都有tf卡槽。
六、其他
1. 关于TF卡的大小
前面说过, TF卡要>4G。
但是, 从使用情况看,TF卡仅有不到1G的空间分给了Openwrt要用的两个分区, 其中有一个是启动分区, 其它的空间都是空的。
所以, 估计1G的TF卡也都能用。
2. 关于Q7的供电
帖子"联通(数码视讯)Q7电视盒子刷机成功, 但这Q7盒子是真的垃圾!"里面说过, Q7可以直接用USB端口的供电启动, 所以可以从别的设备的USB给Q7供电, 至少还可以少占一个插座。
3. CPUMark 测速
命令如下:
# /etc/coremark.sh
测速完成后, 在管理界面, "状态"-"概览"里可以看到CpuMark值
评论