首款DSM7.2、支持Docker的ARM架构黑群晖小睿CM360来咯,RTD1296、4G RAM,近半年最佳玩具
引子
小睿CM360系列实际就是某联的系列产品,经过半年折腾,有群晖、istore、zidoo等固件可以刷,我这里重点讲解折腾的重点,并以spi系统群晖和emmc系统zidoo为重点,通过硬件和uboot实现不同系统的刷机,切换等
配置对比
不得不说,即便时隔3年之久,DS220j依旧是入门白群晖性价比最高的设备:
即便时隔5年之久,DS218Play的1G内存依旧能压DS220j一头,可能唯一值得说道的是京东云提供的DS218Play盘古Lite既能跑积分,售价也不贵。
CM360
固件及教程由好基友 大连-稍息制作,稍息YYDS主板及硬件标注图。
GPIO57GPIO57能够改变板子的启动顺序,根据数据手册rtd1296的启动流程根据开机时三个引脚的状态决定,如下图
cm360系列板子的BOOT_SEL默认为0,GPIO58默认为1,GPIO57则对应版子按键,如果按键断开则GPIO57默认通过电阻接地为0,从emmc启动;如果在通电时按住GPIO57,则GPIO57被拉高为1,系统从USB启动,这个usb启动不是uboot从usb引导内核,是bootrom直接运行线刷工具的协议,这是tpyeC口刷机的原理。
TYPEC口TyPEC口是cm360的线刷口,可以在插入电脑时同时按下GPIO57,配合上位机软件进行线刷
RESET图上标注的reset按键不是普通gpio,也不能被内核读取,而是电源芯片G2227的硬件reset,按下此按键,G2227会立即断电复位,从而重启1296,所以一般情况下,不要使用此按键,会造成系统异常关机,硬盘损毁。
GPIO8这是一个通用GPIO,通过uboot或者内核可以读取GPIO状态,进而做出不同动作,比如我编译修改的uboot就会读取GPIO8,如果没有按下,启动正常引导流程,如果按下则从U盘先读取uboot脚本并执行,如果没有脚本则读取群晖文件写spi,如果群晖文件也不存在,则读取1296的四个U盘引导文件(内核、rootfs、dtb、afw)并U盘系统。
TTL(确切是UART)cm360默认的波特率为115200,8N1,3.3V电平(CMOS电平)
FAN接口注意cm360的fan接口不是常用的三针测速风扇,而是三针调速风扇。市售三针风扇应为VCC GND 测速,而360是PWM,所以可以用四针风扇,空接测速即可。
NS003
由于基本一致,注意GPIO57刷机按键位置即可,在DC接口背面空焊,短接即可刷机
刷机教程
对所有1296系列芯片支持线刷和U盘刷机,取决于板子是否引出线刷接口和切换usb启动的按键。
但是线刷和u盘刷家原理不同:
线刷是rtd1296芯片内部bootrom的功能,只需引出usb(通常是tpyec接口),确保BOOT_SEL、GPIO57、GPIO58再上电时的状态分别是011,对于CM360而言就是上电时按住GPIO57按键即可。线刷支持完整刷写emmc和nand,无需emmc或者nannd中uboot完好.适用于首次刷机或者无法确保emmc中uboot正常的情况或者完整重刷.线刷在硬件支持情况下,rtd1296芯片的板子通用.
u盘刷机时uboot的功能,要求uboot运行正常,当uboot启动后,会根据某个按键的状态决定正常启动系统还是启动U盘刷机模式.适用于系统升级或者只有U盘刷机包的情况.U盘刷机流程完全取决于uboot的功能,不同uboot刷机流程和反应是不通用的.
对于我为cm360编译修改的uboot,支持开机时检测GPIO8的状态,发现GPIO8按下,则先加载U盘,U盘中如果有shaoxi_rtd129x_boot.scr文件,则直接执行该uboot脚本文件;如果没有该文件,进一步检测rtd129x_syno_dsm.bin,rtd129x_syno_dtb.bin,rtd129x_uboot_checksum.bin三个文件,如果存在则分别写入spi对应位置,实现群晖刷机;如果也不存在,则进一步检测bluecore.audio,emmc.uImage,rescue.emmc.dtb,rescue.root.emmc.cpio.gz_pad.img四个文件,如果存在则从u盘启动恢复系统;如果也不存在则运行bootr命令.
对于由于cm360自带的uboot,则支持开机时检测GPIO8的状态,发现GPIO8按下,则先加载U盘,检测bluecore.audio,emmc.uImage,rescue.emmc.dtb,rescue.root.emmc.cpio.gz_pad.img四个文件,如果存在则从u盘启动恢复系统.
四个文件组成的恢复系统就是一个最小系统,一般是在启动后直接检测U盘的install.img文件,如果存在则使用最小系统根据img文件刷写emmc.
通用线刷教程
1.下载bpi-w2刷机工具
2.安装驱动,在工具目录下,已经装过的不用二次安装
3.软件操作顺序
选择刷EMMC
选择ddr类型4ddr4_2G
选择镜像文件
设置刷写选项,刷写选项是根据刷机包和预期目的选择,一般镜像全部留空
4.启动刷机
按住GPIO57插入TYPEC线到电脑口,如果驱动正确,此时刷机工具会有反应(不用插电)
点击绿色小人开始刷机,一定要等到这个图标再断电
5.对于完整刷机包,到此已结束,跳过单刷uboot教程,但是由于cm360的刷机包,如zidoo并不包含uboot,或者不想用刷机包自带的uboot,需要单独刷写一个uboot,请继续”单刷uboot教程”
线刷单独uboot教程
1.关闭刷机软件情况下,将要刷写的uboot重命名为bootloader.tar,并覆盖刷机软件Tempfile下的bootloader.tar后再打开软件
2.软件操作顺序
选择刷EMMC
选择ddr类型4ddr4_2G
不要选择镜像文件,不要选择镜像文件
设置刷写选项,勾选”only upgrade bootloader”
3.启动刷机与通用线刷流程步骤4一致
各类系统和刷机工具地址先放着:
单刷zidoo或者istore
1.如果是单刷emmc启动系统,包括zidoo和istore,直接按照通用线刷教程刷一次即可
2.如果原厂boot没有损坏或者首次刷机,由于原厂boot支持启动zidoo,可以不用单刷boot
3.如果已经多次刷机,boot状态未知,请按照单刷boot教程刷原厂boot或者cm360移植boot
刷群晖系统并切换不同系统
1.按照通刷教程,刷emmc系统,可以是zidoo或者istore
2.焊接spi芯片,如果群晖系统想要DS218,请焊接8M flash,如果想要DS420J,请焊接16M flash
(DS218为2018年产品价格较贵,DS420j为20年产品,价格相对公道,功能基本一致,但是420J再最新的DSM7.2版中官方支持container manager,而DS218不支持,支持arm docker的目前只有DS420J和DS223两个机型)
3.按照单刷boot教程刷资源包中对应的0502cm360-ds218-bootloader.tar和0426cm360-ds420j-bootloader.tar,这两个boot功能一样,只是默认的命令env不同.
4.将资源包中对应群晖型号的三个文件放入U盘根目录,放入U盘,cm360断电插入u盘
5.短接或者按住GPIO8同时通电,待link灯闪烁可以放开(如果不愿焊接gpio8按键,也可以ttl下按esc中断uboot后直接深入goru,与按住gpio8实现效果相同)
6.等待几分钟,218因该7分以内,420J稍长可能10分钟左右,可以在线安装群晖.5月22日群晖7.2已正式发布。
7.切换emmc系统,将资源包bootscr目录下的bootr-shaoxi_rtd129x_boot.scr改名为shaoxi_rtd129x_boot.scr,放入U盘,按住gpio8开机,则自动切换会emmc系统,如果之前刷的zidoo就是zidoo,切换后U盘可以拔掉,下次重启仍然有效,默认启动zidoo.
8.切换群晖,将资源包bootscr目录下的群晖shaoxi_rtd129x_boot.scr改名为shaoxi_rtd129x_boot.scr,放入U盘,按住gpio8开机,则自动切换会群晖系统,切换后U盘可以拔掉,下次重启仍然有效,默认启动群晖.
刷群晖系统功能设置
安装完群晖系统,不管是ds420j还是ds218,由于板子没有单片机灯设备,后台会报i2c错误,影响硬盘修满和网络唤醒(WOL)灯功能,需要修复一次,一下修复教程源自矿神教程,特此注明
1.再群晖控制面板,终端机中开启ssh
2.使用ssh软件链接群晖ip地址,然后用sudo -i命令切换到特权模式
3.运行系统修复(测试ds420j也可以用)
DS420j 7.2 container manager上手
1.在beta套件中心安装
2.打开container manager注册表,我试了几次都无法连接,后来咨询矿神才知道,docker被墙了,但是只有搜索不可用,下载可以用
3.以安装qbittorent为例,解决方法有2:
一是自行路由绕墙,搜索界面因该是这样的
二是在ssh下操作下载,先用docker search,再用docker pull
4.再回到群晖界面,在映像里点击运行
5.设置相应选项
一共需要映射三个目录,config、data跟qBittorrent的软件配置有关,downloads为下载目录,左侧可根据dsm内设置的目录自行添加,我创建了”下载”共享文件夹,通信协议选择tcp和udp
6.点击下一步后,会弹窗提示配置容器的网页门户,点击确定会跳转到web station进行下一步操作
下拉创建桌面快捷方式
7.反回看到容器已经运行
8.在container manager首页和容器页可以进行管理
利用bootscr调整默认开机风扇转速
我移植的uboot允许在按下gpio8情况下执行U盘shaoxi_rtd129x_boot.scr,这个特性除了可以修改bootenv命令实现系统切换,同样可以实现在启动前修改默认风扇转速.
1.新建一个pwm-shaoxi_rtd129x_boot.cmd(资源包里有),一下内容就是修改pwm站控比为80%,根据实际修改
2.在linux环境下用命令生成scr
3.将生成的问题改名为shaoxi_rtd129x_boot.scr,放入U盘,按住gpio8开机,则自动会将开机前风扇转速调整为80%.
需要注意的是调整后风扇转速在群晖下新版dtb会默认保持,也就实现了自定义开机转速的效果,如果你是老版本dtb,可能无效,因为老版本dtb开机后群晖会将pwm设置为gpio,从而使uboot的设置失效.
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~









































