注释
|
这是 Grbl 中的一个错误。我需要添加一个称为“暂停”之类的新状态,或者只是在 M0/2/30 期间将 Grbl 置于“保持”状态。M2/30 后,Grbl 将软复位。我需要为它想出一些更清晰的处理方法。但是现在,只要发出一个’~’简历就可以继续了。 |
作者
|
@chamnit与其创建一个新状态,不如直接用“ok”响应然后重启 Grbl?似乎是一个更简单的解决方案,可以解决问题。似乎 bCNC 和通用 G 代码发送器都在等待“确定”,但自从重新启动后,它就再也没有出现过。 只是一个想法… |
|
@1bigpig:Grbl 需要防止 GUI 在 M30 之后立即发送更多 gcode 并刷新串行缓冲区中的任何排队数据。暂停恰好强制确认。也许我只需要一条消息说明 [程序结束] 并要求 GUI 发送 ~ 或软重置。 |
所有者
|
@chamnit所以我不碰这里的任何东西,等待 grbl 修复 |


@vlachoudis有另一个问题/问题。我继续修改我在 Aspire 中的后处理器以处理 grbl .9i 的 G 代码。一切都很好,只是我将页脚从
“M30”删除为
“M5”
“M2”
(M30是程序结束和倒带——我猜以前他们用穿孔带的时候,它会倒带机器)
(M5是主轴停止)
(M2是程序结束)
因此,对于新的 M5、M2,bCNC 将挂在 M5 上并且永远不会将控制权交还给 MDI/用户,除非按下“重置”。我还使用 Universal G-Code Sender 测试了这种行为,它也做了同样的事情。
现在,如果我从我的后处理器中删除 M2,一旦它执行 M5 命令,bCNC 就会弹出一个对话框并显示“程序在 XXXX 秒内执行……”
所以,我不知道这是否是 grbl 的 M2/M30 实现中的错误/缺陷,或者 bCNC 和通用 G 代码发送者在执行 M2/M30 命令后是否真的想从 grbl 返回某些东西但没有得到它. 我不知道。
布鲁斯