CNC sizing doesnt match design size

Hi everyone,

First, I would just like to thank Ryan for the amazing work he has done making and designing this machine!

I actually printed and built my machine around 2 years ago, but for a variety of reasons I never got around to getting it really going partly living in a townhouse at the time. Now however I have space and am keen to get it up and running properly.

Long story short I did the crown test and it was set for 150w x 112.5h but it is coming out at 140w x 105h as shown in picture.

I bought my belts and pulleys off Ryan, and my motors are USONGSHINE 17HS4401S 1.8d, with CNCjs used to send the file

This is the code

CNCjs 1.9.22 [Grbl]
Connected to COM4 with a baud rate of 115200
Grbl 1.1h [‘$’ for help]
client> $$
$0=10 (Step pulse time, microseconds)
$1=25 (Step idle delay, milliseconds)
$2=0 (Step pulse invert, mask)
$3=0 (Step direction invert, mask)
$4=0 (Invert step enable pin, boolean)
$5=0 (Invert limit pins, boolean)
$6=0 (Invert probe pin, boolean)
$10=1 (Status report options, mask)
$11=0.010 (Junction deviation, millimeters)
$12=0.002 (Arc tolerance, millimeters)
$13=0 (Report in inches, boolean)
$20=0 (Soft limits enable, boolean)
$21=0 (Hard limits enable, boolean)
$22=0 (Homing cycle enable, boolean)
$23=0 (Homing direction invert, mask)
$24=25.000 (Homing locate feed rate, mm/min)
$25=500.000 (Homing search seek rate, mm/min)
$26=250 (Homing switch debounce delay, milliseconds)
$27=1.000 (Homing switch pull-off distance, millimeters)
$30=1000 (Maximum spindle speed, RPM)
$31=0 (Minimum spindle speed, RPM)
$32=0 (Laser-mode enable, boolean)
$100=200.000 (X-axis travel resolution, step/mm)
$101=200.000 (Y-axis travel resolution, step/mm)
$102=200.000 (Z-axis travel resolution, step/mm)
$110=500.000 (X-axis maximum rate, mm/min)
$111=500.000 (Y-axis maximum rate, mm/min)
$112=500.000 (Z-axis maximum rate, mm/min)
$120=1.000 (X-axis acceleration, mm/sec^2)
$121=1.000 (Y-axis acceleration, mm/sec^2)
$122=1.000 (Z-axis acceleration, mm/sec^2)
$130=200.000 (X-axis maximum travel, millimeters)
$131=200.000 (Y-axis maximum travel, millimeters)
$132=200.000 (Z-axis maximum travel, millimeters)
ok

Appreciate any assistance!

On a side note, my motors sound musical at times when running, is this right or do I need to adjust something? I have a recording of the motors running but it is a M4A file which i can’t upload.

Cheers

Long story short I did the crown test and it was set for 150w x 112.5h but it is coming out at 140w x 105h as shown in picture.

Just to be sure, are you running the premade crown or did you author your own version based on the SVG? The typical reason we see for this kind of inaccuracy is that the “wrong” pulleys are used. Typically, 20 tooth pulleys are used instead of the 16 tooth pulleys specified by Ryan. But your distances don’t work out for a 20T pulley.

Place your pen near the origin of your machine (power off), turn the power on, then enter a specified move. For example:

G0 X250 F1000

If you have a display, you can use it instead of entering g-code directly.

Measure the distance moved. It should be 250mm. If it is the pulley issue, then you should see only a 200mm move, and the fix is to adjust the steps per mm. Using the wrong pulley will result in a bit less torque, but there are a number of machines out there running just fine with 20T pulleys.

If the distance measured is not 250 and is not 200, post back with the actual numbers and the details of your machine.

On a side note, my motors sound musical at times when running, is this right or do I need to adjust something?

Totally normal. In fact, there are a number of YouTube videos of people playing music using their steppers. Here is one.

2 Likes

Hi Robert,

Thanks for your advice!

I am using Ryan’s crown in the sense that, I downloaded the file and followed the instructions for resizing it etc. The file I used was Test-crown-12mms so I think that’s right unless I stuffed something up.

I bought the pulleys from Ryan for a Primo CNC so I assumed they were right - I can count them tomorrow.

Its late now but I will try out the GCODE you suggested and measure it tomorrow. I worked out that the movement for W was 93.3333% but the movement of H was only 93.1429% of what they should have been, and I thought it was interesting as they both have the same setup figures.

That link for the steppers was cool! and good to know there’s no underlying issue.

Cheers

1 Like

