Reconfig / Calibrate Steps per MM?

Discussions about firmware/slicing software, tweaks and settings
Post Reply
Posts: 120
Joined: Tue Jul 17, 2012 9:04 pm
Location: United Kingdom

Reconfig / Calibrate Steps per MM?

Post by stratogavster » Wed Sep 19, 2012 4:46 pm

I'm new to software and firmware.....scary stuff!! :?

Anybody know how to calibrate the steps/mm?

I'm certain my machine does not print accurately 10mm fed in via software and 10mm out in reality!

Prints come out undersized in X and Y so i'd like to recalibrate as per Guillaume's suggestion the pulleys may be a little different in diameter to the originals he used to create the first ever calibration.

Last edited by stratogavster on Mon Sep 24, 2012 9:29 pm, edited 1 time in total.

Posts: 116
Joined: Wed Aug 15, 2012 1:13 am

Post by Lioric » Wed Sep 19, 2012 10:34 pm

Yes sure

Do you know how to use M92, M500 and M501?

Then it is easy:

(Steps/mm) * (expected distance traveled) / (real distance traveled)

In the Felix firmware steps per mm is defined as:

#define DEFAULT_AXIS_STEPS_PER_UNIT {76.199904, 76.199904, 1290.322,169}

*actual Z is double of that value in the stock form. Im using the Z value shown above because I'm using a 1/8 micro step driver until the replacement part is delivered

Move the axis you want to calibrate in big distances (50mm or so, easier to measure) and measure the actual traveled distance. Use the formula above to get the calibration value

Send the M92 command with the calculated value for your axis: M92 X"yourCalculatedValue"
Send M501 to save the values in the EEPROM

Reiterate until you refine the calibration, rinse and wash

Do this for all your axis, each iteration must give you better results

Posts: 120
Joined: Tue Jul 17, 2012 9:04 pm
Location: United Kingdom

Post by stratogavster » Thu Sep 20, 2012 2:34 pm

Awesome tips!!

I haven't a clue about any M or G code stuff yet but this helps me put my mind at rest with some things i've been thinking about :D

Is there a fully defined list of 3D printing M and G codes?

I'm assuming this config can be done directly in the firmware away from the printer once values are known (then re-uploaded) rather than being done 'live' on the machine itself?

Posts: 116
Joined: Wed Aug 15, 2012 1:13 am

Post by Lioric » Thu Sep 20, 2012 11:30 pm

Yes and yes

For a list of op codes, wikipedia and reprap wikis are your friends. But for the definitive list of codes and what they exactly do the firmware source is the "source" ;)

From the Marlin firmware:

Code: Select all

// look here for descriptions of gcodes:

//Implemented Codes
// G0  -> G1
// G1  - Coordinated Movement X Y Z E
// G2  - CW ARC
// G3  - CCW ARC
// G4  - Dwell S<seconds> or P<milliseconds>
// G10 - retract filament according to settings of M207
// G11 - retract recover filament according to settings of M208
// G28 - Home all Axis
// G90 - Use Absolute Coordinates


Posts: 181
Joined: Tue Sep 04, 2012 9:22 pm

Post by dognotdog » Mon Sep 24, 2012 8:54 pm

Shouldn't the steps/mm be 3200/42 = 76.19047619? Or is that value incorporating some magic factor because of the belt tensioning?

Posts: 116
Joined: Wed Aug 15, 2012 1:13 am

Post by Lioric » Tue Sep 25, 2012 2:05 am

Good question, but only gfeliksdal probably knows this for sure (if he did tune that firmware). But I'm sure those values are with a error correction (actual measurements made on the axis travel)

User avatar
Site Admin
Posts: 406
Joined: Sat Feb 25, 2012 10:40 pm
Location: Netherlands

Post by gfeliksdal » Tue Sep 25, 2012 10:43 pm

I calibrated the values by trial and error. I moved the axis 100mm and then measured the real distance. I've done this for the first printer, but approx 4 months ago I switched to different pulley's. They have the same amount of teeth as the old ones, but I guess there can be a slight difference. I haven't bothered recalibration, since I assumed they would require the same steps/mm value.

Posts: 181
Joined: Tue Sep 04, 2012 9:22 pm

Post by dognotdog » Wed Sep 26, 2012 12:19 am

I tried to print a casing for an electronics board today, and it came out to small. Calibrating for that piece, I increased the steps/mm to 76.5.

If I understand the mechanism correctly, the pulley doesn't really make a difference, as long as it has the same number of teeth, as it moves a fixed number of teeth per turn, instead of a fixed length of belt, but tensioning the belt means that the distance between the teeth becomes larger, so more steps per unit are needed. For the nominal belt length, on the Y-axis, which is about 450mm, it oughta be ~76.19, but tensioning the belt by a tooth's width makes it 453mm, so steps/mm would become ~76.70 for that case.
Realistically, the tension is a bit less, and depending on how you have things set up, you probably need a number between these two extremes.

Posts: 1
Joined: Fri Dec 19, 2014 12:40 pm

Post by kanita » Fri Dec 19, 2014 12:41 pm

Thank you for the infos. The chamber module does not work or I have to test other modules as well, because the g code in start.gmc stands before the heating up. This leads to several new problems. Best try until now was to write the code from Kjetilei in the start.gmc.
One more question: is there somewhere a complete list of g- and m codes?
Save your time and get on time success in C4120-782 dumps and testking toefl exams by using our latest Testking and other superb sckans pass resources of Quincy University and Southwestern College

Post Reply