Skip to content

Conversation

@andyfanybo
Copy link
Contributor

添加网心云OEC-turbo
SOC:RK3566

@aks0997885
Copy link

添加网心云OEC-turbo SOC:RK3566

OEC-turbo有刷机教程嘛,我看你镜像都已经弄好了,怎么刷机呢,有啥要求不

@ophub
Copy link
Owner

ophub commented Jan 16, 2025

在 oect 的 armbian 开发时的一些关键讨论贴汇总,方便在其他设备里使用厂家 ubuntu 制作 armbian 时借鉴参考:

厂家 UBUNTU 镜像分区分析: #2736 (comment)
厂家 UBUNTU 系统分区分享: #2736 (comment)
厂家 u-boot 和 env 分析: #2736 (comment)
ENV 启动参数调整: #2736 (comment)
armbian 制作方法初探: #2736 (comment)
无用分区删除调整测试: #2736 (comment)
armbian 制作方法优化: #2736 (comment)
armbian 制作测试脚本: #2736 (comment)
armbian 分区大小调整: #2736 (comment)
env.bin 参数调整: #2736 (comment)
armbian 最终镜像: #2736 (comment)


Important

wxy OEC-turbo 有2个版本,一个是原版,一个是换了芯片和EMMC的版本,下载时注意区分。

这2个版本的刷机方法和其他rockchip设备的刷机方法一样,都是使用RkDevTool写入即可,一个选择 MiniLoaderAll.bin,另一个选择写入的镜像。先下载刷机工具和需要的系统镜像文件,查看拆机的视频:

拆机视频和文档:

我汇总一下相关的刷机贴,介绍下windows和mac电脑的刷机方法,以及根据设备短接后进入的是MaskROM 模式或者Loader 模式,决定是否需要选择MiniLoaderAll.bin

  • 第一次从wxy原系统刷成 Armbian 或者 OpenWrt 系统需要拆机短接进入刷机模式。以后再刷机就不用拆机短接了,可以用顶针按住RESET孔,然后连接数据线进入刷机模式。

  • 无论是短接刷机,还是捅RESET孔刷机,都不用接电源,因为type-c刷机线可以供电。

  1. 找到刷机短接点和type-c口

拆机方法大家看上面的帖子介绍吧,下面是短接点的位置,以及刷机线连接type-c接口位置示意图,要接type-c口,不要接USB口:

Snip20250701_6

Snip20250701_11

Snip20250701_10

  1. windows系统刷机

准备好合适的数据线,一头是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文件>

Snip20250701_2

Snip20250701_2

短接手抖了就歇会再战,刷机进度失败了就重新短接再战,成功就在下一次。

  1. MAC电脑刷机方法

有的同学没windows电脑,使用mac电脑刷机也一样。

使用mac自带的终端进行后面的操作: 访达 > 左侧菜单选:应用程序 > 实用工具 > 终端

第一步先一键安装 Homebrew

# 先安装 Homebrew(已经安装可以忽略,重复执行也没事)
/bin/bash -c "$(curl -fsSL https://github.com/___raw___/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 模式。具体进入的模式在终端信息里查看:

Snip20250701_2

如上图所示,我刚在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 了。

Snip20250701_14

4. 如何自定义mac地址:

由于刷机底包的u-boot里定义了mac地址,所以都是00:15:18:01:81:31,当局域网有多台oect时mac地址相同会冲突,需要自定义修改mac地址,给每个设备分配个不同的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地址
  1. oect 原版设备刷入 Armbian 系统的截图
  • 使用 stable/6.12.y 主线内核
    Snip20250714_1

  • 使用 rk35xx/6.1.y 系列内核
    Snip20250714_1

Snip20250714_1

Snip20250714_1

  • 切换内核的命令
# 先同步下最新脚本
armbian-sync

# 切换 rk35xx/6.1.y 系列内核
armbian-update -u rk35xx -k 6.1.115

# 切换 stable/6.12.y 主线内核
armbian-update -u stable -k 6.12
  1. oect 原版设备刷入 OpenWrt 系统的截图

345

234

@andyfanybo
Copy link
Contributor Author

dts源码
wxy-oec-RK3566-2G.zip

@andyfanybo
Copy link
Contributor Author

Snip20250116_4

