Calibration Experience Report

I built a ~quarter-size sled for my new M4 (1740mm x 1170mm anchors with a 1200mm x 600mm target work area). I attempted to run calibration prior to setting the workspace size - my oversight. As could be expected, belts run out too far and once calibration starts, sled will run itself off the edge of the work area. I was there to catch it and STOP the machine, no problem.

I configured and saved the sizes and began calibration again. This time, it was successful, though I made the work area still too big, so M4 tilts some at the edges.

Even for a full-size setup, there seems to be a lot more belt than necessary - mine matches the pictures, but why is there more belt than fits on the spools?

I think I’m noticing that when the sled is pulling using only some of the motors, the other motors are completely idle and are rotating from friction along with the powered neighbor. This is leading to bunching on the spool. Also, because of the spool is small, the slack can lead to a bit of tangling with the other spools. Perhaps this isn’t possible, but I naively recommend giving even “idle” motors enough power to resist the friction from its neighbors.

After calibration, “Home” doesn’t do what I expected it to do, which is return to center (after some arbitrary jogs). It just jogged in a direction a few times and then M4 seemed to become unresponsive to any of the jog commands.

When I power-cycle the machine, it says I can’t do anything until I retract all again because it doesn’t know the belt lengths. When I Retract All, one anchor gets stuck on an edge and M4 thinks it’s all the way retracted. I free it, but Retract All still thinks it’s fully retracted. I Release Tension and now Retract All does pull in some each time I press it, but it is not fully retracting the belt. I had to Extend All, Stop before Retract All worked correctly.

Now, I’m trying to recalibrate with a 1160mm x 560mm to avoid sled tilt (I could add material around the border, but I don’t have any yet). When I Retract All, Extend All, Calibrate it seems to ignore the confirmed Configured/Saved size, and runs the sled right off the edge again.

Mini Frame:

Overwrapped, slacked spools:


1 Like

I don’t remember the sequence of things, but this MIGHT be because I lost track of the orientation of the machine and hooked in sideways?

1 Like

After successful recalibration and “define home” at that resulting presumed center location, the house icon
in the center of the jog arrows just does seemingly random things with each press. Also, the spools are getting really really sloppy after just a few jogs and house presses


1 Like

what size calibration grid did you use? per my calculator your workpiece gets a
little outside the green zone. I would suggest a calibration grid of 1000x400 or

what fitness did you get from your calibration?

David Lang

Jason wrote:


I don’t have much experience with a frame that small so you are in somewhat uncharted waters, but it should work so lets figure out what is going on.

We put on as much belt as we possibly could because for folks who are attaching it to say a garage floor it’s helpful to be able to reach the far corners and the bigger the frame the better so we want to support going big. You can always cut some off, but it’s tough to add back :stuck_out_tongue:

It sounds to me like there is something funky going on in calibration. What fitness score did you get?

1 Like

I did a 7x7 calibration grid and i think it starts out logging numbers like .83 and ended at waypoint 49 with .64 as I recall? I’m not at my workshop now to check the machine/files. Here’s a screenshot I saved of after the latest calibration though. Strikes me as odd that the green extends so far “down” - is that typical? (though, this is currently horizontal and configured as “horizontal” too)

The spool problems are not as pronounced during calibration - perhaps because of the short sequences and regular retensioning. Is the apparently free-spinning idle spools that I photographed a known issue/common occurrence?


1 Like

Perhaps I will need to come in even closer, but the calibration itself seemed to go OK, concerns about the spools notwithstanding.

1 Like

The fitness numbers you cite are quite acceptable, so I don’t think that’s your problem.

1 Like

Back in the workshop today …

I updated the firmware and html to the .80 hardly-any-changes release. Attempting Calibration again. I am trying to capture logs and video along the way … but I’m encountering too many problems for a full run actually, so let me start with those problems:

I encountered significant problems related to loss of connection and probable web interface bugs - at first, yes, my computer was going to sleep too quickly and I could usually wake it within the 20 second limit and it would SEEM to reconnect - however, serial messages coming in kept reporting “Computer did not acknowledge calibration data” repeatedly until I refreshed the webpage (and disrupt a clean serial log file grrr). The “20 seconds” test in the software seems to be incomplete and maybe leads to an unrecoverable state? Perhaps that timeout is irrelevant and a different test should determine need for a reload?

After recovering once or twice, I got the “Calibration Complete” window.alert WHILE AN INTERMEDIATE CALIBRATION FITNESS WAS STILL BEING CALCULATED. I stopped to take a picture of this for at least 20 seconds, and because the window.alert() is blocking, the “disconnected” message and scenario immediately followed. Recommend switching to some kind of non-blocking message (like an in-app modal) for such messages. Also, why was the message popped early anyway? This ended up happening to me twice.

After the incomplete calibration and timeout, I think the recent calibration-data-resend-recovery is not in play - I’m guessing the computer looses the calibration data/state at some point and leaves the machine and calibration state corrupt.

