网心云 OEC/OECT 笔记(1) 拆机刷入Armbian固件

news2025/6/6 12:18:46

目录

  • 网心云 OEC/OECT 笔记(1) 拆机刷入Armbian固件
  • 网心云 OEC/OECT 笔记(2) 运行RKNN程序

外观

内部

PCB正面

PCB背面

PCB背面

RK3566

1Gbps PHY

配置

OEC 和 OECT(OEC-turbo) 都是基于瑞芯微 RK3566/RK3568 的网络盒子, 没有HDMI输入输出. 硬件上 OEC 和 OECT 是一样的, 唯一的区别是内存, OEC 内存 2GB 而OECT 内存是 4GB.

产品OECOEC-turbo
CPURK3566/RK3568RK3566/RK3568
内存2GB4GB
系统存储8GB8GB
网络接口千兆以太网接口*1千兆以太网接口*1
硬盘接口SATA3.0接口*1;支持内置2.5寸 硬盘SATA3.0接口*1;支持内置2.5寸 硬盘
USBUSB3.0*1USB3.0*1
电源12V/2A 电源12V/2A 电源
产品尺寸145mm90mm47mm145mm90mm47mm

相关下载

https://cloud.189.cn/t/N7RFNn7zIBNz 访问码: h5nu

  • DriverAssitant_v5.13
    瑞芯微的USB驱动
  • RKDevTool_Release_v3.31.zip
    瑞芯微的线刷工具
  • MiniLoaderAll_oect.bin
    线刷时需要写入的BOOT固件, 在PCB版本为 OEC-1.1 的板子上可以正常启动
  • Flash_Armbian_25.05.0_rockchip_efused-wxy-oec_bookworm_6.1.99_server_2025.03.20.7z
    • 来源: [重发/线刷包]适用于OEC,带VPU,灯控等的Debian Armbian by hoiw
    • Armbian固件包,内核信息为 Linux armbian 6.1.99-rk35xx-ophub #1 SMP Mon Mar 17 11:25:03 EDT 2025 aarch64 GNU/Linux
  • oec_base.img.7z
    据说是救砖时用的OEC底包, 未实测

其它下载地址

  • https://share.weiyun.com/Hb8Zhxek
  • https://pan.baidu.com/s/13wWc1Z8slffM8WOOBlcf9w?pwd=5xk4

刷机流程

详细的拆机和刷机步骤, 参考这两篇就行

  • 扔掉玩客云斐讯N1吧,这才是2025年NAS性价比王者-OEC刷机篇
  • 网心云OEC-turbo超越N1的矿渣神器,刷机Armbian系统喂饭教程

大致的步骤就是

  • 下载 MiniLoaderAll_oect.bin 到本地
  • 下载 Flash_Armbian_25.05.0_rockchip_efused-wxy-oec_bookworm_6.1.99_server_2025.03.20.7z 到本地, 解压
  • 下载 DriverAssitant 到本地, 解压, 安装驱动
  • 下载 RKDevTool_Release_v3.31 到本地, 解压, 运行, 只勾选前两行, 设置好地址, 选择对应的固件文件
  • 使OEC板子进入MASKROOM状态
  • 在 RKDevTool 中执行烧录

关于下载BOOT失败

失败是正常的, 多试几次.

对于"下载BOOT失败", 如果一直失败, 可以用下图这种方式试试, 来源恩山论坛 帖子链接. 比短接GND, 1V8的成功率高很多.

  1. 开着 RKDevTool, 先把地址和固件设置好
  2. 用一个金属物(例如小螺丝刀)对着图中18ct元件的2,3脚, 悬着先不要短接
  3. OECT连上USB线, 另一头对着电脑USB口, 往USB口插OECT的灯亮起的那一刻, 迅速点一下2, 3脚使其短路, 点完即可放开, 此时会灯灭一下然后又亮, 就能检测到 MASKROOM 设备了
  4. 之后立即点击执行.

使用这种方式进入MASKROOM状态, 下载 BOOT 阶段的成功率能达到50%以上.

关于测试设备失败

