2023-2-1 14:29:21 [显示全部楼层]
5750浏览
查看: 5750|回复: 6

[教程] [新]跟思兼学Klipper(20)Makerbase MKS SKIPR 船长板 简要使用记录

[复制链接]

【思兼 】Makerbase MKS SKIPR 船长板 简要使用记录

前言

原创文章,转载引用请务必注明链接,水平有限,如有疏漏,欢迎指正交流。

文章如有更新请访问 DFRobot 社区 或者 cnblogs 博客园

欢迎对 Klipper 固件感兴趣,以及对改版 CNC 加工的 Voron 三叉戟、v0、v2.4 感兴趣的朋友加群交流(QQ Group:490111638)

近日朋友发给我一块 另一位朋友推荐给我,我又推荐给他使用的二合一主板用于装机,也就是今天的主角:MKS 船长。既往我对 RockChip 的芯片不了解,之前用过 Fly-Gemini、BQ-M4P,而 MKS-SKIPR 没实际接触过,所以借此机会研究研究。

【2023年2月2日 更新】

  • CAN2 使用的问题新版 Klipper 已解决
  • 取消 TypeC 是因为以防此接口供电不足导致主板不稳定
  • USB 无线网可以正常使用,问题出在我家的无线网(天生和螃蟹卡相克吧,具体原因有待探究)

一、资料地址

二、硬件概览

【主板接口图】淘宝中文版的是半截图,就直接使用英文版了

2.1 硬件接口图分析

  1. 6个可调电压风扇接口(3可控+3常开),使用一个挤出加热时,额外多两个 VIN 可控风扇接口,有空余驱动插槽时,通过模块亦可拓展可控风扇接口
  2. 支持 3Dtouch 和高压 Probe 调平器
  3. 接口丰富:6个限位开关接口、4个测温接口、6个预留IO引脚
  4. 保留 EXP1 和 EXP2
  5. 提供 MAX 31865 接口
  6. 提供驱动外接信号引脚
  7. 提供 CAN 通讯接口,板载收发器

2.2 具体分析与讨论

Pros:

  • RK3328 CPU性能强,实测快于 Amlogic S905L,体验好
  • STM32F407VET6,168Mhz
  • 1GB 内存满足舒服使用 Klipper 全家桶功能的需要
  • 支持 Pi-TS35 触摸屏,内置驱动,连接设置方便,KlipperScreen 方案性价比高
  • 启动后可以通过 host-usb 连接电脑,实现串口访问控制,注意波特率1500000,hostSERIAL:CH340——UART2——host_DEBUG

Cons:

  • RK3328 原生仅支持3个USB接口,数量少,【后续是否增加USB-HUb】

  • Pi-TS35 默认FPS给的20帧,能用但是能否给到更高的帧率提高使用体验,类似 ili9488 高刷 SPI 屏

    fb_ili9341 spi0.0: fbtft_property_value: fps = 20
  • 目前看host和mcu的TypeC 接口都无法给主板供电,导致测试非常麻烦,如果是为了避免5v、vin信号干扰,是否可用增加跳帽切换的方式

  • MPU-MCU默认使用UART通讯,原因应该是受限于原生USB数量。是否存在Klippy与Firmware通讯带宽问题,之前一块主板在 VzBot AWD 四驱上出现过高速打印超出传输带宽的情况,这个官方可以参考Klipper文档测试一下,我这里就不进一步探究了

  • eMMC转microSD适配器做工有待提高,出现有的读卡器插不进、读不出、卡不住的问题。希望端子座增加防呆设计。

  • 安装eMMC模块时,务必注意方向!安装MPU散热片时,先插入eMMC模块并留有一定空间,防止干涉!

  • 默认UART连接实现无SD卡线刷升级固件时似乎比较麻烦,对于滚动升级的Klipper,拆机升级固件太麻烦了

image-20230201134632483

三、软件探析

3.1 基本状况:

  • eMMC 模块中已经烧录了操作系统
  • 默认用户 root/mks 密码:makerbase
  • MCU 默认无 Klipper 固件
  • Klipper 默认编译选项:stm32f407 48KiB USART1 PA10/PA9,同时改名为 mks_skipr.bin  拷贝到 mSD 卡,插入 MCU-TF 插槽后按 RESET 进行更新,更新成功则后缀名会变为 cur
  • 默认还是使用 MJPG-Streamer,有条件升级为 crowsnest

3.2 杂记:

  • 系统基于 Armbian Buster,希望能升级到最新稳定版的 Bullseye( Win7——> Win10)

  • 内核采用 5.16.20,是否使用 5.15 LTS 长期维护版

  • Klipper 全家桶(Klipper、Moonraker、Fluidd、KlipperScreen)落后一个版本(printer_data打来的一系列问题,以及crowsnest),希望在大版本更新时,官方能跟进。目前发布的系统日期为20220726,逾半年之久,不过根据MKS的既往印象,应该以ToB为主,第一版系统、固件的后续更新会比较那啥。而Klipper开发活跃且滚动更新,带来额外技术支持压力。

    image-20230201130825741

  • 官方文档提示:因为MKS PI的系统文件是基于Armbian桌面系统进行移植的,直接更新Armbian桌面系统会存在一些问题,所以暂不建议更新系统。那么:

    • 有必要安装 xfce 桌面环境吗?占用空间和系统资源,且多数情况下用不到桌面。
    • 目前冻结了 kernel、dtb、u-boot、firmware 等,进行升级后使用没出现无法启动和功能不正常的问题

3.3 无线网络问题

