Really odd effector calibration... any ideas?
I'm getting some really odd results with calibration - hoping someone has some troubleshooting ideas I haven't thought of yet.
I'm using a highly customized setup - Hayden magnetic arms, carriages on linear rails (which use a custom PCB to ensure spacing and size), and a custom effector with an E3D Chimera hot end. My probe is highly accurate and repeatable, and uses the +X nozzle. The -X nozzle is raised a bit such that it does not interfere with calibration.
When I was running traditional 6-factor calibration, the results were always unusable. (>.25mm off at ~50%). I switched to 8-factor, and suddenly the mesh grid probing lined up really well (<.06 typical error). I'm fairly sure I have some bed tilt and the 8 factor was able to compensate for it.
Here's the catch - the values in M666 and M665 look really strange and I don't believe them from my actual build. I can visually see a cant (or off-axis movement) for Z moves that doesn't align with my columns or bed. When I run calibration twice, the cant gets quite a bit worst the second time, visibly off-center from the build plate. If I run it a 3rd time, it's so far off that it stalls the motors during calibration.
The weirdest thing is that when I run mesh probe after a single calibration, all the bed positions look really close and it looks like it is calibrated correctly... barring the fact that it looks like the printer is running 15 degrees off...
After a single calibration, here's the numbers:
M666 X-11.12 Y5.90 Z5.22 A5.05 B3.07
M665 R262.305 L409 B60 H373.036 X-0.041 Y-1.939
I'm confident that my end stops are within 6mm positionally, my columns shouldn't have more than 1mm of positional error, and I think a tilt of ~2-3 degrees for the bed in Y seems reasonable. I can't see any visible effector tilt, but I'll put a spirit level on it next time I try the calibration to be sure.
My primary lead right now is that it is related to the bed tilt and the maybe effector tilt. Another good possibility is that it's related to the probe position in +X.
Just had another thought - would bed localized flatness affect the results significantly? I can run a test on an extremely flat piece to see if that improves anything.
Your tilt values in the M666 command do look way off. They are in percent, the tilt angle is the arctangent of the M666 A or B value divided by 100. Your A value is 5.05, so arctan(0.0505) = 2.9 degrees.
The calibration algorithm assumes that the bed is flat.
I'm surprised that the calibration gets worse of you repeat it. That indicates that your build contains some geometrical "feature" that the calibration algorithm does not model. Can you mount a circular spirit level on the effector, to see if there is any varying tilt?
Thanks for the tips. I would think the bed could easily be off by 2.9 degrees - it is adjustable so I should be able to drive that out now that I can convert between the parameters.
I spent the last couple of weeks designing a new calibration effector and purchasing some very flat glass to use. I'm going to set my end stops with a set of calipers and implement the upgrades later this week without changing anything else on the bed. I'll let you know if it was a function of the effector or plate flatness. If it's not, it should help me home in on the problem by process of elimination.
For anyone who happens to come across this in the future...
After looking at a detailed height-map, I discovered that one side of the bed was moving downward with the force of the calibration switch (which wasn't much to begin with). The map looked like a waterfall and had as much as 2.5 mm delta between the flat and compressed (waterfall) measurements. It made the printer tilt the height bed in the virtual space toward the waterfall. This represents an instability in the calibration as further calibrations will sense nearly the same angle every time a calibration is run.
Hence why calibration was getting worse over time...