Klipper 3D Printer Extruder Calibration | also Marlin, Direct Drive, and Bowden E-Step Calculation

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 มี.ค. 2022
  • I walk though the steps of calibrating E-Steps for Klipper or Marlin firmware, and Direct Drive or Bowden setups. So this should cover calibration for almost any printer out there.
    Patreon Support: / jjshankles
    Filament I used: bit.ly/3MiZZDw
    Digital Calipers: amzn.to/3hP2rnD
    Stock 3D printer extruder calibration is usually fine for a while with PLA printing, but to start getting great prints or to try new filaments, it can help to have a good E-Step calibration. This is the amount of signals your controller needs to send to the extruder motor to get a millimeter of filament extruded. Both firmware options have their difficulties that make this a little confusing. Klipper has some extra equations needed, while Marlin firmware is a little more difficult to change the configuration values of the printer.
    But by the end of this tutorial you will know that any issues you are having with printing won't be coming from a miss-calibrated extruder motor. There are several other issues that can cause over or under extrusion that you will then need to look into.
    This calibration is a one and done thing. It isn't like bed leveling where you need to do it between prints. Unless you change hardware on your printer, then this won't need to be redone.
    The gear I use:
    3D Printer: amzn.to/3mpSBeZ
    Favorite Teal Filament: amzn.to/3pHK9tv
    Main Camera: amzn.to/2RNpEbV
    Nifty 50 Lens: amzn.to/2Ls60ky
    Sharpest Wide Lens: amzn.to/2XOj1v8
    Telephoto Nikon Beast: amzn.to/2xqSUvz
    Favorite Not RODE Mic: amzn.to/2C4W0se
    Perfectly Smooth Gimbal: amzn.to/2MXBCgr
    Camera Strap: amzn.to/2rvGtMd
    Atomos Ninja V Recorder: amzn.to/2FL03LO
    Affordable Studio Light: amzn.to/2rzdAic
    Drone: amzn.to/2EgitUT
    Great Camera Bag: amzn.to/2UykJg1
    💼 Business Inquires : goattoaster9@gmail.com
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 102

  • @amybaldwin2343
    @amybaldwin2343 ปีที่แล้ว +29

    Where are you getting the 143.9 value from?

    • @nickolascuartero7854
      @nickolascuartero7854 4 หลายเดือนก่อน

      its from the above equation for klipper. He needs to know what his esteps are and the above formula for klipper is how you figure out your esteps. (my problem is i dont have a "full_steps_per_roation" section in my printer.cfg)
      Edit: I believe if on marlin you can ignore this equation and just put in your current esteps in place of his 143.9

  • @JakeMakes1
    @JakeMakes1 2 ปีที่แล้ว +8

    I was having super splotchy prints on my first layer and realized my extruder was off 30mm. After recalibrating with the equations you gave it ran perfect. Thank you!

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว

      That's great! Glad I could help!

  • @harrisonposting
    @harrisonposting ปีที่แล้ว +4

    Dude thank you so much for this well put together tutorial. My extruder is now perfectly dialed in thanks to you!

  • @ArchonLicht
    @ArchonLicht 11 หลายเดือนก่อน +10

    It would be way clearer if you'd show that you're taking full_steps_per_rotation and microsteps from you printer config, plug in actual numbers and show the calculation. It's hard to understand how you came up with 143.95 without that.
    Also it's really super unclear why do you even need to convert from rotation distance to e-steps if in the end you're converting e-steps back to rotation distance. The full_steps_per_rotation*microsteps part will just cancel out on this step, and you end up with a proportion on rotation_distance itself, only reversed (1/rotation_distance).

  • @print4life
    @print4life ปีที่แล้ว +4

    To anyone wondering in klipper higher rotational distance results in less filament pushing through it basically just is reverse.

  • @erikschmidt2571
    @erikschmidt2571 9 หลายเดือนก่อน

    Thank you so much for your efforts. Exactly what I was looking for.

  • @juliusbonacker7343
    @juliusbonacker7343 ปีที่แล้ว +1

    Nice mug! And thank you for this tutorial, really helped a lot.

  • @yellowlighthouse3057
    @yellowlighthouse3057 2 ปีที่แล้ว +1

    Was about to look up calibrating E-Steps and then saw this notification, cheers.

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว

      Hope it helps, I always got annoyed by how convoluted some of the websites made it, so hopefully this can simplify the equations and steps a little.

  • @weust2672
    @weust2672 2 ปีที่แล้ว +3

    Thanks for the video.
    If you don't want to heat up the hotend, which I don't *think* is needed but not sure with a direct drive, you could add "min_extrude_temp :20" to your [extruder] segment.
    Allows you to extrude way below the default 170C. Of course you could adjust 20 to something lower if your room has a lower then 20C temp.

    • @weust2672
      @weust2672 ปีที่แล้ว

      @Christopher Easler no idea. I neve worked with OctoPrint.

  • @trucker10201
    @trucker10201 7 หลายเดือนก่อน +1

    thank you even a year after your vid helped me calibrate the extruder and it was easy to fallow
    😁

    • @JJShankles
      @JJShankles  7 หลายเดือนก่อน

      So glad it was helpful! Thanks!

  • @firelion98
    @firelion98 ปีที่แล้ว +2

    Thank you helped me understand how to do this, the only issue is that the common calculation does not work for my prusa mini+ since it under extruded more after the changes. I used your math method and the teaching tech website guide calculator.
    I ended up doing it manually by changing from rotation_distance:26.2564 to rotation_distance: 24.99

  • @slvrpltd
    @slvrpltd 2 ปีที่แล้ว +17

    if you have a config with rotation distance, you can also use "rotation_distance = * / ", right?

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว

      Yes that is correct. I just wanted to simplify it into one single E-Step Equation to hopefully help with any confusion. But that equation works too.

    • @danmckeown10
      @danmckeown10 ปีที่แล้ว

      This was much easier to config exactly what I needed. I tried following the video and for some reason at the end when it wanted 200x16 / New E-steps = Rotation distance, ended up being like 5X higher than my starting number, which I was supposed to be going in the other direction!

    • @agelessstranger964
      @agelessstranger964 ปีที่แล้ว +7

      This is the way. This video is just confusing.

    • @barbaraparker7129
      @barbaraparker7129 8 หลายเดือนก่อน

      This calculation worked great, and was easy to determine. Thanks

    • @pantherpigeon3048
      @pantherpigeon3048 8 หลายเดือนก่อน

      This comment should be pinned

  • @prongATO
    @prongATO ปีที่แล้ว +1

    Hey JJ, would you happen to have examples of setting up load and unload filament macros for a Prusa Mini? I've recently flashed mine to Klipper and Mainsail and am having a hard time finding examples for bowden setups that will mimic the Prusa load/unload along with how to setup mesh bed leveling before every print. I love how great the whole thing is running compared to octoprint/prusa firmware.

  • @TheGunslingerman10
    @TheGunslingerman10 10 หลายเดือนก่อน

    This was extremely helpful, thanks so much!

  • @blutadlerx
    @blutadlerx 9 หลายเดือนก่อน

    I measured 28mm does that makes sence? I mean the first layer always has space between the lines with the bed leveled good, my prints however look fine..

  • @quinnvawter
    @quinnvawter 4 หลายเดือนก่อน

    What a wonderful video! Thanks! Subbed!

  • @keiferhalpin502
    @keiferhalpin502 ปีที่แล้ว

    After running M83 and getting new rotation distance set, do I need to run any other commands to take my extruder out of relative positioning?

  • @Nuttster2
    @Nuttster2 7 หลายเดือนก่อน

    Great content
    What is the best end Gcode for Klipper?

  • @whty541
    @whty541 ปีที่แล้ว

    Well damn I got 20 thanks for putting that at the beginning.

  • @justaname3725
    @justaname3725 4 หลายเดือนก่อน

    Now already a year old. But used it to calibrate my Micro Swiss NG Direct Drive. Thanks :)

  • @tomvedra5405
    @tomvedra5405 ปีที่แล้ว +5

    How are you getting the full steps per rotation in Klipper???

    • @ArchonLicht
      @ArchonLicht 11 หลายเดือนก่อน

      Look for the full_steps_per_rotation setting in the printer config extruder section - right beside rotation_distance and microsteps.

  • @christopherabel5785
    @christopherabel5785 3 หลายเดือนก่อน

    My desktop and my printer are in completely different locations, so I am unable to achieve any kind of connection between the two. Is it possible to adjust the E steps by putting code into the starting g-code?

  • @n2ocharged
    @n2ocharged 9 หลายเดือนก่อน

    So there were a couple of things I didn't understand, in your calculations at 6:43 - Where did you get the 200 x 16 from? I know the 16 is the number of steps, but I don't see the 200 anyplace on the chart and didn't hear it mentioned. I can only assume it is the full_steps_per_rotation setting I saw in your config.
    So I basically did exactly what you did, 200*16 / and it still didn't extrude properly, it was way under by about 75%. So then I noticed you have a gear ratio in your config, mine was set to 1:1 with a Sprite Pro (that I now know has a 3.5:1 gearbox). It might be worth mentioning something about the gear ratio since it might be applicable to others as well.

    • @crypton1782
      @crypton1782 9 หลายเดือนก่อน +1

      The 200 is indeed the amount of steps a stepper motor with 1.8° per step needs to make the shaft turn 360°.

  • @MrJottaD
    @MrJottaD 2 ปีที่แล้ว +1

    Hi JJ Shankles, just one noob question, I have a V0.1 with LDO motors and was trying to understand where did you get in Klipper the old E-Steps info? thanks

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว +1

      If you are looking for a baseline number to start with you can start with the stock numbers from the Voron website here: docs.vorondesign.com/build/software/configuration.html

  • @crazycanucknation
    @crazycanucknation 4 หลายเดือนก่อน

    I used this on a Neptune 4 Pro and it worked very well. Thank you, saved my bacon

  • @JonBallRealEstate
    @JonBallRealEstate ปีที่แล้ว

    ok, I can do esteps perfect in marlin but I have no clue what you're saying. Old esteps? original distance? length remaining? work it backwards? what?

  • @Andurielion
    @Andurielion ปีที่แล้ว +23

    There is no reason to convert the rotation distance to e-steps and back. Easier/better formula for klipper: rotDisNew = rotDisOld*(120mm - Rest)/100mm.

    • @kloakovalimonada
      @kloakovalimonada ปีที่แล้ว +2

      Thanks! I was wondering where they got the 200 in the formula... Yours works perfectly.

    • @TheRockDK
      @TheRockDK ปีที่แล้ว

      Thanks dude. You saved me a headache

    • @Frankie_Freedom
      @Frankie_Freedom ปีที่แล้ว

      What's Rest?

    • @TheRockDK
      @TheRockDK ปีที่แล้ว

      @@Frankie_Freedom the number you get after extruding, given you underextrude.

    • @Frankie_Freedom
      @Frankie_Freedom ปีที่แล้ว

      @@TheRockDK The number that's left over? hmm.. okay gotcha thanks

  • @odyss160
    @odyss160 ปีที่แล้ว +2

    your full steps per rotation is 200, where did you origionally get 143.94?

  • @PotatoDrummer208
    @PotatoDrummer208 3 หลายเดือนก่อน

    I'm under extruding, and with your formula, my rotation distance came out to be LOWER than my current setting is. Any ideas?

  • @nicholasstoll1365
    @nicholasstoll1365 3 หลายเดือนก่อน

    I can’t seem to find the max extruder amount in my .config. Could it be called something else or can I just add it?

  • @octogames6823
    @octogames6823 2 ปีที่แล้ว

    Has anyone have had an E-step calibration that sent you out in left field? I double and triple checked my math but I still get bad results. My measured estep is 66.10mm out of a 100mm. My estep in the machine is 93.0. I ended up with 1.513 with a new estep of 140.7. and ended up with almost 200mm of filament. Needless to say I cant get good results with this methods. Im wondering if I have a bigger issue.

  • @Casal0x
    @Casal0x ปีที่แล้ว +4

    where i get the full steps per rotation ? i don't have that value

    • @crypton1782
      @crypton1782 9 หลายเดือนก่อน

      That depends on your stepper motor. My Kobra Go stepper motors are all 1.8° per full step which makes 200 steps per full rotation of the shaft.

  • @miguelroberts-vallejo7819
    @miguelroberts-vallejo7819 6 หลายเดือนก่อน +1

    where are you getting the 143.9

  • @yuriimisiats9063
    @yuriimisiats9063 3 หลายเดือนก่อน

    What's the point to do all this movement if we can do "new_rotation_distance = current_rotation_distance * actual_measurement / expected_measurement" and get the same value?

  • @reggievillar523
    @reggievillar523 7 หลายเดือนก่อน

    I tried to calibrate my Voron 2.4. I labeled it to 120mm and tried to extrude 50mm. But it turns out it extrudes 85mm. How can i fixed this? Newbie on voron here. TIA.

  • @fylith6378
    @fylith6378 ปีที่แล้ว +3

    Where are you getting the full steps per rotation? I see the rotation distance and micro steps but I am not seeing the full steps per rotation

    • @Domm_Dynamite
      @Domm_Dynamite ปีที่แล้ว +1

      I am in the same boat. My config file does not contain a setting. I don't see how I can use this process without that number either :(

    • @leontummers3892
      @leontummers3892 ปีที่แล้ว +2

      Full steps is the specification that the stepper is sold with, for most 3D printers 200, multiply this by the micro steps (16 mostly) and you have the Klipper “full” steps

  • @Mars3D
    @Mars3D ปีที่แล้ว +1

    Did you do the wire sleeving on the wiring harness to the PCB yurself?

    • @JJShankles
      @JJShankles  ปีที่แล้ว

      Yes that was all hand wired. It took way too long!

  • @dualxsurvival155
    @dualxsurvival155 ปีที่แล้ว +1

    kinda confused about where the bottom two numbers came from?

  • @dascodraws6040
    @dascodraws6040 ปีที่แล้ว

    My config file doesnt have full steps per rotation. my printer is an ender 3 s1 pro with sonic pad klipper installation method

  • @Reds3DPrinting
    @Reds3DPrinting 6 หลายเดือนก่อน

    Hey can anyone help me, i got a new direct drive (ender neo SE direct drive) and it says the gear ratio is 3.5:1.. well when i set it to that on the sonic pad and hit extrude it makes a gnarly noise and then doesnt wanna work again till i completely restart my printer.. can anyone help me figure this out :(

  • @tonykyle2655
    @tonykyle2655 ปีที่แล้ว

    I find the video helpful but I wish you had put the equations in the description as one part was blacked out in the video (I think because you mis-wrote and you fixed it in the voice over).

  • @HW_Printing
    @HW_Printing 5 หลายเดือนก่อน

    Here is the commands if you want to just copy them.
    M83
    G1 E100 F100 ;Make sure to heat nozzle first!
    M503 :If you are not using Klipper!

  • @esotericbear9829
    @esotericbear9829 2 ปีที่แล้ว +2

    Great vid, but
    Holy crap is that more complicated than it needs to be.
    I know my way is not right, but it's quick & dirty.
    I picked a random rotation_distance: 25, measured 120, then E100 F50, and had 88.87 left.
    That's only 31.13% of the expected 100 so I took 31.13% of 25 for 7.7825
    Re-ran it again and got 99.78 of the 100

    • @aharkey1077
      @aharkey1077 ปีที่แล้ว +2

      He's just going by Klippers documentation and how it says to do it, which I absolutely agree is needlessly complicated. In fact coming from Marlin and Rep Rap I'm not really a fan of how Klipper handles this at all, really miss just editing steps per mm directly. it's goofy to me that they make you edit the part of the equation that's in the denominator as well as if you don't know the equation it doesn't make sense that you need to decrease the rotation distance to get more extrusion or vice versa. Your method is pretty much the same as mine.

    • @esotericbear9829
      @esotericbear9829 ปีที่แล้ว

      @@aharkey1077 unfortunately for some reason I am way over extruding. With no nozzle in, when I put in 100 mm I get 100 mm +/-1, however when I print each layer is blobbing up into the next layer. It is clipping it and it sounds like sound paper. I'm running at an 84% flow to get good prints.

    • @aharkey1077
      @aharkey1077 ปีที่แล้ว

      @@esotericbear9829 dude that’s the exact issue I’m having! Built a V2.4 with stealthburner and I got it extruding exactly 50 mm but while printing it way overextrudes.

    • @esotericbear9829
      @esotericbear9829 ปีที่แล้ว

      @@aharkey1077 So apparently we need to try it the right way, maybe. My steppers (not all are stock) didn't come with documentation, so I don't know what to put.

    • @mitruxx
      @mitruxx ปีที่แล้ว

      That was not easier.

  • @slvrpltd
    @slvrpltd 2 ปีที่แล้ว +1

    you're a trekkie? i approve!

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว +2

      In the past few years I have really gotten into it, so far finished Next Gen, some of the Orignal Series, and almost done with DS9. I'm a total convert!

  • @christopherabel5785
    @christopherabel5785 3 หลายเดือนก่อน

    Beware when trying!
    I tried this method, and it completely gummed up my hotend with a big old plastic plug. Luckily, I had some non marring parallel pliers to hold the hotend and some vise grips to hold the plug. After letting everything cool, I just unscrewed the plug.

  • @dekurvajo
    @dekurvajo 4 หลายเดือนก่อน

    This should be emphasised more boldly, coming from Marlin, among other 100 new things to learn, this is kinda shock when you can not find where or how to calibrate your e-steps because Klipper use a different calculation. And i remember when i did not know anything about 3D printing steps/mm was pretty easy to understand in no time. Now i am still blinking what is this mm/step thing. I will come along, but still shaking my head a bit.

    • @clutchboi4038
      @clutchboi4038 4 หลายเดือนก่อน

      I mean I just did mine without any calculation at all. I just extruded, measured and saw it wasn't enough then changed the number and tried again. Turns out a smaller number makes it extrude more 😂. I just kept going incrementally until the number I got matched the 100mm extrusion that was supposed to happen. Took like 5 tries and I didn't have to use any math.

  • @mikeooo
    @mikeooo 2 ปีที่แล้ว +2

    Love this kind of video's and trying to check it in klipper. Where did you get the value 143.94. You one show the old rotation_distance 22.23. Maybe you could explain that also.

    • @JJShankles
      @JJShankles  2 ปีที่แล้ว +3

      The 143.94 is the E-steps. I got that from (full_steps_per_rotation)*(microsteps)/(rotation_distance)
      So (200)*(16)/(22.23) = 143.94
      Sorry I didn't make that clear in the video.

    • @SuperGamingMoo
      @SuperGamingMoo 2 ปีที่แล้ว +1

      @@JJShankles also depending on the motor installed.. Microsteps you find in the config. but the full_steps_per_rotation can be found by knowing what stepper motor you have..
      I have a 0.9degree motor.
      so 360 degrees / 0.9degree = 400 full_steps_per_rotation
      default is 1.8 on many printers. but check the modelnumber and so forth.

  • @2iinfinite
    @2iinfinite 2 ปีที่แล้ว +2

    Increasing flow rate was the route I had to take. Also considering maybe swapping to a .06 nozzle instead of .04

  • @secritsquirrel4994
    @secritsquirrel4994 ปีที่แล้ว

    I don't have full steps per rotation in my config...

  • @reedsyd
    @reedsyd ปีที่แล้ว

    Where did the old e-steps value of 143.94 come from?

    • @ebalebal
      @ebalebal ปีที่แล้ว +1

      JJ Shankles
      10 months ago
      The 143.94 is the E-steps. I got that from (full_steps_per_rotation)*(microsteps)/(rotation_distance)
      So (200)*(16)/(22.23) = 143.94
      Sorry I didn't make that clear in the video.

  • @clutchboi4038
    @clutchboi4038 4 หลายเดือนก่อน

    No need to calculate anything 😂 just adjust the number until it extrudes the proper amount. if it's not extruding enough, on klipper the number has to go down. The rotation distance I found that worked was 23.38 for microswiss direct drive extruder for my ender 5 plus.

  • @Crvmbs
    @Crvmbs ปีที่แล้ว

    where did the 200x16 come from?

    • @danielgonzalez4079
      @danielgonzalez4079 ปีที่แล้ว +1

      200 steps per rotation times 16 micro steps.

  • @albeenokrokadil
    @albeenokrokadil 3 หลายเดือนก่อน

    Where did 143.94 come from?!

  • @kb1Legendflaco
    @kb1Legendflaco 4 หลายเดือนก่อน

    My rotation distance only shows 7.5

  • @haitianboy420
    @haitianboy420 2 ปีที่แล้ว +2

    i have no idea where this 200x16 came from

    • @askemerci3599
      @askemerci3599 2 ปีที่แล้ว +2

      200 = full steps per rotation, 16= microsteps. most steppers are a 1.8 degree stepper. so the steps it needs to make 200 steps for a full rotation(200 = 360/1.8). if you are using a 0.9 degree stepper, its 400.

    • @mitruxx
      @mitruxx ปีที่แล้ว +1

      @@askemerci3599 And how would I know the number of microsteps, if my stepper does a 1.8 degree, etc. these numbers appear to have come from thin air.

  • @dannelson8556
    @dannelson8556 ปีที่แล้ว +2

    When I first started 3D printing I used to calibrate my extruder this exact same way and never got really good consistent results.
    As an engineer I always question why I was being told to calibrate an electric motor in free running mode with no load on it. This is not the way to calibrate an electric motor has electric motors whether they're steppers or not are designed to run with a load, running a stepper with no load is not a good idea.
    So then I started experimenting with calibrating my e-steps through the nozzle at the temperature I was printing at. And lo and behold the quality of my prints improved exponentially.
    So yeah if you're trying to calibrate your extruder do it at your printing temperature and extrude the filament at a fairly slow rate. Don't use the firmwares extrude button as it pushes the filament far too fast. You want to extrude it just about f60 in Marlin
    So I usually execute a command sequence such as
    G91
    G1 E50 F60.
    Prior to issuing this command I will trim exactly 60 mm of filament off the backside of the extruder. Then I measure the remaining filament after it completes the command and there should be exactly 20 mm of filament left. I find it much easier to use calipers to measure short distance is like this rather than trying to measure 100 mm piece of filament with a caliper.
    I can usually get my printer calibrated within 3% using this method. You can't expect much more than that when you have filament that varies by + or - .003mm

    • @yusky03
      @yusky03 ปีที่แล้ว +2

      Glad someone mentioned you should be calibrating it to the environment in which it will be working and not the theoretical perfect environment e.g. no load. This is why doing the math and setting the value isn't correct and you need to run a manual test in the first place.

  • @FilmFactry
    @FilmFactry ปีที่แล้ว

    Great info. Klipper is more complicated than Marlin for this.

  • @Givetheplant
    @Givetheplant ปีที่แล้ว +1

    Holy shit theres not a single simple explanation anywhere what the fuck

  • @cornbreadcuban5456
    @cornbreadcuban5456 21 วันที่ผ่านมา

    "Just go to your printer.cfg file". In a video tutorial its more important to show me how-to, than to keep your face in the video. I know more about your coffee cup than setting up my printer at this point.