几个问题:

  1. u-boot不是上传到这个仓库,是发布到专门的仓库https://github.com/ophub/u-boot
  2. u-boot在model表里是2个文件,这个commit里只有1个,提交到u-boot仓库的时候记得检查2个文件的完整性。
  3. model这个表里的board名字不对。
  4. 你在different-files里是2个目录,是不是只有1个。

感谢分享你的成果,更正后重新提交下吧。这个dts有源码吗?有的话在帖子后面的跟帖里分享一下。

第三点model这个表里的board名字不对没看出来

@MDCY9008
Copy link

Snip20250116_4
几个问题:

  1. u-boot不是上传到这个仓库,是发布到专门的仓库https://github.com/ophub/u-boot
  2. u-boot在model表里是2个文件,这个commit里只有1个,提交到u-boot仓库的时候记得检查2个文件的完整性。
  3. model这个表里的board名字不对。
  4. 你在different-files里是2个目录,是不是只有1个。

感谢分享你的成果,更正后重新提交下吧。这个dts有源码吗?有的话在帖子后面的跟帖里分享一下。

第三点model这个表里的board名字不对没看出来

image
和上一条的机型board名字是相同的

@andyfanybo
Copy link
Contributor Author

Snip20250116_4
几个问题:

  1. u-boot不是上传到这个仓库,是发布到专门的仓库https://github.com/ophub/u-boot
  2. u-boot在model表里是2个文件,这个commit里只有1个,提交到u-boot仓库的时候记得检查2个文件的完整性。
  3. model这个表里的board名字不对。
  4. 你在different-files里是2个目录,是不是只有1个。

感谢分享你的成果,更正后重新提交下吧。这个dts有源码吗?有的话在帖子后面的跟帖里分享一下。

第三点model这个表里的board名字不对没看出来

image 和上一条的机型board名字是相同的

已修改

@ophub ophub merged commit 1e7e911 into ophub:main Jan 18, 2025
@happyhaohao65
Copy link

happyhaohao65 commented Jan 19, 2025

有刷机教程吗?

@aks0997885
Copy link

有刷机教程呀?

求刷机教程,真实能用的

@wuzhihui04
Copy link

一直显示下载boot失败,有没有解决思路?

有的兄弟,短接好,然后插电,立马松开短接点,再短接再立马松开,这种情况下进入了MASKROM下载boot会容易成功些。

@tuzibaibai
Copy link

大概率是dts的问题,我看了,能正常启动的dts里面的信息是pantherx2的,我手里没有原版带锁的机子,都是硬改过的机子。不清楚带锁原版机的dts能不能正常用在硬改的机子上。

@siasbaily
Copy link

siasbaily commented Nov 5, 2025

一直显示下载boot失败,有没有解决思路?

补充一种方法,就是短接1V8和远端的GND,注意是远端那个。仔细看图。
image
这样使用一根金属线短接这两个位置,插上type-c后松开,设备会进入MASKROM模式,然后先刷入boot。
然后提示等待Maskrom成功后,取消勾选第一行loader,勾选下面那行system,再执行刷机。我试了其他方法都不行,这个方法刷成了。
image
image

@ws616628604
Copy link

请问下 wxy OEC-turbo 所有的问题都解决了吗? 这个型号的所有版本设备都可以按上面的刷机教程刷机 , 下载最新版本的镜像就可以使用了?

不会刷成砖吧?

@tuzibaibai
Copy link

tuzibaibai commented Nov 19, 2025

已经查到原因,固件是正常的 只是 ttl显示突然中断 不知道为什么。系统是ok的 sata也能正常识别


    _             _    _              ___  ___ 
   /_\  _ _ _ __ | |__(_)__ _ _ _    / _ \/ __|
  / _ \| '_| '  \| '_ \ / _` | ' \  | (_) \__ \
 /_/ \_\_| |_|_|_|_.__/_\__,_|_||_|  \___/|___/
                                               
 v25.11.0 for RK.Wxy-Oect-Replaced running Armbian Linux 6.1.118-rk35xx-ophub

 Packages:     Ubuntu stable (jammy)
 IPv4:         (LAN) 192.168.200.111
 IPv6:         

 Performance:  

 Load:         3%                Uptime:       3 minutes
 Memory usage: 2% of 7.51G  
 CPU temp:     33°C              Usage of /:   1% of 229G   
 RX today:     79 KiB           

 Commands: 

 Configuration : armbian-config
 Monitoring    : htop

