Future Firmware Support ? - Arc Welder (Anti-Stutter and GCode Compression)


Cause of a new Plugin designed in Optoprint to optimize the G-Code and prevent unnecessary Movements the g-code could be optimized as well described here in theory:

I have tried this our with Command “G3” as mentioned in this article, but Snapmakers Firmware failed with a bad command response and I had to power off/on my snapmaker 2.0 cause any other command ended up without any response in the command line.

I am wondering if Snapmaker would activate more and more commonly used “G-Code” Commands in their “Fork”, compared of any currently availabe g-code set out of the "mainstream firmware release"of Marlin.

I would be very happy in future, if Snapmaker would implement more and more existing Marlin firmware options, they have currently deactivated.

1 Like

That sounds odd, which Firmware version do you have installed? Normally G2 and G3 should be enabled in the current Snapmaker firmware and git blame indicates that it was never disabled in earlier versions either. Also in my experience a bad command never meant that I had to restart my Snapmaker, so maybe something else was going to. You may just want to try again.

OK - Thanks for your feedback. Currently I use Firmware 1.10.0 [History Version 6 (July 24, 2020).

So I will give it a try again and will run through the “sanity check list” as described in the installation section of the author who designed the plugin.

I will come back with screenshots of my command line output.

I just tried sending an empty G2 command and got the same problem. AFAIK I’m still using FW version 1.8 though, so that could explain it.

Send: G2
Recv: Error:G2/G3 bad parameters
Changing monitoring state from "Operational" to "Error: G2/G3 bad parameters"
Send: M112
Send: N2 M112*35
Send: N3 M104 T0 S0*34
Send: N4 M140 S0*97
Changing monitoring state from "Error: G2/G3 bad parameters" to "Offline (Error: G2/G3 bad parameters)"
Connection closed, closing down monitor
Changing monitoring state from "Offline" to "Opening serial connection"
Connecting to port /dev/ttyUSB0, baudrate 115200
Changing monitoring state from "Opening serial connection" to "Connecting"
Connected to: Serial<id=0xa9f36dd0, open=True>(port='/dev/ttyUSB0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
Send: N0 M110 N0*125
No answer from the printer within the connection timeout, trying another hello
Send: N0 M110 N0*125
There was a timeout while trying to connect to the printer
Changing monitoring state from "Connecting" to "Offline"
Connection closed, closing down monitor

I had to go restart the snapmaker (power cycle the PSU) to get a working terminal again.

Try to use G2/G3 with the needed parameters should work.

Thanks @stefix , I tried some of the basic commands, it seems that snapmaker supports G2/G3 just fine, it just crashes if you send an empty command.

G28 X Y
G0 X0 Y0
G2 X40 I20

When I run this, the bed/head move in an arc motion.

Unfortunately, I tried turning on arc welder, and it might be that I just didn’t have a good model for it, but when I tried to print, the printer started doing a bunch of super tiny moves and not really getting good adhesion. Switching back to the non-arc-welded gcode and it printed just fine. I’m still not sure if it’s a problem w/ the model, w/ arc welder, or w/ the printer, I’ll have to do more experimenting with arc welder and maybe some different models later.

@nivekmai I can confirm, I’m seeing the same behavior. The same print that took 40 minutes without arc welder enabled and is currently taking 1.5 hours or more. I was using the latest stable version of Cura to generate the gcode btw.