注释
我也一直在解决这个问题。它失败错误 1,2 等指示格式错误的 gcode。这是一个新的主分支,未更改的 test_drive.h,裸露的 esp32d devkitC,以及我扔给它的任何 gcode(要求快速激光蚀刻,或之前在斜坡上完成的普通路由器切割)。
失败是非常可重复的。事实上,自从我几天前开始玩它以来,它还没有完成一个 gcode 文件。 为了解决这个问题,我尝试了 6 个不同的 esp32 板,从 3 个不同的供应商处购买了 2 次不同的时间(5 个是 32d,一个是 32u,都是最近 3 周从亚马逊购买的,所以希望不会运气不好)。我试过 bCNC 和 UGS。我直接在 esp 上确定了 TX 和 RX 的范围。115k 时的最小脉冲为 8.68 微秒,RS232 解码器看到所有数据都很好。5V 线上也没有尖峰。起初我以为我的 DIY 扩展模块可能正在烧 esp 板,但最后 3 个从来没有插入任何东西,除了我的 PC usb 端口用于测试这个。 我想这可能是对某个依赖项之一的最近更新破坏了某些东西。我正在使用绝对最新的编译(根据 wiki)。这还包括最新的 Arduino 版本、最新的夜间版本(截至几小时前)和完全更新的 PIO 设置。我希望我知道从哪里开始寻找错误。糟透了,我的数控系统现在坏了,在早期测试中,它绝对是通过 USB 撕裂了激光蚀刻。;) |
@truglodite我还以为我的板子坏了,所以我又买了另外两块板子。 在循环 gcode 时,您是否注意到任何不寻常的机器移动?因为我做了… |
@nsiatras是的,实际上有一半的时间在测试路由器 gcode 时它会沿着一个轴移动很长时间(如果插入时没有软停止或硬停止就会崩溃)。过去几天我的大部分测试都安装了激光。所以我可能对这种症状轻描淡写了一点。 上周,我第一次启动了我的 6 件装,并连续两次沿着 Y 方向失控,试图铣削一些 pcb。然后我放入了一个新的 esp 模块,并完成了几次切割没问题。然后我打开激光,意识到我必须为激光模式 M4 重新编译。之后我处理了这个问题。4 天前有 esp32 arduino 板文件的更新。也许它就在那里。 |
这正是发生在我身上 3 次的事情。它将一个轴(主要是 X)移动到最大值并崩溃。 |
‘Duino 板版本 1.0.5 和 1.0.6 是相当新的。我尝试了 1.0.4 并且确实可以正常工作。降级到 1.0.4 花了很长时间,但我认为值得等待。我将停止测试并重新开始切割我的数控系统。希望比我聪明的人能解决这个问题。 |
我刚刚降级到 v1.0.4,我成功地循环了一个 gcode,没有任何错误 |
现在,回到切割东西……;) 附带说明一下,我不确定 PIO 的哪些更改可以返回到 1.0.4。我在 platform.ini 中尝试过 |
当您遇到错误时,WebUI 是否也打开了? |
不,我禁用了蓝牙和 Wifi。 |
@bdring1.0.6 的错误在启用或不启用 wifi 的情况下发生,无论我是否在 webui 中四处寻找。使用 1.0.4,我可以在要求苛刻的蚀刻期间在 webui 中播放并且没有任何问题。 |
您使用的是什么串行发送器,您可以上传一个失败的示例文件吗? |
我使用 SourceRabbit GCode 发件人。我还使用 Universal GCode Sender 进行了测试,但我也遇到了错误。 由于我将 ESP32 库降级到 1.0.4 版,错误消失了,我的机器工作 100% 正确。 我不关心 GCode。我在使用 ESTLCam、SprutCAM、JSCut、DeskProto 等制作的任何 gcode 时遇到错误,但我附上了一个 gcode 供您查看 |
附言。我从未使用过 test_drive.h 机器 |
@nsiatras请发布您的机器定义文件。这可能会帮助我找到问题所在。 |
同样在这里,使用 test_drive.h 的代码没有变化。任何旧的 gcode 都可以;好吧,也许不仅仅是一个正方形,但通常它会在从立即到最多 3 分钟左右的任何地方失败。因此,我们在对此进行故障排除时无法完成任何 gcode。 编辑:另外,我在运行用 1.0.6 编译的有问题的固件时,在慢跑、归位、位置报告等方面没有看到任何其他问题。只有在主动发送 gcode 时才会出现问题。到目前为止,我只看到它发生在 G1/2/3 代码上,但也可能发生在 G0 上(只是每个文件更罕见,所以还没有看到)。 |
该问题已被确认为最近的 esp32 库代码中的错误。1.0.4 有效,但之后就不行了。在 Espressif github 上创建了一个问题。 |
感谢 Bart… 和 Mitch 解决了这个问题。我替换了 esp32 问题并期待测试修复。现在我已经添加 |
非常感谢,你救了我的命 期待 ESP32 > 1.0.4 中的修复! |
不再需要 Arduino 修复。我们将 Grbl_Esp32 更改为使用 ESP-IDF SDK 中的 UART 驱动程序,而不是 Arduino 框架驱动程序。通过该更改,Grbl_Esp32 可与任何版本的 Arduino 框架一起使用。 |
非常感谢,我可以确认它即使在非常高的波特率下也能正常工作! |
您使用的是什么版本的固件?
最新的
问题是否可重复?
是的
什么情况下会出现bug?
我的桌子上有 NodeMCU,没有连接到步进驱动器或其他任何东西。它只是连接到 USB,我正在使用串行连接来循环 gcode。
我注意到,当 gcode 运行得很快时,我得到了错误1和2
1 –> 预期的命令字母:G 代码字由一个字母和一个值组成。找不到信件。
2 –> Bad number format:缺少预期的 G 代码字值或数值格式无效。
当我说 Gcode 运行快时,我的意思是有些行执行得很快(小动作)。
当我通过发送 $C 命令将开发板设置为检查模式时,也会发生这种情况。
错误永远不会在同一行中。如果我现在循环 gcode,我可能会在第 2452 行得到错误 1,如果我再次循环它,我会在第 19502 行得到错误 1。所以..我得到错误但永远不会在同一行……
任何想法为什么会这样?
这是我的设置