Last login: Wed Nov 19 22:33:16 2025 from 192.168.200.109
root@armbian:~# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda            8:0    0 238.5G  0 disk 
├─sda1         8:1    0 517.7M  0 part 
├─sda2         8:2    0 517.7M  0 part 
├─sda3         8:3    0   229G  0 part 
├─sda4         8:4    0 526.2M  0 part 
└─sda5         8:5    0   7.5G  0 part 
mmcblk0      179:0    0   233G  0 disk 
├─mmcblk0p1  179:1    0   511M  0 part /boot
└─mmcblk0p2  179:2    0 232.5G  0 part /var/log.hdd
                                       /
mmcblk0boot0 179:32   0     4M  1 disk 
mmcblk0boot1 179:64   0     4M  1 disk 
zram0        253:0    0   3.8G  0 disk [SWAP]
zram1        253:1    0    50M  0 disk /var/log
zram2        253:2    0     0B  0 disk 
root@armbian:~# 

@pureair
Copy link

pureair commented Nov 22, 2025

今天 oect 刷 Armbian_25.11.0_rockchip_wxy-oect_noble_6.1.115_server_2025.08.11.img 成功,记录一下。 刚开始刷了几次发现路由器识别不到网络,原来是刷机工具第二行的地址没有改成 0x00000000 ,有同样问题的可以参考一下

我哭死,同样的问题,折腾3个小时才看到你。建议教程里也提醒一下,这个地方需要改。(因为工具打包的时候会记住最后一次使用的地址,目前记住的是另一个地址)

@czz8888
Copy link

czz8888 commented Nov 25, 2025

就是短接1V8和最后的GND,注

真抽象这个方法从本电的雨雀搞来的吧

@cospotato
Copy link

cospotato commented Dec 5, 2025

已经查到原因,固件是正常的 只是 ttl显示突然中断 不知道为什么。系统是ok的 sata也能正常识别


    _             _    _              ___  ___ 
   /_\  _ _ _ __ | |__(_)__ _ _ _    / _ \/ __|
  / _ \| '_| '  \| '_ \ / _` | ' \  | (_) \__ \
 /_/ \_\_| |_|_|_|_.__/_\__,_|_||_|  \___/|___/
                                               
 v25.11.0 for RK.Wxy-Oect-Replaced running Armbian Linux 6.1.118-rk35xx-ophub

 Packages:     Ubuntu stable (jammy)
 IPv4:         (LAN) 192.168.200.111
 IPv6:         

 Performance:  

 Load:         3%                Uptime:       3 minutes
 Memory usage: 2% of 7.51G  
 CPU temp:     33°C              Usage of /:   1% of 229G   
 RX today:     79 KiB           

 Commands: 

 Configuration : armbian-config
 Monitoring    : htop

Last login: Wed Nov 19 22:33:16 2025 from 192.168.200.109
root@armbian:~# lsblk
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda            8:0    0 238.5G  0 disk 
├─sda1         8:1    0 517.7M  0 part 
├─sda2         8:2    0 517.7M  0 part 
├─sda3         8:3    0   229G  0 part 
├─sda4         8:4    0 526.2M  0 part 
└─sda5         8:5    0   7.5G  0 part 
mmcblk0      179:0    0   233G  0 disk 
├─mmcblk0p1  179:1    0   511M  0 part /boot
└─mmcblk0p2  179:2    0 232.5G  0 part /var/log.hdd
                                       /
mmcblk0boot0 179:32   0     4M  1 disk 
mmcblk0boot1 179:64   0     4M  1 disk 
zram0        253:0    0   3.8G  0 disk [SWAP]
zram1        253:1    0    50M  0 disk /var/log
zram2        253:2    0     0B  0 disk 
root@armbian:~# 