这个专门说一下吧

  1. 为了实现 ms 下修改配置文件添加网络的方法,卸载了 nm,导致启动后添加、修改网络比较麻烦,也可能有更好的方法我不知道。而且新版KScreen支持nm作为后端。这个添加修改网络的方法希望优化。

  2. 套餐中的 USB 无线网卡(RTL8188EU)出现了连接不稳定的情况,无法正常访问image-20230201131620282

    • 换用我自己的 RT3070 联网稳定、完美

    • RTL8188EU 连接我另一个台Linux设备时,启动时直接干 Kernel panic 了,硬件故障?

    • 编译时使用 lwfinger 最新的稳定版驱动是否可以解决?

      filename:       /lib/modules/5.16.20-rockchip64/kernel/drivers/staging/r8188eu/r8188eu.ko.xz
      version:        v4.1.4_6773.20130222
    • 因为我家无线网络的问题?但是 3070稳定

  3. 希望使用 NetworkManager 等进行网络管理,否则启动后的网络管理不方便

四、其他主板连接方式

查看原理图可知,MCU 可用的通讯引脚包括:

通讯方式 引脚1 引脚2
UART(Default) PA9 PA10
USB PA11 PA12
CAN PB12 PB13

image-20230201134902985

4.1 USB-Serial连接

image-20230201141413239

image-20230201135458734

可以用于可能的默认 UART 通讯带宽不足时。占用一个USB接口,使用数据线连接到 mcu-usb typeC 接口即可

4.2 连接 CAN 工具板

SKIPR 使用 MCU CAN2 (PB12/PB13)进行通讯,而CAN2需要同时启用CAN1,既往无法正常使用,具体见讨论:MKS SKIPR CAN Bus。目前Klipper更新之后可以正常使用:stm32: Fix CAN2 handling in can.c

4.2.1 CAN 桥接模式

由于 SKIPR 板载 CAN收发器,可以启用 CAN 桥接模式连接 CAN 工具板,节省一个 USB转CAN 模块。接线方法同上,使用 板载CAN接口连接工具板。编译参数如下:image-20230201135558845

4.2.2 使用 USB转CAN模块

传统方式,产品如图:

编译选项如图,此时需要USB接口连接CAN模块,CAN模块再连接板载CAN接口和工具板CAN接口。

image-20230201135718289

五、番外 USB to CAN bus bridge mode

  • 部分 MCU 支持 USB to CAN bus bridge(USB转CAN总线桥接模式) ,此时此 MCU 既是 USB转CAN 适配器,又是一个 Klipper 节点
  • MCU 在 Linux 中会显示为 USB CAN Bus Adapter,同时作为节点可以被 canbus_query.py 查询到 uuid,也可以充当普通的 CAN MCU 节点进行控制。当然,也可以被其他位于 CAN 总线上的节点看到。
  • 注意:
    • 进行桥接的 mcu 实际上并不在 CAN 总线上(虽然可以被看到),因此传入及传出的数据包并不占用总线带宽。此外,此 mcu 无法被总线上的其他 CAN 适配器看到。
    • 需要在 Linux 系统中配置 can0 端口。但是 Linux CAN 总线速度和 CAN bus bit-timing 选项会被 Klipper 忽略,目前 CAN 总线频率只有在编译固件指定指定,Linux中指定的总线速度会被忽略(都是如此?)。
    • 桥接 mcu 重置时,Linux 会禁用对应的 can0。一般情况下,这需要使用诸如 ip up 等命令来重启此接口,因此,Klipper 的 FIRMWARE_RESTART 命令或者 RESTART命令需要重启 can0 接口

六、番外:线刷升级固件功能的可能性

  1. canboot
  2. 3.3v serial
  3. dfu
  4. sd_update

默认烧录固件可以使用 3.3v Serial,按住 boot0 按钮,短按 reset 后,松开 boot0,此时即可通过 /dev/ttyS0 访问stm32F4。

image-20230202001945072

目前测试无法进入DFU模式。

七、他山之石

此主板采用 RK3328 处理器,dtb 参考的 ROC-RK3328-CC。我们再找一些其他采用此 CPU 的资料丰富主板进行参考。

总结

MKS SKIPR 主板目前来看

  • 硬件性能(MPU & MCU)好
  • 接口非常丰富,满足绝大多数使用场景
  • 价格相对较低的同时有足够的保护电路

建议:

  • 改善 eMMC 适配器
  • 通过 usb-hub 等方式拓展 usb 接口数量
  • 增加 USB 供电功能方便测试、调试
  • 如有可能提升 SPI 屏幕的帧率

虽然软件系统有待优化,但整体来看是仍然是比较推荐的一款产品,毕竟现在才是第一版。

三春牛-创客  初级技神

发表于 2023-2-1 17:09:56

厉害厉害
回复

使用道具 举报

三春牛-创客  初级技神

发表于 2023-2-1 17:11:05

赞一个!
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-2-1 17:13:34

厉害厉害
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-2-1 17:14:38

学习了!
回复

使用道具 举报

巨人一路芬芳  学徒

发表于 2023-3-19 17:04:48

怎么说呢,这块板感觉像一块试验板。对新手不太友善。资料较少。前期不建议入手。固件现在已经换成新固件了,据说无线网快一点了。但我刷完固件进不去web。估计是我技术问题。原先老版本都可以的。
回复

使用道具 举报

巨人一路芬芳  学徒

发表于 2023-3-19 18:03:21

不容易,不容易。等了一个小时。才把这个评论给发表了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail