固件兼容性
此页面记录与 Rayforge 一起使用的激光控制器的固件兼容性。
概述
Rayforge 主要为基于 GRBL 的控制器设计,但对其他固件类型有实验性支持。
兼容性矩阵
| 固件 | 版本 | 状态 | 驱动程序 | 备注 |
|---|---|---|---|---|
| GRBL | 1.1+ | 完全支持 | GRBL 串口 | 推荐 |
| grblHAL | 2023+ | 兼容 | GRBL 串口 | 现代 GRBL 分支 |
| GRBL | 0.9 | 有限 | GRBL 串口 | 较旧,可能有问题 |
| Smoothieware | 全部 | 实验性 | 无(使用 GRBL 驱动) | 未测试 |
| Marlin | 2.0+ | 实验性 | 无(使用 GRBL 驱动) | 需要激光模式 |
| 其他 | - | 不支持 | - | 请求支持 |
GRBL 固件
状态: 完全支持 版本: 1.1+ 驱动程序: GRBL 串口
GRBL 1.1(推荐)
什么是 GRBL 1.1?
GRBL 1.1 是业余 CNC 和激光机器最常见的固件。2017 年发布,它稳定、文档齐全且广泛支持。
Rayforge 支持的功能:
- 串口通信(USB)
- 实时状态报告
- 激光模式(M4 恒定功率)
- 设置读/写($$、$X=value)
- 归零循环($H)
- 工作坐标系(G54)
- 点动命令($J=)
- 进给率覆盖
- 软限位
- 硬限位(终点开关)
已知限制:
- 功率范围:0-1000(S 参数)
- 无网络连接(仅 USB)
- 板载内存有限(小 G 代码缓冲区)
检查 GRBL 版本
查询版本:
连接到控制器并发送:
$I
响应示例:
[VER:1.1h.20190825:]
[OPT:V,15,128]
1.1h= GRBL 版本 1.1h- 日期表示构建
GRBL 0.9(较旧)
状态: 有限支持
GRBL 0.9 是较旧的版本,有一些兼容性问题:
差异:
- 状态报告格式不同
- 无激光模式(M4) - 仅使用 M3
- 设置较少
- 点动语法不同
如果您有 GRBL 0.9:
- 升级到 GRBL 1.1(如果可能)(推荐)
- 使用 M3 而不是 M4(功率不太可预测)
- 彻底测试 - 某些功能可能无法工作
升级说明: 参见 GRBL Wiki
grblHAL
状态: 兼容 版本: 2023+ 驱动程序: GRBL 串口
什么是 grblHAL?
grblHAL 是 GRBL 的现代分支,具有增强功能:
- 多控制器硬件支持(STM32、ESP32 等)
- 以太网/WiFi 网络
- SD 卡支持
- 更多 I/O 引脚
- 增强的激光支持
与 Rayforge 的兼容性:
- 完全兼容 - grblHAL 维护 GRBL 1.1 协议
- 所有 GRBL 功能都工作
- 额外功能(网络、SD)Rayforge 尚不支持
- 状态报告与 GRBL 相同
使用 grblHAL:
- 在 Rayforge 中选择"GRBL 串口"驱动程序
- 通过 USB 串口连接(就像 GRBL)
- 所有功能按 GRBL 记录工作
未来: Rayforge 可能会添加对 grblHAL 特定功能的支持(网络等)
Smoothieware
版本: 全部 驱动程序: GRBL 串口(兼容模式)
兼容性说明
Smoothieware 使用不同的 G 代码语法:
主要差异:
| 功能 | GRBL | Smoothieware |
|---|---|---|
| 激光开 | M4 S<value> | M3 S<value> |
| 功率范围 | 0-1000 | 0.0-1.0(浮点) |
| 状态 | <...> 格式 | 不同格式 |
在 Rayforge 中使用 Smoothieware:
- 在机器设置 > G 代码 > 方言中选择 Smoothieware 方言
- 首先用低功率测试
- 验证功率范围与您的配置匹配
- 无实时状态 - 反馈有限
限制:
- 状态报告不完全兼容
- 功率缩放可能不同
- 不支持设置($$ 命令)
- 在真实硬件上未测试
建议: 如果可能,改用 GRBL 兼容固件。
Marlin
版本: 2.0+ 带激光支持 驱动程序: GRBL 串口
Marlin 激光
Marlin 2.0+ 在正确配置时可以控制激光。
要求:
- Marlin 2.0 或更高版本固件
- 已启用激光功能:
#define LASER_FEATURE
#define LASER_POWER_INLINE - 配置正确的功率范围:
#define SPEED_POWER_MAX 1000
兼容性:
- 支持 M4 激光模式
- 基本 G 代码(G0、G1、G2、G3)
- 状态报告不同
- 设置命令不同
- 空气辅助(M8/M9)可能无法工作
在 Rayforge 中使用 Marlin:
- 在机器设置 > G 代码 > 方言中选择 Marlin 方言
- 为激光使用配置 Marlin
- 测试功率范围匹配(0-1000 或 0-255)
- 有限测试 - 谨慎使用
更好的替代方案: 在激光机器上使用 GRBL 固件。
固件升级指南
升级到 GRBL 1.1
为什么要升级?
- 激光模式(M4)用于恒定功率
- 更好的状态报告
- 更可靠
- 更好的 Rayforge 支持
如何升级:
-
识别您的控制器板:
- Arduino Nano/Uno(ATmega328P)
- Arduino Mega(ATmega2560)
- 自定义板
-
下载 GRBL 1.1:
- GRBL Releases
- 获取最新的 1.1 版本(推荐 1.1h)
-
刷入固件:
使用 Arduino IDE:
1. 安装 Arduino IDE
2. 打开 GRBL 草图(grbl.ino)
3. 选择正确的板和端口
4. 上传使用 avrdude:
avrdude -c arduino -p m328p -P /dev/ttyUSB0 \
-U flash:w:grbl.hex:i -
配置 GRBL:
- 通过串口连接
- 发送
$$查看设置 - 为您的机器配置
升级前备份
保存您的设置:
- 连接到控制器
- 发送
$$命令 - 复制所有设置输出
- 保存到文件
升级后:
- 逐个恢复设置:
$0=10、$1=25等。 - 或使用默认值并重新配置