@ophub 已经定位到日志中断的原因,是在 dtb 里的 chosen 覆盖了 extlinux.conf 里的配置,导致 console=ttyS2,1500000 没有生效,通过以下办法我已经在 console 获得 tty:

  1. 由于 dtb 的 chosen 节点中 bootargs = "earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0"; 其中 ttyFIQ0 优先级比较高,会覆盖 /boot/extlinux/extlinux.conf 里的 ttyS2,可以通过在 APPEND 参数中增加与 dtb 中一样的 earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 来让 ttyS2 生效
  2. 开机启动 ttyS2 上的 getty 服务: systemctl enable getty@ttyS2

修改后的 /boot/ext/extlinux.conf 如下

LABEL Armbian
  LINUX /Image
  INITRD /uInitrd
  FDT /dtb/rockchip/rk3566-wxy-oec-turbo-4g.dtb
  APPEND root=UUID=bc7267fc-e75e-498c-a870-7c51305e19f4 rootflags=data=writeback rw rootwait rootfstype=ext4 earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0 console=ttyS2,1500000 console=tty1 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 max_loop=128 bootsplash.bootfile=bootsplash.armbian

getty@ttyS2 服务状态

armbian:~:# systemctl status getty@ttyS2
● [email protected] - Getty on ttyS2
     Loaded: loaded (/usr/lib/systemd/system/[email protected]; enabled; preset: enabled)
     Active: active (running) since Fri 2025-12-05 20:14:07 CST; 7min ago
 Invocation: c3ef22fa1acd440fa1d13c1db7454f59
       Docs: man:agetty(8)
             man:systemd-getty-generator(8)
             https://0pointer.de/blog/projects/serial-console.html
   Main PID: 1890 ((agetty))
      Tasks: 1 (limit: 4639)
     Memory: 1.4M (peak: 1.7M)
        CPU: 39ms
     CGroup: /system.slice/system-getty.slice/[email protected]
             └─1890 "(agetty)"

Dec 05 20:14:07 armbian systemd[1]: [email protected]: Scheduled restart job, restart counter is at 1.
Dec 05 20:14:07 armbian systemd[1]: Started [email protected] - Getty on ttyS2.

效果:
静帧 2025-12-05 204325_1 1 1
静帧 2025-12-05 204325_1 1 2
静帧 2025-12-05 204325_1 1 3
静帧 2025-12-05 204325_1 1 4
静帧 2025-12-05 204325_1 1 5

6a4a734ae14afd248d0e9627f760582e

@ophub
Copy link
Owner

ophub commented Dec 5, 2025

感谢分享,已经添加(Enable and restart getty on ttyS2): 5eeb6b4

@pureair
Copy link

pureair commented Dec 8, 2025

感谢分享,已经添加(Enable and restart getty on ttyS2): 5eeb6b4

这个是不是要么手动更新文件,要么重装?armbian-sync和armbian-update好像不会更新这里。

@cospotato
Copy link

这个是不是要么手动更新文件,要么重装?armbian-sync和armbian-update好像不会更新这里。

看起来是 owner 还没发版,估计等下个月的 tag 应该就能有?

@ophub
Copy link
Owner

ophub commented Dec 8, 2025

之前的版本要手动修改下

@wuai1024
Copy link

wuai1024 commented Dec 8, 2025

之前的版本要手动修改下

有没有计划后续通过 armbian-update 自动更新上去,还是后续也需要手动修改。

@ophub
Copy link
Owner

ophub commented Dec 8, 2025

在那个修改之后再制作的镜像都会自动应用上。我一般半个月编一次(每月1号和15号)

历史版本自己手动添加楼上 cospotato 分享的方法。

@wuai1024
Copy link

wuai1024 commented Dec 8, 2025

root@armbian:~# cat /boot/extlinux/extlinux.conf
LABEL Armbian
  LINUX /Image
  INITRD /uInitrd
  FDT /dtb/rockchip/rk3566-wxy-oec-turbo-4g.dtb
  APPEND root=UUID=8e67582c-8d5c-47db-8146-f939305a8d4e rootflags=data=writeback rw rootwait rootfstype=ext4 console=ttyS2,1500000 console=tty1 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 max_loop=128 bootsplash.bootfile=bootsplash.armbian
root@armbian:~# cat /boot/ext/extlinux.conf
cat: /boot/ext/extlinux.conf: No such file or directory

是直接修改 /boot/extlinux/extlinux.conf 这个文件吗?

image

@ophub
Copy link
Owner

ophub commented Dec 8, 2025