-稍息
链接:去看看
提取码:hv2n
复制这段内容打开「百度网盘APP 即可获取」资源包
校验提示文案
huangya90
校验提示文案
rageyang
校验提示文案
晋升奶爸的垃圾佬
链接: 去看看
提取码: dmgi
由于笔误,将2G内存写成4G,望周知。
校验提示文案
tempma
校验提示文案
雅加达街角
校验提示文案
愤怒的白白
校验提示文案
追灬雪
校验提示文案
爪爪酱
校验提示文案
无怨无悔心
校验提示文案
sabayonlinux
校验提示文案
hao82
校验提示文案
水煮西瓜皮
校验提示文案
晋升奶爸的垃圾佬
校验提示文案
tempma
校验提示文案
fengpan584
校验提示文案
巨硬首席执行官
校验提示文案
饕餮好难写
校验提示文案
值友6898361643
校验提示文案
gundamf6
校验提示文案
huangya90
校验提示文案
青椒炒肉5178
校验提示文案
何必管我是谁
校验提示文案
轻逸尘
校验提示文案
洛枫233
校验提示文案
值友5482324825
校验提示文案
爪爪酱
校验提示文案
大肥肉串子
校验提示文案
爱折腾的老狐狸
校验提示文案
cool18
校验提示文案
看看便宜货
校验提示文案
张小贱11
校验提示文案
Michael-Ng
校验提示文案
值友4323198175
校验提示文案
追灬雪
校验提示文案
手撕鲈鱼
校验提示文案
神奇萝卜
校验提示文案
愤怒的白白
校验提示文案
滴学生卡
校验提示文案
雅加达街角
校验提示文案