如果BOOT下载成功, 执行到"测试设备开始", 但总是测试设备失败, 说明BOOT已经写进去了并且板子也启动了, 但是从上位机去检查板子的USB口失败了. 多试几次就可以了. 这种情况也可能是写入的 MiniLoaderAll.bin 不合适, 没有正常启动板子的USB口. 换一个 MiniLoaderAll.bin 试试.

刷机成功的界面

最后一步写入固件因为有7个多GB, 写入的时间会比较久, 如果需要判断 RKDevTool 是否工作正常, 可以开一个系统任务管理器查看, 如果 RKDevTool 这个进程一直有磁盘写入, 说明还在工作.

系统展示

Armbian 系统设置

hoiw原帖中对这个固件的介绍

重写了设备树,设备树及源码已提交至ophub,以后可以通过底包+ophub包的方式直接安装。
目前ophub的rk35xx支持有问题,导致不能双包(底包+ophub镜像包)安装,等ophub那边修复。

适用于OEC/OEC-Turbo的Armbian镜像
知道你们想要装OMV,这次是Debian 12(Bookworm)的镜像。
镜像修复了RKVENC,RKVDEC的支持,有RGA设备,有NPU。
GPU目前只能通过panfrost驱动,目测是上游源码的问题,没有mali0节点
eMMC分区目前应该是所有包里利用率最大的,刷好以后eMMC根目录总空间6.5个G
支持灯控,有红蓝绿三色,以及调色后青(蓝+绿),黄(红+绿),粉(红+蓝),白(红+蓝+绿)四色 共7色可调,自己写脚本。
默认是绿灯(不过青色好看些,下一版改掉?)

原厂OEC镜像的uboot自带一个BUG,会导致USB插某些设备无法启动。无法修复
但是,只要关闭开机的USB设备启动,让uboot不检测USB,就能避免这个BUG,
这个镜像添加了开关,支持关闭USB启动,这样USB就能开机插着硬盘了。
线刷镜像(此贴)默认关闭USB启动,ophub镜像(双镜像)默认开启。

关闭/开启USB启动方法(仅适用于此镜像):
首次运行时,执行以下命令:
apt update
apt-mark unhold armbian-bsp-cli-odroidn2-current
apt remove u-boot-tools
apt install u-boot-tools
apt install armbian-bsp-cli-odroidn2-current
apt-mark hold armbian-bsp-cli-odroidn2-current

之后 只要运行fw_setenv enabled_usbboot '0' 就能关闭开机的USB启动
要再打开USB启动,用fw_setenv enabled_usbboot '1'
(注意英文单引号别打错了)

修改软件源

默认的软件源下载太慢了, 修改 /etc/apt/sources.list.d/debian.sources, 替换软件源

Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/debian
Suites: bookworm bookworm-updates bookworm-backports
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb
URIs: https://mirrors.tuna.tsinghua.edu.cn/debian-security
Suites: bookworm-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

常用命令

查看CPU温度, 数值要除以1000

$ cat /sys/class/thermal/thermal_zone0/temp
41250

查看emmc寿命, 参数的值以 10% 的步长参考, 例如 0x01 = 0-10%, 0x02 = 10%-20% 寿命损耗

$ mmc extcsd read /dev/mmcblk0 | grep Life
eMMC Life Time Estimation A [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_A]: 0x01
eMMC Life Time Estimation B [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_B]: 0x00

查看GPIO

$ sudo cat /sys/kernel/debug/gpio
gpiochip0: GPIOs 0-31, parent: platform/fdd60000.gpio, gpio0:
 gpio-19  (                    |red-led             ) out hi ACTIVE LOW
 gpio-22  (                    |vcc5v0-host-regulato) out hi 

gpiochip1: GPIOs 32-63, parent: platform/fe740000.gpio, gpio1:

gpiochip2: GPIOs 64-95, parent: platform/fe750000.gpio, gpio2:

gpiochip3: GPIOs 96-127, parent: platform/fe760000.gpio, gpio3:
 gpio-107 (                    |blue-led            ) out hi ACTIVE LOW
 gpio-108 (                    |green-led           ) out lo ACTIVE LOW

gpiochip4: GPIOs 128-159, parent: platform/fe770000.gpio, gpio4:

