Archive for the ‘3D Printing’ Category

Voron 2.4 Heated Build Platform, Part 3A: Temperature Accuracy (As Built)

Sunday, August 20th, 2023

After knowing that the Voron 2.4′s Z limit switch and Z probe produce repeatable results, we’re almost ready to begin calibrating the heated build platform for optimal first layers. But since the goal is to achieve the right temperature for different filaments (at the very least, radically different temperature for ABS vs PLA, and quite likely somewhat different from brand to brand and even color to color), I’d like to know that the printer is setting the surface of the build platform to the temperature I’ve asked it to.

One could — and I will — empirically test the best temperature setting for different filaments. But done without knowing how accurately the printer is achieving the temperature that has been set, the results will be unique to that printer. I’d like to tune my filament temperature settings to work reliably across all my printers (for a given build surface).

IR camera of Voron 2.4 heated build platform

Apparently this will require some compromise, as the steady-state temperature between the center and edge of the build platform varied by 6°C when the setpoint was 100°C, a considerable amount given that first layers are often printed with the platform 10°C hotter than remaining layers and this 10°C is believed to make a difference.

Let’s see how the platform temperature behaves with a Fysetc kit in factory configuration.


Voron 2.4 Heated Build Platform, Part 2: Z Probe Repeatability

Saturday, July 15th, 2023

I regard the next step in the foundation of consistent first-layer behavior as the repeatability of the Z probe.

The Z limit switch is used to set the height of the nozzle above the center of the build platform; but the Voron 2.4 has a separate Z stepper for each corner and uses the toolhead’s inductive Z probe to tram the gantry by reading the height above the platform at each corner of the printer and then adjusting the corners until the gantry is parallel to the build platform.

Voron 2.4 inductive probe

If the Z probe’s measurements are insufficiently repeatable, the tramming procedure may set the gantry out of parallel to the build platform, causing the nozzle-to-platform gap to vary (even on a perfectly flat platform, which I do not have) as the toolhead moves to different X-Y coordinates.

Klipper provides another macro to test the Z probe repeatability. Move the nozzle to a safe spot, call the macro, and it takes and reports several readings. It then moves the nozzle to the position where the probe was (according to the probe offsets in printer.cfg) — I don’t know why — so for repeated probe tests, move the toolhead back to the same spot before starting the next reading.


Voron 2.4 Heated Build Platform, Part 1B: Z Limit Switch Repeatability — Using Your Tools Correctly

Saturday, July 15th, 2023

Last week I started measuring the repeatability of my Voron 2.4′s Z limit switch and got very not-repeatable results.

Since the first layer’s ability to stick to the build platform relies on a repeatable height above the build platform which in turn relies on a repeatable measurement from the Z limit switch, this had to be corrected before proceeding — lack of repeatability here breaks everything the printer is trying to do! So I needed to find and correct the source of that deviation.

My first thought was to take apart the switch assembly and see whether anything had gone wrong between the plunger pin and the switch. But before I even got that far,

Voron 2.4 Z limit switch

I found all these filament droppings (oozed out of an idle hot nozzle — call them fwarf?) piled on and around the switch assembly. Although the only way I could imagine them impacting a reading like my previous trial would be if one had laid on top of the pin during a reading — and I’d been sitting there to see that none had — I figured I’d better clean them out and rerun the collection of calibration samples.

And while doing so, I found what appears to have been the actual problem:

Feeler gauges on Voron 2.4 build platform

When performing the first Z_ENDSTOP_CALIBRATION, when I got the nozzle closer to the platform than the thickness of my 0.10-mm feeler gauge, I swung the 0.02-mm feeler gauge out of its place in the holder and it delaminated and split in two. Uh, what????? Oh. Oh, it’s so thin that the 0.03-mm feeler gauge was stuck to the back of it and I swung both of them out together. I … uh … wonder how many times I’ve done that before. Randomly. On some of the measurements and not others.


Voron 2.4 Heated Build Platform, Part 1A: Z Limit Switch Repeatability

Tuesday, June 27th, 2023

I have quite some difficulty with first layers on my Voron 2.4, so let’s take a foray into investigating the build platform and related components and configurations, shall we?

Voron 2.4 probing Z limit switch

My generation of Voron 2.4, configured as recommended at the time, finds mechanical position Z=0 (nozzle exactly touching build surface) by pushing the tip of the nozzle down onto a (heat-resistant) stainless-steel pin [the lonely white dot below the toolhead], triggering the Zmin limit switch, and then applying the recorded offset between the trigger position and the build surface.

This is brilliant in that it automatically compensates for different nozzle lengths and even compensates for nozzle thermal expansion, and the evil opposite of brilliant in that you have to make a new Klipper printer.cfg file for each different build surface and they tell you in the Klipper forums that you’re doing it wrong if you ask for a better way to maintain different offsets for different surfaces. And then the Voron team invents the Voron Tap, which is a better way but which I haven’t implemented yet on this printer because reasons.

Oh dear me, I seem to have meandered a bit. I think I was about to say that the first step of figuring out inconsistent first-layer behavior would be to check the repeatability of the Z limit switch. Yes, that was it.