If I then “Retract All” and “Extend All”, I notice the belts are longer than before. I think this is because I’m actually expected to de-anchor for Retract All, but since that is kind of a pain to do, I wanted to skip it. Then, attempting to “Calibrate” immediately fails with an “Emergency Stop” demanding a power-cycle/restart. Recommend being more explicit that belts must be de-anchored for “Retract All” (if that’s true).

Ok, then I fixed my machine’s sleep settings AND reduced my Calibration Grid to 1100x500mm. I restarted, I de-anchored, retract-all, extend-all, reanchored, and begin calibration.

I have videos of the belts getting kinda sloppy, but I think that might be an expected part of the calibration process.

Not far into the calibration, I got the second early “Calibration Complete” message and again I think I took too long to dismiss it, so I was immediately “Disconnected. Reconnect?” after pressing OK on the “Calibration Complete”.

Attached is the log of the first attempt today:

Maslow-serial.log (13.4 KB)

Also attached is the photo of the calibration-complete alert during the calibration fitness calculation.


iirc, it’s improved with updates, but you should still expect some belt slack during the first part of calibration and, especially if horizontal, have to tend the belts during that time to keep the slack outside of the spool assemblies.

1 Like

Thanks! Any other specifics about my bugs/outcomes being typical or atypical?

I would consider any results from this period of attempting to calibrate to be useless. I can’t comment on typical/atypical in regards to this, but I can at least say that I wouldn’t expect to have gotten through all of that without creating bad data.

The device you are controlling the maslow from is the device providing the processing power for calibration and it needs to be connected at all times so that the data the maslow is recording when it takes measurements is processed properly.

I highly recommend using the most powerful machine you can for calibration. e.g. If you have a gaming laptop, for instance, it would be much faster during the calculations than a basic office laptop that would normally be fine for driving the maslow, and worlds faster than a tablet (which would also be fine for driving the maslow, normally).

Secondarily, it would also likely be prudent to directly connect to the maslow rather than having it on your home wifi (if you have it on your wifi) for calibration, as it can be much more reliable. On top of this, I would set your laptop’s power plan to not shut off or go to sleep while plugged in, and then remember to plug it in while you calibrate so you don’t have disconnects from that end.

You had this experience with the belts getting longer because you left it on the frame, as you mentioned you realized. When you power cycle the device, which is necessary after an Estop, you have to remount it, which means giving it slack if it doesn’t already have it, taking it off the frame, retracting all belts until they are all the way in (increasing retraction force if necessary), and then extending all, putting the belts on the anchors, and taking up the slack with apply tension. This will be your process every time you’ve let the machine power off, as well.


This week’s update: I made sure my computer wouldn’t go to sleep. I retracted all, extended all, and began calibration (note - TOP RIGHT didn’t retract all the way on first try, but there was no early resistance applied).

The calibration was able to complete without the computer going to sleep. I DID get the “Calibration Complete” window.alert() every time the fitness calculation pause happened. I was quick to dismiss the alert so it wouldn’t disconnect because of the blocking window.alert().

The full successful calibration serial log is attached.

After calibration actually completed and the sled returned to the center of the work area, the belts looked appropriately tight on the spools (I didn’t touch them though). I jogged TWICE RIGHT and then TWICE LEFT. The resulting mess of spool is pictured attached.

Maslow-serial calibration successful.log (13.6 KB)



The only thing I have the experience to recommend at this point would be to double check that the magnets for the encoders are secure in their gears.

You may want to wait for more opinions before you do that teardown, though. I try to be thorough, but there are people on the forums that have much more information to wield when assessing these issues.

1 Like

I’ll just ask the obvious. Did you select the horizontal/vertical correctly? It is referring to the physical config of the frame, not portrait vs landscape orientation. Ie, if you are using floor anchors, it is horizontal, if you are hanging the Maslow on an angle, it is vertical.

I screwed this up once and @jurgis solved his problem too. @jwolter has suggested changing to flat vs upright to remove the ambiguity.


Yes, it has been Horizontal this whole time.

This is 100% and issue which will be fixed in Wednesday’s update. Until then a fix exists here:

This is SUPER important. Without de-anchoring the machine will totally lose track of how long the belts are and everything after that is going to be not good data

1 Like

Assuming I dismiss it fast enough, is the additional pop of this calibration alert actually going to interfere with the rest of the calibration? That is, once I have that particular fix, should I have better luck post-calibration?

Because my belts have slacked so much, I think the inner-most coils on some spools are actually a bit loose/expanded in the innermost wraps. However, because of the small frame dimensions there’s no apparent way to let out more belt to respool them more tightly.

Without taking the machine apart and without destroying a successful configuration, is there a way to really extend the belts all the way? Otherwise, I guess I need to configure for a large frame so that the belts will extend more fully.

I hope you had a great vacation @bar !

1 Like

This is probably the easiest way to get them to extend all the way out. Just make sure to write down your old configuration before messing with them unless you want to run calibration again.

or you can hold them from returning when doing a retract all (After an extend all) then when you do another extend they will extend more belt until you reach the limit. Then do enough retract all to drag all the belts back in fully. This will repack the belts.

1 Like