I gave up a few weeks back on getting this working after installing klicky on my Voron 2.4...in just a few minutes following your video I realized where I had missed a step, and now I'm autoz calibrated! Thanks so much for putting this together.
hi, can i ask what step you missed? i get a lot off errors taht i can all solve, because entry's where not filled in the autoz.cfg file or just were examples. After editting al errors out, now i get a message "No trigger on probe after full movement" in calibration step. Did you get the same error? how did you solve it? Thanks!
The exact value of the switch_offset value cannot be determined from the switch data sheet and specifically has nothing to do with the Max pretravel PT in the spec (timestamp 2:25). Protoloft correctly calculates an initial swtich_offset value: offset base = OP (Operation Position) - switch body height. But the tolerance on the OP is +/- 0.3mm, so for the D2F-5, the switch_offset will be somewhere between 0.2 and 0.8mm. We really want the overtavel OT value, that is delta distance between the trip point and where the plunger bottoms out on the case. However the data sheet only provides a min guaranteed OT value. For a given D2F-5 switch, you can get a fairly accurate estimate of OT ( +/- 0.01 ish) by grapping the switch in the jaws of some calipers and slowly closing them until you hear the click. The OT is trip value minus the bottomed out distance. BTW THANK YOU! for creating this video. Enormously helpful.
HUGE Thank you for making such an easy to follow video on this fantastic Z-Calibration. Finally got around to adding my klicky probe and once I knew that was working all fine, I just followed your video and it was so easy to install and configure the Z-Cal. I used my feeler gauge and got it right down to 0.05 and that’s amazing and accurate. I’m so so happy. Again thank you for your work on the video.
..and done on one printer, that was way less painful than I expected. To make it a bit easier, I even added calibrate_z at the end of my quad gantry leveling macro, just before the probe_dock ('m using the klicky probe, not euclid). Thank you for the video!
Wow, that was fast! If you get the chance, please thank Protoloft the creator of this code with a coffee. I agree with you, this was one of the few manual things left on my printer. I love it. I've been able to knock out prints since creating this video with a huge increase in consistency compared to my Voron prior to this change and also compared to my previous printer. I'm glad you found this useful and thank you for watching!
"Offset is larger as allowed" can occur if your different build plates have a large variance in thickness. In my case I have some tempered glass plates. Change the max_deviation from 1.0 to something larger. In my case I changed it from 1.0 to 5.0.
I came across your channel while browsing. And since I'm in the process of building a Voron 2.4 together, I found a lot of helpful tips and help. Especially some great mods that I can incorporate directly. Thanks for your great videos! Gladly keep up the good work! 👍
A nomal probe like a bl-touch takes care of constant perfect first layers, even when switching bed surfaces. The only big advantage here is when you switch nozzles or printheads regularly. In that case it's worth the upgrade I guess. Note that I do switch (V6 style ) nozzles without altering the offset in any way. Works for me..
Long time BLtouch user here, on multiple machines. You still need to set up your Z offset with the Bltouch. It's not hard, but it's not foolproof. Also over time it needs readjusted (especially after a pin bend or replacement). I always forget which way to go to do the adjustment so it's always a process for me. This macro eliminates that process. Also If you ever get gunk in your sensor pin (like a fan blowing fuzz from regular printing) the sensor will false trigger or hang up. A warped print can take out the sensor pin. I've ruined hundreds of dollars worth of bed surfaces with Bltouch malfunctions over the years. The Bltouch works great, until it doesn't. I really like using them when they work, and have bought a bunch of them (always authentic). But when they fail it's a big problem. I've ruined hundreds of dollars worth of bed surfaces with Bltouch malfunctions over the years, plus bent pins, and other crash related damages. The biggest advantage here is getting Bltouch results plus nozzle measuring without actually using a BLtouch.
Your videos are very well done. Hat's off for the quality (and the challenging focus on that one). I am experimenting with different setups concerning z-offset and switching build plates. I currently run my probe (klicky) as the virtual z-endstop. Therefore not currently using the default pin-based z-switch in the back. This takes care of the varying build plate heights and does not seem to create other issues (But I still have to experiment more). Question: Don't you find using the nozzle to zero on the back switch an issue on a day-to-day usage? I got burned many times (before switching to virtual z-endstop) where a little bit of plastic was left on the nozzle and would throw off the z-offset enough to ruin my first layer.
I find that as long as the nozzle is hot, and I brush it before the start, I don't seem to have problems with the z-switch. Or at least I don't think so. I was having many issues with the induction probes which may have been hiding a problem with the z-switch. So I suppose I will see soon enough. Do you adjust z-offset by hand? Thank you very much for the kind words and watching!
@@KapmansBasementWorkshop I adjust z-offset by hand and apply the result to the probe. I never do it again until I switch nozzle. And I rarely do. I used to brush it before the start but even then, it would sometimes be a problem with the Home being done on the nozzle. Like you, I don't have a decontamination brush (yet) so brushing is at the beginning of the process. As it stands now, I can start a print and walk away. Oozing at the end of the nozzle will get purged but will not mess up the z-offset. The only concern I have (and still need to test) is the variation in z-offset due to printing at various temperature. In theory, the nozzle is going to be higher (less expansion) when I print PLA vs ABS. 45 deg difference could shift the z-offset by 0.01 mm ish (still have to do the math). To be tested.
@@eridum That brush and purge bucket are high on my list. Very soon. I'm going to be experimenting with heat soak time to see if the Euclid probe has reduced the time needed as well. I was waiting up to 2 hours for the induction probes to stabilize. If I get an hour or more back, I will be thrilled with all of this. That said, I would think this modification would take care of the z-offset changes due to temperature changes. I wonder if it can be made to work without the z-endstop switch...Thank you again.
Your videos are really great. Thanks again. One thing that I would like to achieve is to make the whole process quicker. Instead of picking up the probe, doing the gantry levelling, storing the probe, doing the safe homing, picking up the probe again, doing the auto z, storing the probe again, we have to get rid of some of the unnecesssary movements :)
I've been thinking about the same thing for the last few weeks. Sometime soon, I'm going to sit down and clean this all up. I'm planning some future changes for the printer and I think it will be the right time to optimize that aspect as well. Even as it exists right now, I'm so happy with the quality of the prints and the consistency, I'm going to enjoy it just a little longer before I start changing things... Thank you very much for watching and the great feedback!
Great video. The only thing that jumped out to me was you would have to make sure your nozzle is spotless when calibrating your Z offset. I would imagine a bit of filament that oozed out at some point with the nozzle hot or cooled, could easily affect it up to a good 0.5mm or more. Is there anything special you do to help mitigate this?
While I plan on adding a nozzle brush, I'm reasonably sure that as long as the hotend is at proper temperature for the filament installed, it's typically accurate enough. But I do brush the hot nozzle with a wire brush before calibrating.
I hate adjusting the Z-offset, so many failed first layers trying to get it right. I use a CR Touch but even with that I don't get a good accuracy between different build plates, even though it really shouldn't make a big difference as the probe, being a touch probe, should pick it up, but it doesn't. Has to be changed every time
Installed a klicky probe, started using z_calibration on my V2.4 and I love it. Now I've got this working with a CRTouch on my custom printer. The klicky EVA mount stuck too far below the duct and was below the nozzle (the mount itself, no probe attached) , any other way I came up with to mount it put the probe too far away from the nozzle to do any good so klicky wasn't an option on that printer. None of the other magnetic probes I looked at seemed any better, maybe if I was running an E3D V6 volcano but with the Mosquito hotend I'm using, no. Instead, I came up with an adapter to put on the nozzle stop's pin that allows the nozzle to contact the pin but the CR Touch to contact the adapter a few mm higher. It tricks z_calibration into thinking the "switch" is below the nozzle, I just had to play with the switch_offset a bit (it's 1.97) and it works like a charm. The metal pin of the CRTouch helps, I don't think I'd do it with a BL Touch and it's plastic pin, too much chance of damaging that soft plastic pin. Edit: The CRTouch pin isn't deployed until measuring the bed, so using it's metal pin as the "switch" contact location works out great when z_calibration is checking nozzle position and switch position. The adapter I came up with goes on the 5mm pin of the nozzle stop, basically a hollow cone with a flat rim. The nozzle can contact the 5mm pin and the CRTouch contacts that flat rim that's a couple mm above the 5mm pin of the nozzle stop. The cone section is wide enough inside that a hot nozzle won't touch it, the part that goes over the 5mm pin is tight enough not to move easily but I still added a stop ring so that it cannot be pushed further onto the pin and it's height and placement on the pin remains constant.
I love it as well. It's soooo cool that you got this working with the CRTouch! I may need to try that with my other printer! I wish I thought of it. Thank you for posting back and thank you for watching!
@@KapmansBasementWorkshop Thanks for the great video! It was very helpful in setting z_calibration up on the V2.4. I was going to put a klicky probe on the custom build but the mount they had for the EVA wouldn't work with my hotend, it was lower than the nozzle. Since I already had the CRTouch on that carriage, I wanted to see if I could use it for z_calibration. I printed out a nozzle stop like the one the V2.4 uses for use as the z endstop and tried without any modifications but it just wouldn't work. I got to thinking and came up with the adapter that allows the nozzle to contact the pin and the metal pin of the CRTouch to contact higher, fooling z_calibration about the "switch" being lower than the nozzle, increased the switch_offset and it worked beautifully. Here's the adapter I came up with, feel free to use it or not, however you'd like to: social.thangs.com/m/65919 It should be tight on a 5mm pin, tap it gently until it hits the inside stop. I made it fairly tight so that with the built in stop, it won't move again after installed. Play with switch_offset to dial in the correct height after running z_calibration. I was working on the printer bed and had to dial mine in again, it's currently 2.04, so a much bigger offset than with a microswitch but it works.
Mark, I`d be interested to see how you mounted this on with the CR touch I`m running a BLTouch on an Anycubic. Just wondering how I could adapt this for it.
@@goodmandavis I'll check and see if I still have the files/photos of what I did. I lost a lot of videos and photos recently due to a corrupted drive and personal failure in backing that drive up so I'm not sure I still have anything so no promises. I've made changes to that printer since and don't use the CR Touch anymore, changed the hot end and modified the carriage which allowed me to add an annex engineering probe.
It sure can be used that way. It works great. Especially if you are moving from an induction probe that requires warm up time. This requires none of that. Thanks for watching!
So one thing that always gets me stuck with any so far z-calibrate. Is the paper test. I seen this and many videos still go back to it. I would like, and I think you and many would agree, to take out the human in this all together. So I think my issue is just HOW tight is it to feel when closing in the paper? barely touching, or tightly almost paper jam, or what? this guess work is where I get stuck on EVER type of z-offset adjusting. why is there not a better more reliable way? strain gauge pressure plate? or something. Is there really no way to eliminate the paper in each of these, and more 'measured'? Yes I do have those metal gauge you can buy. but there again, what exact amount of pressure can vary by whole millimeters. so humm. Shrugs
I struggle with the same issue. I try for lite friction. No matter how much friction you choose, there will be some test print calibration anyway. Howwever, with this software change to Klipper, you should really almost never need to do it again after the 1st time. I had to replace the microswithc a few times, both actually. I ran the paper test again after that change.
I always thought the Z-offset was the difference between the probe and the nozzle. I rarely change bed surfaces but I can't wrap my head around the need to re-do z-offset when changing beds. I'm genuinely curious, how much does the z-offset value change for you when changing between different bed surfaces?
I've got 3 that range in size from 0,8mm to 1.4mm. That has a substantial impact on how my prints look (or even print) if i don't re calibrate. And the paper method for me is a little too subjective. So now I get consistency. Thanks for watching!
There are at least 3 Z_Offsets (or even more) in klipper, which you use with Stock Voron 2.4 setup. There is in the [stepper_z] section position_endstop, which determines how far the nozzle is away from the bed (positive value) or below the bed (negative value) when the endstop pin switch triggers. Then there is in [probe] section z_offset which determines the difference between probe triggering and the nozzle. My probe e.g. triggers when the nozzle is 0.710mm above the bed, which you "meassure" or calibrate with probe_calibrate (whereafter it moves to the automatic section at the end). For a stock voron V2.4 this value is in prinziple not relevant, as it will use "mesh_relative" and rely on the position_endstop. And then there is the Offset Z which u can adjust during printing via the display or via the set_gcode_offset z_adjust=x.xxx commandiot to come closer to the bed or stay more far away.. And sadly the intention of voron in this design doesn't work as well as they thought. In principle the system they use should be perfect, as the nozzle tips the pin and independent what changes the switching point should have a permanent hight over or under the bed.. But there is where thermal deformation comes in.. the bed will bend with temperature, but really not much. The hight of the bed may change if u use different printplates. But mainly the temperature inside the closed chamber will destroxy the system. The x axis will bend a bit, which means as the pin is not at x center, the carriage will be on another hight, depending how warm your printer is already, relative to the position measured. And even much more and destroying the solution, the z endstop pin will grow, and it's really much it grows, enough, to destroy your first layer at about every 10K more chamber or "pin" temperature. And as the pin is so close to the bed it will even warm up higher than chamber temp.
You don't need to use this method when switching bed surfaces, only advantage is that this also takes care for different nozzle height for when you switch nozzles..
Linux tips here: "cd ~" will change to your home directory. if you want to change to a specific users home, "cd ~user" and if you have SSH, you generally have the ability to copy files with SCP... "scp user@hotsname:/file/from /file/to" or "scp local/file/from user@hostname:/remote/file/to" where the remote path starts from ~ unless you put an absolute path starting with /
@@KapmansBasementWorkshopdoes Klipper support bed profiles? Just setting up a 2.4r2 350. But on say my Prusa I have a smooth and textured profile, once I got Z dialed in on those all I have to do is switch the bed on the screen.
Hello, when I built my voron 2.4, I followed this great video to use the z_calibration plugin, since the last update of z_calibration, I have errors that appear on startup.J got two messages, "The 'max_deviation' option in the 'z_calibration' section is deprecated." and "The 'clearance' option in the 'z_calibration' section is deprecated.". Can you help me or update your video, to tell me what to do to remove these defects. In advance thank you for your response.
Thank you! Have you had a chance to step through this: github.com/protoloft/klipper_z_calibration/wiki/How-To-Configure-It On this printer, over time I've moved into a very different direction as I continue to try different tools. I've got no limit switches anymore. I have plans in the future to get back to this on a new printer I'm building, but it probably won't happen for several months at least.
Great to see new things… do you think I can 8nstall this Nozzle Z hight to any printer… I‘m using Klipper successfully on a Elegoo Neptun 3 Plus. I can go -6 on both axis, guess should work… thanks
I just switched to BLtouch after my third inductive probe melted. The touch has always been a source of annoyance on other printer (snagging and snapping) but I've had it with melting probes. I pulled the microswitch z endstop at the same time to use the touch for everything, but now I'm reconsidering keeping the switch... I did assemble a Klicky but never installed. There seems to be some weird behavior in klipper when it comes to the calibration-generated z offset. Thanks for the info.
This change is the single biggest improvement on my printer. I recommend it strongly. The consistency is amazing and it simply adjusts itself, even when changing flex plates that are different thicknesses. One question: Is the BLTouch having trouble in the enclosed & heated printer like many claim, or is it working well for you?
My setup consists of the z-endstop dedicated for homing, and the KlickyPCB equipped with Omron D2HW-A201D microswitch. In contrast to Euclid probe and earlier Klicky versions, where one can count with the pre-travel of 0.5mm (that equals the tip-to-body distance), KlickyPCB has its conical cap that adds a gap of roughly 3.4mm from switch-on-point to body. Let's consider this upon the measurements I made: Tip = 0 Tip-to-body distance: 4.00mm (-0.05mm) Cap tip travel: cca 0.6mm (OFF -> ON) Gap == 3.4mm (to body) I believe this is the distance we KlickyPCB users (using aforementioned microswitches) are complaining about.
@@KapmansBasementWorkshop In order not to leave the others amid the wilderness here are some follow-up thoughts. Since Protoloft's equation is a linear one and the switch_offset constant gets used once only, it may also be used for KlickyPCB without hassle. My setup ended up with (autoz.cfg): [z_calibration] switch_offset: 3.25 It may occur 3.3 or 3.4 would prove to be fine for some. As per QGL and bed mesh (printer.cfg), my findings for 350mm bed are as follows, see ## notes: [probe] y_offset: 19.0 ## KlickyPCB distance tip-to-nozzle, towards back (Y+); was 25.0 (default) [quad_gantry_level] horizontal_move_z: 10 ## default 5 is too liitle, KlickyPCB skids/glides on the surface during move [bed_mesh] speed: 120 horizontal_move_z: 10 ## default 5 is too liitle, KlickyPCB skids/glides on the surface during move mesh_min: 35, 25 ## KlickyPCB position, not nozzle! 25 - probe.y_offset: 19.0 = 6 => axis goes to Y6 mesh_max: 315, 293 ## KlickyPCB position, not nozzle! 293 - probe.y_offset: 19.0 = 274 => axis goes to Y274 probe_count: 5, 3 Bottom line: Compliments and thanks to Protoloft and you, Kapman, to make and visualize the AutoZ idea. Helped me a lot during the build, though it was confusing (to) me at first due to the application of KlickyPCB instead of Euclid or KlickyNG probes. Great channel of yours, thx👌.
This is usefull if you change nozzles alot. The main problem i see is making sure the nozzle is clean without user intervention. I replaced my Induction Sensor to a Clicky because changing between beds would mess up the readings, clicky works all the time
Great video :) Could you share your config? I have a problem when the probe presses z-switch during calibration. I always have an error "Probe triggered prior to movement". I tried to comment out stepper_z:position_endstop as I've seen on other videos, but always have a message "Option 'position_endstop' in section 'stepper_z' must be specified" and I'm stuck with this.
Just found your video, you saved me a lot of headaches, thank you!! I do have a question if you don't mind, my understanding is that the Z calibration is not saved anywhere as a permanent offset, so it needs to be done every time you start a new print and consequently do a G28 as we normally do. i am no expert in macros, and recently switched from klicky to Euclid with a few problem to sort out before getting it running. is there something i'm doing wrong or is intended to work once for every single printing cycle? Thank you for your time, amazing videos by the way.
Good question. You can save the settings, but I choose not to. My reasoning? When I start my first print of the day, I don't heat soak my printer. As soon as the bed is hot enough, the printer homes, QGL, home and then calculates the z-offset and the print starts. But as the printer frame, gantry and linear guides absorb the heat, expand throughout the day, the dimensions of the printer change slightly. So I found that running the process again for the next print generates more consistent 1st layers because a new z-offset is generated for each print. So for me, it did not make sense to save those settings. And since the z-offset is calibrated automatically, I'm not doing to work, the printer is doing it for me. True, it takes a little longer to start a print, but for me, that's way better than heat soaking the printer for 30 to 60 mins prior to the 1st print and it gets me a perfect 1st layer each print. Thank you for the kind words and watching!
Hi again Kapman! I was just curious at the step where we use the paper between the nozzle and bed, what are we doing with that value we get? Thanks again for all your work, I'm pretty much using your videos to all my mods ha
It's great question. I tried to clarify that since I didn't think the instructions were that clear, and I was confused at first as well. In your autoz.cfg file there is the switch_offset value. The starting value should be the value taken from the specs of the microswitch you used. However, this is probably not the final value you want. You will test that switch_offset value with the sheet of paper. You need to keep testing and adjusting switch_offset (and rebooting klipper) until the paper friction feels right (or feeler guage) and you have the nozzle at the correct height for your 1st layer of a print. One you have proven the switch_offset is correct based on the paper test and possibly some minor adjustments based on an actual print. You are done and you will never need to do it again. You can change nozzles, switch bed plates, print at different bed temperatures and the printer will now automatically adjust itself to the correct height! Honestly, its by far the best improvement I have made to my printer. Also, I strongly recommend that you install a nozzle brush (I created a video as well) and setup the printer to brush the hot nozzle prior to calibrating the z-offset. That way you won't have filament on the end of the nozzle that might cause an incorrect reading with auto-z.
@@KapmansBasementWorkshop Okay, that makes sense! I'm doing that mod next and will be following along your video. Then the runout sensor, so on and so forth ha
Thanks for doing the hard work for those of us who are new at this, love the nozzle clean video it works perfectly. After probing the nozzle on the way to probe switch body switch is contacting z end stop, how would I raise print head to clear the switch? Also I have to manually insert macro: error_if_probe_deployed to get Euclid recognized otherwise it faults out. How would I get this automated? Thanks
If you go into your euclid.cfg file, just change the z height to a value that works for you. If you need a more complicated path you can add that gcode there as well. This will be the macros for M401 & M402. Both of them set the z height. You should be able to adjust enough to pass over the z end stop. For the macro, to call it, you should probably modify the the G32 macro or the start_print macro in your printer.cfg file. In G32 I have it set to do a home, qgl, home and then calibrate_z.
@@nicklong9985 I sure do. Early on I had not adjusted it very well and it would sometimes drop the probe. As soon as it notices the probe is not fully connected, it raises an error and stops. If it did not do that, it would probably destroy your bed, print head or both when doing a bed leveling. Trust me, you want that error handling code. I can think of 4 different occasions where it would have been very bad if it were not there. Include the code!
@@KapmansBasementWorkshop yes I want to use the code. I’m probably not explaining the problem very well. What I wanted to know is what is causing the error?
@@nicklong9985 If at any time the probe is supposed to be attached and it senses both magnets are not making full contact to the Euclid, it will raise that error.
Great video and to the point. Helped me a lot this evening. One question, I noticed after this set up if I leave my nozzle at zero and rehome the z doesn't rise above the plate first. Is there a way to adjust that?
Ok so i have it set up and working, however its always about .5mm too high. I run a test pribt that is .25 in height and when i measure its thickness when its done its always about .9mm. I tried adjusting the congif switch offset with no luck. Nozzle is clean. I also tried following the voron docs and adjusting the z position_endstop as well. I just cant get it to close this gap
You need to adjust the offset in the cfg file. I do that in the last part of the video with a piece of paper. I would not adjust the z nozzle switch. That will cause this to set the wrong z offset.
Hey, at first I did not understand. But then... This is a clever idea, to touch some button with nozzle and then touch exactly same button with probe to get height difference.
It's very clever. It's so simple. I didn't really get it at first as well. But after I did not understand why this wasn't used by all printers. Thank you for watching and commenting!
Just wanted to say a massive thankyou for this guide! been struggling on and off getting auto z working, can confirm i worked through it today with your help! Any plans to do other voron mods? would love to see a purge bucket install / config
Great to hear! I'm glad it helped. I do plan on more mods. Quite a few in fact. I expect to start work on a purge bucket relatively soon. I have a few others I will complete 1st. Hopefully some of the others I have created might help out in as well. Thank you very much for watching and the great feedback!
@@GREGELZZ I would think that 90% of the time, what works for the 2.4 should work for the trident. I believe the next 3 to 5 projects should work just fine with the trident.
I am confused. I have a bltouch at the moment, which also acts as my z-endstop. Do I replace my current bltouch with the click probe and pin and then also add a Klicky or Euclid? I do not see any instructions anywhere on mounts, z-endstops etc?
I believe that is what you would need to do. Here are the requirements of this modification: github.com/protoloft/klipper_z_calibration/wiki/Requirements
thanks for the video. What i don't understand is why can't the printer just induction probe the center and know how much offset it needs to be. why does it need a reference point? I'm asking because since my Lulzbot it has been this way and there must be a good reason. Can someone enlighten me please?
You need an exact measurement of the nozzle tip to the probe or else you can't calculate an accurate z offset. The nozzle changes size slightly over time with wear and changing nozzles also changes that distance. Also, the induction probe only measures the distance from the probe to the steel sheet under the bed. The coating on the bed place is invisible to the induction probe. If you switch bed plates, the z offset needs to be adjusted as well. The reference gives you an exact point to calibrate against for accurate measurements. Also, Induction probes are sensitive to temperature. As the printer gets hotter, the induction probe heats up and then the measurements change. And yet one more, as the printer heats up, the frame changes shape, yet another reason a reference helps provide consistency.
@@KapmansBasementWorkshop Thank you very much for your answer. It's probably the coating that's tripping me before as it cannot be measured by the probe. Now it makes so much sense as Prusa will ask me if im using a smooth sheet or a rough sheet. I really appreciate you taking time to solve my biggest question as I cannot find an answer from google.
SOLVED !!! the issue when using the euclid attached to bed and changing plates more than 1 mm. I have changed the code in the gcodes macro definition of the ATTACH_PROBE and DOCK_PROBE with the next lines added: G0 Z30 F6000 SAVE_GCODE_STATE NAME=default G4 P500 SET_GCODE_OFFSET Z=0 G0 Z30 F6000 ... ... ALL THE GCODE.. ... ... RESTORE_GCODE_STATE NAME=default Look that it is very important the repetition of G0 Z30 F6000 (or the position used by you at start) to go to the new position that dont have offset applied.
Thanks for this - fabulous - I dont have a Klicky probe, yet. Do you think this could work using an induction probe, if we knew the height from the bottom of the probe to here it activates? (Assuming we always use a metal build plate ). For now Im about to use this just to find out if my z-switch is giving repeatable results.
I don't think it will work with the induction probe for 2 reasons: 1. The induction probe does not measure the surface of the bed. It can only sense ferrous metals. So the induction probe measures the height of the steel flex plate under the PEI instead and it tells you nothing of the actual height of the surface. I have 3 flex plates, each one has a slightly different thickness of PEI. And if you have a plate with a rough side and a smooth side, each side has a very different thickness! By using klicky or Euclid, you will always get the surface location and can switch plates or flip sides and always get the correct a-offset! 2. The induction probe will either be a model that works at 7mm or 5mm distance. If you try to tap that against the z end-stop, your nozzle will crash into the bed.
Thanks for the very clear how to video, only one question where do i put the start m401 and the m402 code config so that my printer wil do the same as shown on the video i have a 300 voron
I have my m401 & m402 defined in a file called euclid.cfg and then include that file name at the top of my printer.cfg file. If you wish, you could define m401 & m402 directly in your printer.cfg file. You should be able to do the same with Klicky. If they are already defined, and you want them called automatically, you can add them to the QGL if that is being called prior to each print in your print start. So something like this: [gcode_macro QUAD_GANTRY_LEVEL] rename_existing: _QUAD_GANTRY_LEVEL_ORIGINAL gcode: M401 ; deploy Euclid Probe if needed _QUAD_GANTRY_LEVEL_ORIGINAL ; check bed level M402 ; dock Euclid Probe However, I would assume you have m401 & m402 configured correctly previous to installing the auto z calibrate.... Let me know if I'm even getting close to the answer you are looking for. Also, for M401 & m402, have a look at my video about installing the euclid probe.
@@KapmansBasementWorkshop to be honest i'm staring with a 2.4 r2 build. i got most of the parts in, its going to be a 300 x 300 build. so i'm gathering more info about the probe and some other problems that this printer has. After watching your video i'm going to skip the induction probe and ordering the euclid probe. That's why my question was how and where to put the commands i have a core 3 from ratrig now i want a printer that can print abs And to be honest kind a new with klipper still learning and sometimes a little help is very appreciated.
@@petarbajai In that case, you may find these two interesting. They represent some key things I learned building this printer. For Euclid: th-cam.com/video/Z7x4S_HMlvc/w-d-xo.html For Klipper and other software: th-cam.com/video/XDQji9IFZ18/w-d-xo.html When placing the magnet to the bed, use the flattest surface you have. Hopefully thick glass and weight with and overnight cure: th-cam.com/video/xarmgigvHrU/w-d-xo.html And this is an absolute must once software is installed and printer is running, the klipper input shaper will provide a huge increase in print quality at high print speeds: th-cam.com/video/hXgl9-lXn7Y/w-d-xo.html Some things I learned along the way and I hope they will answer most of your questions. Thank you for watching!
Can the head height be increased inbetween the z home and when it measures the probe height on the z end stop and if so where is that located? My klicky probe is hitting the endstop as it is moving into position over the z end stop switch.
Thank you so much for this awesome plugin! Where should I place my BED_MESH_PROFILE LOAD=default in my start GCode? Before QGL and calibrate_z or after?
I would place it after both. Protoloft states this: "It's important to calibrate Z correctly for the created mesh!". Also, I did not create this macro, Protoloft did. If you find it useful, please send him a cup of coffee, the link is on his github. Thank you for watching!
What did you use for the switch to trigger against? Did you install an Internal Thread Dowel end pin or a block? if so what Exactly & do you have a link to it?
Has something changed in this plugin or in Klipper that effects this plugin, that in turn effects the M40x macros? I'm trying to set this plugin up and from a working euclid setup the M401 and M402 macros now make the toolhead move down Z which is not in the macros as I am using a euclid mount that attaches to the X cross member rather than the bed rail. There should be no Z move at all when commanding a dock or un-dock. EDIT: Nevermind. I tested with my finger on the power switch and after installing this plugin the toolhead now moves to Z 15 before performing the dock maneuvers. I'm a bit paranoid because I already crushed the original microswitch that came with the kit playing with homing overide and I don't want to do that again. Cheers for the instructional vid!
Thank you for the great video I really enjoy it and it helped move me forward in my setup. One question I keep getting a Offset is larger as allowed message. My offset is 1.528 and the max says 1.0. I see in your config you have have a max deviation entry but I am not sure why or what this means.
max_deviation simply is the allowable range in mm of the calculated offset. So if you want to allow 1.528, the max_deviation needs to increase to 1.6 or 2. Before you do this, adjust with the paper test and try to get it within 1mm. It's a safety mechanism. I'm glad the video has helped and thank you for the kind words!
@@KapmansBasementWorkshop okay so I think I got it. I have a glass bed but then put a 1mm sticker on it due to some issues and that caused the variance from when I originally set it up. So for instance correct me if I am wrong but if I use a flex plate and do the initial calibration with this plate and then use something that is 3mm thicker I think I would need the Max Deviation to be more than 3mm. Correct?
So don't take this as known facts, it's more superstition.... I have heard conflicting stories about QGL clearing the bed mesh prior to actually executing the QGL. I have also heard stories about Klipper not automatically loading a bed mesh after a QGL runs. I have heard similar stories about G32. Also, the Voron secondary tuning instructions where it states that it's probably a good idea to run a bed mesh calibrate in your print start prior to each and every print states this: "Then, place BED_MESH_CALIBRATE in your PRINT_START macro, AFTER any homing and leveling routines like G28, G32, QUAD_GANTRY_LEVEL, and Z_TILT_ADJUST." That's not the same as simply loading a bed mesh, but it's similar. So, does that backup the statement that QGL or G32 clear the bed mesh and don't reload it? I don't know. This (at the time) seemed like a sure way to be sure while being lazy and not testing the theory to be sure. I wish I had a better answer for you. It's a good question and thank you for asking and watching!
Hey there! I’m so glad I found your videos. They had helped me so much in my build. One issue I’ve always had with this mod comes down to reliability. Many times I have to run this bit of calibration code 20 or 30 times, or more! Just to get a proper offset! Get the error “probe samples exceed tolerance” every time. I made sure nothing was lose with klicky or the end stop, but this still fails. Most failure is when measuring the nozzle against the stop. When it works though, it’s fantastic! What would you recommend I take a look at to fix the issue?
My guess is the micro switch in the z ends top might need to be replaced. It could also be the klicky micro switch. I have had to replace the z endstop switch multiple times…
hi, a question, did the rest of the setup went well? I have a Klicky and had to change quit a lot in the autoz.cfg before it was error free. Now at calibrate "No trigger on probe after full movement" and process stops. Did you not get this error? Thanks!
@@richardtepas4832 That message usually comes up when the microswitch isn't being sensed properly. It can be the sign of a continuity problem with the wiring of the wrong pins are configured.
@@KapmansBasementWorkshop ok thanks, into that. Klicky works flawless, so i think it might be something else. Did you only have to change 2 or 3 settings in the config? Because i had to change a lot more
@@richardtepas4832 Most of my changes were in the cfg file for the automatic z calibration. I have my files in github. The video description contains the link to those files if you wish to see them.
can this apply to non euclid people like me? i use ender3/bltouch. im thinking the sequence will go: home xy>bltouch home z on z-endstop (bltouch is triggered but endstop is not)>nozzle home z on z-endstop>calculate z offset=B-A+pretravel
If you don't want to use Euclid, you could use the Klicky probe instead. Also, someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z But I can't use a BLTouch due to heat issues, so I have not tested this. But you can certainly give it a try.
I would. I also home after the QGL prior to using this script to make sure z is at zero after any adjustments QGL made. I have this believe that QGL changes the locations of z to possibly be non-zero. So I execute the extra home after qgl. I'll need to run some tests at some point to see if that is true. If you or anyone watching has a better understanding of this, please correct me.
@@TORDesign So when you do that G28, does it ever seem like 0,0,0 moved slightly from where you expected it to be? But the difference might be too hard to see....
If you don't want to calibrate before every print (as most of the time i'm not swapping beds), how can we use this? does it auto save the calibration in the printer config file, or would one need to do that? Thanks!
I believe you can just use the "SAVE_CONFIG" command. The printer will reboot and you will need to run the auto-z again. But it should be fine from there. One comment. While this is useful for switching bed plates, the reason why I run this at the start of each print is to compensate for thermal expansion. Since installing this, I do not heat soak the printer. When cold, I start a print and as soon as the bed and nozzle are at the correct temps, it automatically calibrates and starts printing. Once done, the printer cools down a bit, I prep the bed for the next print and it now auto calibrates as the printer is no longer cold, but warm and the frame and bed might have changed slightly due to the temp changes. I get very consistent 1st layers since doing this, without heat soak. The net effect is that calibrating prior to each print actually saves time! Thanks for watching and the question!
Question, can you set value on switch offset like in-between 0.24 to 0.25 to like 0.245? when i put to 0.24 its a little bit high and when i do 0.25 it makes some scratches on the first layer. thank you
If yours works well and you have no issues with it, no need to change it. However, in my case the induction probe took a long time in the heat to stabilize it's readings. Also, it can only measure ferrous metals. So it never can actually measure the actual height of your flexible build plate because it cannot "see" the pei on top, only the metal underneath. And then I have had them melt on me as well. Finally, I could not use this software to auto calibrate the z-offset. For me, this was the single biggest improvement in my day to day printing. I can change bed plates, they can be different thicknesses and the 1st layer height is always perfect. Automatically. And before I needed to wait an hour to 90 minutes for the induction probe to give stable readings in the heat. Now it re calibrates prior to each and every print. It's super nice. Thanks for watching!
@@KapmansBasementWorkshop thanks for the explanation. I do not yet have a bed sensor. I plan on adding one and wanted to know why you did not like the inductive. Thanks for the information.
thank you for the video, just building my voron. coming from a SWX1 with bltouch, it seems I can't get it why just not use the bltouch for both z endswitch and the abl, is there a voron-specific reason for this? for the last 2 years that's how its been setup on my x1, the only time I've been adjust my nozzle offest was when I've changed nozzles which is about 3-4 times.
The reason for not using the BLTouch is that it tends to fail due to the high heat inside the enclosed Voron 3d Printer. What is good for printing ABS seems to be bad for BLTouch. Also, the way the Voron z endstop switch is, you can change nozzles and it automatically adjusts so you don't need to calibrate a new z-offset.
@@KapmansBasementWorkshop thanks for the explanation, does it also apply to the version of bltouch with a metal pin? I mean, does the housing give up or the pin or is it electronics, thank you!
I think it's a great question! The z-endstop switch on Vorons sits right next the the bed plate and is in a position where the printer places the actual nozzle on the z-endstop. That is how it homes the z position. Other printers I have used have placed the z endstop elsewhere and have not homed using the actual nozzle tip. It sounds like you might be in that situation. When researching this. I stumbled upon this solution where someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z. This is not a Voron printer and it is based on this script. This person goes about it slightly differently but to the same effect. Have a look as you might be able to use it and solve this. The other option is to possibly relocate your z-endstop or simply add an additional endstop just for this reason.
A following video shows where I added a nozzle brush so just prior to adjusting z-offset, it brushes the hot nozzle clean. Thanks for the comment and watching!
Unable to parse ‘clearance’ in section ‘z_calibration’ I look in that section and the text is white instead of bluish green and there is an asterisk in that line
Hi another question i want to print the Assembly Jig but i have a choice in 4 different jigs which one did you choose for soldering ?0.2, 0.3, 0.4 or 0.5 a little confusing
It depends on how accurate your printer is. I believe I used the 0.2 model. But you can try it, and if it does not work, you can try one of the other sizes based on high tightly (or not) the parts fit into the jig. I admit, it is a bit confusing. If your prints tend to be oversized based on the design dimensions when compared to the actual print, you can target the larger jigs. Ideally it will fit perfectly.
Hi thanks for vid , done all this & it works great except it does save it to the cfg & when printer starts printing the Z offset is still to high , rising the Switch offset in the AutoZ.cfg does nothing as I’ve mentioned it doesn’t save the offset anyway , any ideas ????
Do you have a "position_endstop:" that isn't commented in the [stepper_z] section of the printer.cfg file? It should be commented. After changing that, reboot and then try to save your calibration. It should appear at the end of the printer.cfg file in the section with the comment that you should not touch that area.
It has a # next to it & all green is that correct ? It seems when ever I adjust the AutoZ.cfg switch offset figure the end stop (or something ) adds or subtracts that adjustment so I gain no closer z (Trying to close the z to bed more ) ( I know the higher the figure of the switch_offset means closer to the bed ) & my bed mesh map is 6cm up in the air off the bed position_endstop = 0.680 But it would need another +6mm on it but I know putting it here isn’t right ??
@@adrianstealth340 Did you create a file called "auto_z" and set those parameters and include it at the top of your printer.cfg? Have a look here at my files at the time: github.com/Kapman1/Kapman1 Look at the "switch_offset" setting in the auto_z.cfg (or whatever you might have called that file.
@@KapmansBasementWorkshop hi yes I have that file in place , I’ve overcome few problems after updating Klipper recently , the switch_offset in AutoZ.cfg doesn’t adjust anything , I’ve tried a very low figure to hopefully witness the nozzle go way to high but it didn’t do the adjustment , the AutoZ routine works well but it’s having zero effect & not being applied
Hi. Thanks for great tutorial. i have two questions, do I need to save config in mainsail after calibrate_z command? and the second one, do I need run calibrate_ z before every print? sorry for rookie questions xD
Good questions. The answer is it depends on how you want to operate. I choose not to save it and I calibrate prior to each print which accounts for anything that might of changed position due to heat expansion, cooling, change in PEI bed thickness when changing the plate between prints that may be different thicknesses or textures. If none of that is a problem for you, save the value after calibrating when 1st turning on the printer if you wish to use the same setting for a longer period of time. Even without saving, the measured setting with stay in effect until klipper restarts or you run another calibration.
@@EliteNervous This is a possible sequence recommended by the script creator: The print start sequence could look like this: Home all axes Heat up the bed and nozzle (and chamber) Get probe, make QGL or Z-Tilt, park probe Purge and clean the nozzle if available (Get probe), CALIBRATE_Z, (park probe) (Adjust Z offset if needed) Print intro line Start printing... As for mine, I have not added it in yet. But here it is just in case you find it useful. I might end up placing it in the G32 macro instead which is called from my print start: [gcode_macro G32] gcode: BED_MESH_CLEAR G28 QUAD_GANTRY_LEVEL G28 BED_MESH_PROFILE LOAD="default" G0 X175 Y175 Z30 F3600 #-------------------------------------------------------------------- [gcode_macro PRINT_START] gcode: G90 ; use absolute coordinates G32 ; home all axes G1 Z20 F3000 ;move nozzle away from bed G1 E5.0 F3000 ; move extruder I'll post again once I have actually added it in and tested it.
I'm trying to get the Klicky Probe to configured but Klipper gives me this error message: Existing command 'BED_MESH_CALIBRATE' not found in gcode_macro rename I don't know what it is asking for since there is a macro for bed mesh calibration. Is it saying there's 2 of them and I have to rename one of them? Any help is appreciated.
I have a "euclid.cfg" file setup that is included in my printer.cfg file. In the Euclid.cfg file you should have something like this: [gcode_macro BED_MESH_CALIBRATE] rename_existing: BED_MESH_CALIBRATE_ORIGINAL gcode: M401 ; deploy Euclid Probe if needed BED_MESH_CALIBRATE_ORIGINAL ; check bed level M402 ; dock Euclid Probe So yes, there are 2 of them and the original needs to be renamed and it's called from the new one.
@@KapmansBasementWorkshop Thank you so much for your help and quick reply. I have Klicky_Bed_Mesh_Calibration.cfg In this file it has [gcode_macro BED_MESH_CALIBRATE] rename_existing: _BED_MESH_CALIBRATE ... I removed the line "rename_existing: _BED_MESH_CALIBRATE" then saved and restarted and the error message went away. I don't know if I fixed it or just created another issue down the line. haha Thank you again for your help.
Is it possible to add the mesurement from the probe body to the 0.5mm klicking distance and get rid of Picking and mesuring the probes body over and over again?
Hmmm. Good question. I suppose the reason for a measurement each time is to take into account any changes due to temperature impact on the printer's expansion that may be different between prints or a cool printer. If that switch height were hard coded, would it impact that measurement? I want to try this now, but my printer is working so well that I'm scared to! I've also been thinking about changing the start print macro to eliminate as many steps as possible between QGL and the z-offset calibration. But now every print is rolling off this printer with exactly the same texture on the bottom with no problems or adjustments needed. I'm kind of enjoying this!
Sorry. I know you posted this a year ago, and maybe not for the printer you have or use. I am using a BLtouch to the left of my nozzle on a ender 3 pro. ( it is heavily modified, new board, hemera all-in-one etc). Maybe because it is 4:20 Am where i am while I ask this. Do you or anybody know if this can be setup with a BLtouch on a ender 3 pro by chance?? Thank you.
So funny thing. I'm setting up a BLTouch on another corexy printer as I write this. This is my 1st time using one. I don't honestly know, but I suspect not. Mainly due to the shape and construction of the BLTouch. But as I gain more experience with BLTouch (it's not fully operation yet), I may look into this next.
@@KapmansBasementWorkshop also the github is , well how to say, Bare now. I do not see the why this, and the detailed how to or any of this stuff (like on your video at 3:13). So Is this even a thing anymore? I would love to have the details the creator made. I see png files but Yes all the setup and explanation etc on the github seem to be gone.
I use one of these: mods.vorondesign.com/details/t1DBVlcUBbdEK6habEsVzg you can get a kit if you like for about 5 or 6 dollars. It mounts right next to the bed. In the description I have links to the probe that mounts to the print head.
I am stuck at the end. When I do CALIBRATE_Z it says my offset is more than 1 to -1. In your video you do not show where you set your z endstop in printer.cfg or even discuss it. Please explain this part.
Have a look at my printer.cfg and my autoz.cfg files located here: github.com/Kapman1/Kapman1 In the autoz.cfg file, there is a setting called "max_deviation" which sets the max to 1. You can change it. But, once you get things adjusted properly, set it back to 1. Also be sure to follow Protolofts instructions for calibration.
Haven’t adjusted my z offset on my prusa or on my Ender for 6 months. Seems I’m always fiddling with the voron. I might just go to a pinta probe on it as well because the prusa is solid
There is complex code in the prusa to compensates for the temperature variations that effect the pinda probe. That is why it works so well. The pinda probe isn't the magic. The code is. Same as with this style probe.
@@TheCyclingConquistador You save the offset from the nozzle to the bed at the correct height you need for the 1st layer. Use the paper test and then do some final adjustments to that value with some test prints. Once complete, you should be set.
Make sure your M402 (autoz.cfg>end_gcode: M402} doesn't home Z before stowing or it wipes out the calibration you just did. I had to change mine to "end_gcode: _PROBE_STOW
Hello, i have an Anycubic Kobra2Neo. And there ist the same switch on the end off the bed. So can i use this plugin to auto z offset my printer with klipper ? I dont wont to put that switch on the head.
For the auto calibration, you do need the second switch on the print head. It should work for you. If you have springs under the bed, you might need to firm those up.
@D3ltoroxp no, you can’t. The inductive probe doesn’t measure the surface of the bed, it measures the steel plate under the surface. You need the micro switch as it actually touches the surface which is what makes this consistent. Even if you switch bed plates.
@@KapmansBasementWorkshop So when i dont use this switch on head, i cant use the plugin for auto z offset calibration ? I will only when i push z offset calibration, that he push the switch in the back of the bed.
I've almost got it. One last question. When you run the command "calibrate_z" how to you set it to raise the printhead after probing the nozzle? My printer probes the nozzle then just moves forward, knocking the klicky probe back and rams the nozzle into the bed since the switch isn't there to contact the z endstop. I notice in your video the printhead raises. I had z_hop define at 10 in the printer.cfg but after this install I had to comment it out.
It sounds like you might not have the correct coordinates. In your cfg file you should have something like this where you set the positions. These were my settings. Yours will be different depending on your measurements as shown in the video. Even if your bed is 350mmx350mm like mine, they probably won't match exactly since our beds are not exactly bolted down in the same place. [z_calibration] nozzle_xy_position: 227,350 ; A X, Y coordinate (e.g. 100,100) of the nozzle, clicking on the Z endstop. switch_xy_position: 232,328 ; A X, Y coordinate (e.g. 100,100) of the probe's switch body, clicking on the Z endstop. bed_xy_position: 170,170 ;default from relative_reference_index of bed_mesh switch_offset: 0.519 #...the rest of your file follows....
@@KapmansBasementWorkshop Mine are different. But everything looks the same except the values: UPDATE: I figured it out 😀 [z_calibration] I commented out this line because it gave me the error "Unable to parse option 'clearance' in section 'z_calibration'" clearance: 5 * z_offset from the "probe:z_offset" section The line is needed but needs the ## after the value, so: clearance: 5 * ## z_offset from the "probe:z_offset" section I don't know why they don't have it written that way in the documents but either way I'm one step closer to having a fully functioning printer equivalent to my Prusa MK3. Many thanks for your help.
@@Hopeinformer I truly appreciate the gesture. But I don't have either. And even if I did, I would ask you to send the little "thank you" to the creator of the Klipper plugin Protoloft: ko-fi.com/protoloft
I’m a little confused as to why a thicker or thinner build plate matters to z offset. The surface of the build plate is always homed as zero, right? Interesting non the less. Thanks for the video.
Actually, it's not always homed as zero. Or at least no printer I ever owned did that. But this software does that for you. Normally, a printer homes zero to the z-endstop and you need to set the z-offset yourself. At best, a printer will typically level the print bed automatically if it has a sensor that allows it. Thank you for watching!
@@KapmansBasementWorkshop Maybe that's my confusion. With ABL I've only ever homed using the probe as my endstop. So you're saying you home to Z-endstops and ABL with a separate probe?
@@brandonbell359 I have a micro-switch z end-stop for homing. It's the metal pin that the nozzle and Euclid probe touch in the video. That allows me to switch nozzles and simply homing the printer takes care of auto adjusting for any nozzle height changes. Then it levels the bed (in this printer the quad gantry level). It then auto sets the z-offset to make sure no changes have occurred in the bed plate/magnetic sheet height (I have multiple magnetic plates and they are not exactly the same height). It also accommodates any changes due to temperature. So 3 different calibrations occur prior to each print. And I can change the nozzle, bed plate or both and have different temps set in the bed plate or printer (which also cause height changes) with no manual adjustment. If you don't change nozzles much and only have one bed plate and always print using the same filament, this may not be as important to you. Thank you!
After the recent Klipper update I can't get past this error. I have reinstalled Klipper on the pi and main board. I can't figure this out and would love some assistance. Error is "Section 'z_calibration' is not a valid config section"
Hi, great video but I am getting this message after the final Save and restart Unable to parse option 'for all of the sections in that you didnt fill in in the video. I am not sure where to find some of these. Why is it forcing me to complete these when you didnt need to?
My Wolong 2.4 has updated all the KLICKY files as per the post. Now I adjust the gantry without taking out the probe. I can take it in and out separately without any problem. Please help me.
Because 0,0 is between 5-10mm off the rear and right of the bed where the voron 2.4 x and y endstops are located and the build plate may not be exactly 350x350. 175,175 can not be center of the bed. its more likely 180-185 or something.
thank you for sharing your knowledge with us. I followed the instructions exactly. Unfortunately, when I change the switch offset, whether up or down, nothing changes. the nozzle always scrapes across the bed. I have screenshot / after calibrate_z: G-code 25.34mm (Klipper Z=23.94 < position absolute) G90 - G0 Z5 > G-code 5.00mm (Klipper Z=3.49) - G0 Z1 > G-code 1.00mm (Klipper Z=-0.51) I don't understand that! Do you have an idea what I'm not considering? I use "Klicky"
I'm going to assume you are including the autoz.cfg file in your printer.cfg file. As you make the changes to the switch offset, are you restarting Klipper to be sure the cfg files are all reloaded?
@@KapmansBasementWorkshop Thank you for your answer. yes i added the include and yes i always click save and restart. I also restarted the Pi in between.
@@ah_banny8478 Apologies for asking the most basic question there, but it happens to everyone...Can change these setting by hand and save them? I wonder if it's rights or possibly a typo? Can you post the cfg files someplace and post a link so I can have a look?
Is it normal to change the z offset +/- .10 to see any change. I can't seem to get it right. Always too far or unfortunately too close and destroys build plate. Thanks
With my eyes, it's very hard to see any change. I need to use a piece of paper or a feeler gauge to notice a difference. But 0.1mm is usually very noticeable with paper.
Any changes to your print start macro? For me, the calibration works perfectly, but when i start a print the nozzle is about 4mm above the bed. Any influence from position z endstop on this or the klicky probe z offset?
I've got a very different start macro these days. And I've been testing other features, so my newer one does not apply. Have you taken a look at: github.com/Kapman1/Kapman1/blob/main/printer.cfg and github.com/Kapman1/Kapman1/blob/main/autoz.cfg or even better reviewed the latest from the creator of the auto-calibrarion software? github.com/protoloft/klipper_z_calibration
is there reason i cant go to z0? i followed all the steps and when I manually job to z0 its perfect but it wont allow me to go to z0 always stays at like 3.51 for example. i can jog it to z0 with controls and it sat perfect but something blocking it.
That's great you set up an M401 and an M402 but no info on how this is done. I have been stuck for days. Is this like some kind of secret or is the into being held for ransom? This is a great video but I am now stuck.
@@KapmansBasementWorkshop Thank you for the reply I did notice that afterwords. 1 more question. Is there a reason you set the xy position to 170,170 because half of 350 is 175? Changing my switch_offset does not change how high or low my nozzle prints any ideas why?
@@chucktaylor5878 There is no important reason I choose 170,170 vs175,175. I probably was a little too focused on the camera. I'm not sure why switch_offset does not change the height of your prints. I have some other changes to make over the next few days, I will test mine to make sure it still works and it's not a bug or something. I'll get back with my results.
@@KapmansBasementWorkshop I appreciate your response. I just wanted to make sure I wasn't missing something I get a little over technical on things at times.
After G90 and doing the paper test. How do you save the z offset? When I follow this, and I do a test print, my nozzle is about 1.5mm away from the bed. I have to use the z offset controls while printing to lower the nozzle. I'm not sure which to save it as: endstop or probe?
Neither. I just changed the switch_offset setting in the autoz.cfg file based on the paper test and that's it. The software will automatically adjust to that height no matter the temperature or even if you switch bed thickness. It just works.
@@KapmansBasementWorkshop So you are saying that I should change the switch_offset to -9.00 (which is the z offset when I have the nozzle down to where it should be for printing)? Are you sure? I am using klicky pcb with z endstop (standard voron one that you have)
Because of my setup de Euclid probe is beside the printerhead, is it possible to do the endstop probing and then attache euclid probe? For messering the endstop?
I don't think so, unless you change the auto-z calibrate code itself? The config file simply asks for the location in x & y. It doesn't really give you those options.
I believe you need to do the paper adjustment 1st. Once you do and the offset set with the paper is less than 1mm, you should be fine for it to offset itself from there on. The other option if that does not work is the change the max value to something other than 1mm in the cfg file. But do the paper adjustment 1st.
Wow I did not even know something like this existed (coming from the Ender 3 land.) Would it be possible to do something similar with a BLtouch? Test nozzle on the endstop and then test probe on the endstop and use the BLtouch trigger as the value used in the calculation?
Someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z But I can't use a BLTouch due to heat issues, so I have not tested this. But you can certainly give it a try. If you do, please let us know if this works. Others have asked if this workis with the BL and CL touch. Thank you for watching!
@@KapmansBasementWorkshop Oh wow thank you, now I just need to figure out where to place the endstop with enough clearance for everything on my Ender 3. My Voron envy continues, one day I can have a trident with this as well never have to do any more calibration lol
I gave up a few weeks back on getting this working after installing klicky on my Voron 2.4...in just a few minutes following your video I realized where I had missed a step, and now I'm autoz calibrated! Thanks so much for putting this together.
Glad I could help! Thank you for watching!
hi, can i ask what step you missed? i get a lot off errors taht i can all solve, because entry's where not filled in the autoz.cfg file or just were examples. After editting al errors out, now i get a message "No trigger on probe after full movement" in calibration step. Did you get the same error? how did you solve it? Thanks!
I'm glad others can see how amazing Z calibration is. Has saved me sooooo many headaches. Perfect first layers.
Couldn't agree more! Thank you!
The exact value of the switch_offset value cannot be determined from the switch data sheet and specifically has nothing to do with the Max pretravel PT in the spec (timestamp 2:25). Protoloft correctly calculates an initial swtich_offset value: offset base = OP (Operation Position) - switch body height. But the tolerance on the OP is +/- 0.3mm, so for the D2F-5, the switch_offset will be somewhere between 0.2 and 0.8mm. We really want the overtavel OT value, that is delta distance between the trip point and where the plunger bottoms out on the case. However the data sheet only provides a min guaranteed OT value. For a given D2F-5 switch, you can get a fairly accurate estimate of OT ( +/- 0.01 ish) by grapping the switch in the jaws of some calipers and slowly closing them until you hear the click. The OT is trip value minus the bottomed out distance. BTW THANK YOU! for creating this video. Enormously helpful.
That is a great point. I'm going to go back and measure the OT as you suggest here. Thank you very much for the tip. Thank you very much for watching!
HUGE Thank you for making such an easy to follow video on this fantastic Z-Calibration.
Finally got around to adding my klicky probe and once I knew that was working all fine, I just followed your video and it was so easy to install and configure the Z-Cal. I used my feeler gauge and got it right down to 0.05 and that’s amazing and accurate. I’m so so happy. Again thank you for your work on the video.
I'm glad this was useful for you. I think this software is just amazing. Thank you for the kind words and for watching!
I printed and assembled my klippy months ago.
Watching your video convinced me to install it on the printer
Biggest improvement I've installed on this printer so far. You will be happy. Thanks!
I'm so excited to try this out. This is a huge deal. That was one of the few manual things left on a Voron.
..and done on one printer, that was way less painful than I expected. To make it a bit easier, I even added calibrate_z at the end of my quad gantry leveling macro, just before the probe_dock ('m using the klicky probe, not euclid).
Thank you for the video!
Wow, that was fast! If you get the chance, please thank Protoloft the creator of this code with a coffee. I agree with you, this was one of the few manual things left on my printer. I love it. I've been able to knock out prints since creating this video with a huge increase in consistency compared to my Voron prior to this change and also compared to my previous printer. I'm glad you found this useful and thank you for watching!
"Offset is larger as allowed" can occur if your different build plates have a large variance in thickness. In my case I have some tempered glass plates. Change the max_deviation from 1.0 to something larger. In my case I changed it from 1.0 to 5.0.
I did not consider that. Thank you for posting the solution!
I came across your channel while browsing. And since I'm in the process of building a Voron 2.4 together, I found a lot of helpful tips and help. Especially some great mods that I can incorporate directly. Thanks for your great videos! Gladly keep up the good work! 👍
And thanks for the kind words. I wish you a great build!
A nomal probe like a bl-touch takes care of constant perfect first layers, even when switching bed surfaces. The only big advantage here is when you switch nozzles or printheads regularly. In that case it's worth the upgrade I guess.
Note that I do switch (V6 style ) nozzles without altering the offset in any way. Works for me..
It's great that it's working for you. I have an older printer that isn't enclosed, I may give it a try. Thank you for watching!
Long time BLtouch user here, on multiple machines. You still need to set up your Z offset with the Bltouch. It's not hard, but it's not foolproof. Also over time it needs readjusted (especially after a pin bend or replacement). I always forget which way to go to do the adjustment so it's always a process for me. This macro eliminates that process. Also If you ever get gunk in your sensor pin (like a fan blowing fuzz from regular printing) the sensor will false trigger or hang up. A warped print can take out the sensor pin. I've ruined hundreds of dollars worth of bed surfaces with Bltouch malfunctions over the years.
The Bltouch works great, until it doesn't. I really like using them when they work, and have bought a bunch of them (always authentic). But when they fail it's a big problem. I've ruined hundreds of dollars worth of bed surfaces with Bltouch malfunctions over the years, plus bent pins, and other crash related damages.
The biggest advantage here is getting Bltouch results plus nozzle measuring without actually using a BLtouch.
Your videos are very well done. Hat's off for the quality (and the challenging focus on that one). I am experimenting with different setups concerning z-offset and switching build plates. I currently run my probe (klicky) as the virtual z-endstop. Therefore not currently using the default pin-based z-switch in the back. This takes care of the varying build plate heights and does not seem to create other issues (But I still have to experiment more). Question: Don't you find using the nozzle to zero on the back switch an issue on a day-to-day usage? I got burned many times (before switching to virtual z-endstop) where a little bit of plastic was left on the nozzle and would throw off the z-offset enough to ruin my first layer.
I find that as long as the nozzle is hot, and I brush it before the start, I don't seem to have problems with the z-switch. Or at least I don't think so. I was having many issues with the induction probes which may have been hiding a problem with the z-switch. So I suppose I will see soon enough. Do you adjust z-offset by hand? Thank you very much for the kind words and watching!
@@KapmansBasementWorkshop I adjust z-offset by hand and apply the result to the probe. I never do it again until I switch nozzle. And I rarely do. I used to brush it before the start but even then, it would sometimes be a problem with the Home being done on the nozzle. Like you, I don't have a decontamination brush (yet) so brushing is at the beginning of the process. As it stands now, I can start a print and walk away. Oozing at the end of the nozzle will get purged but will not mess up the z-offset. The only concern I have (and still need to test) is the variation in z-offset due to printing at various temperature. In theory, the nozzle is going to be higher (less expansion) when I print PLA vs ABS. 45 deg difference could shift the z-offset by 0.01 mm ish (still have to do the math). To be tested.
@@eridum That brush and purge bucket are high on my list. Very soon. I'm going to be experimenting with heat soak time to see if the Euclid probe has reduced the time needed as well. I was waiting up to 2 hours for the induction probes to stabilize. If I get an hour or more back, I will be thrilled with all of this. That said, I would think this modification would take care of the z-offset changes due to temperature changes. I wonder if it can be made to work without the z-endstop switch...Thank you again.
Hats off!
Standing applause!!
Great video!! Thank you!!
Thank you very much! Be sure to thank the creator of the software!
Very well done. Easy to understand and follow. This saved me a ton of time.👍
Glad it helped! Thank you!
Your videos are really great. Thanks again.
One thing that I would like to achieve is to make the whole process quicker. Instead of picking up the probe, doing the gantry levelling, storing the probe, doing the safe homing, picking up the probe again, doing the auto z, storing the probe again, we have to get rid of some of the unnecesssary movements :)
I've been thinking about the same thing for the last few weeks. Sometime soon, I'm going to sit down and clean this all up. I'm planning some future changes for the printer and I think it will be the right time to optimize that aspect as well. Even as it exists right now, I'm so happy with the quality of the prints and the consistency, I'm going to enjoy it just a little longer before I start changing things... Thank you very much for watching and the great feedback!
[gcode_macro G32]
gcode:
CG28
ATTACH_PROBE
QUAD_GANTRY_LEVEL
calibrate_z
DOCK_PROBE
G28 Z
@@stuttgartbatman3788 Thanks! I will try that out ASAP. And Grüße vom Ostendplatz.
@@stuttgartbatman3788 Yes, Thank you!
@@timha4102 so ein Zufall 😁 was für einen Drucker hast du?
Looks like my V2.072 I built with Paramount's Military Green. Nice video, helped me out setting up the autoz. Thanks!
It's cool to know that others like the color! I'm glad you found it helpful and thank you for watching!
This was extremely useful in setting up my auto z calibration. Thanks a lot!!
Glad it helped! Thank you very much for watching and the kind words!
Great video. The only thing that jumped out to me was you would have to make sure your nozzle is spotless when calibrating your Z offset. I would imagine a bit of filament that oozed out at some point with the nozzle hot or cooled, could easily affect it up to a good 0.5mm or more. Is there anything special you do to help mitigate this?
Do the nozzle scrubber mod as well.
I do plan on adding this.
While I plan on adding a nozzle brush, I'm reasonably sure that as long as the hotend is at proper temperature for the filament installed, it's typically accurate enough. But I do brush the hot nozzle with a wire brush before calibrating.
When print is finished I do a retract
@@everuss That seems like a great idea!
I hate adjusting the Z-offset, so many failed first layers trying to get it right. I use a CR Touch but even with that I don't get a good accuracy between different build plates, even though it really shouldn't make a big difference as the probe, being a touch probe, should pick it up, but it doesn't. Has to be changed every time
That is odd. I agree, it should not matter. Do you think the bed or the gantry might not be flat or straight? Is there a loose part or screw anywhere?
SFTP is usually running by default on systems with ssh enabled, fyi. you just need to make sure you specify SFTP instead of FTP
Thank you for that and thanks for watching!
Installed a klicky probe, started using z_calibration on my V2.4 and I love it. Now I've got this working with a CRTouch on my custom printer. The klicky EVA mount stuck too far below the duct and was below the nozzle (the mount itself, no probe attached) , any other way I came up with to mount it put the probe too far away from the nozzle to do any good so klicky wasn't an option on that printer. None of the other magnetic probes I looked at seemed any better, maybe if I was running an E3D V6 volcano but with the Mosquito hotend I'm using, no. Instead, I came up with an adapter to put on the nozzle stop's pin that allows the nozzle to contact the pin but the CR Touch to contact the adapter a few mm higher. It tricks z_calibration into thinking the "switch" is below the nozzle, I just had to play with the switch_offset a bit (it's 1.97) and it works like a charm. The metal pin of the CRTouch helps, I don't think I'd do it with a BL Touch and it's plastic pin, too much chance of damaging that soft plastic pin.
Edit: The CRTouch pin isn't deployed until measuring the bed, so using it's metal pin as the "switch" contact location works out great when z_calibration is checking nozzle position and switch position. The adapter I came up with goes on the 5mm pin of the nozzle stop, basically a hollow cone with a flat rim. The nozzle can contact the 5mm pin and the CRTouch contacts that flat rim that's a couple mm above the 5mm pin of the nozzle stop. The cone section is wide enough inside that a hot nozzle won't touch it, the part that goes over the 5mm pin is tight enough not to move easily but I still added a stop ring so that it cannot be pushed further onto the pin and it's height and placement on the pin remains constant.
I love it as well. It's soooo cool that you got this working with the CRTouch! I may need to try that with my other printer! I wish I thought of it. Thank you for posting back and thank you for watching!
@@KapmansBasementWorkshop Thanks for the great video! It was very helpful in setting z_calibration up on the V2.4.
I was going to put a klicky probe on the custom build but the mount they had for the EVA wouldn't work with my hotend, it was lower than the nozzle. Since I already had the CRTouch on that carriage, I wanted to see if I could use it for z_calibration. I printed out a nozzle stop like the one the V2.4 uses for use as the z endstop and tried without any modifications but it just wouldn't work. I got to thinking and came up with the adapter that allows the nozzle to contact the pin and the metal pin of the CRTouch to contact higher, fooling z_calibration about the "switch" being lower than the nozzle, increased the switch_offset and it worked beautifully. Here's the adapter I came up with, feel free to use it or not, however you'd like to: social.thangs.com/m/65919
It should be tight on a 5mm pin, tap it gently until it hits the inside stop. I made it fairly tight so that with the built in stop, it won't move again after installed. Play with switch_offset to dial in the correct height after running z_calibration. I was working on the printer bed and had to dial mine in again, it's currently 2.04, so a much bigger offset than with a microswitch but it works.
Mark, I`d be interested to see how you mounted this on with the CR touch I`m running a BLTouch on an Anycubic. Just wondering how I could adapt this for it.
@@goodmandavis I'll check and see if I still have the files/photos of what I did. I lost a lot of videos and photos recently due to a corrupted drive and personal failure in backing that drive up so I'm not sure I still have anything so no promises.
I've made changes to that printer since and don't use the CR Touch anymore, changed the hot end and modified the carriage which allowed me to add an annex engineering probe.
Interesting Add-On. Could this new micro-switch arrangement be utilized to run the BedMesh macro ? Nice video, by the way.
It sure can be used that way. It works great. Especially if you are moving from an induction probe that requires warm up time. This requires none of that. Thanks for watching!
So one thing that always gets me stuck with any so far z-calibrate. Is the paper test. I seen this and many videos still go back to it. I would like, and I think you and many would agree, to take out the human in this all together. So I think my issue is just HOW tight is it to feel when closing in the paper? barely touching, or tightly almost paper jam, or what? this guess work is where I get stuck on EVER type of z-offset adjusting. why is there not a better more reliable way? strain gauge pressure plate? or something. Is there really no way to eliminate the paper in each of these, and more 'measured'? Yes I do have those metal gauge you can buy. but there again, what exact amount of pressure can vary by whole millimeters. so humm. Shrugs
I struggle with the same issue. I try for lite friction. No matter how much friction you choose, there will be some test print calibration anyway. Howwever, with this software change to Klipper, you should really almost never need to do it again after the 1st time. I had to replace the microswithc a few times, both actually. I ran the paper test again after that change.
I always thought the Z-offset was the difference between the probe and the nozzle. I rarely change bed surfaces but I can't wrap my head around the need to re-do z-offset when changing beds. I'm genuinely curious, how much does the z-offset value change for you when changing between different bed surfaces?
I've got 3 that range in size from 0,8mm to 1.4mm. That has a substantial impact on how my prints look (or even print) if i don't re calibrate. And the paper method for me is a little too subjective. So now I get consistency. Thanks for watching!
There are at least 3 Z_Offsets (or even more) in klipper, which you use with Stock Voron 2.4 setup. There is in the [stepper_z] section position_endstop, which determines how far the nozzle is away from the bed (positive value) or below the bed (negative value) when the endstop pin switch triggers. Then there is in [probe] section z_offset which determines the difference between probe triggering and the nozzle. My probe e.g. triggers when the nozzle is 0.710mm above the bed, which you "meassure" or calibrate with probe_calibrate (whereafter it moves to the automatic section at the end). For a stock voron V2.4 this value is in prinziple not relevant, as it will use "mesh_relative" and rely on the position_endstop. And then there is the Offset Z which u can adjust during printing via the display or via the set_gcode_offset z_adjust=x.xxx commandiot to come closer to the bed or stay more far away.. And sadly the intention of voron in this design doesn't work as well as they thought. In principle the system they use should be perfect, as the nozzle tips the pin and independent what changes the switching point should have a permanent hight over or under the bed.. But there is where thermal deformation comes in.. the bed will bend with temperature, but really not much. The hight of the bed may change if u use different printplates. But mainly the temperature inside the closed chamber will destroxy the system. The x axis will bend a bit, which means as the pin is not at x center, the carriage will be on another hight, depending how warm your printer is already, relative to the position measured. And even much more and destroying the solution, the z endstop pin will grow, and it's really much it grows, enough, to destroy your first layer at about every 10K more chamber or "pin" temperature. And as the pin is so close to the bed it will even warm up higher than chamber temp.
You don't need to use this method when switching bed surfaces, only advantage is that this also takes care for different nozzle height for when you switch nozzles..
Linux tips here: "cd ~" will change to your home directory. if you want to change to a specific users home, "cd ~user" and if you have SSH, you generally have the ability to copy files with SCP... "scp user@hotsname:/file/from /file/to" or "scp local/file/from user@hostname:/remote/file/to" where the remote path starts from ~ unless you put an absolute path starting with /
@@KapmansBasementWorkshopdoes Klipper support bed profiles? Just setting up a 2.4r2 350. But on say my Prusa I have a smooth and textured profile, once I got Z dialed in on those all I have to do is switch the bed on the screen.
Hello, when I built my voron 2.4, I followed this great video to use the z_calibration plugin, since the last update of z_calibration, I have errors that appear on startup.J got two messages, "The 'max_deviation' option in the 'z_calibration' section is deprecated." and "The 'clearance' option in the 'z_calibration' section is deprecated.". Can you help me or update your video, to tell me what to do to remove these defects.
In advance thank you for your response.
Thank you! Have you had a chance to step through this: github.com/protoloft/klipper_z_calibration/wiki/How-To-Configure-It
On this printer, over time I've moved into a very different direction as I continue to try different tools. I've got no limit switches anymore. I have plans in the future to get back to this on a new printer I'm building, but it probably won't happen for several months at least.
Great video and presentation, I love to implement this on a different printer, perhaps with a bltouch, can this be done?
Yes, it can. Have a look here: github.com/hawkeyexp/auto_offset_z
Thanks!
Great to see new things… do you think I can 8nstall this Nozzle Z hight to any printer… I‘m using Klipper successfully on a Elegoo Neptun 3 Plus. I can go -6 on both axis, guess should work… thanks
I think you can. As long as you have klipper, but you also need that nozzle end stop as well as either a Euclid probe or Klicky.
I just switched to BLtouch after my third inductive probe melted. The touch has always been a source of annoyance on other printer (snagging and snapping) but I've had it with melting probes. I pulled the microswitch z endstop at the same time to use the touch for everything, but now I'm reconsidering keeping the switch... I did assemble a Klicky but never installed. There seems to be some weird behavior in klipper when it comes to the calibration-generated z offset. Thanks for the info.
This change is the single biggest improvement on my printer. I recommend it strongly. The consistency is amazing and it simply adjusts itself, even when changing flex plates that are different thicknesses.
One question: Is the BLTouch having trouble in the enclosed & heated printer like many claim, or is it working well for you?
My setup consists of the z-endstop dedicated for homing, and the KlickyPCB equipped with Omron D2HW-A201D microswitch.
In contrast to Euclid probe and earlier Klicky versions, where one can count with the pre-travel of 0.5mm (that equals the tip-to-body distance), KlickyPCB has its conical cap that adds a gap of roughly 3.4mm from switch-on-point to body.
Let's consider this upon the measurements I made:
Tip = 0
Tip-to-body distance: 4.00mm (-0.05mm)
Cap tip travel: cca 0.6mm (OFF -> ON)
Gap == 3.4mm (to body)
I believe this is the distance we KlickyPCB users (using aforementioned microswitches) are complaining about.
I'm sure many will find this helpful. Thank you for posting!
@@KapmansBasementWorkshop
In order not to leave the others amid the wilderness here are some follow-up thoughts.
Since Protoloft's equation is a linear one and the switch_offset constant gets used once only, it may also be used for KlickyPCB without hassle.
My setup ended up with (autoz.cfg):
[z_calibration]
switch_offset: 3.25
It may occur 3.3 or 3.4 would prove to be fine for some.
As per QGL and bed mesh (printer.cfg), my findings for 350mm bed are as follows, see ## notes:
[probe]
y_offset: 19.0 ## KlickyPCB distance tip-to-nozzle, towards back (Y+); was 25.0 (default)
[quad_gantry_level]
horizontal_move_z: 10 ## default 5 is too liitle, KlickyPCB skids/glides on the surface during move
[bed_mesh]
speed: 120
horizontal_move_z: 10 ## default 5 is too liitle, KlickyPCB skids/glides on the surface during move
mesh_min: 35, 25 ## KlickyPCB position, not nozzle! 25 - probe.y_offset: 19.0 = 6 => axis goes to Y6
mesh_max: 315, 293 ## KlickyPCB position, not nozzle! 293 - probe.y_offset: 19.0 = 274 => axis goes to Y274
probe_count: 5, 3
Bottom line:
Compliments and thanks to Protoloft and you, Kapman, to make and visualize the AutoZ idea.
Helped me a lot during the build, though it was confusing (to) me at first due to the application of KlickyPCB instead of Euclid or KlickyNG probes.
Great channel of yours, thx👌.
@@rozsikacsipke9880 Thank you for posting this and thank you very much for the kind words!
This is usefull if you change nozzles alot. The main problem i see is making sure the nozzle is clean without user intervention.
I replaced my Induction Sensor to a Clicky because changing between beds would mess up the readings, clicky works all the time
I used the similar Euclid probe. It worked great. Thank you for watching and the comments.
Great video :) Could you share your config? I have a problem when the probe presses z-switch during calibration. I always have an error "Probe triggered prior to movement". I tried to comment out stepper_z:position_endstop as I've seen on other videos, but always have a message "Option 'position_endstop' in section 'stepper_z' must be specified" and I'm stuck with this.
Sure. Here are all my cfg files: github.com/Kapman1/Kapman1
Thank you!
Thanks :) it turned out that I had a problem with the probe, poor conductivity between magnets
@@MrRoldak Interesting. I would not have guessed that. Thank you for posting this!
Just found your video, you saved me a lot of headaches, thank you!!
I do have a question if you don't mind, my understanding is that the Z calibration is not saved anywhere as a permanent offset, so it needs to be done every time you start a new print and consequently do a G28 as we normally do.
i am no expert in macros, and recently switched from klicky to Euclid with a few problem to sort out before getting it running.
is there something i'm doing wrong or is intended to work once for every single printing cycle?
Thank you for your time, amazing videos by the way.
Good question. You can save the settings, but I choose not to. My reasoning? When I start my first print of the day, I don't heat soak my printer. As soon as the bed is hot enough, the printer homes, QGL, home and then calculates the z-offset and the print starts. But as the printer frame, gantry and linear guides absorb the heat, expand throughout the day, the dimensions of the printer change slightly. So I found that running the process again for the next print generates more consistent 1st layers because a new z-offset is generated for each print. So for me, it did not make sense to save those settings. And since the z-offset is calibrated automatically, I'm not doing to work, the printer is doing it for me. True, it takes a little longer to start a print, but for me, that's way better than heat soaking the printer for 30 to 60 mins prior to the 1st print and it gets me a perfect 1st layer each print.
Thank you for the kind words and watching!
Hi again Kapman! I was just curious at the step where we use the paper between the nozzle and bed, what are we doing with that value we get? Thanks again for all your work, I'm pretty much using your videos to all my mods ha
It's great question. I tried to clarify that since I didn't think the instructions were that clear, and I was confused at first as well. In your autoz.cfg file there is the switch_offset value. The starting value should be the value taken from the specs of the microswitch you used. However, this is probably not the final value you want. You will test that switch_offset value with the sheet of paper. You need to keep testing and adjusting switch_offset (and rebooting klipper) until the paper friction feels right (or feeler guage) and you have the nozzle at the correct height for your 1st layer of a print. One you have proven the switch_offset is correct based on the paper test and possibly some minor adjustments based on an actual print. You are done and you will never need to do it again. You can change nozzles, switch bed plates, print at different bed temperatures and the printer will now automatically adjust itself to the correct height! Honestly, its by far the best improvement I have made to my printer. Also, I strongly recommend that you install a nozzle brush (I created a video as well) and setup the printer to brush the hot nozzle prior to calibrating the z-offset. That way you won't have filament on the end of the nozzle that might cause an incorrect reading with auto-z.
@@KapmansBasementWorkshop Okay, that makes sense! I'm doing that mod next and will be following along your video. Then the runout sensor, so on and so forth ha
Thanks for doing the hard work for those of us who are new at this, love the nozzle clean video it works perfectly. After probing the nozzle on the way to probe switch body switch is contacting z end stop, how would I raise print head to clear the switch? Also I have to manually insert macro: error_if_probe_deployed to get Euclid recognized otherwise it faults out. How would I get this automated? Thanks
If you go into your euclid.cfg file, just change the z height to a value that works for you. If you need a more complicated path you can add that gcode there as well. This will be the macros for M401 & M402. Both of them set the z height. You should be able to adjust enough to pass over the z end stop. For the macro, to call it, you should probably modify the the G32 macro or the start_print macro in your printer.cfg file. In G32 I have it set to do a home, qgl, home and then calibrate_z.
@@KapmansBasementWorkshop got it thanks. Any idea why I have to use error_if _probe_deployed first before I can use Euclid probe?
@@nicklong9985 I sure do. Early on I had not adjusted it very well and it would sometimes drop the probe. As soon as it notices the probe is not fully connected, it raises an error and stops. If it did not do that, it would probably destroy your bed, print head or both when doing a bed leveling. Trust me, you want that error handling code. I can think of 4 different occasions where it would have been very bad if it were not there. Include the code!
@@KapmansBasementWorkshop yes I want to use the code. I’m probably not explaining the problem very well. What I wanted to know is what is causing the error?
@@nicklong9985 If at any time the probe is supposed to be attached and it senses both magnets are not making full contact to the Euclid, it will raise that error.
Great video and to the point. Helped me a lot this evening. One question, I noticed after this set up if I leave my nozzle at zero and rehome the z doesn't rise above the plate first. Is there a way to adjust that?
That might have been due to the g90 and I did not restart first. I think that might have been the issue but have to double check.
Assuming I understand what you experienced, I think that depends on how you have klicky or Euclid configured when homing, correct?
Ok so i have it set up and working, however its always about .5mm too high. I run a test pribt that is .25 in height and when i measure its thickness when its done its always about .9mm. I tried adjusting the congif switch offset with no luck. Nozzle is clean. I also tried following the voron docs and adjusting the z position_endstop as well. I just cant get it to close this gap
You need to adjust the offset in the cfg file. I do that in the last part of the video with a piece of paper. I would not adjust the z nozzle switch. That will cause this to set the wrong z offset.
Hey, at first I did not understand. But then... This is a clever idea, to touch some button with nozzle and then touch exactly same button with probe to get height difference.
It's very clever. It's so simple. I didn't really get it at first as well. But after I did not understand why this wasn't used by all printers. Thank you for watching and commenting!
can i use it without klicky , just only an inductive probe on toolhead + a button on the right hand as u have?
No, you can't use an inductive probe with this software.
Just wanted to say a massive thankyou for this guide! been struggling on and off getting auto z working, can confirm i worked through it today with your help!
Any plans to do other voron mods? would love to see a purge bucket install / config
Great to hear! I'm glad it helped. I do plan on more mods. Quite a few in fact. I expect to start work on a purge bucket relatively soon. I have a few others I will complete 1st. Hopefully some of the others I have created might help out in as well. Thank you very much for watching and the great feedback!
Which purge bucket design are you looking at?
@@KapmansBasementWorkshop really anything that also works with trident, if you don’t have one all good watching a install on a 2.4 will still help
@@GREGELZZ I would think that 90% of the time, what works for the 2.4 should work for the trident. I believe the next 3 to 5 projects should work just fine with the trident.
nice detailed video, thanks for taking the time to make these guides
Glad you like them! Thank you for the nice comments!
I am confused. I have a bltouch at the moment, which also acts as my z-endstop. Do I replace my current bltouch with the click probe and pin and then also add a Klicky or Euclid? I do not see any instructions anywhere on mounts, z-endstops etc?
I believe that is what you would need to do. Here are the requirements of this modification:
github.com/protoloft/klipper_z_calibration/wiki/Requirements
thanks for the video. What i don't understand is why can't the printer just induction probe the center and know how much offset it needs to be. why does it need a reference point? I'm asking because since my Lulzbot it has been this way and there must be a good reason. Can someone enlighten me please?
You need an exact measurement of the nozzle tip to the probe or else you can't calculate an accurate z offset. The nozzle changes size slightly over time with wear and changing nozzles also changes that distance. Also, the induction probe only measures the distance from the probe to the steel sheet under the bed. The coating on the bed place is invisible to the induction probe. If you switch bed plates, the z offset needs to be adjusted as well. The reference gives you an exact point to calibrate against for accurate measurements. Also, Induction probes are sensitive to temperature. As the printer gets hotter, the induction probe heats up and then the measurements change. And yet one more, as the printer heats up, the frame changes shape, yet another reason a reference helps provide consistency.
@@KapmansBasementWorkshop Thank you very much for your answer. It's probably the coating that's tripping me before as it cannot be measured by the probe. Now it makes so much sense as Prusa will ask me if im using a smooth sheet or a rough sheet. I really appreciate you taking time to solve my biggest question as I cannot find an answer from google.
SOLVED !!! the issue when using the euclid attached to bed and changing plates more than 1 mm.
I have changed the code in the gcodes macro definition of the ATTACH_PROBE and DOCK_PROBE with the next lines added:
G0 Z30 F6000
SAVE_GCODE_STATE NAME=default
G4 P500
SET_GCODE_OFFSET Z=0
G0 Z30 F6000
...
...
ALL THE GCODE..
...
...
RESTORE_GCODE_STATE NAME=default
Look that it is very important the repetition of G0 Z30 F6000 (or the position used by you at start) to go to the new position that dont have offset applied.
This is great to hear. And thank you for posting the solution!
Thanks for this - fabulous - I dont have a Klicky probe, yet. Do you think this could work using an induction probe, if we knew the height from the bottom of the probe to here it activates? (Assuming we always use a metal build plate ).
For now Im about to use this just to find out if my z-switch is giving repeatable results.
I don't think it will work with the induction probe for 2 reasons:
1. The induction probe does not measure the surface of the bed. It can only sense ferrous metals. So the induction probe measures the height of the steel flex plate under the PEI instead and it tells you nothing of the actual height of the surface. I have 3 flex plates, each one has a slightly different thickness of PEI. And if you have a plate with a rough side and a smooth side, each side has a very different thickness! By using klicky or Euclid, you will always get the surface location and can switch plates or flip sides and always get the correct a-offset!
2. The induction probe will either be a model that works at 7mm or 5mm distance. If you try to tap that against the z end-stop, your nozzle will crash into the bed.
Hey there I am Ashk, I wanted to request to that can you Make a dedicated video on how to combine CB1 to old android device
Hey, yes same question. Can it work klipper òn cb1 + old android.
Why would one do this? Is this just for a touch screen? Isn't the android device more powerful than the CB1? What are you trying to achieve?
Very nice :) thanks for the video! Is the "bed" switch wired in parallel to the hotend switch or has it a designated input on the motherboard?
It has it's own dedicated connection to the motherboard just as any of the other end stop switches do. Thanks!
ahh man this is perfect! i ran into this problem yesterday! Thanks man
So glad it helps!
Thanks for the very clear how to video, only one question where do i put the start m401 and the m402 code config so that my printer wil do the same as shown on the video i have a 300 voron
I have my m401 & m402 defined in a file called euclid.cfg and then include that file name at the top of my printer.cfg file. If you wish, you could define m401 & m402 directly in your printer.cfg file. You should be able to do the same with Klicky. If they are already defined, and you want them called automatically, you can add them to the QGL if that is being called prior to each print in your print start. So something like this:
[gcode_macro QUAD_GANTRY_LEVEL]
rename_existing: _QUAD_GANTRY_LEVEL_ORIGINAL
gcode:
M401 ; deploy Euclid Probe if needed
_QUAD_GANTRY_LEVEL_ORIGINAL ; check bed level
M402 ; dock Euclid Probe
However, I would assume you have m401 & m402 configured correctly previous to installing the auto z calibrate....
Let me know if I'm even getting close to the answer you are looking for. Also, for M401 & m402, have a look at my video about installing the euclid probe.
@@KapmansBasementWorkshop
to be honest i'm staring with a 2.4 r2 build.
i got most of the parts in, its going to be a 300 x 300 build.
so i'm gathering more info about the probe and some other problems that this printer has.
After watching your video i'm going to skip the induction probe and ordering the euclid probe.
That's why my question was how and where to put the commands i have a core 3 from ratrig now i want a printer that can print abs
And to be honest kind a new with klipper still learning and sometimes a little help is very appreciated.
@@petarbajai In that case, you may find these two interesting. They represent some key things I learned building this printer.
For Euclid: th-cam.com/video/Z7x4S_HMlvc/w-d-xo.html
For Klipper and other software: th-cam.com/video/XDQji9IFZ18/w-d-xo.html
When placing the magnet to the bed, use the flattest surface you have. Hopefully thick glass and weight with and overnight cure: th-cam.com/video/xarmgigvHrU/w-d-xo.html
And this is an absolute must once software is installed and printer is running, the klipper input shaper will provide a huge increase in print quality at high print speeds: th-cam.com/video/hXgl9-lXn7Y/w-d-xo.html
Some things I learned along the way and I hope they will answer most of your questions.
Thank you for watching!
@@KapmansBasementWorkshop For Klicky probe change: M401 with Attach_Probe, M402 with Dock_Probe
Can the head height be increased inbetween the z home and when it measures the probe height on the z end stop and if so where is that located? My klicky probe is hitting the endstop as it is moving into position over the z end stop switch.
Yes, that can be changed. I used the Euclid instead of the klicky, but have a look at your m401 macro. The z height is set there.
Thank you so much for this awesome plugin!
Where should I place my BED_MESH_PROFILE LOAD=default in my start GCode?
Before QGL and calibrate_z or after?
I would place it after both. Protoloft states this: "It's important to calibrate Z correctly for the created mesh!". Also, I did not create this macro, Protoloft did. If you find it useful, please send him a cup of coffee, the link is on his github. Thank you for watching!
@@KapmansBasementWorkshop thanks :) Your videos are so helpful, keep up the good work!
Great video. What build plate is that please
I purchased it from here: preciseprinterparts.com/Printer-Beds_c_11.html
I highly recommend it.
What did you use for the switch to trigger against? Did you install an Internal Thread Dowel end pin or a block? if so what Exactly & do you have a link to it?
I used this: mods.vorondesign.com/details/t1DBVlcUBbdEK6habEsVzg
You can also purchase kits with all the parts if you need to.
Very very usefull !! thanks for this video which is very clear. well done !!
Glad it was helpful!
Has something changed in this plugin or in Klipper that effects this plugin, that in turn effects the M40x macros? I'm trying to set this plugin up and from a working euclid setup the M401 and M402 macros now make the toolhead move down Z which is not in the macros as I am using a euclid mount that attaches to the X cross member rather than the bed rail. There should be no Z move at all when commanding a dock or un-dock.
EDIT: Nevermind. I tested with my finger on the power switch and after installing this plugin the toolhead now moves to Z 15 before performing the dock maneuvers. I'm a bit paranoid because I already crushed the original microswitch that came with the kit playing with homing overide and I don't want to do that again.
Cheers for the instructional vid!
Thank you for watching and glad it's working!
Thank you for the great video I really enjoy it and it helped move me forward in my setup. One question I keep getting a Offset is larger as allowed message. My offset is 1.528 and the max says 1.0. I see in your config you have have a max deviation entry but I am not sure why or what this means.
max_deviation simply is the allowable range in mm of the calculated offset. So if you want to allow 1.528, the max_deviation needs to increase to 1.6 or 2. Before you do this, adjust with the paper test and try to get it within 1mm. It's a safety mechanism. I'm glad the video has helped and thank you for the kind words!
@@KapmansBasementWorkshop okay so I think I got it. I have a glass bed but then put a 1mm sticker on it due to some issues and that caused the variance from when I originally set it up.
So for instance correct me if I am wrong but if I use a flex plate and do the initial calibration with this plate and then use something that is 3mm thicker I think I would need the Max Deviation to be more than 3mm. Correct?
In your Gcode, you first clear the bed mesh, and then after the qgl you load it? Can you elaborate on that? It's tripping me out haha
So don't take this as known facts, it's more superstition....
I have heard conflicting stories about QGL clearing the bed mesh prior to actually executing the QGL. I have also heard stories about Klipper not automatically loading a bed mesh after a QGL runs. I have heard similar stories about G32.
Also, the Voron secondary tuning instructions where it states that it's probably a good idea to run a bed mesh calibrate in your print start prior to each and every print states this:
"Then, place BED_MESH_CALIBRATE in your PRINT_START macro, AFTER any homing and leveling routines like G28, G32, QUAD_GANTRY_LEVEL, and Z_TILT_ADJUST."
That's not the same as simply loading a bed mesh, but it's similar. So, does that backup the statement that QGL or G32 clear the bed mesh and don't reload it? I don't know. This (at the time) seemed like a sure way to be sure while being lazy and not testing the theory to be sure.
I wish I had a better answer for you.
It's a good question and thank you for asking and watching!
Great video :)
I on my way to implement klicky on Anycubic kobra 2.
Fantastic! Thank you!
Hey there! I’m so glad I found your videos. They had helped me so much in my build. One issue I’ve always had with this mod comes down to reliability. Many times I have to run this bit of calibration code 20 or 30 times, or more! Just to get a proper offset!
Get the error “probe samples exceed tolerance” every time. I made sure nothing was lose with klicky or the end stop, but this still fails. Most failure is when measuring the nozzle against the stop. When it works though, it’s fantastic! What would you recommend I take a look at to fix the issue?
My guess is the micro switch in the z ends top might need to be replaced. It could also be the klicky micro switch. I have had to replace the z endstop switch multiple times…
hi, a question, did the rest of the setup went well? I have a Klicky and had to change quit a lot in the autoz.cfg before it was error free. Now at calibrate "No trigger on probe after full movement" and process stops. Did you not get this error? Thanks!
@@richardtepas4832 That message usually comes up when the microswitch isn't being sensed properly. It can be the sign of a continuity problem with the wiring of the wrong pins are configured.
@@KapmansBasementWorkshop ok thanks, into that. Klicky works flawless, so i think it might be something else. Did you only have to change 2 or 3 settings in the config? Because i had to change a lot more
@@richardtepas4832 Most of my changes were in the cfg file for the automatic z calibration. I have my files in github. The video description contains the link to those files if you wish to see them.
can this apply to non euclid people like me? i use ender3/bltouch. im thinking the sequence will go: home xy>bltouch home z on z-endstop (bltouch is triggered but endstop is not)>nozzle home z on z-endstop>calculate z offset=B-A+pretravel
If you don't want to use Euclid, you could use the Klicky probe instead. Also, someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z
But I can't use a BLTouch due to heat issues, so I have not tested this. But you can certainly give it a try.
You could but what would you gain by doing so? It would just be a more complicated way of doing what your already doing.
I believe in one of the other comments above I posted a link for someone that did this for th cltouch. That might work.
Another question - assuming our bed is not perfectly flat, we would want QGL and to load the Mesh before using this, right?
I would. I also home after the QGL prior to using this script to make sure z is at zero after any adjustments QGL made. I have this believe that QGL changes the locations of z to possibly be non-zero. So I execute the extra home after qgl. I'll need to run some tests at some point to see if that is true. If you or anyone watching has a better understanding of this, please correct me.
@@KapmansBasementWorkshop I also do a g28 after qgl before I print, and then load the mesh
@@TORDesign So when you do that G28, does it ever seem like 0,0,0 moved slightly from where you expected it to be? But the difference might be too hard to see....
@@KapmansBasementWorkshop I’ll keep an eye on that thanks.
If you don't want to calibrate before every print (as most of the time i'm not swapping beds), how can we use this? does it auto save the calibration in the printer config file, or would one need to do that?
Thanks!
I believe you can just use the "SAVE_CONFIG" command. The printer will reboot and you will need to run the auto-z again. But it should be fine from there. One comment. While this is useful for switching bed plates, the reason why I run this at the start of each print is to compensate for thermal expansion. Since installing this, I do not heat soak the printer. When cold, I start a print and as soon as the bed and nozzle are at the correct temps, it automatically calibrates and starts printing. Once done, the printer cools down a bit, I prep the bed for the next print and it now auto calibrates as the printer is no longer cold, but warm and the frame and bed might have changed slightly due to the temp changes. I get very consistent 1st layers since doing this, without heat soak. The net effect is that calibrating prior to each print actually saves time! Thanks for watching and the question!
Question, can you set value on switch offset like in-between 0.24 to 0.25 to like 0.245? when i put to 0.24 its a little bit high and when i do 0.25 it makes some scratches on the first layer. thank you
I see no reason why you can't. I would certainly try it. It just comes down to the physical limits of your z axis.
Why do we need to get rid of induction style probes?
If yours works well and you have no issues with it, no need to change it. However, in my case the induction probe took a long time in the heat to stabilize it's readings. Also, it can only measure ferrous metals. So it never can actually measure the actual height of your flexible build plate because it cannot "see" the pei on top, only the metal underneath. And then I have had them melt on me as well. Finally, I could not use this software to auto calibrate the z-offset. For me, this was the single biggest improvement in my day to day printing. I can change bed plates, they can be different thicknesses and the 1st layer height is always perfect. Automatically. And before I needed to wait an hour to 90 minutes for the induction probe to give stable readings in the heat. Now it re calibrates prior to each and every print. It's super nice. Thanks for watching!
@@KapmansBasementWorkshop thanks for the explanation. I do not yet have a bed sensor. I plan on adding one and wanted to know why you did not like the inductive. Thanks for the information.
@@f1hotrod527 It just was not very reliable for me. Thanks very much for the question, comments and watching!
thank you for the video, just building my voron. coming from a SWX1 with bltouch, it seems I can't get it why just not use the bltouch for both z endswitch and the abl, is there a voron-specific reason for this? for the last 2 years that's how its been setup on my x1, the only time I've been adjust my nozzle offest was when I've changed nozzles which is about 3-4 times.
The reason for not using the BLTouch is that it tends to fail due to the high heat inside the enclosed Voron 3d Printer. What is good for printing ABS seems to be bad for BLTouch. Also, the way the Voron z endstop switch is, you can change nozzles and it automatically adjusts so you don't need to calibrate a new z-offset.
@@KapmansBasementWorkshop thanks for the explanation, does it also apply to the version of bltouch with a metal pin? I mean, does the housing give up or the pin or is it electronics, thank you!
@@artemnikitin2806 My apologies, but I just don't know the answer to that one.
Maybe this is a dumb question, I don't have a Voron, but how does the printer calibrate the nozzle height?
I think it's a great question! The z-endstop switch on Vorons sits right next the the bed plate and is in a position where the printer places the actual nozzle on the z-endstop. That is how it homes the z position. Other printers I have used have placed the z endstop elsewhere and have not homed using the actual nozzle tip. It sounds like you might be in that situation. When researching this. I stumbled upon this solution where someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z. This is not a Voron printer and it is based on this script. This person goes about it slightly differently but to the same effect. Have a look as you might be able to use it and solve this. The other option is to possibly relocate your z-endstop or simply add an additional endstop just for this reason.
@@KapmansBasementWorkshop Thanks for the info. I'll check it out.
This would still be affected by a dirty gummed up nozzle. This is the main reason for the repeatability error on my voron.
A following video shows where I added a nozzle brush so just prior to adjusting z-offset, it brushes the hot nozzle clean. Thanks for the comment and watching!
Unable to parse ‘clearance’ in section ‘z_calibration’
I look in that section and the text is white instead of bluish green and there is an asterisk in that line
Klipper isn't recognizing 'clearance'. What cfg file is this error being reported?
Hi another question i want to print the Assembly Jig but i have a choice in 4 different jigs
which one did you choose for soldering ?0.2, 0.3, 0.4 or 0.5 a little confusing
It depends on how accurate your printer is. I believe I used the 0.2 model. But you can try it, and if it does not work, you can try one of the other sizes based on high tightly (or not) the parts fit into the jig. I admit, it is a bit confusing. If your prints tend to be oversized based on the design dimensions when compared to the actual print, you can target the larger jigs. Ideally it will fit perfectly.
Hi thanks for vid , done all this & it works great except it does save it to the cfg & when printer starts printing the Z offset is still to high , rising the Switch offset in the AutoZ.cfg does nothing as I’ve mentioned it doesn’t save the offset anyway , any ideas ????
Do you have a "position_endstop:" that isn't commented in the [stepper_z] section of the printer.cfg file?
It should be commented. After changing that, reboot and then try to save your calibration. It should appear at the end of the printer.cfg file in the section with the comment that you should not touch that area.
It has a # next to it & all green is that correct ?
It seems when ever I adjust the AutoZ.cfg switch offset figure the end stop (or something ) adds or subtracts that adjustment so I gain no closer z
(Trying to close the z to bed more )
( I know the higher the figure of the switch_offset means closer to the bed )
& my bed mesh map is 6cm up in the air off the bed
position_endstop = 0.680
But it would need another +6mm on it but I know putting it here isn’t right ??
@@adrianstealth340 Did you create a file called "auto_z" and set those parameters and include it at the top of your printer.cfg? Have a look here at my files at the time: github.com/Kapman1/Kapman1 Look at the "switch_offset" setting in the auto_z.cfg (or whatever you might have called that file.
@@KapmansBasementWorkshop hi yes I have that file in place , I’ve overcome few problems after updating Klipper recently , the switch_offset in AutoZ.cfg doesn’t adjust anything , I’ve tried a very low figure to hopefully witness the nozzle go way to high but it didn’t do the adjustment , the AutoZ routine works well but it’s having zero effect & not being applied
@@adrianstealth340 My paologies, but I don't really know what is wrong. This has worked for me and worked well.
Hi. Thanks for great tutorial. i have two questions, do I need to save config in mainsail after calibrate_z command? and the second one, do I need run calibrate_ z before every print? sorry for rookie questions xD
Good questions. The answer is it depends on how you want to operate. I choose not to save it and I calibrate prior to each print which accounts for anything that might of changed position due to heat expansion, cooling, change in PEI bed thickness when changing the plate between prints that may be different thicknesses or textures. If none of that is a problem for you, save the value after calibrating when 1st turning on the printer if you wish to use the same setting for a longer period of time. Even without saving, the measured setting with stay in effect until klipper restarts or you run another calibration.
@@KapmansBasementWorkshop Could you show us your Print_start macro please?
@@EliteNervous This is a possible sequence recommended by the script creator:
The print start sequence could look like this:
Home all axes
Heat up the bed and nozzle (and chamber)
Get probe, make QGL or Z-Tilt, park probe
Purge and clean the nozzle if available
(Get probe), CALIBRATE_Z, (park probe)
(Adjust Z offset if needed)
Print intro line
Start printing...
As for mine, I have not added it in yet. But here it is just in case you find it useful. I might end up placing it in the G32 macro instead which is called from my print start:
[gcode_macro G32]
gcode:
BED_MESH_CLEAR
G28
QUAD_GANTRY_LEVEL
G28
BED_MESH_PROFILE LOAD="default"
G0 X175 Y175 Z30 F3600
#--------------------------------------------------------------------
[gcode_macro PRINT_START]
gcode:
G90 ; use absolute coordinates
G32 ; home all axes
G1 Z20 F3000 ;move nozzle away from bed
G1 E5.0 F3000 ; move extruder
I'll post again once I have actually added it in and tested it.
@@KapmansBasementWorkshop thank you
I'm trying to get the Klicky Probe to configured but Klipper gives me this error message:
Existing command 'BED_MESH_CALIBRATE' not found in gcode_macro rename
I don't know what it is asking for since there is a macro for bed mesh calibration. Is it saying there's 2 of them and I have to rename one of them? Any help is appreciated.
I have a "euclid.cfg" file setup that is included in my printer.cfg file. In the Euclid.cfg file you should have something like this:
[gcode_macro BED_MESH_CALIBRATE]
rename_existing: BED_MESH_CALIBRATE_ORIGINAL
gcode:
M401 ; deploy Euclid Probe if needed
BED_MESH_CALIBRATE_ORIGINAL ; check bed level
M402 ; dock Euclid Probe
So yes, there are 2 of them and the original needs to be renamed and it's called from the new one.
@@KapmansBasementWorkshop Thank you so much for your help and quick reply. I have Klicky_Bed_Mesh_Calibration.cfg In this file it has
[gcode_macro BED_MESH_CALIBRATE]
rename_existing: _BED_MESH_CALIBRATE
...
I removed the line "rename_existing: _BED_MESH_CALIBRATE" then saved and restarted and the error message went away. I don't know if I fixed it or just created another issue down the line. haha Thank you again for your help.
@@Hopeinformer I believe you created an issue for yourself unless you just don't use a bed mesh. If you don't, you should be ok.
@@KapmansBasementWorkshop Crap. I do want to use bed mesh. But at this point I just want to start printing something/anything haha
@@Hopeinformer Then this should be fine.
Is it possible to add the mesurement from the probe body to the 0.5mm klicking distance and get rid of Picking and mesuring the probes body over and over again?
Hmmm. Good question. I suppose the reason for a measurement each time is to take into account any changes due to temperature impact on the printer's expansion that may be different between prints or a cool printer. If that switch height were hard coded, would it impact that measurement? I want to try this now, but my printer is working so well that I'm scared to! I've also been thinking about changing the start print macro to eliminate as many steps as possible between QGL and the z-offset calibration. But now every print is rolling off this printer with exactly the same texture on the bottom with no problems or adjustments needed. I'm kind of enjoying this!
@@KapmansBasementWorkshop I guess the mesurement is even better, because one object less that can cause inaccuracy by heating /docking (Probe)
@@Micha-46456 So at some point I'm going to try it. If you beat me to it, please post back. I'm very curious.
@@KapmansBasementWorkshop I will - I recently ordered my voron kit, but it won't be available until the end of May at the earliest.
@@Micha-46456 Have a great build!
may I know why you move Z to 5,2,1,0.2 and 0.1? Thanks.
Yes, You are setting the z-offset one last time manually. From that point on, the software takes over so you don't need to do it any more. Thanks!
Sorry. I know you posted this a year ago, and maybe not for the printer you have or use.
I am using a BLtouch to the left of my nozzle on a ender 3 pro. ( it is heavily modified, new board, hemera all-in-one etc).
Maybe because it is 4:20 Am where i am while I ask this.
Do you or anybody know if this can be setup with a BLtouch on a ender 3 pro by chance??
Thank you.
So funny thing. I'm setting up a BLTouch on another corexy printer as I write this. This is my 1st time using one. I don't honestly know, but I suspect not. Mainly due to the shape and construction of the BLTouch. But as I gain more experience with BLTouch (it's not fully operation yet), I may look into this next.
@@KapmansBasementWorkshop also the github is , well how to say, Bare now. I do not see the why this, and the detailed how to or any of this stuff (like on your video at 3:13). So Is this even a thing anymore? I would love to have the details the creator made. I see png files but Yes all the setup and explanation etc on the github seem to be gone.
Hello, what do you use as a nozzle hight probe?
I use one of these: mods.vorondesign.com/details/t1DBVlcUBbdEK6habEsVzg you can get a kit if you like for about 5 or 6 dollars. It mounts right next to the bed.
In the description I have links to the probe that mounts to the print head.
I am stuck at the end. When I do CALIBRATE_Z it says my offset is more than 1 to -1. In your video you do not show where you set your z endstop in printer.cfg or even discuss it. Please explain this part.
Have a look at my printer.cfg and my autoz.cfg files located here: github.com/Kapman1/Kapman1
In the autoz.cfg file, there is a setting called "max_deviation" which sets the max to 1. You can change it. But, once you get things adjusted properly, set it back to 1. Also be sure to follow Protolofts instructions for calibration.
Haven’t adjusted my z offset on my prusa or on my Ender for 6 months. Seems I’m always fiddling with the voron. I might just go to a pinta probe on it as well because the prusa is solid
I've heard that some have had good luck with that probe. I've got no experience with it....yet. Thanks!
There is complex code in the prusa to compensates for the temperature variations that effect the pinda probe. That is why it works so well. The pinda probe isn't the magic. The code is. Same as with this style probe.
Is this Auto probing supposed to happen automatically with every print? I’m only getting the homing then QGC and that’s it.
Its really up to you and how you setup the printer. I placed it in the print_start macro so it would happen prior to every print.
@@KapmansBasementWorkshop one more question am I supposed to save the offset to the probe or z stop.
@@TheCyclingConquistador You save the offset from the nozzle to the bed at the correct height you need for the 1st layer. Use the paper test and then do some final adjustments to that value with some test prints. Once complete, you should be set.
@@KapmansBasementWorkshop thanks, I really appreciate your help and the video.
@@TheCyclingConquistador Happy to help.
Make sure your M402 (autoz.cfg>end_gcode: M402} doesn't home Z before stowing or it wipes out the calibration you just did. I had to change mine to "end_gcode: _PROBE_STOW
Very good tip. Thank you!
Hello, i have an Anycubic Kobra2Neo. And there ist the same switch on the end off the bed. So can i use this plugin to auto z offset my printer with klipper ? I dont wont to put that switch on the head.
For the auto calibration, you do need the second switch on the print head. It should work for you. If you have springs under the bed, you might need to firm those up.
@@KapmansBasementWorkshop can I use the inductive probe on my print head as second switch?
@D3ltoroxp no, you can’t. The inductive probe doesn’t measure the surface of the bed, it measures the steel plate under the surface. You need the micro switch as it actually touches the surface which is what makes this consistent. Even if you switch bed plates.
@@KapmansBasementWorkshop So when i dont use this switch on head, i cant use the plugin for auto z offset calibration ? I will only when i push z offset calibration, that he push the switch in the back of the bed.
@@D3ltoroxp , Yes, you need both switchs. The nozzle switch and the z-offset to check the surface of the bed.
it did everything and then after the m402 it went back to the center and give me this error
Offset is larger as allowed: OFFSET=-1.160
Glad you got it working!
This should work with any z probe like BLtouch and a fixed-height mechanical endstop that the nozzle can engage with, right?
It might, but I have never used a BLTouch so I have not tested it.
So, having done this I am going to ask.. once ran do you save config before it comes into effect?
I don't save it because I run this prior to starting each new print. But you can certainly choose to do so. Thanks for watching?
I've almost got it. One last question. When you run the command "calibrate_z" how to you set it to raise the printhead after probing the nozzle? My printer probes the nozzle then just moves forward, knocking the klicky probe back and rams the nozzle into the bed since the switch isn't there to contact the z endstop. I notice in your video the printhead raises. I had z_hop define at 10 in the printer.cfg but after this install I had to comment it out.
It sounds like you might not have the correct coordinates. In your cfg file you should have something like this where you set the positions. These were my settings. Yours will be different depending on your measurements as shown in the video. Even if your bed is 350mmx350mm like mine, they probably won't match exactly since our beds are not exactly bolted down in the same place.
[z_calibration]
nozzle_xy_position: 227,350 ; A X, Y coordinate (e.g. 100,100) of the nozzle, clicking on the Z endstop.
switch_xy_position: 232,328 ; A X, Y coordinate (e.g. 100,100) of the probe's switch body, clicking on the Z endstop.
bed_xy_position: 170,170 ;default from relative_reference_index of bed_mesh
switch_offset: 0.519
#...the rest of your file follows....
@@KapmansBasementWorkshop Mine are different. But everything looks the same except the values:
UPDATE: I figured it out 😀
[z_calibration]
I commented out this line because it gave me the error "Unable to parse option 'clearance' in section 'z_calibration'"
clearance: 5 * z_offset from the "probe:z_offset" section
The line is needed but needs the ## after the value, so:
clearance: 5 * ## z_offset from the "probe:z_offset" section
I don't know why they don't have it written that way in the documents but either way I'm one step closer to having a fully functioning printer equivalent to my Prusa MK3. Many thanks for your help.
@@Hopeinformer I'm glad it's working now. Thanks for watching!
@@KapmansBasementWorkshop Do you have a venmo or Zelle? I'd like to send you a little thank you.
@@Hopeinformer I truly appreciate the gesture. But I don't have either. And even if I did, I would ask you to send the little "thank you" to the creator of the Klipper plugin Protoloft: ko-fi.com/protoloft
Can you make a video how you install it from scratch I try but I’m getting errors I don’t think I have some gcodes thank you
Have you taken a look at my other Canbus video?
@@KapmansBasementWorkshop you have a link
@@constantinsimion5129 th-cam.com/video/jgE3XMM9PBk/w-d-xo.html
@@KapmansBasementWorkshop thank you I will take a look I didn’t know how to ad the commends for the z calibration
@@constantinsimion5129 actually,you add it in the same way. Have a look at my printer.cig file in GitHub
I’m a little confused as to why a thicker or thinner build plate matters to z offset. The surface of the build plate is always homed as zero, right? Interesting non the less. Thanks for the video.
Actually, it's not always homed as zero. Or at least no printer I ever owned did that. But this software does that for you. Normally, a printer homes zero to the z-endstop and you need to set the z-offset yourself. At best, a printer will typically level the print bed automatically if it has a sensor that allows it. Thank you for watching!
@@KapmansBasementWorkshop Maybe that's my confusion. With ABL I've only ever homed using the probe as my endstop. So you're saying you home to Z-endstops and ABL with a separate probe?
@@brandonbell359 I have a micro-switch z end-stop for homing. It's the metal pin that the nozzle and Euclid probe touch in the video. That allows me to switch nozzles and simply homing the printer takes care of auto adjusting for any nozzle height changes. Then it levels the bed (in this printer the quad gantry level). It then auto sets the z-offset to make sure no changes have occurred in the bed plate/magnetic sheet height (I have multiple magnetic plates and they are not exactly the same height). It also accommodates any changes due to temperature. So 3 different calibrations occur prior to each print. And I can change the nozzle, bed plate or both and have different temps set in the bed plate or printer (which also cause height changes) with no manual adjustment. If you don't change nozzles much and only have one bed plate and always print using the same filament, this may not be as important to you. Thank you!
@@KapmansBasementWorkshop ahhh. I see now. Thanks for the explanation.
@@KapmansBasementWorkshop Great explanation.
After the recent Klipper update I can't get past this error. I have reinstalled Klipper on the pi and main board. I can't figure this out and would love some assistance. Error is "Section 'z_calibration' is not a valid config section"
Since you reinstalled Klipper, have you reinstalled Z calibration? My assumption is that it’s no longer installed based on the error above.
Hi, great video but I am getting this message after the final Save and restart
Unable to parse option 'for all of the sections in that you didnt fill in in the video. I am not sure where to find some of these.
Why is it forcing me to complete these when you didnt need to?
It sounds like you might have a typo. Typically, that causes a parsing error.
My Wolong 2.4 has updated all the KLICKY files as per the post. Now I adjust the gantry without taking out the probe. I can take it in and out separately without any problem. Please help me.
My apologies, but I'm sure I understand the problem you are having.
Bed_xy position 170? Why its not 175 at a 350×350 bed?
Honestly, I'm not sure. Probably a mistake. I suppose one could choose a location to strategically average the bed flatness....Thank you for watching!
Because 0,0 is between 5-10mm off the rear and right of the bed where the voron 2.4 x and y endstops are located and the build plate may not be exactly 350x350. 175,175 can not be center of the bed. its more likely 180-185 or something.
You can set it to any location you feel comfortable with
thank you for sharing your knowledge with us. I followed the instructions exactly. Unfortunately, when I change the switch offset, whether up or down, nothing changes. the nozzle always scrapes across the bed. I have screenshot / after calibrate_z: G-code 25.34mm (Klipper Z=23.94 < position absolute) G90 - G0 Z5 > G-code 5.00mm (Klipper Z=3.49) - G0 Z1 > G-code 1.00mm (Klipper Z=-0.51) I don't understand that! Do you have an idea what I'm not considering? I use "Klicky"
I'm going to assume you are including the autoz.cfg file in your printer.cfg file. As you make the changes to the switch offset, are you restarting Klipper to be sure the cfg files are all reloaded?
@@KapmansBasementWorkshop Thank you for your answer. yes i added the include and yes i always click save and restart. I also restarted the Pi in between.
@@ah_banny8478 Apologies for asking the most basic question there, but it happens to everyone...Can change these setting by hand and save them? I wonder if it's rights or possibly a typo? Can you post the cfg files someplace and post a link so I can have a look?
@@KapmansBasementWorkshop
...
Thanks for help, I hope it works ;-)
@@KapmansBasementWorkshop Did you ever get this resolved? I'm having the same problem.
Hello, after I did auto Z, I did bed mesh calibration, and the result is 0.4 mm lower than 0, where does the difference come from?
The final result should not be 0 as that means the nozzle would be touching the bed.
Is it normal to change the z offset +/- .10 to see any change. I can't seem to get it right. Always too far or unfortunately too close and destroys build plate. Thanks
With my eyes, it's very hard to see any change. I need to use a piece of paper or a feeler gauge to notice a difference. But 0.1mm is usually very noticeable with paper.
Any changes to your print start macro? For me, the calibration works perfectly, but when i start a print the nozzle is about 4mm above the bed. Any influence from position z endstop on this or the klicky probe z offset?
I've got a very different start macro these days. And I've been testing other features, so my newer one does not apply. Have you taken a look at: github.com/Kapman1/Kapman1/blob/main/printer.cfg and github.com/Kapman1/Kapman1/blob/main/autoz.cfg or even better reviewed the latest from the creator of the auto-calibrarion software? github.com/protoloft/klipper_z_calibration
is there reason i cant go to z0? i followed all the steps and when I manually job to z0 its perfect but it wont allow me to go to z0 always stays at like 3.51 for example. i can jog it to z0 with controls and it sat perfect but something blocking it.
I need to go back and have a look. It's been a while since I did this to my printer.
@ it’s going off my sex bolt as the zero point. I can enter z-3.5 then it will go to z0 on the console. Thanks for getting back to me
That's great you set up an M401 and an M402 but no info on how this is done. I have been stuck for days. Is this like some kind of secret or is the into being held for ransom? This is a great video but I am now stuck.
Have a look on the about tab and follow my link to the git hub.
@@KapmansBasementWorkshop Thank you for the reply I did notice that afterwords. 1 more question. Is there a reason you set the xy position to 170,170 because half of 350 is 175? Changing my switch_offset does not change how high or low my nozzle prints any ideas why?
@@chucktaylor5878 There is no important reason I choose 170,170 vs175,175. I probably was a little too focused on the camera. I'm not sure why switch_offset does not change the height of your prints. I have some other changes to make over the next few days, I will test mine to make sure it still works and it's not a bug or something. I'll get back with my results.
@@KapmansBasementWorkshop I appreciate your response. I just wanted to make sure I wasn't missing something I get a little over technical on things at times.
Does this work with a klicky probe?
It works great with Klicky probe!
After G90 and doing the paper test. How do you save the z offset? When I follow this, and I do a test print, my nozzle is about 1.5mm away from the bed. I have to use the z offset controls while printing to lower the nozzle. I'm not sure which to save it as: endstop or probe?
Neither. I just changed the switch_offset setting in the autoz.cfg file based on the paper test and that's it. The software will automatically adjust to that height no matter the temperature or even if you switch bed thickness. It just works.
@@KapmansBasementWorkshop So you are saying that I should change the switch_offset to -9.00 (which is the z offset when I have the nozzle down to where it should be for printing)? Are you sure? I am using klicky pcb with z endstop (standard voron one that you have)
Because of my setup de Euclid probe is beside the printerhead, is it possible to do the endstop probing and then attache euclid probe? For messering the endstop?
I don't think so, unless you change the auto-z calibrate code itself? The config file simply asks for the location in x & y. It doesn't really give you those options.
What does error says “offset is larger as allowed: OFFSET=3.427 MAX_DEVIATION=1.000
I believe you need to do the paper adjustment 1st. Once you do and the offset set with the paper is less than 1mm, you should be fine for it to offset itself from there on. The other option if that does not work is the change the max value to something other than 1mm in the cfg file. But do the paper adjustment 1st.
@@KapmansBasementWorkshop ok i will try that. Thank you
Wow I did not even know something like this existed (coming from the Ender 3 land.)
Would it be possible to do something similar with a BLtouch?
Test nozzle on the endstop
and then test probe on the endstop and use the BLtouch trigger as the value used in the calculation?
Someone seems to have gotten BLTouch working right here: github.com/hawkeyexp/auto_offset_z
But I can't use a BLTouch due to heat issues, so I have not tested this. But you can certainly give it a try. If you do, please let us know if this works. Others have asked if this workis with the BL and CL touch. Thank you for watching!
@@KapmansBasementWorkshop Oh wow thank you, now I just need to figure out where to place the endstop with enough clearance for everything on my Ender 3.
My Voron envy continues, one day I can have a trident with this as well never have to do any more calibration lol
@@afkafkafk I waited quite a while before I pulled the trigger on mine. I know what you are feeling!
Will the auto z plugin work with Voron Tap?
It doesn't. But then it's not needed.