Need advice on how to get downloaded g-code file to work on my CNC

I have a home built CNC machine that I am using a UC100 controller as well as UCCNC to run the file with. What I am trying to do is to use my CNC to “Draw” with a Sharpie, pen, or pencil etc onto a given surface.

I can take this file and convert it to an .svg file and import it into Easel. I can then setup all the perimeters for the operation. In this instance, I am drawing this to fill an 8.5 x 11 piece of paper. I then generate and download the g-code to load into UCCNC to run this. The problem is that UCCNC starts drawing this image about the size of a pencil eraser.

I have tried setting the machine to XCarve, Carvey, Other, etc but I still get the same thing. Is there a way to save the g-code file so I can draw this the correct size?

Thank you for your help

SVGs are generally dimmensionless. There are SVG commands that force adherence to units but they are rarely used. There are also scaling factors that can be set in Gcode so that the machine knows what the units are. It might be that there is some scaling factor such as mm instead of inches or mm instead of meters.

You might want to share your SVG and or your g-code and folks here can take it from there.

That is a good idea. Attached is the g-code file. (309.2 KB)

UCCNC doesn’t accept G21 and G20 gcode. Maybe you have your controller setup wrong? Have you carved anything from another CAM program? Does the machine jog correctly?

Thanks Neil. I have tried other files. They work and carve just fine. The only time this has happened is when I d/l the g-code file from Easel. I have converted this file to .dxf within Inkscape and used Cambam to process and create the g-code. It then carves out the correct size. The problem with Cambam is that a dxf file engraves out double lines and does not fill in the dark/shaded areas. Also, Cambam does not like .svg files.

I can’t seem to find any software (except Easel) that can draw the lines and fill in the dark areas just like the picture. I didn’t realize that UCCNC does not seem to like Easel g-code.

Also, My UCCNC is in mm, I also saved the Easel file in mm. So there should not be a need to convert it … right?

I was hoping to find advice on how to get it to work.

That sounds right to me. I am not familiar with UCCNC, but gcode it’s pretty much gcode.
Could your steps/unit be set incorrectly?

Sounds like your units going to the cnc machine are in mm. Is the drawing converting to inches? I know as a pdf, you can set the scale. Maybe you aren’t setting yours to inches or 1 to 1.

His gcode is for mm. You’d expect that to be gigantic if it was cutting in inches.
Are you sure the gcode you posted is the one you ran on the machine?

Your G-code looks clean to me. It sets up for metric and it fits within 250mm by 200mm which is about 10" by 8".

It might be interesting to see the G-code from your other source that works for you to see how it sets things up.


ok…Harry I am attaching the g-code file from Cambam for your review and comparison.

Yes Neil. That is the g-code I d/l’ed from Easel and ran on the CNC. As mentioned I also thought g-code was g-code. That is why I don’t get what is happening here and why.

I am also attaching a screen shot of what the file looks like in Cambam. It draws it out on a 8.5x11 sheet of paper just fine. It just does not look like the original image.

dog.Part1 [Engrave1].rar (112.2 KB)



This is also set to metric but its dimmensions are much larger. 700mm Y is about 28 inches while 600mm wide is about 24 inches.

I think you need to investigate your steps per unit settings.

It may also be that you CNC ignores the metric setting and simply runs in hundredths of inches.

Other than that, your latest file pieces the dog together through many circular arcs rather than by straight line interpolation. arcs will more faithfully cut the curves of this figure. The earlier download also cut areas such as the nose and inside of the mouth while the second download simply cut borders.

Wow. I am not sure what happened there regarding 700mm x 600mm, but the file I have in Easel is about 280 x 215 mm. See attached screan shot. My UCCNC is setup to run mm not inches. As I stated earlier, this file is the ONLY file that does this. Anything I run that was processed outside of Easel runs just fine. (all files run are in mm). In short, I believe my steps per unit setting are fine if I understand your meaning.

Within the Easel machine settings, I have a choice of Xcarve, Shapeoko, Carvey, or other (GRBL). I have neither of these machines so I assumed that the issue was related to the fact that my machine does not fit any of those. Each of these machines must process the g-code differently or they would not need to list them separately … right??? Yes, I’m asking.

So, if my assumptions are correct, what machine do I need to set MY machine to within Easel to get these files to print out correctly?

If you have a Xcarve, Shapeoko, Carvey, or other (GRBL), please use this file on your machine and share how it works or you. If it does, it would seem to me to be a translation issue possibly. I’m guessing here. (206.2 KB)

I run a Techno Isel Davinci III which was manufactured in the mid 80s. Truth to tell, my CNC does not run G-Code. Instead, I pass G Code through a translator and run the translated code. That said, my machine runs Easel projects just fine. Typically I set everything up in metric because the machine was built in Germany.

See this link and check if there are any gcodes that a not supported by Grbl.

I think i got it. I’m not sure what the issue was but I deleted the project and redid it. I used the same settings in mm. I downloaded the file and ran it on my CNC. I made no changes to UCCNC or the machine. Attached is a picture of the result. Not perfect yet but that has more to do with getting my settings right and some fine tuning. Easel did it when nothing else I tried could!

I just wish I knew what I did!!!
Thank you all for your help and advice.

Didn’t you use Easel from the start to generate the gcode?
What’s different about the gcode for the successful file from the others you’ve shared?

Well Neil, I’m not sure how to answer that completely. Yes, I did use Easel from the start . The only thing I think I did different was use “other” as my machine, but I don’t know if that made the difference or not. G-code is g-code … right?

I did not compare the g-code line by line within both files. I got better things to do.
I’m going to try a different file tonight to see hoe that one works.

If G code was G code then there wouldn’t be any choices needed in that part of the process. I’d guess that some post processors may have different codes they add to the program and some may not be supported by GRBL. My own experience is that GRBL will skip a line it doesn’t support.