Delta automatic & mesh bed compensation : Am I doing this right?
Did the Tevo Little Monster conversion to Duet Ethernet. Really, everything is dialed in except my first layer: It's too close to the bed on one pie-wedged section (basically everything from 6-10 on a clock) I'm printing directly on the very flat looking piece of glass that came with it (with purple glue stick). I've done a lot of reading and research and troubleshooting before I posted this. And for a bit of background, I've been printing with Cartesian & CoreXY printers (on multiple firmwares including RRF) for 6+ years now…. this is my first attempt with a delta.
First, what I've done to set it up:
https://duet3d.com/wiki/Calibrating_a_delta_printer : Everything appears to be measured & square.
https://www.duet3d.com/wiki/Configuring_RepRapFirmware_for_a_Delta_printer#Setting_up_the_auto_calibration_file : I've setup my bed.g and followed all the steps to set my trigger height offsets for all probe points. Ran G32 multiple times (making sure to not home inbetween per the docs), stored all that to config-override.g
https://www.duet3d.com/forum/thread.php?pid=29624#p29624 : Basically, everything from this post, I've done.
Running a G32 now gives me this:
Calibrated 6 factors using 7 points, deviation before 0.012 after 0.006
And a pic of my mesh grid heightmap, which seems somehow related to my issues:
Here's where it gets interesting: You see that bright red section on the bottom right? When I print, Everything on the first layer prints great except a pie-wedge on the left, like I mentioned above, from about 6-10 on a clockface. Nearly as if you mirrored that image on the X-axis: It's just prints too close there to the point that no filament will extrude. Everywhere else the first layer looks great. Right now I have to manually babystep in that zone to get it to extrude correctly.
I figured I could compensate for this in the slicer: Give it a big fat first layer, but I'm OCD when it comes to configuration… it should be printing perfectly flat across the whole thing… right?
Some of the relevant settings:
[[language]] ;setup bltouch: M307 H3 A-1 C-1 D-1 M558 P4 X0 Y0 Z1 H3 F200 T5000 ; setup mesh grid: M557 R130 S20 ```config-override.g: Note the Y20 probe offset on the G31: This _is_ the correct place to put that, right? BLTouch is directly behind the hotend 20mm (measured with calipers).
; Delta parameters
M665 L397.107 R156.774 H524.449 B175.0 X0.190 Y-0.061 Z0.000
M666 X-0.091 Y-0.279 Z0.370 A0.00 B0.00
; Z probe parameters
G31 T4 P25 X0.0 Y20.0 Z1.882
G28 ; Home all : via homedelta.g
M561 ; Set Identity Transform
M401 ; This runs macro file sys/deployprobe.g.
; 7 points, 6 factors, probing radius: 150, probe offset (0, 0)
G30 P0 X0.00 Y150.00 Z-99999 H-0.065 ; trigger height 1.871
G30 P1 X129.90 Y75.00 Z-99999 H0.058 ; trigger height 1.940
G30 P2 X129.90 Y-75.00 Z-99999 H0.119 ; trigger height 2.001
G30 P3 X0.00 Y-150.00 Z-99999 H-0.021 ; trigger height 1.861
G30 P4 X-129.90 Y-75.00 Z-99999 H-0.143 ; trigger height 1.739
G30 P5 X-129.90 Y75.00 Z-99999 H-0.193 ; trigger height 1.689
G30 P6 X0 Y0 Z-99999 S6 ; Bed center, main trigger height 1.882 - entered in config-override.g G31
M402 ; This runs macro file sys/retractprobe.g.
M375 ; Load the last saved heightmap.csv mesh grid - same as G29 S1 - must come after G28 (home)
G32 ; Probe Z plane - Run the bed.g macro which homes and auto-calibrates the machine - loads the last mesh grid
G92 E0 ; zero extruder
I've confirmed that Simplify3D's XYZ axes, and the Duet/TLM's xyz axes aren't inverted in any way. Anything i'm missing here? Any other pro tips to get that first layer working better? Any thoughts as to why that one section of my mesh grid is so out of wack compared to everything else? Thanks!
The H corrections in your bed.g file indicate a trigger height variation across the bed. I haven't checked, but I suspect you will find that they correspond to the tilt indicated on your height map.
If you are using a Z probe that is offset from the nozzle, then the differences in bed height shown on the height map are probably mostly not real. Instead they indicate changes in the Z probe trigger height caused by a slight tilt of the effector as it moves in the XY plane. You can check this by mounting a circular spirit level on the effector.
Until you get rid of the tilt (so that you no longer need significant H corrections in bed.g), I suggest you do not use mesh bed compensation. You may find that without it, you get a good first layer.
Until you get rid of the tilt
Suggestions for how to do that? Even if I get the level you're talking (sounds like a good idea) about and mount it… what do I do armed with that info? Thoughts appreciated. I'll start searching the forum as well.
I tried removing the mesh bed compensation from the print, but i got the exact same print results.
Also, when you say 'significant H value', what range do you consider 'significant' to be? Just gives me something to go off of in the future.
While mentally troubleshooting this, I realized that the homed position wasn't entirely accurate: The TLM uses a small threaded set-screw that bolt into the top of each tower carriage: They each trip an optical endswitch. I'd not messed with them since the build, and they were up to 1.5mm off from each other, and just kind of 'loose' in their threads. I set them all to the same height, put threadlocker on them, recalibrated it all: Still the same problem, but figured it was worth a shot
This has a flying extruder above the effector; Thought maybe the bowden tube was too short, and it was possibly pulling more on the effector than it should in the extents, so I cut and installed a longer tube. Recalibrated again, but still the same issues.
Once you know how the effector is tilting, that helps to work out the likely causes. For example, when the effector is close to a tower, if that causes a tilt in a tangential direction, then either the rods to the carriage on that tower are not of equal lengths or the carriage is not level.
I would want the trigger height to vary by less than 0.1mm across the build area and preferably less than 0.05mm.
The exact trigger point of the endstop switches doesn't matter, because auto calibration will take care of the differences.
Thanks for the info. I've ordered some levels to stick on the machine, we'll see how far that gets me. Appreciate it!
To follow up: Got levels installed on the base of the machine, and on the effector itself: When the machine is leveled and the effector at home a few mm above the build plate, the effector looks level as well. And taking pics of the sightglass from directly above, it appears to be very close to level when near the rear tower, and front right tower. When near the front left tower, it does seem slightly out of level.
I did a rough re-measure of all my arms (hard when installed on the machine), and they all appear to be the same length.
Something like this is probably hard to troubleshoot when nothing looks particularly out of wack, but wanted to report my most recent findings. As long as I watch the first layer and babystep as needed, it prints fine. I'll keep poking at it and see if I can get it dialed in any better, mechanically or via the firmware calibration…
If it is slightly out of level when close to a tower and level everywhere else, then try rotating the carriage on that tower about its face to get it level.
Thanks for the tip, but based on the design, that's not really possible(?): The carriage rides on the inside of a c-beam style extrusion, with 4 wheels, two of which have eccentric nuts to help get then tension right: It's 'locked in there', no twist available.
Here's a photo that hopefully illustrates that:
Can you check with a spirit level that the carriage is level? If isn't, would moving the eccentric nuts to different positions out of the 4 adjust the level?
deckingman last edited by
…................. would moving the eccentric nuts to different positions out of the 4 adjust the level?
No. This is Open builds V slot - same as I use. You have 4 wheels on a carriage which engage with the v slot. Two are fixed and the other two on the opposite side have eccentric spacers on their "axels" to allow the wheels to be moved closer too, or away from, the V slot. You adjust the eccentric spacers so that each wheel is just touching the Vslot with no "play" but also not too tight.
Edit. The eccentric spacers go into different size (larger) holes so cant' be swapped with the fixed spacers.
Dougal1957 last edited by
You could try swapping the X And Y Carriages round and see if the tilt follows the carriage if it stays where it is the that tower is not true if it moves then it is the carriage that is out of true
Thanks for the thoughts: The idea of tearing my machine apart to check for this isn't very appealing, but I agree that it would help narrow the problem down. They way they designed this, you have to pull the whole top of the machine off to remove the carriages :S
deckingman last edited by
You've probably already checked this but are both eccentric spacers set to give the correct loading on the wheels? If one is a bit tight and the other a bit loose, it would have the effect of twisting the carriage slightly. They tend to "settle in" a bit after a while. This isn't normally a problem but I can see that on a Delta, it would be.
When I first built the machine, I tried to get the same 'feel' from the wheels when sliding them in the extrusion: I'd tighten one two what felt 'correct', then would do the other, flipping the carriage upside down so they could be inserted the same and tested. However, quite possible I got that wrong on some of them… seems more art than science. Feel like that design could use an update: 2 wheels on one side, with a single, in the middle on the other side, that is eccentric. My core-xy bot has a number of sliders setup that way.