Maslow Home Maslow Community Garden

Holey Triangular Calibration


One thing. The multiply vs. divide struck again. You want to divide by (1+tension*chainElasticity), rather than multiply, the same as the chain tolerance. In your firmware, this is line 271 and 272.


OK. I did it. I was a little reluctant because I have a working, calibrated Maslow, and I didn’t want to screw it up. It is fixed.

Note for those who have used the Holey Six Point Calibration, this change inverts the chain-tolerance, so a calibration implemented with the earlier implementation will have to use an inverted chainTolerance number.

Here is the conversion equation:


Well, look at the parenthesis groups : A/( B * C )
A = ChainStraight portion
B = (1.0f + sysSettings.leftChainTolerance / 100.0f)
C = (1.0f+Tension1*chainElasticity)
It looks like both B and C are dividing A. Is that right?


Woops. You are right. Never mind.


hi I m running your calibration but link to 6 hole test is bad. can you send link to


I updated the link in the original forum post. It should work.


Ok, now the .py file is a python script.
Are you familiar with runing a python scrtipt?
Are you runing Linux, Windows, MacOS?

@Joshua , Jimr needs some help to run the optimisation script.
I am only familiar with Linux, so we might need your help.
Maybe a link to a Python installation for other OSes?


Thx for Assist . I found the python
Script and copied to a file called it then in terminal, iam.Ubuntu user, ran python
Error was import of widgets not found. How do I get the script to find widgets?


There is no import of widgets in the script. I am not sure what is causing this issue. It is somewhat context sensitive, in terms of being able to find the referenced class. Did you copy the script out of its original directory, or try to run it from somewhere other than its original directory? Could you post your script?

I think I understand. From the top-level of the repository folder, there is a sub-folder named CalibrationWidgets. If that folder is not right next to the script (in the same directory as), it will not be able to find CalibrationWidgets.HoleyCalibration, which is the HoleyCalibration file in that CalibrationWidgets subfolder.


On my side, I cd GroundControl then gedit to input values and finally python ./ to get results on the console.


hi fellas, thx for assist. my stupidity. I finally realized all components were in initial download. However, linux terminal runs py but does not offer an editable text area. here are my measurements. please run and send specs. thx

distance between motors:3009.9
vertical from top of work area to motors:16 7/8 or 406.4mm
m1 37 13/16
m2 37 3/4
m3 37 3/4
m4 37 3/4
m5 28 1/4
m6 28 7/16
m7 28 1/4
m8 47 3/8
m9 47 1/8
m10 47 1/8
m11 47 3/8
m12 9.5

thanks for doing this.


Thx Joshua, I did measurements and posted to holey thread. Just an observation, as it stands right side if CNC appears more accurate. Based on measure ments


Hi @Jimr
Do you use the maslowCNC ring kit? That would mean rotation radius of 138.14mm
Do you confirm your frame has the chain going to the sled on the bottom side of the sprocket?

If so, here are the results I could compute for you. (1.1 KB)
HoleyForJimr_rev0.txt (1.9 KB)

Distance Between Motors:
Motor Y Offset:
Left Chain Tolerance:
Right Chain Tolerance:

It is possible that the calibration is not complete if you did not enter a sled weight.
Have you identified the sled weight?
(Sorry…I must go for the day.)


Wow thx very much. Yes iam triangle and bottom feed. I have added 22.2 as sled weight. Did not having my sled weight alter calculation?


Sorry. I was out of the house for a few hours.

I did look at everything, and it all looks good. The distance between motors number increased by almost an inch from the original measurement. That seemed like quite a bit; however, it aligns with the center, vertical measurement being 3/16" longer than the two side vertical measurements. The distance between motors is greater than the firmware. I think it is OK. I give it a thumbs up.


Should I run 6 hole test again to see results.


you can. I would be interested to see the results.


Yes, not having specified a sled weight should alter the calculation (@Joshua your thoughts about this?). Here is why:

  • With the Holey Calibration firmware, sled weight makes chain stretch compensation possible. It also makes Sag correction automatic. Overall it improves the vertical position especially in the upper half middle of the workspace, and position in bottom corners. So the 6 point calibration should be nicer if done with better control.

  • The default value in Joshua’s Beta test firmware is 0. But if you had a sag compensation in the previous setup, then it might have still been there stating how many pounds for the sled when you first Holey calibrated :thinking: .


Hey josh, any idea why maslkw keeps erroring on me. I have set chains 6 times and yet error keeps coming up.


Hi, I tried to run this morning and get set chain error on every move. I’ve set chains till I started crying yet on first move after go to center it errs again . I get a fast not keeping up and then set chains errors. I set to ho
ley specs and have Joshua’s firm Ware