Maslow Home Maslow Community Garden

Discussion Regarding Triangular Calibration


Would it help if the maslow changed reference point (0,0) to top left corner of the work area instead of center? Or at least in the Y use the top of the sheet? That way its not trying to calculate +and- values, everything is always in a positive direction.
Or does that even make any sense?


I am no shepherd and agnostic, but it hurts to read this.
If you can find a way, please keep up the contribution.
Regards, Gero


the problem is the machine is most accurate in the center, with ‘the parabola of accuracy’ (my term) decreasing in the lower corners, and reaching up the outside edges.

I agree that the calibration routine needs improvement, we all do, but we’re still developing the routine, let alone simplifying it for the ‘end user’. This project, while delivering pretty impressive results so far, is still quite a bit away from ‘plug and play’.

I’ll note that when you say ‘hey maslow’ you’re really just already talking to the folks here, there is NO formal team: no programming office, no coders on payroll.

Please be patient and know that everyone is trying their best to find solutions with the time they have.

That said, i’m confident that the bugs will get wrung out and with a few iterations, the routines for getting a machine dialed in quickly and accurately will improve.




Its encouraging to hear some honest feedback. Thank you


Stay with us! Without knowing you became a chipmonk!


I wonder does anybody have 2 machines. One that calibrated accurately and one that wont to compare settings?
Can someone whos machine is accurate share theyre config and setting so i can try using that with just changing motor spacing and height above workspace of coarse? I think those are the 2 settings that would need to be changed if we assume the chains are identical specs.


I wish I understood how chain sag compensation is calculated…

I believe it’s just by ‘best fit’ to the equasions.

I wonder instead of calculating these imperfect “desired” chain lengths
whether we can just quantify the error as a difference in actual cut length
verus the desired cut length(which are known values.)

cut spacing means nothing, until it’s translated into chain lengths.

David Lang


it wouldn’t help, the 0,0 point is arbitrary and gets translated before being


Has anyone correlated a difference in accuracy between top feed and bottom feed? I’m using bottom feed.


As long as the math is correct for chain wrap calculations, I don’t see a difference, but I’ve not put it to test.


although bottom feed is better suited to using weights instead of bungee cords,
which can avoid the backlash issue better.

nobody has measured the differences between the two approaches.

David Lang


I’m going to do a full reset today and try top feed. I’ll let you know my results.


Does this mean that one could run the calibration 6 times without throwing anything off? Results should improve? I’ve only been running it once or twice.


Theoretically, you should get better and better results the more you run it. The problem though is that the more times you run it, the more chance for you to measure something inaccurately and make things worse. Once you get down to really close measurements to the desired measurements, I think the risk of getting a bad number increases.


I’ve played with the calibration software more, adjusted the adjustment scales of different variables, limited the amount of adjustment for some variables, and came “closer” to a solution. Now everything is off by about 0.7 mm.

  • Motor Y Offset: 472.291
  • Rotation Disk Radius: 139.554
  • Chain Sag Correction: 42.069
  • MotorX: 1803.3 (3606.6 mm motor spacing)
  • Left Chain Compensation: 0.572%
  • Right Chain Compensation: 0.584%

Calibration settled on the following error values:

  • Error Magnitude (RMS): 0.765
  • Left Chain Error Cut 1: -0.6198
  • Left Chain Error Cut 2: 0.8017
  • Left Chain Error Cut 3: -0.7146
  • Left Chain Error Cut 4: 0.8967
  • Right Chain Error Cut 1: -0.6194
  • Right Chain Error Cut 2: 0.8017
  • Right Chain Error Cut 3: -0.7149
  • Right Chain Error Cut 4: 0.8970

I’m pretty sure my motor spacing is 3601.2, the 3606.6 number is compensating for something. Perfect is the enemy of good.


As long as the end results are good! :wink:


Here’s my cal routine:

I hardcoded my values into it but there’s an option to type in new values if you want to when you run the program. If you are going to use this, I’d recommend changing the the initial values in the code, run the program and hit enter until it starts optimizing. If you hit enter, it sticks with the hard coded values.

The main difference between this method and the current method is this method calculates a cumulative error between the chain lengths, makes a small random adjustment, and if the error reduces, then it keeps the change and if not, it reverts back to the previous values.

It’s also been modified by making measurements from left chain and right chain. I added chain compensation factors but I’m still waffling on whether or not they actually should be there and if so, if I’ve incorporated them correctly.

There’s some commented out code, like scaleMultiplier, that I’ve been playing with to try to get out of local minima, but so far it really seems to blow up values.

I’ve also incorporated some limiters.

  • rotational radius kept to within 2 mm of desired rotational radius
  • motor spacing kept to within 4 mm of initial motor spacing
  • chain sag kept between 10 and 60
  • chain tolerances kept between 0.1 and 0.6

run it by typing:



Right… that remains to be seen.


Are all these tests theoretical/software based so far or have you tested them on your machine?

Will this inject itself into ground control or need to be manually entered?