目录
- Hi3798MV200 恩兔N2 NS-1 (一): 设备介绍和刷机说明
- Hi3798MV200 恩兔N2 NS-1 (二): HiNAS海纳思使用和修改
- Hi3798MV200 恩兔N2 NS-1 (三): 制作 Ubuntu rootfs
- Hi3798MV200 恩兔N2 NS-1 (四): 制作 Debian rootfs
介绍
恩兔N2是一个家庭存储的系列产品, NS-1 是其中体积最小的一个型号, 基于海思ARM64 CPU Hi3798MV200. 和其他设备相比, 特点是内置2.5寸SATA盘位, 并且带千兆网口. 这个设备比较小众, 存量很小, 不如斐讯N1, 玩客云那样有广泛的认知度, 甚至在百度和Google上搜索都没什么结果. 生产商恩兔科技这个公司已经停止经营, 其网站 n2yun.com 也已经无法访问. 因为有海思 Hi3798 系列内核的SDK和刷机工具, 使得这个盒子可以注入新的灵魂, 发挥余热, 物尽其用.
本文的内容, 大量参考自以下链接
- 带图说明 https://www.wdmomo.fun:81/doc/index.html?file=003_各类矿渣/013_恩兔NS-1
- 刷机说明 https://github.com/xiayang0521/n2ns-1/
- HiNAS https://www.ecoo.top/hitool.html
实物图
包装
正面
正面是一个带指示灯的按钮, 和三个指示灯. 这四个指示灯都是红绿双色, 可以用红绿橙三色显示状态
背面
背面包含一个用于供电的 USB Type-C 口, 一个 HDMI 口, 一个千兆网口, 一个USB口和一个SD Card卡槽.
内部
螺丝在包装的塑料袋里, 盒子默认没上螺丝, 用指甲沿两边可以轻松撬开. 内部可以看到一个标准的2.5寸SATA盘位. 这个高度可以放7mm和9mm厚度的硬盘, 不确定是否能放更厚的15mm厚盘.
PCB特写
正面和背面
TTL 接口
硬件配置
Part | Specs | Notes |
---|---|---|
CPU | Hi3798MV200 | 四核A53, T450 GPU, 详细型号为 Hi3798MRBCV2010D000 详细信息 |
RAM | DDR4 1GB | K4A4G165WE-BCRC * 2, 单颗256M 16b, 最高支持ddr2400 |
Flash | eMMC 4GB | 东芝THGBMDG5D1LBAIT |
Ethernet | 10/100/1000M * 1 | Realtek RTL8211 |
USB 2.0 | USB 2.0 * 1 | |
HDMI | HDMI 2.0 * 1 | |
HDD | SATA 3.0 * 1 | 2.5 Inch |
Power Supply | DC 5V 2A | USB-TypeC |
Other Interfaces | SD Card Reader * 1 |
刷机前的准备工作
硬件部分
- 一台正常工作的, 运行Win10的电脑
- 网线, 用于连接 N2NS1 到交换机或路由器
- 用于USB转串口, USB2TTL的串口模块, 常见的 CH340 模块即可
软件部分
软件部分主要是刷机工具和固件
刷机工具
刷机工具是基于 Eclipse 框架开发的, Windows版下载地址列表
- https://oss.histb.com/HiTool-windows.7z
- http://xz.w10a.com/small/HiTool.7z
- https://dl.ecoo.top/HiTool-soft/HiTool-windows.7z
- https://www.xitongzhijia.net/soft/211748.html
- http://www.hihope.org/en/download/download.aspx?mtt=36 需要注册
Linux的版本比较旧, 未尝试使用
固件
常见固件的下载
- HiNAS https://dl.ecoo.top/
这是一个功能比较完整的集成系统, 内核4.4.35, 选择恩兔N2 NS1定制的 TTL-hi3798mv200-202307-64-n2ns1.zip - Debian https://pan.baidu.com/s/1Dx58Zc43P3b3cx3tnhLlmw?pwd=9qte
这是我基于4.4.35内核做的Debian10系统, 比较干净的版本, 未安装各种服务软件 - 合集 https://github.com/xiayang0521/n2ns-1/releases
这里包含了稍息版的 Debian 10, 以及 Centos7 等系统的固件
备份和刷机
海思烧录的基本原理(摘抄自帮助手册)
HiBurn工具在开始烧写后,
- 首先与bootrom进行交互, 工具将 DDR 参数传送到传到bootrom, 即为uboot下载阶段5%处, 然后初始化DDR
- 把uboot传输到DDR中, uboot下载阶段100%处表示传输完毕
- 从DDR启动uboot
- uboot启动完成后, 工具开始与uboot进行交互, 发送烧写命令, 将DDR中的uboot烧写到Flash对应地址中
uboot部分是通过TTL传输, 其他镜像分区烧写, 如kernel, rootfs等分区, 工具默认采用网口传输的方式, 客户可选择裸烧和非裸烧两种方式进行烧写
- 裸烧即为在按分区烧写或按Emmc烧写中勾选uboot进行烧写,此时uboot会被烧写到Flash中
- 非裸烧即为不勾选uboot, 仅勾选其他分区进行烧写, 此时需要保证当前单板上已经存在uboot, 烧写时工具会启动uboot, 与其交互, 通过向uboot发送TFTP命令与Write命令, 完成烧写.
准备工作
准备 TTL2USB, 排针和网线, 主板上的四孔接口为 TTL, 接口定义参考前面的图.
方孔为VCC不连接, 工作时测得电压为3.3V, 因此切勿用5V的电压连接, 平时最好不连接. USB转串口模块连接电脑和盒子, USB转串口模块的 RX 接盒子的 TX, TX 接盒子的 RX.
本机(上位机)打开 HiTool, 芯片选择 Hi3798MV200, 点击运行 HiBurn, 点击刷新, 本机会自动识别IP和存在的串口, 将串口修改为USB2TTL所在的串口, 盒子(下位机)的IP和本机IP要在同一网段, 例如本机为 192.168.9.123, 板子的IP就可以设为 192.168.9.100, 不要和网段中其它机器冲突即可. 传输方式选择网口.
MAC 地址可以自行设置, 软件将根据设置在刷机过程中使用该 MAC 地址作为板端 MAC
备份
准备分区表
盒子先上电启动一次, 通过串口 TTL 软件看启动日志, 或者在命令行中查看dmesg, 可以得到当前的分区信息, 其格式为
blkdevparts=mmcblk0:2M(fastboot),1M(bootargs),4M(deviceinfo),6M(stbinfo),8M(baseparam),20M(logo),8M(pqparam),40M(private),10M(privatebak),80M(factory),40M(trustedcore_linux),80M(kernel0),80M(kernel1),150M(root0),150M(