I’ve completed my Lowrider build and got a nice crown.
Now that I’m running some cutting tests into 12mm MDF, I’ve noticed that while the cuts look great, my dimensions are off. The holes and pockets are 1.2mm smaller in every dimension and the parts are about 1.5mm bigger in every dimension (edge to edge). This is true regardless of the length of the part or hole, so I’m currently not expecting it to be a steps per unit thing.
I used a simple test DXF with a round pocket and used Estlcam to generate my Gcode. I attached the gcode and a screenshot since I can’t attach the DXF or the Estlcam file. If needed, I can upload these somewhere else.
The bit is a 3mm upcut 2 flute carbide end mill I got from Aliexpress and I measured it to assure it’s actually 3mm in diameter.
I’m running Marlin 2.0 on a SKR V1.1 board with DRV8825 stepper drivers (1/16 microstepping). It’s a fairly new, cheap 32 bit board (I had planned to use a MKS Gen L, but broke it).
Anything I should check or additional details I can provide to help me debug this?
Are you sure your bit size is correct in your CAM software? Are you using EstlCam? It sounds to me like the software thinks you have something like a 1/4 inch bit but in real life you have a 1/8 inch bit. That would cause what you are seeing.
That was my first thought as well Aaryn. However looking at the Gcode it appears that this is not the case. In the last part it’s cutting out a 75x75mm square part where the lower left corner is at X=0, Y=0. I’ve pasted a snippet of relevant gcode below where you can see it’s traveling to the extremes plus a 1.5mm offset which sounds correct for a 3mm bit.
I’m wondering if maybe somehow Marlin misinterprets the arc moves (on 32 bit boards?)
Hmmmm. I agree the Gcode looks correct. Head scratcher.
You could be right about the 32 bit boards but I don’t think that sort of thing would go unnoticed. I would expect to see more issues like that listed in the Github Marlin Issue Lists.
If it isn’t gcode then it must be the machine. I wonder if your machine is loose at all. With the Router unplugged and the steppers locked could you grab the bit and wiggle it around. Does the machine have any play in the X or Y direction? Lose belts or tension bolts can cause strange behavior with cuts. Maybe get a video of it cutting a circle hole. Possibly pictures of the hole afterward.
Thanks Aaryn for walking through this with me. Before I got to this point, I did have loose belts and pulleys, which resulted in things like oval holes, but these have been fixed. I can’t detect any play in the machine.
I might try an 8 bit board, just to rule that one out.
You were spot on Aaryn. I just used the same gcode to cut some HD foam as Ryan suggests in the Milling Basics document and the dimensions were accurate to <+/- 0.05mm.
I had been cutting MDF at 2.4mm DOC at 8.33mm/sec and 15k RPM with my 3mm 2 flute endmill. That didn’t seem excessive to me based on what I read on the forum, but it seems that it’s not the right approach. When I tried to increase the RPM to 30k/min, the bit got black, so I’m thinking that’s too fast.
I tightened the belts even more and will now try the following
Well, that settles it. I’ve replaced my cheap 3mm Aliexpress end mill (22mm long) with an 8mm long single flute cutter of the same diameter, but from a reputable local manufacturer (European Norm Tools). I’ve also increased the speed to 22k RPM.
My dimensions are now spot on and my cuts look super professional. It was tool deflection due to insufficient cutting force after all. Maybe the tool was too long too.
Thank you again for your help Aaryn, you pointed me the right way!
I’m trying to cut 1/2-inch holes in 3/4-inch plywood and am using a 1/4-inch bit. My holes are coming out a bit small… worst hole has been around 0.46 inches and best hole at 0.48 inches. What level of accuracy should I be able to expect?
I set up gcode to cut 9 different holes at different feed rates (900, 800, 700… 100) just to see if I was running it to fast. I repeated it at two different speeds on the router (2 setting, and 4 setting on the 611), and then tried two two different bits (at 2 setting on router). One bit was cheap chinese 1/4-inch straight cut and another was a 1/4-inch spiral (can’t remember which direction, might be a compression) from Maslow CNC. I get basically the same results on all the cuts and the 900 mm/min feedrate was about the same as the 100 mm/min. My DOC is 3.2 mm per pass (1/2-width of the bit… is that too much per pass on the lowrider?)
I looked at the gcode developed by easel (series of G1 straight lines to approximate the circle) and the max dimensions are 0.4983 inches apart. This is the beginning portion of the gcode:
The max X is 78.977 and min X is 72.669, yielding a difference of 6.308 mm. By adding the width of the router bit (which I measured to be 6.3 mm wide between cutting edges on the straight bit) I should be at 12.608 mm (0.4964 inches) but I’m not really coming very close… unless that’s what I should expect from an accuracy standpoint.
I encountered some inaccuracy that was repeatable, where holes would be too small and parts would be too big by the same amount (almost exactly). If I remove the bit and insert it again, it’s different but when I leave it alone it’s repeatable.
As a workaround I cut a test part and hole (with finishing pass) and measure the effective width of the bit that way, which takes runout into account. Then plug that into CAM and you should get precise holes and parts, to within your repeatability. If it’s not repeatable then you’re out of luck anyway so that’s the best possible.
It’s ugly but I chalk it up to not using precision spindles or collets.
Every 1mm that you fudge the diameter, the cut will move by -0.5 mm. For a hole this will change the radius by half the fudge amount, so the change in diameter of the hole will be equal to the fudge amount.
If you holes are too small by 1 mm, you would subtract 1 mm from the diameter of the tool.
Well, I had a 50/50 shot at guessing correct, but, I used 1/2 the error and I’m pretty much spot on… 0.495 inches. I also cut a part (8-inch square) and it came out 1/32 inch shy. I’ll take it!
But, that all still makes me wonder… I don’t know if my belt tension is correct and wonder if any of that could have an impact. I’m hesitate of overtightening it. Im also wondering if some of the default settings of the controller could be throwing it off. I have to set my max feedrates everytime I reset things because the FW feedrates are way too high (z axis won’t even lift at the default rate). See Adjust cncjs travel speed. I’m wondering if settings like acceleration/jerk might be too high as well. Is there a post with “standard” or “recommended” settings?
When I run M503 on a reset mini-rambo, I get:
M203 X120.00 Y120.00 Z30.00 E25.00
M201 X400.00 Y400.00 Z100.00 E2000.00
M204 P400.00 R3000.00 T400.00
M205 B20000.00 S0.00 T0.00 J0.10
I already knew the FW didn’t have the correct feedrate values, but I think the acceleration values are off maybe jerk… EJERK is the same 5.0 value in both the current mini rambo FW and the v1cnc_rambo, but junction_deviation_mm is different … So, I’m going to try everything again, but issue the following beforehand:
M203 X50 Y50 Z15
M201 X180 Y180 Z80
M205 J0.04
Update:
Got pretty much same result, but this time everything was more consistent… 0.475 inches. So I tried increasing the size of the hole proportionally (0.5*0.5/0.475 = 0.526) and got pretty much spot on with the hole and I could fit my bolt into it.
That setting is not used when we use Junction deviation. I should have a set of new firmware for everything soon, waiting to see if my change gets pulled into Marlin first.