Hi!
I keep getting this errors while trying to cut the sled: Command G40 unsupported and ignored
I followed step by step instructions on how to generate gCode for sled in makercam.com, but when I opened gcode file in ground control and launched maslow to cut the sled only outside profiles were cut and all other commands (holes, inside profile and pocket) were skipped.
I opened that gcode (.nc) file on viewer and I saw that there is no any commands for holes, inside profiles and pocket at all, only outer profiles. I guess that something was wrong in makercam already, so it failed to generate proper gcode.
Could someone please help me to solve this situation?
Since the Maslow doesnât support cutter radius compensation in the first place,
turning it off does nothing and so nobody has written the code in the firmware
to make this a noop, so it complains that it doesnât know what this is and so is
ignoring it.
If you can change your CAM step to use a different profile to create your
g-code, you should be able to tell it that you have a simpler machine and it
wonât generate these codes (or others, which could cause problems from being
ignored)
If there isnât a maslow option, try for grbl.
g-code (at least for a machine like the maslow) doesnât know a inside profile
from an outside profile, it just knows toolpaths, not why they are there.
@dlang is right, that error just means that MakerCAM is trying to turn off something which doesnât exist so itâs pretty safe to ignore that warning
This sounds like it could be an issue with generating the paths. Is the depth set correctly for those cuts? Do you see the green cut lines showing up next to the paths in MakerCAM when you press âCalculate allâ
On the contrary, it (G40) is often part of a larger misunderstanding of configuring MakerCam, and a benign one as it doesnât damage plywood or the machine. If it gets someone alerted to questioning their .nc file and asking the Community for help or advice, it is serving useful purpose.
I agree itâs part of a larger misunderstanding, but should we alert on this? or
should we alert on gcodes that actually cause problems?
I am thinking that if itâs asking us to switch to a mode that is the only mode
we support, itâs worth not making noise about it. Only make noise if there are
g-codes in there that we donât understand and are asking us to do things that we
canât do
We may want to implement some of the worst offenders, like switching to the XZ
plane, making them fatal errors rather than just noise in the logs
I am a HUGE proponent of logging, and spend a large part of my life going
through logs, and I am VERY tolorant of odd things happening and making noise in
the logs.
But when itâs a common thing, and something that does no harm, (like telling us
to switch to the only mode we support), I donât think we should make noise.
Just getting started and have not looked much at the code, BUT dear god please donât remove a log entry like âCommand G40 unsupported and ignoredâ. As somebody who spends a lot of time debugging of bad code (all code is bad, most is worse) and bad processes I can tell you for sure that youâll only be causing grief for someone later (and remember that poor soul might be you) by getting into that mindset. That kind of message makes so much of a difference when troubleshooting. Itâs a beautiful report, the only thing Iâd possibly add is a âWARNING:â. I havenât run Ground Control yet so If Iâm talking out the wrong orifice I apologize, and if this is a GUI issue that stops the job, sure. If thereâs an overwhelming efficiency issue then maybe; BUT fix the input, not the ânoiseâ please!
G40 is telling the system to turn off a feature that the maslow firmware doesnât
support in the first place.
So modifying the firmware to make it a noop is actually the correct
implementation of that code on the maslow (silencing the code that turned on
that feature would be bad)
Iâm not suggesting removing the âGXX not implementedâ log message. I was the one
who suggested that it be implemented in the first place.
I am just suggesting that a g-code that disables a feature we donât support can
be implemented as a noop, so that something that exports g-code and turns off
these features to be on the safe side doesnât generate any log/warning messages.
Currently G40 is not understood by the firmware, and thatâs why this is
generated.
If we instead define G40, and define it to do nothing, this log message will not
be generated for this code that does nothing, wihtout eliminating similar
messages for other codes that could cause problems.
I thank you all for detailed explanations and discussions.
Somehow I missed a part on how to solve this issue. And the main issue for me is how to avoid this G40 command to be included in gCode So I would really appreciate your advises on this point.
Iâm totally âgreenâ in CNC world and all related software. So it was useful for me to get any kind of clue when Maslow skipped some steps.
I think the key is that the G40 command doesnât do anything and you can ignore the warning. There is no need to worry about the command being included in the gcode
What is correct depth? Iâm cutting 0.7874 in (itâs 20 mm) plywood, so I set depth of 0.79 in.
Yes, makercam shows green lines and direction indicator after calculation. I export toolpaths to gCode and I still find G40 command in gCode (now I use ncviewer.com for this purpose ).
So why in the instruction (Generating Gcode Using MakerCAM ¡ MaslowCNC/Mechanics Wiki ¡ GitHub) it is indicated (step 6 and 7) interior and exterior profiles? âŚand while I was writing this question I read those steps once again. So I guess you are right - there is nothing about inside/outside profiles which could be found in makercamâs options of toolpathsâŚ
G40 is being inserted by your CAM software based on the type of machine it
thinks itâs talking to. So to avoid including the G40 code, you need to pick a
different machine type. Maslow or GRBL are your best choices.
note that other than the noise in the logs, the G40 code doesnât hurt anything
I wouldnât worry too much about it, most post processors put a bunch of extra commands in that get ignored. I donât think itâs a sign that anything is wrong
Technically G40 is implemented, cutter compensation is permanently off and itâs OK to turn off if itâs not on. OTOH G41 or G42 would be an issue.
Cutter compensation frees the CAM software from determining where the edge of the bit is going to move. You program the cut edge and the machine controller moves the spindle center so the sharp spinny bits cut along the line and make the part what you really thought you wanted. The math is tricky and involves travel direction (cutting along a curve is a different offset than in a straight line). When the cheap seat PCs have more CPU cycles per second than the ones we graybeards started with had in a week (well, perhaps a slight exaggeration) thereâs little need for this feature in modern times.
As always, more than you wanted to knowâŚ
Arrived in Upper Fells Point. While collapsing buildings havenât been a threat yet theyâre installing new gas lines (and showing a subterranean history) so negative space dangers abound. So far we continue avoiding pushing the squeakie transport device into one even while gawking at the excavated trolley rails. Mrs Moose isnât as easily distracted so I get the dogâs leash and she gets the baby carriage