BLTouch Duet 2 Makergear M2 End stop switch??
-
@Phaedrux Thank you very much! Since my hot end can be adjusted by several mm up or down in the mount the Z0 has always been very exact. I would set zmaz to 210.00 with the hot end up then when at 210 drop it on a feeler gage at a know height, print a test and adjust offset with Zmax. So I did just that, sent sent the bed to zero, did the G92 Z0, dropped bed 10mm and G30 S-1 and entered the value.. The a lot of fumbling but eventually homed, sent the bed to center Z10, then G30 and G29 S1 and am doing some test prints... Sounds like adding one or more macros would be helpful.. How do I do that do that (NM Figured that out with little trouble) we are way off topic for this area of the forum Where should I be posting config question on the configuration of the Zprobe and height maps etc? Still not sure how to set since it does not seem to be managed by the probe/height map and it changes greatly with bed temp from cold to110C
Update: The more I think about this, if have a macro that uses the probe as the z endstop would that make the z offset less of an issue when the bed gets hot and moves closer to the nozzle? What would that look like.. homing to the zprobe, set map grid, run the probe grid and print.. and where/how does that offset get set? I think it is time for an adult beverage to forget about this for a while.. -
You should measure the probe Z offset when the nozzle and bed are at temp to account for thermal expansion.
-
@Phaedrux Ok, so redo the G92 Z0, jog to 10mm, send G30 S-1, edit the config, reboot and start all over again every time?
-
Not every time. You just need to know the offset when it's at temp, so that it's accurate for print time.
-
@Phaedrux So how to I home to the BLT prob, you said add thing to the end of the home all.. what gets added?
-
@Phaedrux said in BLTouch Duet 2 Makergear M2 End stop switch??:
To use the probe, you need to use a G30 command.
So after homing X and Y you'd need to position the probe, and then ask it to find Z0.
Something like this at the end
G90 ; absolute position G1 X150 Y150 F6000 ; move probe to center G30 ; probe the bed G1 X10 Y10 ; return to a park position
-
@Phaedrux Ok that is making sense to me. Let me run though this to verify I am understanding this fully and point out the parts still unclear.
Initially I have jogged the nozzle to touch the bed, then told the system I am at zero with the G92 Z0, moved the bed down 10mm, then probed with the G30 S-1 which only "Reports" the trigger point of the probe? This trigger point is added to the config.g file like this G31 X0 Y-24 Z1.36 P25 (unclear on P25). which is read at startup. The 1.36 in this case is added or subtracted from something to get to zero for this one spot??
When a mesh is run, this number changes with the be irregularities found while probing the bed. So when I put the code in the home file, it is just setting z0 at that one point which is then used against the mesh number if reloading an existing mesh or is used if a G29 is issued to redo a mesh.So if my nozzle was touching the bed and there is no config for the amount of gap needed for the first layer, how does that gap set set and or adjusted beside using the babbysteps? I need to understand how this all works and there does not seem to be a compressive written explanation of the entire process..
-
When you use G30 S-1, you are 'finding' the difference between the nozzle and the trigger point of the BL Touch. The machine knows this distance, as previously you used G92 Z0 to set the zero to the nozzle, moved the bed down 10mm, and then the machine moved until it found the BL Touch Trigger.
With that trigger value found, you add it to your G31 line in config.g so that it is a stored value. The next time you run a homing procedure, the machine will use the BL touch to find the print bed. Now that the machine knows where it is relative to the BL Touch trigger point, by using the offset in G31, it also knows where the nozzle is - and therefore Z0!
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
So if my nozzle was touching the bed and there is no config for the amount of gap needed for the first layer, how does that gap set set and or adjusted beside using the babbysteps? I need to understand how this all works and there does not seem to be a compressive written explanation of the entire process..
Right, so you found zero with the nozzle first, stored the value in G31, and now the BL Touch can find zero. Typically a print does NOT start the first layer at Z=0, but instead at the first layer height. For example:
G1 F360 Z0.2 ; start printing the first layer at Z=.2mm
Therefore you don't need to put an additional gap into the config.
If your G31 measurement is very accurate, you shouldn't need to babystep any extra to get the right first layer (although babystepping is a useful tool to use if it is off a tiny amount).
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
When a mesh is run, this number changes with the be irregularities found while probing the bed. So when I put the code in the home file, it is just setting z0 at that one point which is then used against the mesh number if reloading an existing mesh or is used if a G29 is issued to redo a mesh.
This sounds just about right!
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
G31 X0 Y-24 Z1.36 P25 (unclear on P25)
P25 is the trigger value, and 25 is fairly common for BL Touch probes.
-
@sebkritikel P25 was taken from an example in the instructions.. how is it come by and what does it mean.. trigger value ?? what is that?
As far as offset, I will see how it goes but fist testing seems to require more space. With the home at the other end of the screw prior to BLT, I would use the Max Z to control the offset. Adjust until the 3mm tall 2 wall square is actually 3mm..Does the M30 that is done before the the print over ride the stored value? I mean i would assume so since the number is very different between 40C and 110C
-
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
P25 was taken from an example in the instructions.. how is it come by and what does it mean.. trigger value ?? what is that?
For a digital signal it doesn't matter much. For an analog signal, it's a value between 1 and 1000. For the BLTouch use 25.
When using a probe, you should have an accurate Z0 position, so no offset needed. With an endstop at the high end of travel you're always at the mercy of needing an offset.
You can still adjust your first layer with babystepping if needed, and if it's consistent you can adjust your G31 trigger value by that amount to make it permanent.
-
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
Does the M30 that is done before the the print over ride the stored value? I mean i would assume so since the number is very different between 40C and 110C
G30 will use the value saved in G31. That's why it's important to measure it when at print temperature.
-
Have you seen this page? https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_testing
-
@Phaedrux said in BLTouch Duet 2 Makergear M2 End stop switch??:
Have you seen this page? https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_testing
Yup that page and associated pages got me where I am. It tries to cover a lot of things and some details are not there that would be helpful.
As far as the G31 at temp.. how to deal with a bed temp of 20C for TPU and 110 for ABS?? Or if I remove the Build-tak flex plate and put on just a metal plate with polymide tape. I would have to believe that when homed with the G30 command and the contact is in a different location it use that number not what is stored in G31
I mean I read this from the Gcode dictionary to say that G30 ; Probe the bed at the current XY position. When the probe is triggered, set the Z coordinate to the probe trigger height.
I would think this would override what is in the config.g would it not??. And if G31 as set at 20C and the bed is now 110C, the single probe with G30 would set it to where it needs to be at the higher temp, would it not? -
@airscapes said in BLTouch Duet 2 Makergear M2 End stop switch??:
I mean I read this from the Gcode dictionary to say that G30 ; Probe the bed at the current XY position. When the probe is triggered, set the Z coordinate to the probe trigger height.
I would think this would override what is in the config.g would it not?I think you misunderstand what the G31 value is and how it applies when using G30.
The G31 Z value is the distance between the nozzle tip and and the trigger point of the probe. With a contact probe like the BLTouch it doesn't change. When you do the measurement procedure with G30 S-1, you're manually setting Z0, and then measuring the distance between the nozzle tip and bed surface when the probe triggers. So if you change the bed surface, the probe doesn't care, it just touches the bed surface and calls that Z0 and it knows how far the nozzle tip is away because you gave it the offset.
The only thing that may chance G31 is thermal expansion of the nozzle. But if you measure it at temp it should be pretty consistant between print temps.
The way the bed surface behaves will vary between bed surfaces. How the shape changes at temp etc. But that just means you should create a new heightmap (G29) for each bed surface change.
-
@Phaedrux Excellent explanations and exactly what I was not grasping, that make perfect sense now!! As you could tell I was fixated on the bed changing height since I had to deal with that compensation manually without the probe. probe to nozzle offset does not change other than the heat of the nozzle vs cold.
It is little details like that that those main instructions are missing. They are more quick reference to get you going but not detailed on "how it works" which I do understand since there are lots of different probes and printers.
Thanks again, I have to find some time to get back to the printer and spend a few hours to get it finished.