Software and Calibration Trouble

Matt wrote:

@bar do you have any suggested numbers I should increase to? Maybe 1500 for
both?

you need to increase the retraction current until the belts reliably retract

you need to increase the calibration current until the belts reliably pull tight
during calibration

you can also take the arm apart that’s not pulling tight and see what’s binding
up in it (possibly sand the spool carefully if that’s what’s tight, see if you
have plastic powder jamming up the gears, add lubrication, that sort of thing_

David Lang

2 Likes

I think that 1500 for both seems like a reasonable thing to do :grinning_face:

Well, I got closer but still no cigar. It started out with fitness values in the .9s but then dropped to the .2s later in the calibration. It looked like the bottom was pulling and then making slack on the top belt. I will try again tomorrow with a little less force. That was at 1800 for both. I also think there may have been some trouble from having pressure from the z motors pushing down? Maybe not but that seemed to help it run smoother when i raised the z up slightly.

At first the bottom left wasn’t pulling tight but that seemed to get fixed with either the increased force or raised Z.

1 Like

Matt wrote:

Well, I got closer but still no cigar. It started out with fitness values in
the .9s but then dropped to the .2s later in the calibration. It looked like
the bottom was pulling and then making slack on the top belt. I will try again
tomorrow with a little less force. That was at 1800 for both. I also think
there may have been some trouble from having pressure from the z motors
pushing down? Maybe not but that seemed to help it run smoother when i raised
the z up slightly.

The calibration will be off a bit if you are not all the way down on the Z

David Lang

1 Like

That does sound like progress!

You can always try a smaller grid size like 500x500mm. It might not be as accurate, but it’s more likely to succeed on the first try

I hesitate to suggest an experiment, but we have an experimental build that does an automatic grid sizing based on the first 6 points it tries. We’ve had two experienced people run it and try it. I think it would be useful to see if this helps someone who is less experienced and struggling or not.

If you want to try it, download the firmware package from Implement automatic calibration grid sizing with safety constraints, adaptive validation, and non-square grid support · BarbourSmith/FluidNC@18fab56 · GitHub and unzip it
upload this to the maslow
set your grid size in maslow.yaml to 0 for both x and y
try a calibration and report how it goes
there will be two key areas in the log that would be good to report.
first there is a block about the grid size, along the lines of:

[MSG:INFO: Calibration area: 0.675 m² (674755.687 mm²)]
[MSG:INFO: Grid size: 9�7 = 63 points]
[MSG:INFO: Frame dimensions: 2434.600mm � 1922.600mm]
[MSG:INFO: Clearance from edges: 755.356mm (width), 596.128mm (height)]

and then there will be the final results, along the lines of

Fitness: 1.4253239298062172
Maslow_tlX: 6.0
Maslow_tlY: 1918.7
Maslow_trX: 2444.1
Maslow_trY: 1904.2
Maslow_blX: 0.0
Maslow_blY: 0.0
Maslow_brX: 2441.1
Maslow_brY: 0.0

In the logs, thee are also datablocks showing the belt lengths for each location, along the lines of:

CLBM:[{bl:3022.86,   br:3093.18,   tr:3004.56,   tl:3108.17},{bl:3130.64,   br:2986.16,   tr:2896.75,   tl:3221.28},{bl:3230.49,   br:3084.44,   tr:2797.39,   tl:3139.02},{bl:3131.43,   br:3190.20,   tr:2904.42,   tl:3019.99},{bl:3025.95,   br:3301.45,   tr:3024.95,   tl:2902.08},{bl:2919.18,   br:3210.90,   tr:3115.95,   tl:2991.94},]

These are useful for us to be able to visualize what the machine is seeing
This may not help at all, in which case you will need to go back to the stock release and we can keep working. But it would be useful to us if you are willing to give it a try.

@dlang @bar I’d be happy to try that experimental firmware in the future and give my results. However, I am happy to report that I was able to get 3 successful calibrations in a row today. I did a 500x300 Grid size with a 5x5 point setting.

That said, I am still having the problem that every time I get a successful calibration, it won’t save the data if the machine turns off or restarts.

Each time calibration completed I saved the maslow.yaml file. When I restarted, I tried to load that in and it made no difference for the machine knowing it’s location.

Am I doing something wrong or is there a step I am missing? I am saving it by going to the local files tab and hitting download.

I also attached the log file in case that shows anything helpful…

Maslow-serial (5).log (24.4 KB)

1 Like

Hmmm. Can you post a copy of your Maslow.yaml file?

see attached. This was the last one I downloaded earlier. I know to change the name and remove the (1) before uploading.

maslow (1).yaml (6.7 KB)

Matt wrote:

Each time calibration completed I saved the maslow.yaml file. When I restarted, I tried to load that in and it made no difference for the machine knowing it¢s location.

Am I doing something wrong or is there a step I am missing? I am saving it by going to the local files tab and hitting download.

what is saved in the maslow.yaml file is the locations of the anchors. Up
through 1.12, every time you power off, you need to retract the belts, extend
them, and apply tension so that the machine knows where the belts are.

If you do this, you do not have to reload the file ot do another calibration.

1.13 has a patch in it so that when the belts are tight (fully retracted or in
the state ready-to-cut) it will remember where they are and when you restart you
can immediately start moving.

David Lang

Thanks! Somewhere along the line I missed that. It saved the calibration after all and I was able to run my first cuts tonight! Thank you @bar and @dlang for the assistance.

I cut a few different squares and noticed that I consistently was pretty accurate in the X direction but off by about .25-.375” in the Y. Would you start with re-calibrating with a larger grid size?

Also, I noticed that spoilboard and material thickness are set to 0. Should I adjust these to the correct settings?

In case it matters, I ran calibration over the spoilboard and then put my material onto it after calibration.

Matt wrote:

Thanks! Somewhere along the line I missed that. It saved the calibration after all and I was able to run my first cuts tonight! Thank you @bar and @dlang for the assistance.

I cut a few different squares and noticed that I consistently was pretty accurate in the X direction but off by about .25-.375” in the Y. Would you start with re-calibrating with a larger grid size?

let’s start with a new calibration. you want to cover as large an area as you
can and not have the belts hit the arms (‘in the green’ with a frame calculator
like https://lang.hm/maslow/maslow4_frame.html )

Also, I noticed that spoilboard and material thickness are set to 0. Should I adjust these to the correct settings?

In case it matters, I ran calibration over the spoilboard and then put my material onto it after calibration.

There is debate on this topic. It can matter, and you can ignore it, depending
on your situation.

The default Z offsets in the maslow.yaml are the distance from the arms to the
bottom of the sled.

In the first frame that @bar built when he set these defaults, it was built from
2x4s with a 3/4" plywood spoilboard and gussets in the corners also made from
3/4" plywood, so these were the correct heights when you did calibration. He
ignored the error that adding a workpiece on top of this added and got away with
it.

Bar was mostly doing 1/2 plywood towards the center of a large frame, so the
errors in belt length were small (it’s only ~2mm of belt length in the center,
about 0.2%)

but as you get closer to the edges, put the anchors down on concrete (at the
bottom of the spoilboard) and use a piece of 2" foam for your spoilboard, and
cut 18mm plywood the errors grow to ~14mm error (~2%) on the position
calculation (and are diffeent for each arm)

so my recommendation is to use the spoilboard setting to record the distance
from the surfact the belt ends sit on and the top of your spoilboard, then when
you add a workpiece, add that (but the difference between a 12mm workpiece and a
18mm workpiece are unlikely to be noticed (~1.4mm 0.2% worst case)

If you raise your anchors so that they are close to flat, these differences
matter a lot less

David Lang

@dlang Apologies for the late response. I got around to trying to recalibrate and ended up less successful then where I started.

My most successful calibration had the frame at 750x450 with a grid of 5x5. When I did my 10”x10” test square I was 1/8” off in the Y direction.

I then updated the firmware to 1.13 and then tried to increase the frame size to 1000x600 with 7x7. My fitness failed so I tried with a 5x5 and that also failed. I then tried to split the difference at 875x525 and that still failed.

I then tried going back to my original settings and that failed as well. I noticed it saying that my frame was not square when the fitness was low. I have never gotten this before and my frame did not change.

I attached the log file from the last fail. As always - any pointers are appreciated.

Maslow-serial (6).log (11.9 KB)

This is safe to ignore, that’s just the system indicating that it is going to use the current anchor point locations as an initial rather than trying to create a new initial guess for them. Basically the system thinks that the current values are better than what it could guess.

I took a look at the log, and there is for sure something strange going on.

Plugging the measurements that it produced into the simulator shows that 1) It does seem to consistently find an answer for me so I’m not sure why you aren’t getting a solution there and 2) You grid pattern is pretty different than what I would expect.

I would expect these two squares of measurements to be roughly on top of each other, but this is what I’m seeing:

Can you elaborate on what you mean by “find an answer”? Also, what would you recommend doing from here? Thanks!

Matt wrote:

Can you elaborate on what you mean by “find an answer”? Also, what would you recommend doing from here? Thanks!

what the calibration is doing is trying to calculate where the anchor points
are. that is 'finding an answer)

I’m heading out for the evening, but bar or I (and some others) should be able
to run your measurements through a web based calculator program to have it try
and find the anchor locations. you can then enter them in manually and go on to
the next step

David Lang

Looking at your log I’m seeing “Calculated Fitness Too Low. The process will automatically try again” which basically means that the math couldn’t compute an answer for where the anchor points are, but when I plug those numbers into what should be the same math on my computer it does find an answer pretty quickly.

Are you running the find anchor location process right right after starting the machine up?

Something like: Power On → Retract All → Extend All → Find Anchor Locations?

Is your Z-axis lowered all the way down while running that process?

Yes - in this case it would go into what I am calling the “death loop” of low fitness so I would eventually unplug it. After that the maslow.yaml file would say that it was corrupted. I would re upload a fresh one, power the machine off and back on and then adjust the parameters. After that I would do the sequence you mentioned of retract - extend - find anchor points. I kept my Z down through all of this.

Matt wrote:

Yes - in this case it would go into what I am calling the “death loop” of low
fitness so I would eventually unplug it.

common causes of this
belts not pulling tight at measurements
anchors flexing under tension

there is the option of manually measuring the 6 distances between the anchors
and entering them into a calculator like:

David Lang

Hi David,

I was able to do the manual calibration. That process was easier for me than dealing with the fitness issues I was seeing before.

That said, I am still getting cuts that are consistently about 1/8” off in the Y.

Tonight I tried a 10x10 square, a 15x15 square and a 5” circle. Both squares were spot on in the x but off in the y. The circle was within the 1/8” of variance around the diameter.

Any suggestions on this?

G-Code below to help rule that out. 1/4” cutter.

G20 G90 G40

G0 Z0.5
G17
T0 M6
M3
G0 X0 Y0
G1 X-.125 Y-.125 F10
G1 Z-0.063 F10
G1 X15.125 F30
G1 Y15.125
G1 X-.125
G1 Y-.125
G0 Z0.5
M5
M30