Welcome! Log In Create A New Profile

Advanced

E steps Calibration. Where exactly in the Configuration.h file?

Posted by WestMD 
E steps Calibration. Where exactly in the Configuration.h file?
December 10, 2013 06:33PM
I followed this and this this guide for my extruder calibration (i3 prusa) which seems to under extrude for the moment.
I use the Marlin Prusa I3 firmware and can't find anywhere the line where I normally should fill in the new calibrated e steps

According to the rich rap calibration guide it should look like this:
// X, Y, Z, E steps per unit - Metric Prusa Mendel with Wade extruder:
float axis_steps_per_unit[] = {80, 80, 3200/1.25,700};

what I do find is
#define DEFAULT_AXIS_STEPS_PER_UNIT   {80, 80, 4175.4, 704.033}  // default steps per unit for ultimaker

Do I insert here the new extrusion values?
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 10, 2013 07:05PM
I found this post here which I guss explains where the configuration line is exactly but I've got a little worried now since I saw it is possible that the eeprom settings overrule the flashed firmware.

I've installed an LCD display a few weeks ago and I have changed some values by accident. I didn't worry at first because I thought resetting would get everything back like first but since my printer is behaving very strange. Could it be I've ruined some settings which are now saved in the eeprom?

I there some kind of list/guide with explanation for the settings you can see on the LCD display?
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 10, 2013 10:36PM
Things are not automatically stored in eeprom. You need to enable it. Usually by default it is off. When you make a direct change through the M commands it is no it stored into eeprom until you explicitly write the values there. I'm not sure the exact commands to write (or read) your eeprom, but check the gcode reference at this wiki. I believe all the commands are in the M500 range.

Regarding changing the value, you have the correct line. Just change 704.033 to your newly calculated value. Of course you are right in that if eeprom is enabled, it will not use these values on upload, but will instead use the eeprom values. One thing you should know though is that there are commands you can use to change any of your settings dynamically without uploading new firmware. Once you zero in on the correct values, you can write them to eeprom the the cammand mentioned earlier, and you care finished. The command to change the steps per millimeter is, I believe, M92. You should familiarize yourself with g code.

One other thing to mention about tuning e steps in particular. I have found that if you change the e steps value, marlin gets confused as to its current e axis location. I always follow an M92 command with a G92 E0 to reset the axis back to a known value. If you don't do that and tgen hit the manual extrude button, you may get more (or perhaps less) plastic than you are extecting
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 11, 2013 02:41AM
Hi Thank you so much for your answer.

So enabling eeprom makes you store values which overrule the firmware.
I found something about eeprom in Configuration.h between lines 311 and 320. So I guess mine is tuned off now.
// EEPROM
// the microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores paramters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
//define this to enable eeprom support
//#define EEPROM_SETTINGS
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
//#define EEPROM_CHITCHAT


So to enable it do I un-comment
//#define EEPROM_SETTINGS
AND
//#define EEPROM_CHITCHAT
?
Another question is, isn't that too confusing? Where can you read the eeprom values? Wouldn't be a natural reflex to just have a look at the flash and assume those values only are used by the printer? What I mean is that it seems to me like a better practice to only look at one place for stored settings and not two or more but off course I could be wrong.

Quote

Once you zero in on the correct values, you can write them to eeprom the the cammand mentioned earlier, and you care finished.
Can you also elaborate a little on that please?

Thank you also a lot for the resetting X axis after e steps change advice!
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 11, 2013 12:29PM
The eeprom settings are disabled by default simply because they can be confusing. The dual lines in the code are to enable the eeprom function and to enable flash to be reserved for the eeprom functions.

// M500 - stores paramters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).


If you use Pronterface to send a M500 command, the firmware will echo back what is in eeprom. You can use the M501 command to set them.
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 11, 2013 06:08PM
To further clarify. M500 stores the current flash values into eeprom - it overwrites what is presently in eeprom with what is in flash.

M501 copies the eeprom values out into flash.

M503 reports on what is in flash. There is no way to see what is in eeprom without copying the values to flash.

To turn on eeprom, uncomment the two lines and place your initial values into your configuration.h file. Thereafter, you can modify the values with the appropriate M commands (see M92 and M201 thru M206). If you like your new values, you can commit them with M500. If you want to undo your changes, enter command M501.

Edited 2 time(s). Last edit at 12/11/2013 06:09PM by jbernardis.
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 12, 2013 07:14AM
thank you, that is very clear. One more question: a very strange thing is I've already calibrated the e steps when I've assembled the printer and there was no need for adjustment. Now a few months later when using a neutral color PLA (diam 2.6 mm) for an extrusion of 50mm it only took like 43.6 mm filament. That is the reason why I wanted to adjust the extruder steps.

Now yesterday, I wanted yo print in another color and put some nuclear orange in the printer also PLA also measured 2.6mm diameter instead of the normal 2.90-ish. The thing is I tested again, put a mark on 100m on filament end extruded 50mm. It was spot on perfect calibrated and haven't touch anything! (same temperature, same speed etc...)

Does this mean the filament, even if it's the same brand, can extrude in a different way depending on the colour? Do I need to recalibrate the e steps for each rol of filament?
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 12, 2013 01:04PM
The extruder should push exactly the same amount of filament into the hobbed bolt regardless of the diameter of the filament. If you are measuring with the hot end on the machine, you probably have a slip issue with one of the filamnets (clamp screws not tight enough etc..).

Edited 1 time(s). Last edit at 12/12/2013 01:05PM by uncle_bob.
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 12, 2013 08:40PM
If you are calibrating with the hot end on and hot, be sure you don't extrude your calibration amount too quickly. On mine, for example, I have the button set to 5mm, but I usually extrude 30mm to calibrate. This means I have to hit the button 6 times. If I hit it 6 times in quick succession, I get slipping because the hot end does not melt the plastic quickly enough to keep up with the incoming rate. So I am careful to pause for a second or 2 between each button press. The manual speed I use if MUCH faster the the extrusion speed while printing, so this is never an issue for me while actually printing.
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 13, 2013 06:44AM
I didn't faff around with all the stages some tell you to do and it worked out fine.
I just made a copy of the original line in Marlin so that I kept a backup in case everything went wrong, then set pronterface extrusion to 50mm.
I took off my J-head purely so that I wouldn't be using up filament unnecessarily and it worked for me when I was doing the calculations but you don't need to.

Basically all I did was mark out 50mm on the filament and click extrude. (The longer you use the better the accuracy.) Then I measured the actual amount that came through and used the equation:

New_Extrusion = Old_Extrusion*(50/Actual_Distance moved)

Then just uploaded the new data.

It worked a treat for me. smiling smiley

Tesco's own cheapo Everyday Value hairspray works a treat for me with 3D-Builder ABS on a Heated bed with Kapton rated @ Bed Temperature 90 and ABS 190 with the J-Head Hotend raised a paper's thickness off the bed.
Re: E steps Calibration. Where exactly in the Configuration.h file?
December 15, 2013 09:54AM
The only issue with calibrating the extruder with the hot end on is feed slip. If you are doing this early on, your extruder may not be tight enough and it could be slipping. Your hot end might or might not be at the right temperature for your filament and that could get in the act as well....
Sorry, only registered users may post in this forum.

Click here to login