Mp3dp v4 slow build

both of you, thanks for your continued help. This is the part where I start to patience, but I really want this one to work.

How do we incorporate a bed mesh? I had it measure one, but I don’t know how to have it load it or should it measure that each time?

Sure thing! Think we reference the mesh profile in START_PRINT macro.

Looks like I created and saved a 25 point mesh, and a higher fidelity 100 point mesh, but am only using the 25 point mesh :man_facepalming:. I should probably fix that, thanks for asking your question!

My Klipper config is @ https://github.com/aaronse/v1engineering-mods/blob/main/mp3dp-v4/klipper/printer.cfg

See Bed Mesh - Klipper documentation

I had named the 25 pt bed mesh something else and it was calling the wrong one.

2 Likes

Getting better

4 Likes

Did a cold bed mesh and have been doing 4 min octagon prints to nail the base layer. Lower right is the ticket. This is with a 25 pt bed mesh at the same bed temp. I’m going to add the variable code to the config to switch bed meshes as temperature changes… But check out the progression (left to right to to bottom with lower right the final.

And as the kicker the layer thickness was set at 0.4 mm

Ok next question: is this good enough or should the lines be imperceptible?

This was printed at 40 mm/s. Are there other settings besides Bltouch offset to maintain quality while ramping up speed?

1 Like

I’d be happy with that one…

1 Like

Not sure if I’m doing it correctly, but…

I usually don’t change first layer height in my slicer anymore when switching nozzles.

I leave all that alone and adjust the micro/baby steps on the first layer. I’ll do a test print like the one you’re using and adjust the microsteps on the printer itself up and down using the control panel until the first layer looks the way I want.

I’ve been changing the offset in the klipper printer.cfg file.

Edit: the change is counter intuitive… More space is a smaller offset.

1 Like

Do you not have an option of doing it real time?

With Marlin, I have the control knob on the TFT that I can turn while it’s printing to microstep the offset.

I have a knob on an lcd, but I have never done it like that before… Would have saved a ton of time and plastic.

1 Like

This looks just like the issue I have been having with my printer.

I can’t quite pinpoint the reason, but the print lines will peel up when an adjacent print line passes by. I have tried lowering and raising the offset and neither seem to eliminate the issue.

What did you do to get a good layer? Were you just playing with the z offset?

First of alll let me say that I’ve been printing a long time by just pressing the button and not really understanding what was going on. Manual bed leveling was “good enough” with a piece of paper and going slow, but I’ve never had the patience to mess with the first like this before. I mention that because I don’t want to sound like I know what i’m doing because I feel like I just learned some stuff within the last couple days and it is like I knew nothing before.

I changed a couple things:

  1. 0.6 mm nozzle - never used that before. always had 0.4 to get the best “quality” that was only ever marginal, but good enough for the trinkets and pi covers I was printing
  2. 0.4 mm base layer - because it is substantial enough I could use the caliper to measure it if done correctly. previously it was 0.2 I believe. google helped me on that one. I was determined to reprint this octagon until it measured the correct thickness… the extruder movement was dead on first though. 100 mm extrusion request = 100 mm of filament movement
  3. slowed the system down to 40 mm/s for the first layer, extruded at 205 °C for the yellow PLA I have to test with.
  4. to make it faster, I turned off the bed heater so the 10 minute delay of heating hte 300x300 mm bed could be avoided. To ensure some level of sticking on the smooth PEI bed, I added some glue stick to the top so the first layer would stay without heat. It worked pretty well.
  5. Saved a new bed mesh at room temperature after zeroing z after the z tilt (retry_tolerance: 0.1 #klipper z-tilt section)
  6. added section to printer.cfg to load a different bed mesh for different temperatures: 20, 40, 60, 80, 110:
printer.cfg load bed macro

#######################################
# load bed mesh depending on bed temperature
########################################
[gcode_macro LOAD_MESH]
gcode:
{% set bed_temp = params.TEMPERATURE|default(60)|float %}
{% if bed_temp >= 75 %}
BED_MESH_PROFILE LOAD=mesh80
{% if bed_temp >= 110 %}
BED_MESH_PROFILE LOAD=mesh110
{% endif %}
{% elif bed_temp < 35 %}
BED_MESH_PROFILE LOAD=mesh20
{% else %}
{% if bed_temp >= 35 %}
BED_MESH_PROFILE LOAD=mesh40
{% endif %}
{% endif %}

  1. Leveled the bed, set the bed temperature (the order it will do it when it runs) and made a file to match the names in the code in 6 (not done yet because only using room temp rignt now).
  2. found a single layer print to test the base layer, in the slicer, I set it to scale z to make the stl 0.4 mm thick and printed it probably 15x. This is the one I used below, but it could be drawn super easy in any program:
Calibration Octagon

First_Layer_octagon

  1. set the slicer preprint gcode as follows:
start print gcode used in slicer before changing it to START_PRINT macro in clipper print.cfg

M117 HOMING
G28 ; home all axes
M117 Z-offset
G1 Z10 F5000 ; lift nozzle
M117 Z tilt
Z_TILT_ADJUST ; level the bed
; this is for mesh checking

M117 carriage front left
G0 X15 Y15 Z10 F5000 ; wait for heat
M117 Start Print
G0 X100 Y100 Z5 F5000

but after some googling learned that the start gcode in the slicer should be

START_PRINT

and then all the stuff in that gcode should be in the starting macro in klipper. → to be done, but for now this works. The same should be done for the ending gcode. have the slicer call END_PRINT and that will call the macro in printer.cfg and all then all the slices should work if the printer details change. (this is cool. I didn’t know until trying to write this out.)

This is where I’m at: trying to get it set up correctly so it will be robust and maintainable. This way I can slice from any of the machines I have and they will all call the correct start sequence for the printer.

I tried to double the base layer speed and just realized that my start gcode didn’t follow the project, so both times I ran it, it failed because it didn’t z-tilt before printing and that is a disaster.

With all of this painfully obvious detail, hopefully there is something in there that helps you get what you seek. Apparently there is a way to adjust the base layer with babysteps on the fly and then save that offset into the correct place manually. I hope to learn how to do that, but for now having a layer that is attached and the correct thickness is a huge win for me. One thing at a time…

1 Like

Back to the 150 mm square… Second attempt after squaring the x gantry. It came in at 149.8mm in both x and y with some rack, but way better than the first. Both are in the picture.

The first one was racked pretty good because the one belt was super loose. Got it straightened out mostly. Base layer is good and sticks, but doesn’t seem to be well adhered to itself. Each trace has a bump outline you can trace with your fingernail. If it was a weld it would be considered poor penetration. More heat maybe? I also tried doubling the base layer speed to 80 mm/s and that looks like the previous set of attempts before getting the base layer right. After the first couple layers, the print seems to widen out substantially so it is the opposite of the elephant foot.

Made a fan shroud for the octopus


4 Likes

Lots of us start there.

The more you learn about these machines, the more you realize there is to learn. I’ve been through this many times, feeling super cocky and confident that I’ve mastered it, only to have everything fall in on itself when I change materials, or make some “minor” change, or have something fail that I can’t seem to recover from.

I’ve been around this loop before. If you adjust things to get a good result without a bed heater (and you can do this with PLA, not so for some other materials), then you likely will need adhesive like hirspray. But note that the bed does change significantly when it heats up from ambient and this will mess with your results if you’ve got the “perfect” first layer using an un-heated bed.

You’ll probably find that the bed also has different profiles depending on when you probe it at these setpoints. The bed needs to dwell for a while to stabilize after it’s seen a significant and quick ramp in temperature.

Just a note about this- when I was using printers without heated beds and relying on adhesives for a first layer adhesion, speeding up was the wrong approach and I had lots of print failures due to adhesion failures where the part would break free from the bed. Going slower on the first layer worked better for me in those cases (was true for borosilicate glass+hair spray, PEI on glass, and blue painters tape on aluminum or glass).

That is a noticable improvement. You’re getting better at dialing in your printer.
That looks like enough rack that it might still be a bit challenging for larger parts or alignment sensitive parts. It’s probably still worth working on squaring and aligning the printer.

I once thought I was the master of getting good prints out of my TAZ 5. Then we had a community member arrive for a while at the local makerspace, who worked at Lulzbot. They showed me the alignment tools and process that they use to build the printer (It’s open source, I was just too dumb to go find it.)
My prints got so much better after that, but it was a huge pain in the backside to go through that lengthy process every time I changed something on the printer.

Might consider keeping with a heated build plate, and a good temp tower test with the material you’re using. I’ve seen major variation in different vendor PLA and even different colors from the same vendor.

Just one comment to put it out there: You’re making major progress in understanding your printer and this will all pay off for you as you keep learning and working on it. This can be super frustrating but also rewarding when you can produce functional parts repeatably and reliably.

Keep at it!

2 Likes

Thanks for your insight and encouragement!
If you are saying that speed for first layer is more about adhesion than anything else, then the bed heat should be the answer. The plan is to move to 40 °C bed now that the base layer could reasonably be considered close to functional and print a couple octagons with bed heat and see what it looks like. The base layer width is the issue now and so I am looking into that. This is really an exercise in careful observation and working with the details.

As far as squaring the frame, I think it is the X gantry that isnt’ square and it is greatly influenced by the belts. With the plastic holding everything together, it is rather difficult to get a good edge to use as a square on the gantry along the side of one of the Y axis rails. It is all about reference angles and knowing just how much to adjust.

I need to print new trucks for the MPCNC, but it isn’t there yet…

So I’m not sure how did I manage to heat the bed and then cool it off while it prints? This was sort of serendipitous… the first layer sticks and then as the layer cools, so does the bed. It seems to work so for PLA I don’t think it needs to be “fixed” though for PETG that my be a different story. I think it has to do with the start macro in the printer.cfg file. I thought something was broken at first, but the prints are sticking. I haven’t had time to sit and calibrate to get it perfect, but stuff coming off it is close enough for my needs at the moment… camera holder, SD card file box, USB NVMe enclosure, you know, the early phases of 3d printing knicknacks that we all “need” feet for the printer, enclosure for the LCD screen… router mount for my spare cnc system that I need to get into someone else’s shop. All good things with this printer now that I’ve broken most major parts at least once.

I’m not sure how you managed that, either :-). On my printers, with PLA I run the beds at 54C. When a print is completed and the bed cools back down to ambient around 21C, most of the time the part has already detached from the bed or requires very little force to make it detatch from the build plate. I’m surprised if you heat up for PLA on the first layer and then shut the bed heater off that you aren’t popping off nearly every print mid-print.

I could print PLA on blue painters tape with no bed heat, but usually ended up pulling the tape up trying to get the parts off. I could also get PLA to adhere to non-heated textured PEI, but had to go hot on the extruder and slow on the first layer, and had problems with it popping off mid print.

This is also true for PETG (Requires heating on my printers all through print, to remain adhered.)

Even with heating, ABS likes to pop off or warp as prints proceed and peel off the bed. On the large bed printers, I’d taken to using openscad to carve a thermal release pattern into the first two layers to try and prevent this, and could print long ABS parts or ABS parts that have high first layer surface areas. I couldn’t get that to work without it. One time, a large, flat part contracted so violently on cooling that it tore a giant chunk of borosilicate glass out of the build plate. 300mm square borosilicate plates are expensive. That sucked. ABS will often times be sitting happily detatched on a cool borosilicate glass build plate with hairspray adhesive after the bed has cooled.

PETG has been pretty hit or miss for me on textured PEI. It seems to like around 54C, but seems really sensitive to getting a good first layer and really doesn’t like bed warp. On borosilicate glass with hairspray I never have first layer adhesion issues with PETG. The TAZ had a smooth PEI sheet adhered to borosilicate glass from the factory on its build plate, with the heater bonded to the back side. I ruined a build plate with PETG on that PEI as it would not come off with any trick I knew of. Eventually I shattered the glass trying to get it off. That led to me swapping to a hommade build plate with the 24V silicone heater bonded to a 3mm aluminum plate, with a magnetic sticker and the spring steel/PEI top layer that I currently use. So far, that’s been decent- but I do have problems with this warping in the 4-point TAZ bed mounts.

On glass, the adhesion issues I had with PETg were that if you tried to take the print off of the bed while it was still warm, it would take a chunk of glass with it. Hairspray at least would help it let go.

I’ve been trying the PEI sheets, and getting mixed results. Some filaments I can’t get to stick at all, more and more of late. Frustrating…

The smooth pei with a little bit of elmers glue stick is holding quite well. The pei is on spring steel magnetic sheet so it can be flexed to pop off the items and they usually take some effort to pull off when flexed. I think the issue is with this line in the printer.cfg file, but i’m not sure what it should be:

 #Heat nozzle and bed
      M117 Heat Bed
      M190 S{params.BED_TEMP|default(0)}    ;bed heating   should keep going until the M116 wait for heat soak command halts                      
      M117 Heat nozzle
      M109 S{params.EXTRUDER_TEMP|default(205)} T0  ; hot end heating  
      M117 Extruder Ready

I think it is going with the default though it does heat the bed and then the bed turns off. I removed the T0 to see if that would leave the bed heater on and it didn’t seem to do anything different.

I’ve peeled glass up with PETG and I’ve had everything pop off of textured PEI and glass and blue tape and yellow tape and orange tape (I have a contact to get lots of good masking tape). I have not used hair spray, but glue stick on blue taped worked but was tedious. glue stick on pei seems to work for this setup. I’m just concerned about the bed cooling when I start to do PETG and if it will hold or pop off and become a moving trophy. Makes for interesting timelapse videos…