查看LED

$ cat /sys/class/leds/blue-led/brightness 
0
$ cat /sys/class/leds/red-led/brightness 
0
$ cat /sys/class/leds/green-led/brightness 
1

相关链接

  • oec已经有可以直接刷的固件了,但是是ubuntu的noble版本,大佬可否适配下Debian的bullseye和bookworm,想装个omv,感谢大佬 #2786
    ophub 的 armbian 仓库项目下, 关于 oec/oect 固件的讨论1
  • 兄弟们。网心云oecturbo 刷入这个固件还会变砖吗 #2834
    ophub 的 armbian 仓库项目下, 关于 oec/oect 固件的讨论2
  • https://wiki.kobol.io/helios64/maskrom/
    Linux 上位机刷机

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2401641.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Web应用】若依框架:基础篇17二次开发-项目名称修改-新建业务模块

文章目录 ⭐前言⭐一、课程讲解⭐二、自己手动实操⭐总结 标题详情作者JosieBook头衔CSDN博客专家资格、阿里云社区专家博主、软件设计工程师博客内容开源、框架、软件工程、全栈(,NET/Java/Python/C)、数据库、操作系统、大数据、人工智能、工控、网络、…

MQTT入门实战宝典:从零起步掌握物联网核心通信协议

MQTT入门实战宝典:从零起步掌握物联网核心通信协议 前言 物联网时代,万物互联已成为现实,而MQTT协议作为这个时代的"数据总线",正默默支撑着从智能家居到工业物联的各类应用场景。本文将带你揭开MQTT的神秘面纱&#…

05【Linux经典命令】Linux 用户管理全面指南:从基础到高级操作

目录 前言 1 Linux用户管理基础概念 1.1 Linux用户类型 1.2 用户相关配置文件 1.3 UID与GID 2 用户创建与管理 2.1 创建用户 2.2 设置用户密码 3 用户权限管理 3.1 授予sudo权限 3.2 以其他用户身份执行命令 4 用户信息查询 4.1 查看用户基本信息 4.2 查看用户所…

使用vite-plugin-html在 HTML 文件中动态注入数据,如元数据、环境变量、标题

vite-plugin-html 是一个用于 Vite 构建工具的插件,它可以帮助你在构建过程中动态注入一些 HTML 内容,比如标题、元数据、环境变量等。通过使用这个插件,你可以根据项目的配置和环境变量自动生成带有动态内容的 HTML 文件,适用于 …

Kinova机械臂在Atlas手术导航系统中的核心作用

Kinova机械臂凭借其高精度运动控制和智能交互功能,成为Atlas手术导航系统的重要组成部分。该系统通过实时跟踪患者位置和精确规划手术路径,提高了医疗过程的精准性与效率。灵活的设计使外科医生能够更轻松地操作复杂的手术工具,从而提升患者安…

性能优化之SSR、SSG

一、SSR和SSG介绍 SSR(Server-Side Rendering,服务端渲染)和 SSG(Static Site Generation,静态站点生成)是现代前端框架(如 Next.js、Nuxt.js、Gatsby)的核心渲染策略,用…

经典算法:回文链表

题目:234. 回文链表 给你一个单链表的头节点 head,请你判断该链表是否为 回文链表。如果是,返回 true;否则,返回 false。 示例 1: 输入:head [1,2,2,1] 输出:true示例 2&#x…

uboot移植之GPIO上电初始状态的调整

开发板在上电之后,GPIO都有一个默认初始状态,这个状态可能是高电平也可能是低电平。而我们的应用程序在正式接管控制这些GPIO,是在内核起来并成功加载根文件系统之后。所以在内核启动的这段时间内,这些GPIO保持在一种不受控的状态…

本地id_rsa.pub输入到服务器~/.ssh/authorized_keys后,依然需要输入密码的解决办法

首先检查服务器: sudo vim /etc/ssh/sshd_config 然后把这两个修改为: 如果依然需要输入密码,在本地终端: ssh -v userserver 查看认证过程,例如我这里提示说明客户端已成功尝试使用密钥认证: 进一步…

