Holey Triangular Calibration

This is strange behavior. It looks like it is calculating the sled position as a function of the chain lengths. Usually, it goes the other way: sled position => chain lengths. Because the kinematics.forward is a numeric solution, it could be an issue in that function.

Here is where the code issues that error.

For now, the best we can do is recommend that you return the sled to the home position (0,0) before modifying the calibration in GC. @WoodCutter4, I know this is too late for you now.

(edit)
Actually, I just looked into the code. There are several reasons the machine will report this message. Below is a screenshot of the code.

  1. If the kinematcs.forward method is unable to converge on a position before KINEMATICSMAXGUESS (200)
  2. If the chain-lengths are greater than sysSettings.chainLength.

I am guessing (2.) is the most likely cause. I would go into “System Settings” and look at your “Chain Length” setting. For some reason, it might be too short. If your chain-length settings are less than the 2000 mm, it will issue this error.

Another thing is the “KINEMATICSMAXGUESS” setting. In the GC kinematics.forward function, it is 5000. However, in the Firmware kinematics.forward function, it is only 200. This seems suspicious, too. If there is no issue with the chain-length, you can go into the code and modify this “KINEMATICSMAXGUESS” setting. I did a quick search. It is located in the file, “/cnc_ctrl_v1/Kinematics.h”, on line 27. To change it, simply replace the “200” with “5000”. Then, save the file, re-compile, re-upload, and try again.

1 Like