The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

Tag: MK4

Prusa Mk 4 3D printer with MMU3 feeder

  • PolyDryer Humidity: One More TPU Cycle

    PolyDryer Humidity: One More TPU Cycle

    With more instrumentation in the PolyDryer TPU box and a day to let the humidity stabilize, the OEM meter reads 24 %RH, as it has all along:

    PolyDryer - TPU base - 24pctRH OEM
    PolyDryer – TPU base – 24pctRH OEM

    The indicator cards show the humidity is maybe a little over 10 %RH:

    PolyDryer - TPU base - 10pctRH cards
    PolyDryer – TPU base – 10pctRH cards

    The meter jammed in the other end of the box splits the difference at 15 %RH:

    PolyDryer - TPU base - 15pctRH TP
    PolyDryer – TPU base – 15pctRH TP

    Put the box atop the improved PolyDryer, set it for the recommended 12 hours with “two bars” of oomph (which may roughly correspond to the temperature), and fire it up.

    The OEM meter occasionally glitches to 10 %RH:

    PolyDryer - TPU dry 1200h - 10pctRH glitch OEM
    PolyDryer – TPU dry 1200h – 10pctRH glitch OEM

    That type of humidity meter apparently reports values from 10 %RH upward, so this seems like the kind of glitch where the reading jams at one end of the range due to the sensor opening up / shorting / misbehaving. It does not correlate with any nearby electrical activity due to fans / heaters / 3D printers / whatever.

    A little under eight hours later, it shows 17 %RH:

    PolyDryer - TPU dry 0425h - 17pctRH OEM
    PolyDryer – TPU dry 0425h – 17pctRH OEM

    Although it still has glitches to 10 %RH.

    The cards look about the same, although I could be persuaded the 10% spots look ever so slightly more blue:

    PolyDryer - TPU dry 0425h - 10pctRH cards
    PolyDryer – TPU dry 0425h – 10pctRH cards

    The meter in the back shows it’s toasty in there:

    PolyDryer - TPU dry 0425h - 10pctRH TP
    PolyDryer – TPU dry 0425h – 10pctRH TP

    A psychrometric chart shows heating air from 66 °F & 15 %RH to 117 °F will put it at 3 %RH without removing any water vapor. This is far below the level my cheap “instrumentation” can measure, but it does suggest the meters should bottom out, regardless of whatever the silica gel is doing.

    Allowing six hours to cool down & stabilize after the PolyDryer turns off in the middle of the night (because for science does not include all-nighters) shows a rebound to 26 %RH on the OEM meter:

    PolyDryer - TPU dry 0000h - 26pctRH OEM
    PolyDryer – TPU dry 0000h – 26pctRH OEM

    The cards remain unchanged:

    PolyDryer - TPU dry 0000h - 10pctRH cards
    PolyDryer – TPU dry 0000h – 10pctRH cards

    The meter in the back again splits the difference at 16 %RH:

    PolyDryer - TPU dry 0000h - 16pctRH TP
    PolyDryer – TPU dry 0000h – 16pctRH TP

    I pulled the larger meter and both cards out of the box.

    After sitting undisturbed for a day, the OEM meter in the box stabilized at 10 %RH:

    PolyDryer - TPU post dry - 10pctRH OEM
    PolyDryer – TPU post dry – 10pctRH OEM

    The card agrees, to the best of its limited resolution:

    PolyDryer - TPU post dry - 10pctRH card
    PolyDryer – TPU post dry – 10pctRH card

    The silica gel weighs 25.0 g, exactly what it did when I loaded the meter case. I think the scale’s 0.1 g resolution exceeds its accuracy, but even if the silica gel weighed 25.2 g ≅ 0.8 % water the humidity would be under 5 %RH.

    As far as I can tell:

    • The filament on the spool isn’t outgassing water vapor
    • The air in the TPU box remains under 15-ish %RH at normal basement temperature
    • Running a PolyDryer cycle at 15-ish %RH doesn’t stuff any more water vapor in the silica gel
    • Cheap humidity meters lack accuracy around 15-ish %RH
    • Humidity meters take longer than you think to stabilize
    • Humidity indicating cards may be as good as you (well, I) need

  • PolyDryer Humidity: Alumina vs. PETG-CF

    PolyDryer Humidity: Alumina vs. PETG-CF

    A pair of PolyDryer boxes has been holding black and gray PETG-CF for a while:

    PolyDryer - PETG-CF - 32 pctRH Black 31 pctRF Gray
    PolyDryer – PETG-CF – 32 pctRH Black 31 pctRF Gray

    A few days ago I slipped humidity indicator cards into the boxes:

    The black PETG-CF card suggests 30 to 40 %RH:

    PolyDryer - PETG-CF - 32 pctRH Black test card
    PolyDryer – PETG-CF – 32 pctRH Black test card

    Yes, I dropped that card into the box upside-down.

    The gray PETG-CF card shows similar results:

    PolyDryer - PETG-CF - 31 pctRF Gray test card
    PolyDryer – PETG-CF – 31 pctRF Gray test card

    The desiccant in the black PETG-CF box weighed 80.9 g, a gain of 5.9 g = 10.8%. The chart suggests that corresponds to 35 to 40 %RH:

    Desiccant adsorption vs humidity
    Desiccant adsorption vs humidity

    The gray PETG-CF box had 102.0 g of desiccant. I apparently loaded 25 g in the meter container and 70 g in seven tea bags, but I don’t trust those numbers enough to go any further.

    Unlike the black PETG box mismatch, these black PETG-CF numbers seem plausible. The results may depend on allowing far more time for the filament + air to equilibrate with the desiccant tucked in its containers than the days I’ve been giving it.

  • PolyDryer Humidity: Alumina vs. Black PETG

    PolyDryer Humidity: Alumina vs. Black PETG

    An adjacent pair of PolyDryer boxes have black and orange PETG filament:

    PolyDryer - PETG - 27 pctRH Black 25 pctRH Orange
    PolyDryer – PETG – 27 pctRH Black 25 pctRH Orange

    They’ve been sitting closed up for a week or so, with only 25 g of activated alumina in the desiccant holder (no tea bags with additional desiccant) pulling moisture out of their air and, presumably, filament.

    The desiccant from the black filament weighed 29.0 g, showing it pulled 4.0 g of water out of the air, 16% of its original weight.

    Consulting an old chart of desiccant water adsorption vs. humidity:

    Desiccant absorption vs humidity
    Desiccant absorption vs humidity

    The “aluminum oxide” curve shows 16% adsorption should correspond to more than 50% RH, so the numbers don’t quite match up. On the other paw, I don’t know how much I can trust the meter accuracy.

    I replaced the desiccant with 25 g of silica gel, tucked a humidity indicating card into the box, and snapped it closed again. The orange PETG box also got an indicating card so I can compare results.

  • PolyDryer: Noctua Fan Upgrade

    PolyDryer: Noctua Fan Upgrade

    The OEM fan inside the PolyDryer is annoyingly loud, even to my deflicted hearing, so I printed a Noctua NF-A4x10 fan adapter and installed a much quieter fan:

    PolyDryer - Noctua fan installed
    PolyDryer – Noctua fan installed

    The adapter is upside-down from the suggested orientation, I didn’t bother screwing it to the fan because it has sleeves fitting into the fan screw holes, the slot holds everything together, the vivid green EVA foam sheet sits atop a craft adhesive sheet (both cut with scissors!) ensuring they don’t part company, and it works just fine.

    Of course, the OEM fan has a three-wire cable and the Noctua has a four-wire cable:

    PolyDryer - OEM vs Noctua fan cables
    PolyDryer – OEM vs Noctua fan cables

    Although you can’t quite make it out on the white plastic, both connectors have their Pin 1 marks adjacent to each other. I oriented them like that to put the pin release latches on top; a foolish consistency is the hobgoblin of small minds.

    Fortunately, Noctua documents their pinout, a bit of probing verified the OEM fan pinout (which does not match the Noctua 3-wire pinout), and the Basement Warehouse Wing emitted an assortment of matching JST XHP connectors. Chop off the black connector and rewire it in a 3-pin XHP connector:

    • Pin 1 = OEM Red → Noctua Yellow = +24 V
    • Pin 2 = OEM Yellow → Noctua Green = Tachometer
    • Pin 3 = OEM Black → Noctua Black = Ground / Common
    • unused = Noctua Blue = PWM Speed Control

    Which is barely visible plugged into the control PCB on the left:

    PolyDryer - Noctua fan wiring
    PolyDryer – Noctua fan wiring

    The brown thermocouple wire in the upper right didn’t start out in the notch intended to pass it out of the air flow downwind of the heater:

    PolyDryer - crunched thermocouple wire
    PolyDryer – crunched thermocouple wire

    The wire is exceedingly stiff and requires some persuasion, but it will eventually stay in that slot.

    One of the PolyDryer modifications (which I can no longer find) suggested improving the vent openings, because the default slats block more than half of the surface area:

    PolyDryer - molded vent slats
    PolyDryer – molded vent slats

    I chopped out all but three of the slats and stuffed an arch of aluminum window screen into each recess:

    PolyDryer - vent screens installed
    PolyDryer – vent screens installed

    Admittedly, it looks a bit raggedy:

    PolyDryer - vent screen - detail
    PolyDryer – vent screen – detail

    As far as I can tell without actually measuring anything, the air flow has increased.

    Now, to see how whether all that makes any difference.

  • HQ Sixteen: Nose Ring Lights Power Supply

    HQ Sixteen: Nose Ring Lights Power Supply

    With the quilt off the HQ Sixteen, I could install the 24 V power supply for the Nose Ring Lights:

    HQ Sixteen Nose Ring Lights - power supply installed
    HQ Sixteen Nose Ring Lights – power supply installed

    IMO, black nylon screws look spiffier than brass.

    The solid model shows the covers have a 2 mm overlap with the power supply case to keep them lined up:

    HQ Sixteen Nose Ring Lights - power supply cover - solid model
    HQ Sixteen Nose Ring Lights – power supply cover – solid model

    I managed to reuse three of the five holes from the previous 12 V power supply and drill only three more:

    HQ Sixteen Nose Ring Lights - power supply detail
    HQ Sixteen Nose Ring Lights – power supply detail

    The tops of the power supply ears aren’t quite flat, giving the standoffs a slight tilt that the covers mostly drag back into alignment.

    The M4 brass standoffs screw into holes tapped in the thick plastic, thus eliminating nuts inside the power pod:

     HQ Sixteen Nose Ring Lights - power supply wiring
    HQ Sixteen Nose Ring Lights – power supply wiring

    The yellow silicone tape wraps two pairs of Wago connectors that dramatically simplify electrical connections in anything with enough space for their chonky bodies.

    In the unlikely event you need such things, the original post links the OpenSCAD source code.

    With the power supply in place, I think I can put some LED strips under the arm of the machine to light up more of the quilt than the nose lights can reach. More pondering is in order.

  • WS-5000 Anemometer Bird Spike Ring

    WS-5000 Anemometer Bird Spike Ring

    A critter made off with our battered plastic rain gauge, so I set up an Ambient Weather WS-5000 station to tell Mary how much rain her garden was getting. I added the Official Bird Spike Ring around the rain gauge to keep birds off, but robins began perching atop the anemometer while surveying the yard and crapping on the insolation photocell.

    After a few false starts, the anemometer now has its own spikes:

    Weather station with additional spikes
    Weather station with additional spikes

    It’s a snugly fitting TPU ring:

    Weather Station Spikes - build test piece
    Weather Station Spikes – build test piece

    The spikes are Chromel A themocouple wire, because a spool of the stuff didn’t scamper out of the way when I opened the Big Box o’ Specialty Wire. As you can tell from the picture, it’s very stiff (which is good for spikes) and hard to straighten (which is bad for looking cool).

    The shape in the middle is a hole diameter test piece. Next time around, I’ll use thicker 14 AWG copper wire:

    Weather station spikes - test piece
    Weather station spikes – test piece

    The test piece showed I lack good control over the TPU extrusion parameters on the Makergear M2, as holes smaller than about 2 mm vanish, even though the block’s outside dimensions are spot on. This application wasn’t too critical, so I sharpened the wire ends and stabbed them into the middle of the perimeter threads encircling the hole.

    Now we’ll discover how TPU survives weather.

    The OpenSCAD source code as a GitHub Gist:

    // Ambient Weather – Ambient Weather WS-5000 anemometer bird spike ring
    // Ed Nisley – KE4ZNU
    // 2025-06-09
    include <BOSL2/std.scad>
    Layout = "Show"; // [Show,Build,Slice]
    /* [Hidden] */
    HoleWindage = 0.2;
    Protrusion = 0.1;
    ID = 0;
    OD = 1;
    LENGTH = 2;
    SpikeOC = 30.0; // straight-line distance between spikes, OEM = 35
    WallThick = 4.0;
    BandID = 3.5*INCH – 0.5; // = OD of weather station
    BandOD = BandID + 2*WallThick;
    BandHeight = 8.0;
    SpikeOD = 1.7 + HoleWindage; // wire diameter
    SpikeWall = 2.0; // around wires
    SpikeBCD = BandOD;
    MountOD = SpikeOD + 2*SpikeWall;
    NumSpikes = ceil(PI*BandOD/SpikeOC); // need integral number of spikes
    SpikeAngle = 360/NumSpikes;
    NumSides = 3*NumSpikes;
    echo(SpikeAngle=SpikeAngle);
    echo(NumSpikes=NumSpikes);
    //———-
    // Define Shapes
    module Slice() {
    difference() {
    hull() {
    pie_slice(h=BandHeight,d=BandOD,$fn=NumSides,ang=SpikeAngle,spin=-SpikeAngle/2,anchor=BOTTOM);
    right(SpikeBCD/2 – MountOD/2)
    cyl(h=BandHeight,d=MountOD,realign=true,anchor=LEFT+BOTTOM,$fn=2*6);
    }
    down(Protrusion) {
    cyl(h=BandHeight + 2*Protrusion,d=BandID,$fn=NumSides,circum=true,realign=true,anchor=BOTTOM);
    right(SpikeBCD/2)
    cyl(h=BandHeight + 2*Protrusion,d=SpikeOD,$fn=6,circum=true,realign=true,anchor=BOTTOM);
    }
    }
    }
    module SpikeRing() {
    for (i=[0:NumSpikes-1])
    zrot(i*SpikeAngle)
    Slice();
    }
    //———-
    // Build things
    if (Layout == "Slice") {
    Slice();
    }
    if (Layout == "Show") {
    left(SpikeBCD/2)
    Slice();
    SpikeRing();
    }
    if (Layout == "Build") {
    SpikeRing();
    }

  • PolyDryer Internal Fan Puzzle

    PolyDryer Internal Fan Puzzle

    With the humidity inside the PolyDryer boxes being roughly proportional to the amount of filament on the spool, I printed a slightly modified airlock plate and a TPU seal ring, then stuck a tiny fan on it:

    PolyDryer airlock plate - tiny fan
    PolyDryer airlock plate – tiny fan

    It just barely clears the curved air guide inside:

    PolyDryer airlock plate - tiny fan installed
    PolyDryer airlock plate – tiny fan installed

    The tea bags full of desiccant allow some wind between them and the filament in the spool, but I obviously must re-think that setup. There’s enough clearance for what should be reasonable circulation, so i defined it to be good enough for now.

    The box of TPU started at 25 %RH, dropped to 22 %RH overnight, then returned to 25 %RH the next day:

    PolyDryer TPU - 25 pct RH
    PolyDryer TPU – 25 pct RH

    Now that I’m watching more often, I’ve seen the meter glitch to 10% for a few seconds:

    PolyDryer TPU - 10 pct RH glitch
    PolyDryer TPU – 10 pct RH glitch

    A humidity indicator card suggests the air is under 20 %RH:

    PolyDryer TPU - humidity indicator card
    PolyDryer TPU – humidity indicator card

    It may be the filament can outgas water vapor as rapidly as the desiccant can remove it, but I expected the fan to make at least a little difference.

    I have no idea what’s going on in those boxes.