Voron 2.4 — First 3-mm Filament Prints

Sunday, October 16th, 2022

test block printed in 3-mm filament

Nobody wants to talk about printing 3-mm filament on a Voron, but I have filament I want to use that was only available in 3 mm. So I ordered a bunch of vitamins and remixed the AfterBurner extruder and E3Dv6 hotend holder and here we are, making test prints with ancient MakerBot ABS before moving on to the new stuff.

3DBenchy printed on Voron 2.4 in 3-mm filament

Benchy can certainly use some tuning (at least a tad more cooling) but is reasonably respectable for sixty minutes of slowly pushing 3-mm filament through a 0.4-mm nozzle.

Voron 2.4 Build — Bed Mesh Leveling Part 1: Correct Configuration

Sunday, September 18th, 2022

The Voron community comes across as antagonistic about a number of issues, one of which is: If your build surface is perfectly flat, there’s no need for bed mesh leveling!

Well, if your build surface is perfectly flat, good for you.

Even then, it would be more accurate to say that if your Voron 2.4 build surface is perfectly flat, the Voron is intrinsically incapable of using bed mesh leveling to improve it. (The Voron 2.4 levels the gantry to be parallel to the build surface by probing near the four corners. If the plane of the build surface isn’t square to the vertical members of the frame, the Voron has no way of determining that it’s always going to print non-rectangular parallelograms in the X-Z and/or Y-Z planes. But I digress.)

parts 3D printed without and with bed mesh leveling

My aluminum heat spreader is not perfectly flat because it came in a kit from Fysetc rather than from a milling machine with a fly cutter; and my Voron 2.4 benefits tremendously from bed mesh leveling. (Above, without; below, with.)

To take my mesh to the next level, it’ll help to get the bed mesh configuration correct. The provided configuration is a useful starting point but can be improved significantly.


Voron 2.4 Build — Z Limit Switch Y Position

Tuesday, September 13th, 2022

The Voron 2.4 has a Z home switch off the back end of the build plate with a steel pin on top. The hot nozzle tip can press the steel pin without melting anything; so once you calibrate the height offset between the switch’s trigger point and the surface of your build sheet, you have absolute repeatable positioning of the height of the tip above your build surface. As long as you never ever change to a different build surface.

Voron 2.4 Z limit switch

If, on the other hand, the Z pin is positioned further back than the tip of the nozzle can travel and the hotend’s silicone sock is pressing the Z pin, results may vary from minute to minute. Literally.

Voron 2.4 Build — Initial Startup Checks

Monday, August 29th, 2022

With the Spider mainboard online and talking to OctoPrint, a cabling issue corrected, and a pinning issue I-thought-dealt-with-but-actually-no, documenting-soon, it was time to work through Voron’s initial startup checks to verify all pinning and basic functionality. The document’s order of operations is fantastic; but too often it says what to do and doesn’t say how to do it. Let’s fill in some gaps.


Voron 2.4 Build — Figuring Out Spider Mainboard Fan Connections

Saturday, August 27th, 2022

With OctoPrint talking to the Klippy host software on the Pi talking to the Klipper firmware on the Spider mainboard and the Voron’s LCD lit up and control panel working, I could see that the firmware was able to read hotend and platform temperatures and I used the printer’s control panel to test each of the two heaters. The heaters worked; but I noticed that when heating the hotend, the part-cooling fan came on and the heat break fan didn’t. Probably the fan connections were swapped?

I’d wired the printer per Fysetc’s diagram for this printer on a later revision of their Spider board because it was the only diagram I could find at the time and I wanted to be able to use a sample configuration file as a starting point rather than do the whole pin configuration from scratch. Tempting though it was to just swap the two fan plugs on the mainboard and be done with it, I went back to the wiring diagram from the Fysetc Spider board GitHub page first for a closer look.

Fysetc Spider 2.2 wiring diagram for Voron 2.4 printer -- heater and part-cooling fans

Oh. Oh, I see. I had previously noticed that Fysetc had labeled both of them as 4010 fans; but I hadn’t noticed that they had swapped the labels of which fan served which function. I had originally connected my fans by tracing which function was connected to which Spider port; but with the functions swapped on the diagram, my wiring was swapped on my board. I now changed my wiring to match the Fysetc diagram’s intent (and the sample printer.cfg‘s configuration) and noted the error in the wiring diagram here for later reference. The fans now behaved as they should.

Voron 2.4 Build — Spider Mainboard Klipper Firmware Installation and Startup

Saturday, August 27th, 2022

After running the Spider mainboard test firmware as a sanity check of the Spider’s operation and LCD cabling, several paths are available to get Klipper installed onto the Spider. My factors were:

  • not feeling like continuing to power the Pi from an external source, even during the firmware process
  • not feeling like continuing to re-jumper the Spider board for DFU programming
  • my Spider should now have a working 32K bootloader installed

That led me directly to SD-card firmware installation, which was easy-peasey since I have another *nix-ey computer available for one step.