Hi, I finally had time to assemble the unit and start the calibration.
position: horizontal
anchors in concrete, can’t move
dimensions 417x312 cm to be able to cut 250x125 cm sheets.
firmware 1.20
calibration without any router bit, z axis bottomed out
first calibration starts from the center, each belt is around 5 cm longer than needs to be.
finding anchors on a larger area gets quite low fitness. I’ve tried to mess with the calibration grid in maslow.yaml and edit values of anchors but nothing really helped…
I’ve read that early 4.1 units had tighter spool fitment so I’ll try to address it later, but I wonder if the measured data could show a hint where possibly can be an issue. I saw sometimes you recommend checking the data on Maslow CNC Calibration Simulation but I don’t know what to look for.
Also, when the calibration stops, maslow is usually pretty far from center. Does it mean that re-running calibration doesn’t need to retract/extend belts again? (this step was not totally clear to me)
Looking at the logs I’m not seeing anything that looks catastrophically wrong, it’s very very close to working.
It seems like maybe in the bottom left and top right corners something is a little off so it could be good to keep an eye on the machine when it’s there.
The first thing that I would try changing is to mess with the “Work Area” settings. The measurements will all be taken in that area and it seems like you are getting good measurements towards the center and worse out at the edges so starting off with a smaller work area should get you up and running and then you can grow it from there.
thank you…, so I need to verify the dots in the calibration simulation…they should ideally overlap, got it.
You’re right, I was able to calibrate it successfully with a smaller area (1200x900 mm), with fitness 0,612.
My problem is, I don’t know what else to do to improve accuracy on a larger area. I’ve tried messing around with the calibration grid and manually overriding measurements in the maslow.yaml but with no luck of getting better results.
Do I need to actually modify these calibration grid settings?
Maslow_calibration_grid_width_mm_X: 1200.000000
Maslow_calibration_grid_height_mm_Y: 900.000000
Maslow_calibration_grid_size: 9
I’ve read in another thread that the vacuum attachment may touch the belts in certain position so I’ll double check what’s going on near those top right and bottom left areas. I think those two have belts in the lowest position. My spoil board is 21 mm. Maybe when cutting anything, the anchors are just a bit too "deep - flush with the floor…)
I’m 100% sure the frame can’t flex, and there’s not much to check. I’ll try to verify if the spools aren’t too tightly clamped but that’s all I could think of.
Could you share what accuracy are you able to get from your machine? is it within +/-1 mm when you compare digital vs. real cut? or more?
thank you…, so I need to verify the dots in the calibration simulation…they should ideally overlap, got it.
You’re right, I was able to calibrate it successfully with a smaller area (1200x900 mm), with fitness 0,612.
My problem is, I don’t know what else to do to improve accuracy on a larger
area. I’ve tried messing around with the calibration grid and manually
overriding measurements in the maslow.yaml but with no luck of getting better
results.
Do I need to actually modify these calibration grid settings?
Maslow_calibration_grid_width_mm_X: 1200.000000
Maslow_calibration_grid_height_mm_Y: 900.000000
Maslow_calibration_grid_size: 9
I don’t think those are used any longer, several versions ago we went from
having people manually set the grid to having it automatically set the the grid
the wider the area that it measures, the better
post v1.21, Bar has introduced new calibration calculation math. I created a web
page to let me see the accuracy it produces and to let me throw out measurement
points that are too far off
copy the largest array of points from a find anchors run log and this will run
the new algorithm, tell you it’s estimate of accuracy, and let you adjust the
threshold for what points it should throw out for being outliers (including a
historgram to show the number of points in each error category and where on the
sheet they are)
another approach you can take is to measure all 6 distances between anchors and
enter the results into a manual calibration tool. I have one at
I would suggest doing this just as a sanity check against the automated methods.
The default now is to have the grid width and height set to 0 and 0 and then the machine will automatically calculate the best grid to use for your setup. That might be worth giving a try.
I’m in the process of making some big changes to how the math works which will require some accuracy testing so I’ll post some good measurements soon. Mine is all over the place because I am always deleting my .yaml file and starting over, but I have for sure had it within 1mm many times. Generally I think what happens is that people keep messing with things until they get a good set of settings and then they stop messing with it…but where we want to get to is you can press “locate anchors” once and it will give you good results the first time every time in every setup. We’re not there yet, but we’re getting closer steadily.
new parts arrived…installed new spools and ran couple different calibration setups… couple nay, and some yay’s
my frame is horizontal, roughly 4170x3130 mm,
with mounts in concrete, 3 cm deep,
spoil board 22 mm from few smaller OSB sheets.
the very first attempt with firmware 1.21 was successful for work area 2500x1200 mm but I didn’t save the yaml, just the log
All other attempts had low fitness.
I’ve noticed the lowest (bottom left) belt can touch the vacuum adapter when sledge drifts around so I’ve fixed it with a bit of heat. not pretty but has a bit more space.
I ran into a few issues with the 1.21 firmware
(after some failed calibration, or network reconnect it stops responding - it logs the action but won’t do it (lowering z-axis, release tension…).
Restarting triggers unknown state → all has to be disassembled, retracted etc… that’s a bit annoying to do repeatedly :]
Downgraded to 1.19, replaced the yaml file with one from git, reduced work area from 2500x1200 to 1500x900 and got 0.59. yay, ok, I’ll lower my expectations for now
A few questions
What are okay fitness values? 0,45 is the minimum, but what is good enough?
I’ve read that calibration force doesn’t need to be super high. I’ve used 800… does increasing it in horizontal layout helps with anything?
Is my frame size large enough for 2500x1200 mm sheet?
The top left arm has quite steep angle with anchor — during the later calibration phase (around waypoint 70), when it moves from the last bottom left to top left edge, the sledge lifts.
Would raising the mounting point for top left anchor help? I can try to use a longer bolt with spacer under the belt end, but not sure if calibration counts with these adjustments.
When replacing spools, there seems to be a bit bigger wiggle room than I thought, can’t this affect accuracy? especially with the top arm?
Calibration should start from the center, but when it fails, the sledge is on the right edge. Next recalibration usually has much lower fitness values than when I start from the center. Does it have a negative effect? or doesn’t matter where it is now?
good size frame, this should let you caut a full sheet
with mounts in concrete, 3 cm deep,
spoil board 22 mm from few smaller OSB sheets.
these sound very reasonable
the very first attempt with firmware 1.21 was successful for work area 2500x1200 mm but I didn’t save the yaml, just the log
if you have the logs, please post them. the logs do include the calculated
values so we can point them out and you can enter them
A few questions
What are okay fitness values? 0,45 is the minimum, but what is good enough?
that depends on what you are cutting. someone who is cutting furniture with
slots needs a more accurate machine than someone who is cutting shapes to put
out in their yard for holiday decorations.
we don’t really know
I’ve read that calibration force doesn’t need to be super high. I’ve used 800… does increasing it in horizontal layout helps with anything?
no, it seems that higher belt tension limits during calibration tend to stretch
the belts just a bit and result in more noise in the measurements, and lower
accuracy. 800 is pretty good.
Is my frame size large enough for 2500x1200 mm sheet?
The top left arm has quite steep angle with anchor — during the later
calibration phase (around waypoint 70), when it moves from the last bottom
left to top left edge, the sledge lifts.
Would raising the mounting point for top left anchor help? I can try to
use a longer bolt with spacer under the belt end, but not sure if
calibration counts with these adjustments.
IMHO the flatter the belts the better. when you raise the anchor, you need to
make sure it isn’t going to flex. I designed and use these
(make sure to set the height before you export and print)
if you make a set of plywood disks as your spacers, glue them together and have
the bolt pull tight against the ground so that they cannot shift and then have
the anchor sit above that
When replacing spools, there seems to be a bit bigger wiggle room than I thought, can’t this affect accuracy? especially with the top arm?
in theory, it shouldn’t, the down force should keep them stable. that said many
people have adjusted things to make the fit tighter (teflon shims or other
changes)
but this is one of the reasons I like to have the belts flat
Calibration should start from the center, but when it fails, the sledge is
on the right edge. Next recalibration usually has much lower fitness values
than when I start from the center. Does it have a negative effect? or doesn’t
matter where it is now?
I don’t know that anyone has tested with starting calibration near the edge.
(honestly, I’ve tried to paste some later calibrations in your tool but I don’t know what to look for, except outliers) Maslow Levenberg-Marquardt Calibrator
I’d like to cut furniture and connect pieces with dogbones. I understand for simple silhouettes fitness doesn’t need to be too high.
Nice model, thanks for suggestion about the anchors, I’ll try the wooden support. Btw does the “calibration” detects different z-height automatically or that needs to be edited in the yaml file before calibration starts?
answering questions first, then looking at the logs…
I’d like to cut furniture and connect pieces with dogbones. I understand for simple silhouettes fitness doesn’t need to be too high.
ok, for that you will need to be pretty accurate, and I don’t know what fitness
you need. one thing we have seen is people reporting very good accuracy across
most of the work area, but then bad accuracy in the few inches next to an edge
Nice model, thanks for suggestion about the anchors, I’ll try the wooden support. Btw does the “calibration” detects different z-height automatically or that needs to be edited in the yaml file before calibration starts?
current calibration does NOT detect Z heights. I am wondering if it’s possible,
but need sample measurements (see
From your serial log the following indicates Maslow will be accurate in the centre, but unacceptable towards the edges. Getting your belts more parallel will help, I think. You have to change the Z values in your maslow.yaml file manually, if the belts are parallel when the Maslow is right down, set them to 0.
Find Anchor Values:
Fitness: 0.8533369
Maslow_tlX: 9.9
Maslow_tlY: 3108.4
Maslow_trX: 4178.3
Maslow_trY: 3120.1
Maslow_blX: 0.0
Maslow_blY: 0.0
Maslow_brX: 4166.3
Maslow_brY: 0.0
A command to save these values has been successfully sent for you. Please check for any error messages.
tlx 16.5 tly 3155.63
trx 4144.33 try 3162.69
brx 4130.47 bry 0
blx 0 bly 0
(and there is a bug that it’s now showing the error estimates of these points)
but it is also saying that there were 13 points where the caluclations are more than 4.5mm from being accurate, and if they are thrown out and not included in the calculation, the results would instead be:
which shows that you still have a cluster of oddball measurements in the 3.8-4.5 range that are being included
and a plot that shows where on the sheet the ones that were already excluded are
in your first log, it said that before the final pass around, it calculated the anchors to be at
Find Anchor Values:
Fitness: 0.6119541
Maslow_tlX: 13.2
Maslow_tlY: 3115.1
Maslow_trX: 4175.7
Maslow_trY: 3117.4
Maslow_blX: 0.0
Maslow_blY: 0.0
Maslow_brX: 4159.1
Maslow_brY: 0.0
the third log is showing a bit different
Find Anchor Values:
Fitness: 0.4968109
Maslow_tlX: 9.9
Maslow_tlY: 3108.4
Maslow_trX: 4178.3
Maslow_trY: 3120.1
Maslow_blX: 0.0
Maslow_blY: 0.0
Maslow_brX: 4165.6
Maslow_brY: 0.0
I would use the coordinates that exclude the outliers (i.e. inliners only, need to work on making things clearer) from either of the first two. from the map of the outliers, I would say that there is something going wrong along the top. if you run calibration again, watch if the belts are hitting anything (that bottom left belt hitting the dust collection could be an issue for an example), so I would expect that the accuracy of the machine along the top may have a problem
since the page has a bug that isn’t showing the accuracy estimates on the ‘all points’ section, I increased the outliers threshold to 20 so that everything is included, and this is the accuracy estimate that it makes
Thanks David for detailed info it definitely helped me to better understand how all works and how to analyze the data…
This weekend I’ll try raising the anchor (I’ll try just the top left to be parallel, as that one obviously causes troubles.) I wanted to do a test cut with 1x1 m MDF Desk, so I’ll start with a smaller calibration size first.
The faulty top edge sometimes is probably caused by the limited size of my spoilboard. I thought it’s fine but as I see now, I need to get something just a bit bigger… that will take some time though.
I’ll try to keep in mind to collect the data for the z-axis if I’ll get successful calibration.
Btw the last image with map of points you’ve analyzed with scattered points is probably caused by finding anchors again after a previous calibration process failed…I’ve tried to run it without releasing tension and retracting/unmounting all…it’s just too annoying process to do it every time calibration fails…
But I see it’s probably not a good idea
This weekend I’ll try raising the anchor (I’ll try just the top left to be
parallel, as that one obviously causes troubles.) I wanted to do a test cut
with 1x1 m MDF Desk, so I’ll start with a smaller calibration size first.
The faulty top edge sometimes is probably caused by the limited size of my
spoilboard. I thought it’s fine but as I see now, I need to get something just
a bit bigger… that will take some time though.
it needs to be big enought to not let the router tip. I have ended up sliding
the spoilboard under the router if it got too near the edge (I use a sheet of
pink foam). I try not to do it while it’s measuring, but while it’s moving I
figure it’s safe enough
the wider the area you take measurements from, the more accurate your results
will actually be. the old fitness score does not correctly reflect this. It can
look good on small areas, but the resulting anchor point locations can be less
accurate than a result over a wider area that has a lower fitness score.
I’ve raised the anchors with a spare wooden blocks I had around. the belts might not be totally parallel though. I don’t have a way to cut it precisely and my manual skills to cut straight thick blocks are quite poor.
I’ve ran the calibrations again few times with 1.20 firmware and fitness was improved. Just the problem of lifting sledge moved to the bottom left position. From recording I see now that it’s lifted when top left anchor is pulled tight. My anchor block is raised 160 mm and belt is parallel as my spoil board is quite thick but I’ll try raising it even more and try different retraction force.
I’m just wondering — if I change the retraction force, do I need to restart fluidNC? I can change it in the yaml or in the UI, and I’d like to know if there is any difference… as in the popup window where you retract/extend belts, find anchors etc, in config you can enter the value without restarting.
For maximum accuracy the lower the retraction force, which still allows all the belts to retract every time is better. You do not need to restart FluidNC. If you change it in the yaml file, you need to set and then save. In the UI its automatically saved. Either will work without restarting FluidNC.
Have you adjusted the Z values to reflect the new heights?
You can also try reducing the size Maslow work area X and Y which will restrict the area the Maslow can go to.