Calibration question (1 smaller broken belt)

I had a belt break a couple of weeks back. Anna was kind enough to send a new one (thank you @anna :slight_smile: ), but I haven’t had a chance to pick it up yet. My broken belt is now 8 ft long (I’d have to double check that). I put anchor points at proper spots to account for the broken belt and am now trying to calibrate with:

frame size: 2036 x 1370 (the distance from my anchor points)
workspace size: 900 x 629 (calculated from online tool)
grid size: 9 x 9 (I have tried 7 x 7 as well)

There doesn’t appear to be any flex in the frame, but I can’t get a fitness over 0.19. Would the shorter belt account for my issues?

I appreciate any input :slight_smile:

Serial Messages
[MSG:INFO: Channel auto report interval set to 50 ms]
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
[MSG:INFO: FluidNC v0.75 (Maslow-Main-e2ef1bb2-dirty)]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.4]
[MSG:INFO: Local filesystem type is littlefs]
[MSG:ERR: Configuration file:maslow.yaml]
[MSG:INFO: Machine Maslow S3 Board]
[MSG:INFO: Board Maslow]
[MSG:INFO: UART1 Tx:gpio.1 Rx:gpio.2 RTS:NO_PIN Baud:115200]
[MSG:INFO: SPI SCK:gpio.12 MOSI:gpio.11 MISO:gpio.13]
[MSG:INFO: SD Card cs_pin:gpio.10 detect:NO_PIN freq:8000000]
[MSG:INFO: Stepping:Timed Pulse:4us Dsbl Delay:0us Dir Delay:0us Idle Delay:240ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (-2438.400,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Config messages ran]
[MSG:INFO: Axis Y (-1219.200,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Axis Z (-100.000,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: tmc_2209 UART1 Addr:0 Step:gpio.15 Dir:gpio.16 Disable:NO_PIN R:0.110]
[MSG:INFO: Motor1]
[MSG:INFO: tmc_2209 UART1 Addr:1 Step:gpio.46 Dir:gpio.38 Disable:NO_PIN R:0.110]
[MSG:INFO: Z Axis driver test passed]
[MSG:INFO: Z2 Axis driver test passed]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Using spindle NoSpindle]
[MSG:INFO:<Alarm|MPos:0.000,0.000,-106.000|FS:0,0|Ov:100,100,100>
[MSG:INFO: FluidNC v0.75 (Maslow-Main-e2ef1bb2-dirty)]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.4]
[MSG:INFO: Local filesystem type is littlefs]
[MSG:ERR: Configuration file:maslow.yaml]
[MSG:INFO: Machine Maslow S3 Board]
[MSG:INFO: Board Maslow]
[MSG:INFO: UART1 Tx:gpio.1 Rx:gpio.2 RTS:NO_PIN Baud:115200]
[MSG:INFO: SPI SCK:gpio.12 MOSI:gpio.11 MISO:gpio.13]
[MSG:INFO: SD Card cs_pin:gpio.10 detect:NO_PIN freq:8000000]
[MSG:INFO: Stepping:Timed Pulse:4us Dsbl Delay:0us Dir Delay:0us Idle Delay:240ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (-2438.400,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Config messages ran]
[MSG:INFO: Axis Y (-1219.200,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Axis Z (-100.000,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: tmc_2209 UART1 Addr:0 Step:gpio.15 Dir:gpio.16 Disable:NO_PIN R:0.110]
[MSG:INFO: Motor1]
[MSG:INFO: tmc_2209 UART1 Addr:1 Step:gpio.46 Dir:gpio.38 Disable:NO_PIN R:0.110]
[MSG:INFO: Z Axis driver test passed]
[MSG:INFO: Z2 Axis driver test passed]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Using spindle NoSpindle]
[MSG:INFO: Connecting to STA SSID:Smyk]
[MSG:INFO: Connecting.]
[MSG:INFO: Connecting…]
[MSG:INFO: No SSID]
[MSG:INFO: AP SSID maslow IP 192.168.0.1 mask 255.255.255.0 channel 1]
[MSG:INFO: AP started]
[MSG:INFO: WiFi on]
[MSG:INFO: Captive Portal Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
[MSG:INFO: Caution: Unlocked]
[MSG:INFO: Set to comply]
[MSG:INFO: Retracting all belts]
[MSG:INFO: Bottom Right pulled tight with offset -893.983]
[MSG:INFO: Top Right pulled tight with offset -1023.750]
[MSG:INFO: Top Left pulled tight with offset -1263.240]
[MSG:INFO: Bottom Left pulled tight with offset -1151.692]
[MSG:INFO: Extending all belts]
[MSG:INFO: All belts extended to center position]
[MSG:INFO: Measured waypoint 0]
[MSG:INFO: Center point deviation: TL: 0.094 TR: 0.172 BL: -22.534 BR: -18.231]
[MSG:INFO: Center point deviation: TL: 0.094 TR: 0.172 BL: -22.534 BR: -18.231]
[MSG:ERR: Center point deviation over 15.000mmm, your coordinate system is not accurate, maybe try running calibration again?]
[MSG:INFO: Zeroing z-axis position]
[MSG:INFO: Measured waypoint 0]
[MSG:INFO: Center point deviation: TL: -0.016 TR: 0.084 BL: -21.860 BR: -17.340]
[MSG:INFO: Measured waypoint 1]
[MSG:INFO: Measured waypoint 2]
[MSG:INFO: Measured waypoint 3]
[MSG:INFO: Measured waypoint 4]
[MSG:INFO: Measured waypoint 5]
[MSG:INFO: Measured waypoint 6]
[MSG:INFO: Measured waypoint 7]
[MSG:INFO: Measured waypoint 8]
CLBM:[{bl:1206.20, br:1212.73, tr:1228.95, tl:1231.64},{bl:1185.95, br:1227.04, tr:1250.10, tl:1206.36},{bl:1090.98, br:1274.04, tr:1355.57, tl:1189.35},{bl:1129.85, br:1320.30, tr:1323.74, tl:1140.49},{bl:1175.90, br:1359.53, tr:1284.73, tl:1094.98},{bl:1235.16, br:1275.56, tr:1191.18, tl:1173.01},{bl:1352.49, br:1187.77, tr:1091.90, tl:1276.87},{bl:1322.84, br:1138.82, tr:1131.30, tl:1320.62},{bl:1283.82, br:1093.18, tr:1178.50, tl:1360.87},]
Computing… This may take several minutesFitness: 0.1941775 in 100
Fitness: 0.1941775 in 200
Fitness: 0.1941775 in 300
Fitness: 0.1941775 in 400
Fitness: 0.1941775 in 500
Fitness: 0.1941775 in 600
Fitness: 0.1941775 in 700
Fitness: 0.1941775 in 800
Fitness: 0.1941775 in 900
Fitness: 0.1941775 in 1000

WARNING FITNESS TOO LOW. DO NOT USE THESE CALIBRATION VALUES!

My first thought was “what’s wrong with a fitness of 1.9? In fact, I don’t think I’ve seen a fitness that good before.” Then I read your logs and see you meant 0.19.

Certainly if the calibration moves far enough away from the broken belt’s anchor that the spool runs out of belt, that would ruin the calibration. Otherwise, I’m not so sure the broken belt is the problem.

1 Like

Oops… typo. I’ll fix that now :wink:

1 Like

I think that its harder to get a good calibration when the anchor points are closer to the measurement points. The first thing that I would consider is shrinking the calibration grid down and running it on a smaller area. That online tool only takes into account belt angles, it’s a valuable tool for that discussion, but it’s not really a good tool to compute actual usable work area because there are a lot of other factors that it doesn’t include

Bar wrote:

That online tool only takes into account belt angles, it’s a valuable tool
for that discussion, but it’s not really a good tool to compute actual usable
work area because there are a lot of other factors that it doesn’t include

Things that I know it doesn’t take into account:

  1. the size of the sled (for small frame sizes, the sled will hit the
    frame/anchor before the angles come into play

  2. Z angle. when you get close to the anchors, the Z belt angle gets more
    significant, both due to the overall distance, and due to the fact that the
    belts actually hinge in the Z direction at the end of the arm, not at the center
    of the bit.

for both of these, if anyone can say what a reasonable limit is, I’d be happy to
add it.

  1. workpiece edges, you don’t want the sled to tilt as it’s at the edge of the
    workpiece, so you want to have a skirt of material the same thickness as your
    workpiece around it.

  2. frame tilt/gravity. I don’t know how these affect the usable area

What other factors should we be looking at?

David Lang

1 Like

I think that as the angles get more extreme towards the edges of the work area the calibration process math gets more susceptible to small measurement errors leading to larger calibration errors. I think that area might still be good for cutting, but running calibration there is going to result in a lower fitness

Thanks for the input. I’ll try a smaller calibration area tomorrow morning and see I’d that helps.

1 Like

Making the calibration area smaller initially worked. I was able to make some progress with calibration, but I think my frame had to much flex and calibration failed. I decided to try calibration one more time before beefing up the frame and now I have another problem.

I keep getting an emergency stop error. I think I read on one of the threads that this was due to improper frame measurements, so I remeasured my frame and my measurements are accurate.

Any ideas what I can try next?

Thanks for the help.

Serial Messages
[MSG:INFO: Channel auto report interval set to 50 ms]
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
[MSG:INFO: FluidNC v0.75 (Maslow-Main-e2ef1bb2-dirty)]
[MSG:INFO: Compiled with ESP32 SDK:v4.4.4]
[MSG:INFO: Local filesystem type is littlefs]
[MSG:ERR: Configuration file:maslow.yaml]
[MSG:INFO: Machine Maslow S3 Board]
[MSG:INFO: Board Maslow]
[MSG:INFO: UART1 Tx:gpio.1 Rx:gpio.2 RTS:NO_PIN Baud:115200]
[MSG:INFO: SPI SCK:gpio.12 MOSI:gpio.11 MISO:gpio.13]
[MSG:INFO: SD Card cs_pin:gpio.10 detect:NO_PIN freq:8000000]
[MSG:INFO: Stepping:Timed Pulse:4us Dsbl Delay:0us Dir Delay:0us Idle Delay:240ms]
[MSG:INFO: Axis count 3]
[MSG:INFO: Axis X (-2438.400,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Config messages ran]
[MSG:INFO: Axis Y (-1219.200,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: Axis Z (-100.000,0.000)]
[MSG:INFO: Motor0]
[MSG:INFO: tmc_2209 UART1 Addr:0 Step:gpio.15 Dir:gpio.16 Disable:NO_PIN R:0.110]
[MSG:INFO: Motor1]
[MSG:INFO: tmc_2209 UART1 Addr:1 Step:gpio.46 Dir:gpio.38 Disable:NO_PIN R:0.110]
[MSG:INFO: Z Axis driver test passed]
[MSG:INFO: Z2 Axis driver test passed]
[MSG:INFO: Kinematic system: Cartesian]
[MSG:INFO: Using spindle NoSpindle]
[MSG:INFO: Connecting to STA SSID:Smyk]
[MSG:INFO: Connecting.]
[MSG:INFO: Connecting…]
[MSG:INFO: No SSID]
[MSG:INFO: AP SSID maslow IP 192.168.0.1 mask 255.255.255.0 channel 1]
[MSG:INFO: AP started]
[MSG:INFO: WiFi on]
[MSG:INFO: Captive Portal Started]
[MSG:INFO: HTTP started on port 80]
[MSG:INFO: Telnet started on port 23]
[GC:G0 G54 G17 G21 G90 G94 M5 M9 T0 F0 S0]
[MSG:INFO: Caution: Unlocked]
[MSG:INFO: Retracting all belts]
[MSG:INFO: Top Right pulled tight with offset -1062.776]
[MSG:INFO: Bottom Right pulled tight with offset -1095.048]
[MSG:INFO: Top Left pulled tight with offset -1071.322]
[MSG:INFO: Bottom Left pulled tight with offset -1079.986]
[MSG:INFO: Extending all belts]
[MSG:INFO: All belts extended to center position]
[MSG:INFO: Measured waypoint 0]
[MSG:INFO: Center point deviation: TL: 0.164 TR: 0.136 BL: -5.392 BR: -13.363]
[MSG:INFO: Center point deviation: TL: 0.164 TR: 0.136 BL: -5.392 BR: -13.363]
[MSG:INFO: Center point deviation within 15.000mm, your coordinate system is accurate]
[MSG:INFO: Zeroing z-axis position]
[MSG:INFO: Measured waypoint 0]
[MSG:INFO: Center point deviation: TL: 0.038 TR: 0.055 BL: -4.893 BR: -11.777]
[MSG:INFO: Measured waypoint 1]
[MSG:INFO: Measured waypoint 2]
[MSG:ERR: Unable to move safely, stopping calibration]
[MSG:ERR: Emergency stop! Stopping all motors]
[MSG:WARN: The machine will not respond until turned off and back on again]
[MSG:ERR: Unable to move safely, stopping calibration]
[MSG:INFO: Set to comply]
[MSG:INFO: Set to comply]
[MSG:INFO: Set to comply]
[MSG:INFO: Set to comply]
[MSG:INFO: Set to comply]

You are right, this is the issue. Try tweaking them slightly larger or smaller and it should be fixed

That worked - eventually. My frame is 15mm smaller then the number I had to use (1349mm vs 1334mm), but atleast I’m up and running now.

Thanks @bar ! I’m sure it won’t be the last question I have :sweat_smile:

1 Like

It looks like I spoke to soon.

Is there any other issue that can cause the emergency stop?

This afternoon’s experience:

I dialed in calibration finally using the settings below:

Machine width: 2036
Machine height: 1345

Calibration width: 500
Calibration height: 300

Grid: 9x9
Retraction force: 1300

I got close to calibrating (started around .48 calibration), but around waypoint 48 it failed (.16 calibration). I changed the calibration dimensions to 300x200 and got the emergency stop message. I messed around with the machine width and height ALOT without touching my frame setup and kept getting the emergency stop message (ie: 2038 x 1347, 2037 x 1346, 2035 x 1344, 2034 x 1343, etc.) Eventually I ended up exactly back where I started with the smaller calibration numbers :

Machine width: 2036
Machine height: 1345

Calibration width: 300 (vs the 500 that originally worked)
Calibration height: 200 (vs the 300 that originally worked)

This failed. I changed it back to exactly where I started (below) and this also caused an emergency stop.

Machine width: 2036
Machine height: 1345

Calibration width: 500
Calibration height: 300

Is there a reason it would work the first time and then fail later with the exact same parameters?

1 Like

Yes. This message pops up when the machine needs to move but the current dimensions are leading to logically invalid moves. For example if the machine needs to move to the left to get to the next point we would expect that the top left belt and bottom left belt would both get shorter while moving to the left. If the math is telling the machine that those belts actually need to get longer to move left the machine will go :man_shrugging: this doesn’t seem right and give up. Without that guard in place we were seeing folks machines doing weird and unpredictable things.

The math is taking into account the current machine position, the anchor point locations, and the measurement point locations so changing any of those things can have an impact

Ok cool. So what’s my next step then to getting a calibration that will pass? Should I just keep trying various calibration settings until something works? It seems like I’m taking shots in the dark at this point. I am happy to spend all day in the shop playing :upside_down_face:, but I’m not sure where to go from here.

1 Like

I haven’t encountered it being a persistent issue like that before. It feels to me like something is funky with the frame dimensions, but I am not sure exactly what.

Here are my frame measurements. Both opposite sides within 2 mm tolerance.

I appreciate all the time and effort you guys are putting in to this.

1 Like

When you made them smaller to get it to work did you decrease both the width and height at the same time?

Tried various combos… happy to keep trying, but tried +1 x, +1 y, 0x +1y, +1x 0y, etc

1 Like

I’m trying to think of what could be making it a recurring issue. I can’t think of what would cause that for many different size values.

Has it made it through the first 3x3 grid ever?

can you please measure the diagonal measurements between the anchors?

you can also do a ‘manual’ calibration by entering the measurements in this onshape doc Onshape and then enter the various anchor positions manually and see if that gives you a machine working well enough for your needs

We’ve seen oddities like this before when the frame was racked. (why I asked
about diagonal measurements)

David Lang