Sacrificing a scrap EMI shield from a junked PC as the electrolysis anode, I grabbed a tab with the battery charger clamp:
Turns out it didn’t survive the encounter:
That white blob extends around to the other side:
Yeah, it got hot enough to melt a blob from the 6 gallon plastic bucket before burning through.
I tossed that into the garage so I wouldn’t forget it aaaand here we are …
Mary’s new half-gallon sprayer arrived with a kink in the hose just below the handle, which is about what you’d expect from a non-reinforced plastic tube jammed into the smallest possible box containing both the sprayer and its wand. Fortunately, the Box o’ Springs had one that just fit the hose and jammed firmly into the handle:
The kink slowly worked its way out after being surrounded by the spring and shouldn’t come back.
That was easy…
The evacuation tip nearly touched the inside end of the base spigot!
I had to cut the shaft and half the body off the shell drill in order to fit it into the space above the tube base and below the chuck:
A slightly larger shell drill would still fit within the pin circle, but the maximum possible hole diameter in the base really isn’t all that much larger:
The getter flash covers the entire top of this tube, so I conjured a side light for a rectangular knockoff Neopixel:
There’s no orientation that doesn’t require support:
A little prying with a small screwdriver and some pulling with a needlenose pliers extracted those blobs. All the visible surfaces remained undamaged and I cleaned up the curved side with a big rat-tail file.
I wired the Arduino and Neopixels, masked a spot on the side of the tube (to improve both alignment and provide protection from slobbered epoxy), applied epoxy, and taped it in place until it cured:
The end result looks great:
It currently sends Morse code through the base LED, but it’s much too stately for that.
It seems everybody must disassemble an American Standard kitchen faucet to replace the spout seal O-rings, as my description of How It’s Done has remained in the top five most popular posts since I wrote it up in 2009.
About two years ago, I replaced the valve cartridge with a (presumably) Genuine Replacement; unlike the O-rings, the original valve lasted for nigh onto a decade. A few weeks ago, the replacement valve began squeaking and dribbling: nothing lasts any more. Another (presumably) Genuine Replacement, this time from Amazon, seems visually identical to the previous one and we’ll see how long it lasts.
I always wondered what was inside those faucets and, after breaking off the latching tabs in the big housing to the upper right, now I know:
You get a bunch of stuff for twelve bucks! The stainless steel valve actuator is off to the right, still grabbed in the bench vise.
The valve action comes from those two intricate ceramic blocks with a watertight sliding fit:
In fact, you (well, I) can wring the slabs together, just like a pair of gauge blocks. That kind of ultra-smooth surface must be useful for some other purpose, even though I can’t imagine what it might be…
Both of us began sniffling and sneezing in early October, long after the outdoor flowers faded away, and finally remembered to check the Mother In Law’s Tongue:
It’s that time of the year again: we’re both wildly allergic to a houseplant with weird flowers. Even after cutting the stalk off and deporting it outdoors, we’re still sniffly.
The blossoms produce so much nectar that the droplets near the base of each flower eventually fall off, making a mess on the floor if the stalk tilts over far enough.
We kept it when we helped Mom move out of the Ancestral House, long ago, and it’s still going strong.
A friend asked why Norwegians point their satellite dishes at the ground. After maneuvering Google Streetview around Vadsø for a while, I found a dish in profile:
Turns out geostationary orbit is way low, as seen from the top of the world. A bit of doodling shows it’s only 11° above the horizon at 70° N:
TV satellite antennas have an offset-fed reflector, with the receiver in the lump at the end of the spine sticking out from the bottom of the dish, so as to not obstruct the signal entering the dish. Even though the plane of the reflector points downward, the signal reflected to the receiver comes in from above.
science trigonometry grand?
My Raspberry Pi-based streaming radio player generally worked fine, except sometimes the keypad / volume control knob would stop responding after switching streams. This being an erratic thing, the error had to be a timing problem in otherwise correct code and, after spending Quality Time with the Python
select doc, I decided I was abusing mplayer’s
This iteration registers mplayer’s
stdout pipe as Yet Another
select.poll() Polling Object, so that the main loop can respond whenever a complete line arrives. Starting mplayer in quiet mode reduces the tonnage of
stdout text, at the cost of losing the streaming status that I really couldn’t do anything with, and eliminates the occasional stalls when mplayer (apparently) dies in the middle of a line.
The code kills and restarts mplayer whenever it detects an EOF or stream cutoff. That works most of the time, but a persistent server or network failure can still send the code into a sulk. Manually selecting a different stream (after we eventually notice the silence) generally sets things right, mainly by whacking mplayer upside the head; it’s good enough.
It seems I inadvertently invented streaming ad suppression by muting (most of) the tracks that produced weird audio effects. Given that the “radio stations” still get paid for sending ads to me, I’m not actually cheating anybody out of their revenue: I’ve just automated our trips to the volume control knob. The audio goes silent for a few seconds (or, sheesh, a few minutes) , blatting a second or two of ad noise around the gap to remind us of what we’re missing; given the prevalence of National Forest Service PSAs, the audio ad market must be a horrific wasteland.
The Python source code as a GitHub Gist: