Klipper-Macros 使用教程

Klipper-Macros 使用教程

项目地址:https://gitcode.com/gh_mirrors/kl/klipper-macros

项目介绍

Klipper-Macros 是一个为 Klipper 3D 打印机固件设计的宏集合。这个项目由 jschuh 创建,旨在提供一组一致且有用的宏,以便在多个 3D 打印机之间共享。这些宏不仅改进了基本功能(例如可选的构建表),还增强了 Klipper 与针对 Marlin 打印机的 G-code 的兼容性。此外,还有一些额外的功能,如在特定高度和层变化时调度命令,这些功能类似于切片器已经可以执行的操作,但更加简单,并且可以在打印过程中动态调度。

项目快速启动

安装步骤

  1. 克隆仓库

    git clone https://github.com/jschuh/klipper-macros.git
    
  2. 复制宏文件: 将所需的宏文件复制到你的 Klipper 配置目录中。

  3. 编辑 Klipper 配置文件: 在你的 Klipper 配置文件中包含这些宏文件,并根据需要进行配置。

  4. 重启 Klipper

    sudo service klipper restart
    

示例配置

在你的 printer.cfg 文件中添加以下内容:

[include macros/*.cfg]

应用案例和最佳实践

案例一:动态调度命令

假设你需要在打印的特定层暂停打印,以便进行手动干预。你可以使用以下宏:

[gcode_macro PAUSE_AT_LAYER]
gcode:
    SET_GCODE_VARIABLE MACRO=PAUSE_AT_LAYER VARIABLE=layer VALUE={layer_num}
    M117 Pausing at layer {layer_num}
    PAUSE

在切片软件中,设置在特定层执行 PAUSE_AT_LAYER 宏。

案例二:选择性构建表

假设你需要在不同的打印任务中使用不同的构建表。你可以定义多个构建表,并在启动打印时选择:

[gcode_macro SELECT_BUILD_SHEET]
gcode:
    SET_GCODE_VARIABLE MACRO=SELECT_BUILD_SHEET VARIABLE=sheet VALUE={params.SHEET}
    M117 Using sheet {params.SHEET}

在启动打印时,通过 G-code 命令选择构建表:

SELECT_BUILD_SHEET SHEET=A

典型生态项目

Klipper

Klipper 是一个基于微控制器的 3D 打印机固件,它通过将复杂的计算任务转移到主机电脑上来提高打印性能和可靠性。Klipper-Macros 是 Klipper 生态系统中的一个重要组成部分,提供了丰富的宏功能,增强了打印机的灵活性和可定制性。

Moonraker

Moonraker 是一个为 Klipper 设计的 API 服务器,它允许通过 HTTP 接口与 Klipper 进行交互。通过 Moonraker,你可以更方便地集成 Klipper-Macros 和其他 Klipper 功能到你的 Web 界面或自动化系统中。

Fluidd

Fluidd 是一个基于 Web 的 Klipper 控制界面,它提供了直观的用户界面来管理打印任务、监控打印状态和配置 Klipper。Fluidd 可以很好地与 Klipper-Macros 集成,提供更丰富的打印控制选项。

通过这些生态项目的配合,Klipper-Macros 可以发挥更大的作用,提供更全面的 3D 打印解决方案。

klipper-macros A collection of useful macros for the Klipper 3D printer firmware klipper-macros 项目地址: https://gitcode.com/gh_mirrors/kl/klipper-macros

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

### Klipper在虚拟机上的安装与配置 #### 1. 准备工作 为了成功在虚拟机上安装和配置Klipper,需要确保虚拟机环境满足基本需求。推荐使用Ubuntu LTS版本作为基础操作系统[^4]。 - **系统准备** 使用默认APT源可以有效避免因更换源而导致的GPG公钥过期或其他依赖问题。如果已经更改了APT源,则需手动更新或修复可能存在的错误。 - **必要软件包安装** 下列软件包对于Klipper及其管理工具(如KIaUH)至关重要:`python3`, `python3-pip`, `python3-serial`, `python3-dev`, `python3-setup-tools`, `gcc-avr`, `avr-libc`, `avrdude`, `git`, `virtualenv`, `libffi-dev`, `build-essential`, `gcc-12`。这些可以通过以下命令一次性安装: ```bash sudo apt-get update && sudo apt-get install -y python3 python3-pip python3-serial python3-dev python3-setuptools gcc-avr avr-libc avrdude git virtualenv libffi-dev build-essential gcc-12 ``` #### 2. 获取Klipper代码库 有多种方式获取Klipper代码库,其中一种较为稳定的方式是从国内镜像站点下载以减少网络延迟: ```bash git clone https://gitee.com/qy1995/klipper cd klipper ``` 此操作完成后即可进入下一步骤[^2]。 #### 3. 编译并上传固件至目标设备 假设已连接好硬件并通过串口识别到相应端口,在本地环境中运行如下指令完成固件编译与烧录过程: ```bash make clean make menuconfig # 可选;用于指定特定主板支持选项 make flash # 将生成好的二进制文件刷入MCU芯片中 ``` 上述流程适用于大多数常见控制板类型[^1]。 #### 4. 构建一致性开发环境 (可选) 针对复杂场景或者频繁切换不同平台的需求,建议采用容器化解决方案简化维护成本。例如借助Docker创建隔离化的chroot jail区域配合qemu-user-static模拟ARM架构处理器行为模式从而实现跨平台兼容性测试目的[^3]: ```dockerfile FROM ubuntu:latest AS builder-env RUN apt-get update \ && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends qemu-user-static bash jq ... COPY . /src/ WORKDIR /src/ CMD ["./scripts/install-octopi.sh"] ``` 以上仅提供了一个简单的例子框架结构示意而已实际应用当中还需要考虑更多细节因素比如权限分配等问题等等... --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滑隽蔚Maia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值