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.

Author: Ed

  • Car Fire

    Car Fire

    From the living room window, I wasn’t quite sure what was going on out there, but halfway down the driveway it became obvious:

    Car Fire - arrival
    Car Fire – arrival

    The bright spot underneath the car came from liquid fire dripping on the asphalt. For one terrifying moment I thought we were about to take delivery of a lithium fire, but later developments showed it was a just an ordinary fire in an old-school gasoline car.

    A few minutes later, fire equipment blocked the road in both directions, with more vehicles out of sight:

    Car Fire - overview
    Car Fire – overview

    From what I overheard, multiple 911 calls resulted in firefighters chasing the car from one of the fire stations along either Vassar Rd or Spackenkill, the driver finally noticed the lights, and pulled over as the sirens spooled down in front of our house. It had a Georgia plate, so maybe this was near the end of a really long day.

    The first operation got a water lance under the car to knock back the undercarriage fire:

    Car Fire - first water lance
    Car Fire – first water lance

    Then they punched through the tail lights to lance the trunk:

    Car Fire - trunk water lance
    Car Fire – trunk water lance

    Smash the windows and chop the trunk lid open to flood all the interior spaces:

    Car Fire - trunk flooding
    Car Fire – trunk flooding

    From the beginning, everybody knew that ain’t gonna buff right out:

    Car Fire - flatbed
    Car Fire – flatbed

    There’s never a dull moment around here …

    They did a great job cleaning up the debris, so I couldn’t score any attractive glass or small parts.

  • Laser Cutter: Scanning Offset Adjustment

    Laser Cutter: Scanning Offset Adjustment

    Start with the constant-power test pattern:

    Pulse Timing Pattern - 1 mm blocks
    Pulse Timing Pattern – 1 mm blocks

    Set it up on six LightBurn layers:

    LightBurn test pattern layers - layout
    LightBurn test pattern layers – layout

    With useful scanning speeds and powers:

    LightBurn test pattern layers
    LightBurn test pattern layers

    Unleash the laser on a scrap of fluorescent green acrylic:

    Scan Offset uncorrected - 100 to 500 mm-s
    Scan Offset uncorrected – 100 to 500 mm-s

    Measure the distance between successive line ends at each speed, divide by two, then fill in the offset adjustment table:

    LightBurn Scanning Offset table
    LightBurn Scanning Offset table

    Burn another scrap:

    Scan Offset - 100 to 500 mm-s
    Scan Offset – 100 to 500 mm-s

    That looks better …

    Not incidentally, it also provides illustrations for an upcoming Digital Machinist column about small-scale engraving-as-machining and why good scanning compensation matters.

  • Sabin Polio Vaccine Event

    A clipping from the Harrisburg Evening News, probably in 1962, shows more enthusiasm for vaccines than we have today:

    Sabin Vaccine Doses - 1962
    Sabin Vaccine Doses – 1962

    It emerged from a fat folder of space exploration articles / maps / booklets / clippings with dates from 1959 through 1962, when I would have been around nine years old. Most likely somebody older collected everything and gave the box to me a few years later. The other side had a hagiographic article about John Glenn, explaining why this side is minus a few paragraphs.

    From everything I read about Long Covid, I don’t want to give Short Covid even a little bite at my apple. In particular, fast-forwarding through a decade of neural degeneration isn’t going to put me closer to my Happy Place.

    The bonus “Volunteer Fireman Convicted of Arson” article could come from any decade.

  • Armistice Day

    A letter from my father to the mother of a comrade:

    Letter to Mrs Harry Shope - 25 May 1945 - Envelope
    Letter to Mrs Harry Shope – 25 May 1945 – Envelope
    Letter to Mrs Harry Shope - 25 May 1945 - pg 1
    Letter to Mrs Harry Shope – 25 May 1945 – pg 1
    Letter to Mrs Harry Shope - 25 May 1945 - pg 2
    Letter to Mrs Harry Shope – 25 May 1945 – pg 2
    Letter to Mrs Harry Shope - 25 May 1945 - pg 3
    Letter to Mrs Harry Shope – 25 May 1945 – pg 3
    Letter to Mrs Harry Shope - 25 May 1945 - pg 4
    Letter to Mrs Harry Shope – 25 May 1945 – pg 4
    Letter to Mrs Harry Shope - 25 May 1945 - pg 5
    Letter to Mrs Harry Shope – 25 May 1945 – pg 5
    Letter to Mrs Harry Shope - 25 May 1945 - pg 6
    Letter to Mrs Harry Shope – 25 May 1945 – pg 6

    May they rest in peace …

  • Downgrading Yubikey-Manager

    It seems that Manjaro’s 5.0.0-1 version of the yubikey-manager crashes due to inscrutable errors, with the effect of not letting me use it to sign in at all the sites I’d set up to use TOTP authentication.

    If the previous version (4.0.9-1) were still in the pacman cache, then downgrading would be straightforward:

    sudo pacman -U /var/cache/pacman/pkg/firefox-64.0.2-1-x86_64.pkg.tar.xz

    Regrettably, I had recently cleaned things up and flushed the cache, so I had to fetch the package (and its signature) from the “y” directory of the Arch archive, then install it:

    sudo pacman -U /tmp/yubikey-manager-4.0.9-1-any.pkg.tar.zst
    
    loading packages...
    warning: downgrading package yubikey-manager (5.0.0-1 => 4.0.9-1)
    resolving dependencies...
    looking for conflicting packages...
    
    Packages (1) yubikey-manager-4.0.9-1
    
    Total Installed Size:   1.11 MiB
    Net Upgrade Size:      -0.13 MiB
    
    :: Proceed with installation? [Y/n] Y
    <<< snippage >>>

    Whereupon It Just Worked™ again.

    I expect someone more experienced than I will have long since filed a bug report / sent a pull request / whatever, because I have little idea how to do any of that. The next upgrade should work just fine.

  • CO₂ Laser Tube Current: Analog vs. PWM Bandwidth

    CO₂ Laser Tube Current: Analog vs. PWM Bandwidth

    With bandwidth measurements in hand, a semilog plot with eyeballometric line fitting makes the conclusion obvious:

    OMTech CO2 laser power supply - bandwidth tests - semilog graph
    OMTech CO2 laser power supply – bandwidth tests – semilog graph

    The top line shows the controller’s L-AN analog output voltage dropping at 10 dB/decade.

    The middle line is the laser tube current with the power supply driven by the controller’s PWM output, also dropping at 10 dB/decade.

    The bottom line is the laser tube current with the power supply driven by the L-AN analog voltage. It drops at 20 dB/decade.

    The usual measurements of voltages and currents assume a constant load impedance, where the power varies with the square of the measured value. In this case, the laser tube is most definitely not a constant resistance, because it operates at an essentially constant voltage around 12 kV after lighting up at maybe twice that voltage. As a result, the power varies linearly with the measured voltages and currents, so the usual Bode plot “20 dB per decade” single-pole filter slope does not apply.

    Because the laser tube power varies roughly with the current, I’ve been using the current as a proxy for the power, so the half-power points are where the current is half its value at low frequencies.

    The controller’s analog voltage output is linearly related to the tube current and power, so the same reasoning applies.

    That reasoning is obviously debatable …

    Anyhow, it seems the PWM digital output is the primary signal source, with the L-AN analog output filtered from it. If you had a use for the analog voltage that didn’t involve sending it through a second low-pass filter, it might come in handy, but that’s not the case with the laser’s HV power supply.

    Looking across the graph at the tube current’s half-power level of 12-ish mA shows 150 Hz for the L-AN output and 250 Hz for the PWM output. That’s roughly what I had guesstimated from the raw measurements, but it’s nice to see those lines in those spots.

    In practical terms, grayscale engraving will operate inside an upper frequency limit around 200 Hz. Engraving a square wave pattern similar to the risetime target requires a bandwidth perhaps three times the base frequency for reasonably crisp edges, which means no faster than 100 Hz = 100 mm/s for a 1 mm bar.

    It may be easier to think in terms of the equivalent risetime, with 200 Hz implying a 1.5 ms risetime. The rise and fall times of the laser tube current are not equal and only vaguely related to the usual rules of thumb, but 1.5 ms will get you in the ballpark.

    The usual tradeoff between scanning speed and laser power for a given material now also includes a maximum speed limit set by the feature size and edge sharpness. Scanning at 500 mm/s with a 1.5 ms risetime means the minimum sharp-edged feature should be maybe three times that wide: 5 ms / 500 mm/s = 2.5 mm.

    The sine bars at 400 mm/s come out very shallow, both rectangular bars have sloped edges, and the 1 mm bar on the left resembles a V:

    Sine bars - acrylic - 400 mm-s 100pct
    Sine bars – acrylic – 400 mm-s 100pct

    At 100 mm/s, all the features are nicely shaped, although the sidewalls still have some slope:

    Sine bars - acrylic - 100 mm-s 25pct
    Sine bars – acrylic – 100 mm-s 25pct

    In all fairness, grayscale engraving with a CO₂ laser may not be particularly useful, unless you’re making very shallow and rather grainy 3D relief maps.

    Intensity-modulating a “photographic” engraving on, say, white tile depends on the dye / metal / whatever having a linear-ish intensity variation with exposure, which is an unreasonable assumption.

    The L-ON digital enable also has a millisecond or two of ramp time, so each discrete dot within a halftoned / dithered image has a minimum width.

    Tradeoffs! Tradeoffs everywhere!

  • CO₂ Laser Tube Current: PWM Bandwidth

    CO₂ Laser Tube Current: PWM Bandwidth

    As with the analog bandwidth measurements, start with the same sine-bar bandwidth target:

    Sine bars - 10 cycles
    Sine bars – 10 cycles

    Return the laser power supply’s IN terminal (and the purple wire to the oscilloscope) to the Ruida KT332N controller’s PWM output:

    Ruida KT332 - PWM laser control wiring
    Ruida KT332 – PWM laser control wiring

    Engraving the pattern in grayscale mode at 254 dpi produces 0.1 mm pixels and makes each bar 1 mm wide:

    LightBurn - bandwidth test pattern setup
    LightBurn – bandwidth test pattern setup

    Engraving at 50 mm/s = 50 Hz lets the laser current once again hit full scale:

    Tube Current - PWM bandwidth - 10 sine - 50mm-s - 10ma-div - 254dpi
    Tube Current – PWM bandwidth – 10 sine – 50mm-s – 10ma-div – 254dpi

    The traces:

    • 1 X axis DIR, low = left-to-right (yellow)
    • L-ON laser enable, low active (magenta)
    • PWM digital signal (cyan)
    • 4 tube current – 10 mA/div (green)

    The PWM signal runs at 20 kHz and presents itself as a rather blurred trace, but you can see both the general tendency and the discrete steps between the vertical gray bars. As far as I can tell, the signal never reaches 0% or 100%, most likely to prevent the PWM filters from saturating in either condition.

    The tube current drops from 23.8 mA to 13.8 mA, just over the half-power level of 12 mA, at 200 Hz:

    Tube Current - PWM bandwidth - 10 sine - 200mm-s - 10ma-div - 254dpi
    Tube Current – PWM bandwidth – 10 sine – 200mm-s – 10ma-div – 254dpi

    So the PWM bandwidth is a little over 200 Hz, slightly higher than the analog bandwidth of a little under 200 Hz.

    All of the measurements as a slide show:

    • Tube Current - PWM bandwidth - 10 sine - 25mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 50mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 100mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 200mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 300mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 400mm-s - 10ma-div - 254dpi
    • Tube Current - PWM bandwidth - 10 sine - 500mm-s - 10ma-div - 254dpi

    Now, with all the measurements in hand, maybe I can reach some sort of conclusion.