Issue seems to be resolved. I deleted my Marlin copy, downloaded a fresh copy and I started again.
What worries me is how a working copy and a working printer can suddenly have this issue. Feel like this issue could come back as I never found the root cause.
It could be caused by software or configuration issue.
Possibility 1: just worked after re-installation of Marlin
You could have Z steps/mm set to 0 in EEPROM, and did not notice that fact.
It is possible to fix this unconsciously with Marlin software reinstallation, following the upgrade procedure which included reset of EEPROM settings - like "Step 4: ...
This turned out to be a problem with the tightness of the rollers at the left and right sides of the X-axis gantry (that roll up and down the Z rails).
Z-axis motion is driven by a single stepper motor on the left side, so the rollers have to be just the right amount of tight to keep the right side in sync. If the right side is tighter or looser than the ...
A touch or an inductive or capacitive sensor are useful when you cannot get a completely level bed which can be caused by a skew bed platform/heated plate or if the plate has a bend, large concave or convex area.
Even with such a sensor, you need to provide a bed that is as level (trammed) as you can get. Automatic Bed Levelling (ABL) is not magic, it is ...
Found the cause of the gaps. it was one or both of the following:: he x-carraige belt was rather loose; I think I'd overtightened the x-carriage assembly with the print head on it and the motion had a couple of places where it was a tad tight. Adjusted both these things and all the problems went away. What's especially interesting is that I'm now getting ...
You are mixing and matching a few older techniques. That's understandable, because "older" means "as of three months ago." But there is a better way now: as of version 2.0, the SKR mini has a full, working port for the BLTouch. You do not need to plug it into the z-stop, and you can and should retain your existing z-stop switch.
Have you considered using or adapting Prusa’s P.I.N.D.A. V2 or SuperPINDA? Seems that within some bounds they’ve solved the temperature compensation issue.
The older P.I.N.D.A. V1 sensor seems to be temperature-sensitive. See more information in P.I.N.D.A./SuperPINDA Sensor testing article of Pruse Knowledge Base.
I'm pretty sure something is wrong with the firmware I downloaded. I flashed the 3/5/21 version of Marlin firmware from https://marlin.crc.id.au/ and it is somehow working better with the LCD firmware (which I got from TH3D), the Z offset is working as it should, and the leveling process has more points and goes faster.
I don't understand the reasoning behind a first layer having a different offset from the following layers, but, You can manually add a re-definition of the current height after the first layer, suppose your first layer is 0.2 mm, you just need to tell the printer to move to a slightly higher next layer to redefine this as a different Z-offset.
From a G-code ...
3D printers like the German Reprap (see image) already uses a photosensor for homing the axes. The trick will be leveling the leveling sensors.
However, if you use an optical sensor measuring distance, you could mount it on the hotend like we do digital indicators (drop gauge). See Bed leveling method?
You would want a resolution of about 0.01 mm. That ...
I was wondering if it had something to do with my Z axis and BLTouch. When I unplugged the Z Axis on the printer the extruder wouldn't lower only raise so I plugged it back in and it moves in the right directions. The mother board I'm using is a SKR E3 Mini V2 and the BLTouch is 3.1 On that version motherboard the BLTouch plug has all 5 wires combined in one ...
What may be confusing is the use of the naming of the mechanism "Auto Bed Levelling", or short ABL, does not make your build plate to level itself with respect to the frame of the printer1). Hence you are instructed to always tram (level is rather misleading as it doesn't involve bubble levelling, instead it is meant to tram the bed with respect to ...
Problem is solved, though I still don't know how to test the BLTouch.
I had reversed the power connection (black and white wires) at the connection to the extension cable. Swapping that connector back around restored expected behavior.
Even with Auto Mesh Bed Leveling, you need to level the bed as good as you can. Your leveling grid show it varies between -0.403 and +0.145, that is about 0.55 mm or about 2-3 layers of filament (0.2 or 0.3 mm per layer). That can't be compensated for reasonably.
Re-level your bed so that the corners only have an absolute error of at max 0.1 mm around their ...
Even with auto mesh bed leveling, you ought and should level the bed to a good degree to make the leveling not only more efficient: the mesh bed level is to work out small dimples and hills in the bed, bot to work with a crooked or heavily misaligned bed.
I'm answering my own question here.
The Issue was that I set Z_MIN_POS to -2.0 I guess these 2 mm were subtracted from G28 but not from G29.
I don't know wether this is expected behaviour but changing Z_MIN_POS back to 0 fixed the issue for me.
"#define" is a feature of the compiler preprocessor and isn't a feature of Marlin. So there is no general way to recover the value of a "#define variable" (which isn't actually a variable at all) unless Marlin explicitly provides the option.
In the current version of Marlin M851 will report the X and Y offsets. It appears you have an older version which ...
This sounds like a firmware issue to me. I copied and pasted
G92 E0 ;Reset Extruder
Into my start code, and it worked fine.
I have an Ender 3 V2 and a BLTouch (BL, not 3D.)
If you haven't updated your firmware, that's definitely why.
This is the start code I am using (in Ultimaker Cura)
; Ender 3 Custom Start G-code
G92 E0 ; Reset ...
In order to use a BLTouch probe (or clone probe) you need to configure the firmware to know that a servo operated Z endstop is being used.
From the referenced files that are used for building the firmware you are running can be found in the configuration.h that:
* The BLTouch probe uses a Hall effect sensor and emulates a servo.
To address the firmware problems, Download a fresh edition of Marlin 2.0.x and configure the Configuration.h and Configuration_adv.h yourself. Others' configurations are expecting fully stock parts, and will not be compatible with your system.
Your main problem seems to be in your Probe Z-Offset. To get good level, you need to calculate how far above the bed ...
Now, all of that aside, I guess, in theory, it WOULD be possible for the printer to use these 16 measurements to dynamically ADJUST the height DURING THE PRINT based on where the head is SUPPOSED to be versus where the ACTUAL height of that spot actually IS. However, I cannot find anything that claims this is what happens
This is actually what happens. This ...
This left bed side issue could be caused by the poor design of the Ender 3 (portal printer single side Z lead screw and counter rolling guide post) in conjunction with the way the bed is probed and the hysteresis of the gantry. The second photo issue could well a result of an imperfection of the bed, a local bump, which cannot be filtered out with ...
Actually the sensor reads the bed correctly in terms of shape, not in actual reproducible distance.
Plotting the grids:
Results in pretty much the same shapes, so, when correcting for the maximum displacement and plotting all results in a single graph gives:
So the sensor does seem to produce reproducible bed geometry, but not the actual values.
Black is GND and should not be connected to VCC.
Note that you can simply pop out the metal parts (use a pin to press a small clip) from the connector and rearrange how you want them to be.
Note that most printer controller boards have the GND of all the endstops connected, so technically you don't need the black wire at all. I make my own extension cables (...
It looks like the changes are always going in the same direction for a given probe point (each point increases steadily or decreases steadily, there is no oscillation).
This means that the bed is not warm yet and you should wait longer.
In theory the heating of the BLtouch itself may affect the readings, and the air surely gets progressively warmer around it,...
I don't know your printer but I don't have BLtouch, and I have to set the height every time because the bed expands with heat.
If you print at variable bed temperature (PLA, ABS, PETg, nylon require different values) then that sensor helps a lot.
BL touch can also speed up bed calibration: you scan the bed, see the values to be corrected, adjust the bed ...
There are multiple ways to achieve this:
You don't necessarily need to do that in firmware, TH3D is based on Marlin firmware and is just a monolithic implementation for most popular printers and boards that helps novice users to easily configure their printer, but in the meantime it hides other options from plain sight.
Being a derivative fro ...