在 oect 的 armbian 开发时的一些关键讨论贴汇总,方便在其他设备里使用厂家 ubuntu 制作 armbian 时借鉴参考:
厂家 UBUNTU 镜像分区分析: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3007027111 厂家 UBUNTU 系统分区分享: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3012245286 厂家 u-boot 和 env 分析: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3012347575 ENV 启动参数调整: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3013637283 armbian 制作方法初探: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3014855325 无用分区删除调整测试: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015031032 armbian 制作方法优化: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015137972 armbian 制作测试脚本: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015166275 armbian 分区大小调整: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015180306 env.bin 参数调整: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015210712 armbian 最终镜像: https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736#issuecomment-3015226012 emmc/sata 双启动的脚本: https://github.com/ophub/amlogic-s9xxx-armbian/issues/3160#issuecomment-3418636890
[!IMPORTANT] wxy OEC-turbo 有2个版本,一个是原版,一个是换了芯片和EMMC的版本,下载时注意区分。
原版的镜像名是:
wxy-oect自己更换了芯片和EMMC的修改版设备的镜像名是:
wxy-oect-mod可以使用的内核有主线
6.12.y/6.18.y和 bsp 内核6.1.y-rk35xx
这2个版本的刷机方法和其他rockchip设备的刷机方法一样,都是使用RkDevTool写入即可,一个选择 MiniLoaderAll.bin,另一个选择写入的镜像。先下载刷机工具和需要的系统镜像文件,查看拆机的视频:
Armbian(账号root密码1234)下载地址: https://github.com/ophub/amlogic-s9xxx-armbian/releases
OpenWrt下载地址: https://github.com/ophub/amlogic-s9xxx-openwrt/releases
fnnas(账号root密码1234)下载地址:https://github.com/ophub/fnnas/releases/tag/fnnas_rockchip_1253
刷机工具: https://github.com/ophub/kernel/releases/download/tools/RkDevTool_v2.84__DriverAssitant_v5.12.tar.xz
Loader文件下载地址: L2.0的下载:MiniLoaderAll.bin,L2.1的下载:rk356x-MiniLoaderAll.bin,不会区分就都试试。
OpenWrt Image Information
Default IP:
192.168.1.1Default username:
rootDefault password:
passwordDefault WIFI name:
OpenWrtDefault WIFI password:
none
Install to EMMC
Login to OpenWrt →
System→Amlogic Service→Install OpenWrt
拆机视频和文档:
我汇总一下相关的刷机贴,介绍下windows和mac电脑的刷机方法,以及根据设备短接后进入的是MaskROM 模式或者Loader 模式,决定是否需要选择MiniLoaderAll.bin
第一次从wxy原系统刷成 Armbian 或者 OpenWrt 系统需要拆机短接进入刷机模式。以后再刷机就不用拆机短接了,可以用顶针按住
RESET孔,然后连接数据线进入刷机模式。无论是短接刷机,还是捅RESET孔刷机,都不用接电源,因为type-c刷机线可以供电。
找到刷机短接点和type-c口
拆机方法大家看上面的帖子介绍吧,下面是短接点的位置,以及刷机线连接type-c接口位置示意图,要接type-c口,不要接USB口:
windows系统刷机。刷机完成后的用户名为root 密码为1234
准备好合适的数据线,一头是type-c要连接oect盒子,另外一头的接口根据自己电脑的接口选择(type-c 转 usb,或者两头都是type-c)。
下载上面提供的 RKDevTool 刷机工具,安装好驱动并打开这个软件。
不需要接电源。仅使用type-c的线插入盒子如上图所示的接口,然后用镊子等金属器短接这2个点,手别抖按好短接点,然后把连接线的另外一头插入电脑,大概2秒钟电脑会叮咚提示有设备接入,松开短接点即可进入刷机模式。
看软件的界面提示你进入的模式,第一次刷机一般进入的是 MaskROM 模式,这种模式下需要选择loader文件和img镜像文件。如果之前已经刷过Armbian或OpenWrt系统,再次刷机一般进入的是 Loader 模式,这种情况下不用选择loader文件,只选需要刷入的img镜像文件即可。(注意要解压成img,不要刷压缩文件)
[!IMPORTANT] 软件上的两行文件路径必须写对,地址不对无效 0x后面是8个大写C或0
0xCCCCCCCC LoaderToDDR <MiniLoaderAll.bin文件的路径> <点最右侧的空白块可以选择loader文件> 0x00000000 system <armbian.img文件的路径> <点最右侧的空白块可以选择img文件>
短接手抖了就歇会再战,刷机进度失败了就重新短接再战,成功就在下一次。
MAC电脑刷机方法
有的同学没windows电脑,使用mac电脑刷机也一样。
使用mac自带的终端进行后面的操作: 访达 > 左侧菜单选:应用程序 > 实用工具 > 终端
第一步先一键安装 Homebrew
# 先安装 Homebrew(已经安装可以忽略,重复执行也没事)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"接着安装 rkdeveloptool,需要从源码编译,1分钟搞定。
brew install automake autoconf libusb pkg-config git wget
git clone https://github.com/rockchip-linux/rkdeveloptool
cd rkdeveloptool
export CXXFLAGS="-g -O2 -Wno-error=vla-cxx-extension"
autoreconf -i
./configure
make -j $(nproc)
cp rkdeveloptool /opt/homebrew/bin/然后开始短接刷机了,短接方法看上面,短接成功后mac电脑会弹出一个对话框,提示有个设备要接入电脑是否允许,点击允许。这时oect就接入电脑了。(以后再短接就不弹窗了,直接用下面的命令看接入的设备)
# 在终端命令里查看已连接的 Maskrom 设备
rkdeveloptool ld和windows刷机模式一样,这时会有2种提示,第一次刷机的一般会进入 MaskROM 模式,再次刷机的会进入 Loader 模式。具体进入的模式在终端信息里查看:
如上图所示,我刚在windows上刷机过一次,我再来mac电脑上刷机就进入的是 Loader 模式,在loader模式下你刷MiniLoaderAll.bin是不接受的,不过执行了这个命令也无所谓,会提示写loader失败,不影响继续刷img镜像文件。
先 cd 到 MiniLoaderAll.bin 和 armbian.img 所在的目录,然后执行下面的命令,如果不在这些文件的目录里,自己在下面的命令里把文件路径带上。
# MaskROM 模式时需要先写入loader文件
# 如果进入的是loader模式可忽略,因为板子上已经写了loader,否则也无法进入loader模式
sudo rkdeveloptool db MiniLoaderAll.bin
# 再写入镜像的img结尾的文件(注意要解压成img,不要刷压缩文件)
# 执行此写入命令时会提示要输入密码,输入你电脑的密码即可
sudo rkdeveloptool wl 0 armbian.img看进度条跑完了就写好了: Write LBA from file (100%)
下面是刷 OpenWrt 的方法,之前刷机过了,所以会进入的是 loader 模式,就不用刷 MiniLoaderAll.bin 了。
4. 如何自定义mac地址:
由于刷机底包的u-boot里定义了mac地址,所以都是00:15:18:01:81:31,当局域网有多台oect时mac地址相同会冲突,需要自定义修改mac地址,给每个设备分配个不同的mac地址。
方案A:修改Armbian系统设置。只是在当前Armbian系统里进行了修改,重装系统后还是会恢复之前的。 看帮助文档第 12.7.2.4 小节:https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/documents/README.cn.md
方案B:修改u-boot设置。这个是修改u-boot环境变量里的mac地址,重装系统也不会改变。
# 第一步,安装软件包
sudo apt-get update
sudo apt-get install -y libubootenv-tool
# 第二步,修改mac地址为合规的格式(mac地址内容自定义,字母数字合格即可)
sudo fw_setenv ethaddr 02:55:66:77:88:99
# 修改后可以打印下结果查看是否修改成功
sudo fw_printenv ethaddr
# 重启生效,记得去路由器里查看新mac分配的ip地址oect 原版设备刷入 Armbian 系统的截图
使用 stable/6.12.y 主线内核
使用 stable/6.18.y 主线内核
使用 rk35xx/6.1.y 系列内核
切换内核的命令
# 先同步下最新脚本
armbian-sync
# 切换 rk35xx/6.1.y 系列内核
armbian-update -u rk35xx -k 6.1.115
# 切换 stable/6.12.y 主线内核
armbian-update -u stable -k 6.12oect 原版设备刷入 OpenWrt 系统的截图