本文使用的环境
电脑:Windows10
服务器 :刷 快乐的我 531 的 Debian的随身WiFi
使用的棒子建议是512+8,512+4也可以,但可能无法安装使用摄像头功能
本文使用的是快乐的我 531的Debian包,主板刷入固件分为线刷和卡刷方式,本文主要使用的是线刷方式
klipper官方文档(中文): https://www.klipper3d.org/zh/
1、准备工作
- 本文使用到的刷机包:https://www.123pan.com/s/DGj7Vv-elai.html 提取码:tEw4
- SSH 工具:https://www.123pan.com/s/DGj7Vv-xSai.html 提取码:6q1k(已有则可忽略)
- 随身WiFi助手:https://www.123pan.com/s/DGj7Vv-tlai.html 提取码:pxcA
- 一母分两公+母对母转接器或者hub(详情请参考 挂载 TF 卡 / U 盘篇)(用于给上位机供电,与下位机连接)
- 连接下位机用的数据线(用于与下位机连接)
- TF卡(选择卡刷主板才需要,否则请忽略)(需要主板支持卡刷)
2、上位机(随身WiFi)刷入Klipper
2.1、随身WiFi前置准备
- 使用本文提供的刷机包刷入棒子后连接WiFi(详情请参考OpenWrt / Debian 连接 WiFi篇)本文就不再赘述了
- 连接wifi完成后输入以下命令
sudo echo xxxx > /dev/mmcblk0p12 - 重启,此时重启后会自动进入Fastboot模式
reboot - 进入 UFI001C 解压出来的目录,将地址栏的路径删除后输入
CMD并回车进入命令提示符窗口,输入以下内容,刷入boot分区fastboot flash boot 5.18.0boot-msm8916.img - 打开【随身WiFi助手】=-=> 【Z】=-=> 【X】退出Fastboot重启棒子
- 重新使用SSH工具连接随身WiFi(此时就可以插在任意地方了)
- 安装vim(已安装则忽略)
apt-get install -y vim - 更换源,本文使用的是腾讯源,其他源理论上也可(原本的删除或者注释掉)
vim /etc/apt/sources.list# 腾讯源 deb https://mirrors.tencent.com/debian/ bullseye main non-free contrib deb-src https://mirrors.tencent.com/debian/ bullseye main non-free contrib deb https://mirrors.tencent.com/debian-security/ bullseye-security main deb-src https://mirrors.tencent.com/debian-security/ bullseye-security main deb https://mirrors.tencent.com/debian/ bullseye-updates main non-free contrib deb-src https://mirrors.tencent.com/debian/ bullseye-updates main non-free contrib deb https://mirrors.tencent.com/debian/ bullseye-backports main non-free contrib deb-src https://mirrors.tencent.com/debian/ bullseye-backports main non-free contrib - 修改AdoptOpenJDK.list 内容,保存并退出
vim /etc/apt/sources.list.d/AdoptOpenJDK.listdeb http://mirrors.tuna.tsinghua.edu.cn/Adoptium/deb buster main - 执行以下命令,或者直接修改该文件为
AdoptOpenJDK.list.bakgpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 843C48A565F8F04B sudo gpg --armor --export 843C48A565F8F04B | sudo apt-key add - 在SSH工具自带的文件管理界面进入/etc/apt/sources.list.d/目录,修改
mobian.list文件 为mobian.list.bak - 更新源
sudo apt-get update - 卸载 python3
sudo apt autoremove python3 - 重新安装 python3
进入/usr/bin/目录,确认 python3 存在sudo apt install python3 - 若遇此问题:下列软件包有未满足的依赖关系: libglib2.0-bin : 依赖: libglib2.0-0 (= 2.66.8-1) 但s是2.68.1-2mobian1 正要被安装 E: 无法修正错误,因安装所需要的主件。
root用户下运行此命令apt-get install libglib2.0-0=2.66.8-1 - 新建 klipper 用户
```
useradd -m -s /bin/bash klipper
```
- 设置 klipper 密码
sudo passwd klipper - 给 klipper 用户 sudo 权限
sudo usermod klipper -a -G sudo - 切换用户到 klipper 准备安装Klipper
su klipper
2.2、开始安装Klipper
以下内容皆在Klipper用户下执行
-
回到根目录
cd ~ -
安装 Git
sudo apt install git -y -
从 Git 下载 Klipper
无镜像无魔法,或者还是有网络问题,建议使用Gitee的
git clone https://gitee.com/miroky/kiauh.gitGitHub需要镜像或者魔法
git clone https://github.com/dw-0/kiauh.git -
运行Klipper助手
./kiauh/kiauh.sh -
进入KIAUH界面后,进入 Installation Menu 安装界面
-
安装 Klipper
- 在 Installation Menu 安装界面中选择
1) [Klipper] - 选择
Python 3.x,Python2.x已停止维护 - 询问安装Klipper的实例数量,如果只连接一台打印机,只需安装一个实例
这里以一台打印机为例,按两下回车继续
此时KIAUH便会开始Klipper的安装,只需稍作等待即可
安装过程中需要安装并更新软件,可能需要系统的管理员密码 - 安装好Klipper后,可能会询问是否将当前用户加入 tty、 dialout 等用户组,用于解决可能无法连接下位机的问题,
y确认即可,确认后会自动回到 Install 安装界面
- 在 Installation Menu 安装界面中选择
-
安装Moonraker
在 Installation Menu 界面中选择2) [Moonraker],y确认
此步若出错终止,大概率是网络问题
安装完成后会自动回到 Install 安装界面 -
安装Klipper的Web界面,有 Mainsail / Fluidd 两种
本文以安装Fluidd为例,Mainsail安装过程与Fluidd大同小异,故不再赘述
在
Installation Menu界面中选择3) [Mainsail]或4) [Fluidd]即可开始安装
中途可能会提示是否安装摄像头驱动,看个人选择,若没遇到此提示则忽略即可 -
安装完成后会询问是否添加常用的gcode脚本(宏),一般情况下直接回车安装即可
本文提供的Klipper库疑似没有宏,安装时提示没有库忽略即可,不影响使用
-
-
安装完成后即可使用
ip访问 Klipper 界面,在设置里可以更改显示语言为中文
3、给下位机刷入Klipper固件
3.1、使用上位机(随身WiFi)给下位机线刷Klipper(推荐使用此方法)
主板刷入固件分为线刷和卡刷方式,本文主要使用的是线刷方式,主板使用的是MKS GEN_L V2.1
-
将随身WiFi通过USB线连接下位机主板,给随身WiFi,供电主板无须供电,使用SSH工具通过 ip 远程连接
-
连接后,切换到 klipper 用户
su klipper -
获取下位机主板(MCU)id(需先识别获取到 id 才能正常刷入)
- 单上位机+单下位机时
- 运行Klipper助手
./kiauh/kiauh.sh- 选择
4) [Advanced]高级选项 - 选择
5) [Get MCU ID]获取 MCU(主板) id - 连接方式,选择
1) USB
将获取到的 MCU id 复制保存
q退出,回到 Advanced 高级界面
- 单上位机+多下位机时
- 在 Klipper 用户下运行此命令
ls /dev/serial/by-path/* - 运行Klipper助手
./kiauh/kiauh.sh - 选择
4) [Advanced]高级选项
- 在 Klipper 用户下运行此命令
- 单上位机+单下位机时
-
在Advanced 高级界面,选择
4) [Build + Flash]编译和刷写固件
默认即是Mega2560主控的主板若需修改可到MKS的Git里查看对应主板的设置
Q退出 -
编译完成后会询问使用哪种方式刷写固件
Klipper用户下,out文件夹中,.hex就是编译后的固件- Regular flashing method :线刷
- Updat ing via SD-Card Update :卡刷
-
连接方式,选择
1) USB -
确认要刷入的MCU,只有1个时直接输入
1即可,y再次确认 -
刷写时会提示会停止 Klipper 服务,需输入密码,密码不会显示出来,回车开始刷入
-
等待刷写完成后
q退出 Klipper助手 -
打开Klipper的Web界面
3.2、使用上位机给下位机线刷Klipper另一种方法
- 将随身WiFi通过USB线连接下位机主板,给随身WiFi,供电主板无须供电,使用SSH工具通过 ip 远程连接
- 连接后,切换到 klipper 用户
su klipper - 进入 Klipper 目录
cd ~/klipper/ - 查看是否需要修改内核配置,需要与主板一致
make menuconfig - 编译生成下位机固件
make - 查看USB连接的串口号并记录保存下来,等会用到
ls /dev/serial/by-id/* - 退出 Klipper 服务
sudo service klipper stop - 线刷编译好的固件
make flash FLASH_DEVICE=串口号
等待刷入完成make flash FLASH_DEVICE= - 关闭随身WiFi
关闭后先断电,重新接线,主板和随身WiFi都需要上电sudo shutdown -h now - 上下位机都刷入完成后,使用
ip访问Klipper的Web界面即可识别到下位机