So, the pulleys are not your issue. You are left with:

  • Mechanical issue with the machine (loose grub screws on the pulleys are common).
  • Firmware issue (steps per mm not set correctly). What version of the firmware are you using?
  • Authoring issue with the crown.

Step 1 will be to test the distances moved. Your machine should be accurate to fractions of a mm.

1 Like

Hi, you have to measure and configure steps per mm to match what you need using a grbl controller (just doit using lightburn it is easy enough and it allows you to draw a square and check measurements and you can use it to square out your gantry and configure the Y axis pull off so when you home the machine is :black_large_square:

Asumed he is using a grbl controller. But configuring steps per mm is easy enough on any marlin based controller board (with a screen)

M92 is the gcode in marlin. The screen is pretty hard to use, if you are moving from 100 to 200.

M500 saves settings in marlin.

I highly recommend fully understanding the issue before making any steps/mm changes. Zac is building the machine from a V1 kit. I’ve never seen steps/mm changes required when making a full kit build. The steps per mm in the V1 supplied firmware matches the belts, pulleys, steppers, and steppers of the kit.

As you suggest, if he happens to have Lightburn (a paid app), it is a nice tool for testing the machine. As long as there is no kerf offset, a pen drawing will be accurate. Using other tools, the g-code will compensate for bit diameter, so getting an accurate rectangle takes some calculation.

I suspect the root of this issue will be CAM/authoring, but we will not know until he runs some tests.

2 Likes

He posted his data from cncjs using grbl. Thats why i asumed he is using something else. V1 controllers comes ready to use from factory

1 Like

You are absolutely right, and his Z steps are clearly wrong. We need to know what stepper drivers he is using, and the micro-step settings to verify his steps-per-mm settings. But he is off a very strange amount that does not match with a steps-per-mm problem.

2 Likes

Yeah, let’s wait he wakes up. He should take the Sunday to do some fafo with his creation (now i do Saturdays for family and sundays for cleaning and thinkering with the lasers and lowriders)

Hi Guys,

Sorry I wasn’t able to get any time yesterday to test out the CNC, I have today and I tried the G0 X250 F1000 code and it produced 250mm accurately.

Looking at the comments I realise I wasn’t precise enough and yes I am using Ryan’s Pulleys, belts and wires. I have supplied my own boards, motors and drivers and they are as follows:

Arduino Uno

CNC shield V3 with GRBL

Drivers are DRV8825 with stepping set to 1/32

I retried the crown after successfully getting 250mm off the above Gcode line as I thought maybe there was an issue that I had resolved like zeroing prior to running, however the result was the same.

Happy to try out something like lightburn I’m just not to familiar with a lot of this.

Appreciate the assistance.

Also, in case any one is interested and unaware Space X’s Starship fully stacked is potentially launching in 4 - 6 hrs assuming there’s no scrubs.

Cheers

I knew i’ve read grbl somewhere…

Just install the free version of lightburn, configure your workspace on to Device settings/machine settings.

Then take a good ruler, a square, put a pencil on your spindle (use something to fix it in place) draw a 100*100 square and measure,

Grbl let you do some pull off to each motor on any axis after homing, (use some calipers for a more precise measurement).

After yoy get a good square, try doing a big square and verify your measurements (on my lr2 i used some lines on the tubes for a 0 then measured the distance it moved) i can provide you some photos if you need more assistance.

So, the machine is fine, and you have an authoring discrepancy. A number of CAM settings can impact the size. For example, if you were doing a contour cut, the width of the bit is used in calculating the g-code. Depending on whether you are cutting on the inside or outside of the path, the g-code will be bigger or smaller than the path by half the width of the bit you specified for the cut.

I’m not an Estlcam user, but if you post a picture or two from Estlcam of your crown, someone on the forum should be able to spot what is going on.

Yes you are correct; the pencil method should be used with a 1.00 diameter bit setting and on the carve (in the center line) tool. If he opens the grbl sender (not cncjs) he will be able to mod his steps per mm easy by just jogging the machine to make the square. (I assume he at least knows how to measure the diagonals)

Hi Guys,

Robert you are right I had an authoring discrepancy, I had been using the testcrown 12mm/s GCODE from EstlCAM Setup - V1 Engineering Documentation which must be configured in some specific way to marlin/standard machines which had that sizing issue when I ran it on mine (Grbl), but when I ran it just now using the Crown Vector file imported into ESTLCAM and sized for 150mm it produced it correctly.

Which tracks with the fact it was able to reproduce that G0 X250 F1000 instruction to 250mm correctly, for now I will chalk this up to a win and look at buying a router and printing a bracket to suit.

Thanks so much for your help guys!

3 Likes

Glad you sorted out. Let people know if you need help with anything else. Now enjoy your chew &chip machine