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.

The New Hotness

  • LF Crystal Tester: Bring the Noise!

    The OLED display refresh contributes 100 Hz noise pulses to the low-level sine wave from the crystal test fixture:

    OLED Enabled - 100 Hz display refresh
    OLED Enabled – 100 Hz display refresh

    Disabling the display by activating its powersave option reveals 60 Hz pulses from the USB port on the Arduino Nano:

    OLED Powersave - 60 Hz USB Ground Loop
    OLED Powersave – 60 Hz USB Ground Loop

    Unplugging the USB cable, leaving just the +5 VDC power supply and coax cable to the oscilloscope, solves most of the problem:

    OLED Powersave - USB unplugged
    OLED Powersave – USB unplugged

    A closer look shows some (relatively) low frequency noise remains in full effect:

    OLED Powersave - USB unplugged - detail
    OLED Powersave – USB unplugged – detail

    Disabling the display while measuring the crystal seems sensible, although, to avoid surprises, a pushbutton should start the process. Unplugging the USB port puts a real crimp in the data collection, although that’s probably survivable with a USB isolator, one of which is on the way around the planet.

    The remaining low-level chop requires more thought. Somewhat to my surprise, holding the Arduino Reset button down doesn’t change much of anything, so it’s not a firmware thing.

    Those 10 µF coupling caps gotta go.

    With the OLED dark and the USB carrying data:

    Spectrum - OLED Powersave - USB in
    Spectrum – OLED Powersave – USB in

    Compare that to the first pass:

    Spectrum-60
    Spectrum-60

    Tamping down the noise seems to reduce the overall amplitude variation, but it also makes the capacitor-in and capacitor-out curves more consistent. There may be other things going on that I haven’t accounted for.

    The peak frequencies differ by 0.2 Hz, which is probably due to a few degrees of temperature difference. Obviously, it’s badly in need of a temperature calibration & correction.