其他不要动,只添加:earlycon=uart8250,mmio32,0xfe660000 console=ttyFIQ0

@wuai1024
Copy link

wuai1024 commented Dec 8, 2025

可以了,修改完毕了。 请问下,如果想让 logo,变成 硬盘读写闪烁,我需要怎么做? 目前是开机就一直显示绿灯。

我想在有读写磁盘的时候进行闪烁。

@cospotato
Copy link

可以了,修改完毕了。 请问下,如果想让 logo,变成 硬盘读写闪烁,我需要怎么做? 目前是开机就一直显示绿灯。

我想在有读写磁盘的时候进行闪烁。

可以用 AI 快速 vibe 一个,主要是控制 /sys/class/leds/green-led/brightness ,设置为 1 就是点亮,设置为0 就是熄灭,/sys/class/leds/ 下还有红色和蓝色的两个,操作方法一样,三个同时点亮就是白色

@wuai1024
Copy link

wuai1024 commented Dec 8, 2025

led 的 trigger 中有 [disk-activity] 事件, 但是内核中没有 ledtrig-disk。导致 磁盘事件没有成功激活 logo 灯的闪烁。

这个方案实现的性能高一些,AI 给的都是获取到 磁盘的分区读写等,不是很优雅,会性能损耗。

@kuizw9
Copy link

kuizw9 commented Dec 16, 2025

u-boot mac地址 無法修改,用的MiniLoaderAll.bin + Armbian_25.11.0_rockchip_wxy-oect_jammy_6.1.118_server_2025.12.01.img.gz

sudo apt-get update
sudo apt-get install -y libubootenv-tool
sudo fw_setenv ethaddr D5:51:EB:55:BD:27
sudo fw_printenv ethaddr

能打印出,但soft-reboot && hard-reboot 一樣是原來的D6:51:EB:55:BD:27

@lsx2k9
Copy link

lsx2k9 commented Dec 17, 2025

u-boot mac地址 無法修改,用的MiniLoaderAll.bin + Armbian_25.11.0_rockchip_wxy-oect_jammy_6.1.118_server_2025.12.01.img.gz

sudo apt-get update

sudo apt-get install -y libubootenv-tool

sudo fw_setenv ethaddr D5:51:EB:55:BD:27

sudo fw_printenv ethaddr

能打印出,但soft-reboot && hard-reboot 一樣是原來的D6:51:EB:55:BD:27

nmcli connection modify "连接名称" ethernet.cloned-mac-address D5:51:EB:55:BD:27

ophub added a commit that referenced this pull request Dec 18, 2025
@micron888
Copy link

请问你们smb 速度多快。我的自能到40mb/s. 哪里出错了

@ws616628604
Copy link

请问你们smb 速度多快。我的自能到40mb/s. 哪里出错了

硬盘是ntfs格式的吧. 正常现象, 2个原因:

  1. cpu性能太差(可以看到cpu几乎跑慢了)
  2. ntfs驱动太差.

把磁盘格式化成ext4格式的就可以了.
或者采用商用ntfs挂载驱动ufsd(可能有用, ai回答的)
我看我荣耀智能路由pro2挂载ntfs磁盘可以轻松跑满千兆, 查看了下采用的就是ufsd驱动
image

@wuai1024
Copy link

image

没问题,我的能跑满千兆,用的 sata 口。

@ws616628604
Copy link

请问你们smb 速度多快。我的自能到40mb/s. 哪里出错了

硬盘是ntfs格式的吧. 正常现象, 2个原因:

  1. cpu性能太差(可以看到cpu几乎跑慢了)
  2. ntfs驱动太差.
  1. 机械硬盘比固体硬盘更耗cpu

@knightsze
Copy link

knightsze commented Jan 12, 2026

没问题,我的能跑满千兆,用的 sata 口。

想知道您的系统组合,我测试了oec/oect,iperf3传到oec/oect各种优化也无法高于750m/s,但下载是正常的945M/S,实际拷贝在bookwrom+omv7下70M,不过我的确曾用trixie+omv8达到过上传下载都在110M,又复现过一次,但后面又掉了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation essence Recommended essence posts new box Research Fills in the Blanks support This need is supported

Projects

None yet

Development

Successfully merging this pull request may close these issues.