@[TOC](Radxa Rockpi 4B 刷机Armbian指南)
本文有很强的 思想灌输 个人习惯倾向,若不能接受,可以立刻关闭。
磁力链接:magnet:?xt=urn:btmh:122034ee898984e6d5147b7e8b1880bb6ebe8d8abb99df201bd58d9e384af30a2955&dn=radxa_rockpi_4b&tr=https%3A%2F%2Ft1.hloli.org%2Fannounce&tr=http%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=wss%3A%2F%2Ftracker.openwebtorrent.com%3A443%2Fannounce&tr=https%3A%2F%2Fopentracker.i2p.rocks%2Fannounce
4.6.3 (lt20 qt6)
版的才能支持 BTv2 。如果你用的是 Linux 无图形界面的 qBittorrent-nox 则默认支持 BTv2 。SHA256 校验值对照
SHA256校验值 | 相对路径 |
---|---|
5c4e8febbfba97524fb87dc179c497ced85a80c802ebbf1bece385aaaca4aac8 | radxa_rockpi_4b/loader/rk3399_loader_spinor_v1.15.114.bin |
d38ed3ffb2a34626a2effdcf5c62ad8b986e14aa4b209ceabbb24494f05d9fa4 | radxa_rockpi_4b/loader/rk3399_loader_v1.20.119.bin |
f2a7ba944edaa77821984bcc510e35c4c758b56b7f75ddf0dba3f9ebfbaf1f5a | radxa_rockpi_4b/loader/rk3399_loader_v1.27.126.bin |
3ee83bb30871479392265d1b89757bf701ff85c47e8ca7726838fea51c2ffd3a | radxa_rockpi_4b/system/Armbian_22.11.0-trunk_Rockpi-4b_bullseye_current_5.15.76_minimal.img.xz |
51be9ce7cf051ddd4811e60cee47844b26fdeab7c7aae00ede2b1fb632d38e91 | radxa_rockpi_4b/system/Armbian_24.2.4_Uefi-arm64_jammy_current_6.6.21_kde-neon_desktop.img.xz |
e1a6794bf5041194ff6d1c1821f428d7f51386ba712b4f9becb3f61bd78dd5d3 | radxa_rockpi_4b/tool/balenaEtcher-Portable-1.18.11.exe |
30044d0a6a15f922963d13b8409120abef16783e456c73bceb8148bc30f806c3 | radxa_rockpi_4b/tool/DriverAssitant_v5.0.zip |
a0819ad260f102d025a81bd690b6fa8372e8e5d646c005eba178774db980639b | radxa_rockpi_4b/tool/RKDevTool_Release_v2.81.zip |
01b2d51a5c08831afac7970008eeff95d2bd8725731a8306dc978031a557cfe7 | radxa_rockpi_4b/tool/tabby-1.0.207-portable-x64.zip |
7c3ea05a7a9d90c57468e9707eea9c951d8eca7ca97c4a89416b6cc82a6a3488 | radxa_rockpi_4b/uboot/Tow-Boot/radxa-RockPi4-2021.10-005.tar.xz |
6361641a639c0edc39c8b34c6180b3fe4b3965b9855907fe1fef0de1a764c847 | radxa_rockpi_4b/uboot/Tow-Boot/radxa-RockPi4-2022.07-006.tar.xz |
rk3399_loader_v1.20.119.bin
rk3399_loader_v1.27.126.bin
rk3399_loader_spinor_v1.15.114.bin
Armbian_24.2.1_Uefi-arm64_bookworm_current_6.6.16_gnome_desktop.img.xz
magnet:?xt=urn:btih:VKHYT3XUW6FTWP7H2HEVJ76TDQBQOLLD
Armbian_24.2.4_Uefi-arm64_jammy_current_6.6.21_kde-neon_desktop.img.xz
magnet:?xt=urn:btih:WNKTAJZ2HRN4KQK77RJBNW57J5FF7TK4
Armbian_24.2.1_Uefi-arm64_bookworm_current_6.6.16.img.xz
magnet:?xt=urn:btih:V4SI3S5EOCPQ764BKDNPBOGK3NP7F23F
4B+
版的?4B
和 4B+
有什么区别?4B+
除了CPU性能超频以外和 4B
基本没有区别,所有适配 4B
型号的系统,4B+
都能刷,是兼容的,所以我原本也想推荐一波。但是因为官方这个薛定谔的 SPI NOR FLASH 问题,所以还是建议购买 4A/4B 版本,最起码保证有 4MB 的 SPI NOR FLASH !!! 请务必检查确认自己的 Rockpi 4 开发板是否有板载 SPI NOR FLASH 。如果没有,请自己焊一个上去,本教程依赖这个 FLASH , 没有这个 FLASH 你将无法直接抄作业!!!
广州优硕CH340G
。因为看起来品质很有保证的样子,而且 作者不是电子工程师 ……就是这样。。CH343
。反正最终能在电脑端握手 TTL 串口就行。typec母转usb公
non-free
的驱动,安装完 WIFI/蓝牙 会无法驱动,需要自己去额外找文件手动复制或者 dpkg 安装才行,使得安装复杂化。而且 Debian 官方内核 config 是默认不编译 MTD NOR FLASH 支持以及 安卓的 binder,hwbinder,vndbinder
驱动支持,需要自己修改内核 config 然后自己重新编译。这对于想玩容器安卓 redroid
的用户显然十分不友好。而 Armbian UEFI版完整支持了上述功能,并且也是 Armbian 官方 Standard Support 的版本,后期系统的更新与维护都有更好的质量保障。BitComet Stable (build 2.6.1.18) 比特彗星全功能解锁豪华版.7z
magnet:?xt=urn:btih:7O5JVU75O7EESNJRLZP2P53X6JVOPRNH
BitComet_x64.exe
选项——高级设置
里的 dht.udp_send_queue_threshold
为 100
,以及 network.max_udp_pkt_per_sec
为 100 ,记得点击弹窗右下角的 应用
保存生效。不管你以前折腾什么系统,刷了什么东西进去。在这里统一抹除清零。如果板子上有重要资料,请务必提前备份!!!
现在默认电脑装的是 Windows 操作系统。如果是 Linux 系统,请访问Radxa官网教程,按等效步骤重置开发板。 (其实就是作者想偷懒) Radxa官网教程:https://wiki.radxa.com/Rockpi4/dev/usb-install/zh_cn
先做这一步,这很重要。因为耗时长但又不得不做。可以在等待之余先走一个步骤。
需要被解压的文件,解压出来的资源一览:
在 DriverAssitant_v5.0
目录里
DriverInstall.exe
驱动安装
Windows 安全中心
警告里,请先勾选 始终信任来自 "Fuzhou Rockchip Electronics Co.,Ltd" 的软件
,然后点 安装
安装驱动成功
即安装完毕。可依次关闭窗口因为 balenaEtcher 要直接访问系统底层API擦写磁盘,若不提前授权,可能会导致权限请求超时什么的,而且多次烧录就要多次弹出UAC确认窗口,会很烦人。
所以我们提前做好准备。
文件是 radxa_rockpi_4b\tool
里的 balenaEtcher-Portable-1.18.11.exe
balenaEtcher
(做完上一步无需鼠标右键找选项,可以直接双击打开,会自动弹出UAC弹窗,允许运行即可)radxa-RockPi4-2022.07-006
里的 spi.installer.img
设备管理器
多出来的串口设备图中作者这里是叫 COM3
但这个名称是随机的,要看实际情况!!!
这里不管你用什么颜色的杜邦线,引脚的连线必须接对!!!(若没接对,可能会造成设备物理损坏!!!)
开发板引脚编号看倒回去看 “短接 GPIO针脚 的 第 23、25 号(后文记作 PIN23 和 PIN25)用以临时屏蔽 SPI NOR FLASH”
开发板 PIN 6 <------> USB转TTL小板的 GND 引脚
开发板 PIN 8 <------> USB转TTL小板的 RXD 引脚
开发板 PIN 10 <------> USB转TTL小板的 TXD 引脚
在 tabby-1.0.207-portable-x64
里找到 Tabby.exe
注意串口名字要和在设备管理器
里看到的一致!!!(回见 “查看 设备管理器
多出来的串口设备”)
1500000
RKDevTool.exe
,做好准备在 RKDevTool_Release_v2.81
里找到 RKDevTool.exe
并运行
在 radxa_rockpi_4b\loader
里选择 loader 文件。rk3399_loader_v1.20.119.bin
和 rk3399_loader_v1.27.126.bin
都可以
唯独不能是 rk3399_loader_spinor_v1.15.114.bin
rk3399_loader_spinor_v1.15.114.bin
,那作者为什么在资源包里准备它呢?升级
升级完毕(如果显示失败,那很可能是你之前好奇软件的功能,随意胡乱点了哪里,那么你只能重新回到 “让板子进入 maskrom 模式” 小节,按顺序做到此步骤)
maskrom
模式,执行收尾工作”。重新再执行 “让板子进入 maskrom 模式” 小节里的步骤。
rkdevtool 添加 loader 文件 和 Radxa Armbian 镜像
( 重要 )拔掉 USB双公头线
等系统启动完毕后,在TTL串口终端里随便输个复杂点的密码,不过还是要稍微记一下,毕竟要输两遍
(输入密码是不会有回显的,确定自己输入完毕之后直接按回车键)
设置完 root 用户的密码之后,Armbian 会引导你继续创建一个普通用户。这时按组合键 Ctrl + C
直接跳过!
Create root password: *********
Repeat root password: *********
Shell: BASH
Creating a new user account. Press <Ctrl-C> to abort
Please provide a username (eg. your first name): ^C
Disabling user account creation procedure
root@rockpi-4b:~#
查看 板载emmc模块 的内核名称
命令:lsblk
输出:
root@rockpi-4b:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk1 179:0 0 57.6G 0 disk
└─mmcblk1p1 179:1 0 57G 0 part /
mmcblk1boot0 179:32 0 4M 1 disk
mmcblk1boot1 179:64 0 4M 1 disk
zram0 252:0 0 1.9G 0 disk [SWAP]
zram1 252:1 0 50M 0 disk /var/log
zram2 252:2 0 1.9G 0 disk /tmp
root@rockpi-4b:~#
如上输出中,57.6G 接近 64G 的 mmcblk1 就是 板载emmc模块 。
这个名称不是固定的,有可能会被系统命名为 mmcblk0
、 mmcblk2
、 mmcblk3
、 mmcblk4
、 mmcblk5
等等以此类推类似 mmcblkX
的命名。
但是千万别动 mmcblk1boot0
和 mmcblk1boot1
这种名字里带 boot
的设备!!!
执行 dd 命令格式化 emmc模块
命令:dd if=/dev/zero of=/dev/mmcblk1 bs=128M count=16
注意,命令中的 mmcblk1
要和第 6 步认定的名称一致!如果是 mmcblk0
那就要改成 mmcblk0
!!!
输出:
root@rockpi-4b:~# dd if=/dev/zero of=/dev/mmcblk1 bs=128M count=16
16+0 records in
16+0 records out
2147483648 bytes (2.1 GB, 2.0 GiB) copied, 15.7134 s, 137 MB/s
root@rockpi-4b:~#
断开开发板的电源(因为系统和 emmc 上的 Uboot 已经被我们干掉了,所以不能使用命令重启或者关机了,只能强行断电物理关机。)
(重要)此时 Tabby 的 TTL 终端可能会关闭,点击终端,输入任意键重新恢复监听
maskrom
模式,执行收尾工作步骤走到这里,已经不需要再使用 rkdevtool
来刷机了。
USB双公头线 可以拔掉了
为避免浪费一个 USB 3.0 接口,将开发板底部的开关拨回至左侧
115200
(Tabby 是哪位?回见 “TTL终端打开成功”)↓
或者键盘上键 ↑
来移动高亮的白条光标,使其选中 Completely erase SPI
这个选项Flash firmware to SPI
这个选项,按回车键执行步履蹒跚,折腾这么久,累了吧?先休息一会儿吧!
经过学习 “用 balenaEtcher 烧写 Tow-Boot安装镜像 到 MicroSD 里”
你应该掌握了 “如何在 Windows 烧录镜像文件到可移动设备” 的技能。
(什么?你还没学会?你也太*了吧?) 如果没学会这项技能,建议去搜索引擎搜一下,或者问问 AI 也行吖。
同理烧写 Armbian UEFI 镜像到 MicroSD 卡里。
插入之前烧好安装镜像的 MicroSD 卡到开发板上(该注意的同样要注意, 别把卡插反了 , 回见 “安装 Tow-Boot 到 SPI NOR FLASH 里” 里的第 1 步)
把 emmc模块、NVME SSD 或 U盘 等等什么的要装系统的储存器件和开发板接起来。
不过作者我主要用 NVME SSD
Tabby 的 TTL 终端如果左上角显示红点,则在终端里按任意键打开监听。重新接通电源之时,迅速观察 TTL 终端输出的内容。
在这个界面按下 ESC
键,动作要快!机会稍纵即逝!如果错过了就立刻断电再重新上电!!!
TTL终端输出这个界面,移动高亮的白条光标到 Boot from SD
这个选项,按回车键继续。
进入 Armbian GRUB 选择系统的界面,如图直接按回车键继续。
此时 Tabby 的 TTL终端 停留在这个界面不会再刷新。
给开发板插上网线,去路由器管理后台查看开发板的 IPv4地址 。
作者这边显示开发板的 IPv4地址 是 192.168.8.111
。每个人的家庭网络搭建配置不一样,开发板获得的IPv4地址也是不一样的,按实际情况来。如果这个操作不会做,可以自己用一条 HDMI数据线 接到电视或者闲置的桌面电脑显示器上,再给开发板插上鼠标键盘,看着图形界面操作。本篇教程主要以命令行为主。
Tabby 新建一个临时配置的终端,输入 root@开发板的IPv4地址
,用 SSH 登录开发板。默认初始密码是 1234
按提示完成初始化
打开 Tabby 的 SFTP 面板,进入 /root
目录
拖拽 Armbian镜像文件 上传到开发板的 MicroSD 里
等到上传完成之后,如图所示关闭 SFTP 面板
(重要)执行命令 sha256sum Armbian_24.2.4_Uefi-arm64_jammy_current_6.6.21_kde-neon_desktop.img
计算文件的SHA256哈希值
文件SHA256哈希值必须是 3cc26ac940691628024e1cbfce133a75e54f678c4f8b18bb13684e2c3c068071
如果不一致,则说明文件损坏,执行命令 rm Armbian_24.2.4_Uefi-arm64_jammy_current_6.6.21_kde-neon_desktop.img
删除文件,重新再执行第 11 步。
执行命令,即可安装 Armbian
bash <<EOF111
source ~/.bashrc
blkdiscard -f -z -o 0 -l 16GB /dev/nvme0n1
sleep 3
partprobe /dev/nvme0n1
dd if=/root/Armbian_24.2.4_Uefi-arm64_jammy_current_6.6.21_kde-neon_desktop.img of=/dev/nvme0n1 bs=1G oflag=nonblock status=progress
partprobe /dev/nvme0n1
expect << EOF222
spawn parted /dev/nvme0n1 print
expect {
"Fix/Ignore?" { send "fix\r"; exp_continue }
"OK/Cancel?" { send "ok\r"; exp_continue }
eof
}
EOF222
fdisk -l /dev/nvme0n1
EOF111
nand-stat-install
?/etc/fstab
导致重启即无法进系统。因为 Armbian UEFI 有点小 BUG ,系统运行时板载蓝灯不会闪烁,加上 Armbian UEFI 版的 tty 默认输出配置是不正确的,TTL 终端里也不会有任何输出。(暂时没找到解决办法)
所以很难判断开发板上的系统是否还在运行。
执行命令 poweroff
等待 1 分钟再切断开发板电源 。等板载电源灯灭了5秒之后 拔出 MicroSD 卡 。再接通开发板电源
重启过程可能会不太顺利。
这开发板有时不认 NVME SSD 的老毛病是 rockchip
平台祖传的,并不是开发板坏了。
如果看到 Tabby 的 TTL终端 (无限循环)输出如下。请断电,等板载电源灯灭了5秒之后,再上电,实现“物理硬重启”。
若还是一样,就多试几次“物理硬重启”
因为开发板关机重启导致 SSH 会话中断,Tabby 的左上角会显示“红灯”。
因为板载蓝灯不会闪烁,所以很难判断是否启动完成了。
先等它个 5 分钟,然后鼠标点击终端内,按任意键即可重新连接
连接上 SSH 之后,重复第 8、9 步。
完成初始化之后,执行下面的命令,看看内核都支持什么特性,WIFI蓝牙驱动有没有打上
cat /boot/config-6.6.21-current-arm64 | grep ANDROID
cat /boot/config-6.6.21-current-arm64 | grep SPI_NOR
ls /dev/
dmesg | grep brcm
如图可见,Android驱动都是齐全的,可以跑容器安卓 redroid
。
对 SPI NOR FLASH 的支持也有,可以在系统运行的时候更新 SPI NOR FLASH 里的 loader 。
WIFI蓝牙的驱动都是打上了的。感觉蛮“旗舰”的。
Enjoy yourself!!!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。