【设计模式-3.7】结构型——组合模式

说明:本文介绍结构型设计模式之一的组合模式 定义 组合模式(Composite Pattern)又叫作整体-部分(Part-Whole)模式,它的宗旨是通过将单个对象(叶子节点)和组合对象(树枝…

Unity Mac 笔记本操作入门

在 macOS 笔记本电脑上使用 Unity Editor 的场景视图 (Scene View) 旋转视角,主要依赖于触摸板手势和键盘修饰键的组合。由于没有物理中键,操作方式会与 Windows 鼠标略有不同。 以下是具体的旋转视角操作: 1. 基本旋转视角 (Orbit) 这是最…

实时数据仓库是什么?数据仓库设计怎么做?

目录 一、实时数据仓库是什么 (一)实时数据仓库的定义 (二)实时数据仓库的特点 二、实时数据仓库的应用场景 (一)金融行业 (二)电商行业 (三)物联网行…

Linux(12)——基础IO(下)

目录 六、重定向 📄输出重定向 📄输入重定向 📄追加重定向 📄dup2 七、理解一切皆文件 八、缓冲区 🧠什么是缓冲区 🧠为什么要引入缓冲区 📄缓冲区类型 九、FILE 六、重定向 我们这…

WPF可拖拽ListView

1.控件描述 WPF实现一个ListView控件Item子项可删除也可拖拽排序&#xff0c;效果如下图所示 2.实现代码 配合 WrapPanel 实现水平自动换行&#xff0c;并开启拖拽 <ListViewx:Name"listView"Grid.Row"1"Width"300"AllowDrop"True&…

[蓝桥杯]倍数问题

倍数问题 题目描述 众所周知&#xff0c;小葱同学擅长计算&#xff0c;尤其擅长计算一个数是否是另外一个数的倍数。但小葱只擅长两个数的情况&#xff0c;当有很多个数之后就会比较苦恼。现在小葱给了你 nn 个数&#xff0c;希望你从这 nn 个数中找到三个数&#xff0c;使得…

【MySQL】 约束

一、约束的定义 MySQL 约束是用于限制表中数据的规则&#xff0c;确保数据的 准确性 和 一致性 。约束可以在创建表时定义&#xff0c;也可以在表创建后通过修改表结构添加。 二、常见的约束类型 2.1 NOT NULL 非空约束 加了非空约束的列不能为 NULL 值&#xff0c;如果可以…

前端vue打开多个窗口,关闭窗口后才继续执行后续逻辑

1.打开第一个弹窗 弹窗的按钮代码 2.点击窗口1中按钮&#xff0c;打开新的窗口 // 请领单按钮点击 async cb_6_delClick() {let ls_yfbm this.st_3Value.BMBMlet pstring {}pstring.a ls_yfbmpstring.b this.queryFormDialog.outDepotDeptCodeawait this.openwithparm_w_md…

「深度拆解」Spring Boot如何用DeepSeek重构MCP通信层?从线程模型到分布式推理的架构进化

什么是MCP&#xff1f; MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09;是由Anthropic公司于2024年11月推出的开放标准协议&#xff0c;旨在为大型语言模型&#xff08;LLM&#xff09;与外部数据源、工具及系统提供统一的交互接口&#xff0c;被…

【西门子杯工业嵌入式-2-点亮一颗LED】

西门子杯工业嵌入式-2-点亮一颗LED 一、课程回顾与目标1.上节课内容回顾2.本节课目标 二、硬件连接与原理1. 硬件连接方式2. 连接实例 三、GPIO原理知识1. GPIO结构2. 推挽输出模式原理 四、软件实现步骤1. 项目结构设置2. 函数定义3. led.c 文件编写初始化函数 led_init交替闪…

代码随想录算法训练营第60期第五十五天打卡

大家好&#xff0c;我们今天继续我们图论的部分&#xff0c;其实我们昨天是主要讲解了深搜与广搜的理论基础&#xff0c;我们大体上了解了两种算法的差异与适用情景&#xff0c;今天我们就继续我们的图论的章节&#xff0c;以后几天的题目是图论中比较有名的问题叫做岛屿问题&a…