Basically all we are doing is working out a two ratios correct?
Estep value/100mm=Current Estep Value/Measured filament distance. Then solve for Estep Value.
When ever I do this and input the new estep value my measured filament distance is no where near the 100mm.
Extruding at 100mm at 100mm/min
Estep 851.5 gives me 98.5
Estep 852 gives me 98
Estep 853 gives me 98
Estep 870 gives me 109 (853100)/98=870 (Way over shot it)
Doing the math again (870100)/109=798… but it was whithin 2mm at 852. Why would I go back to 798???
Just doing a bunch of test prints and saying forget the math I was able to dial it in with an Estep of 863.7. Which makes sense its between 850 and 870.
It’s a bit rough of a method, that eventually guides you back to where you need to be- from overshooting one direction to the other), but it’s pretty much the standard way of doing it.
I find that once I have the extrusion steps dialled in within a couple of mm, I do test extrusions and manually dial the esteps in, save them to EEPROM and once I’m happy, reflash the firmware with the updated esteps. Most users are not going to have print quality issues with esteps being within a mm or two, others, like you and I, will take the extra little bit of time to get the extrusion dialled in a bit finer. Keep in mind though, that different materials will have a different hardness, and will have different esteps, so your PLA esteps may be different than your ABS esteps. Typically though, it’s only off by a small amount, and isn’t really noticible in the prints.
In order to carry over the EEPROM change into the firmware, you’ll need to manually edit the Marlin Configuration.h file and reflash the board. You can use this method (M92|M50x series of commands) to have and switch between different esteps for various plastic filaments, hot ends or extruders, but in practice, the same estep value works really well for the various plastic filaments provided you don’t change the extruder assembly.
You can use the “store memory” option from the glcd and make the changes to esteps persist through power cycles. That way you don’t have to reflash (unless you want to ofc:]). This way, if you want to set everything back to factory defaults, you can use the “restore failsafe” option.