Just before Tropical Storm Isaias rolled through, my hygrometer reached a new high:
The National Weather Service reported 99% at the airport a few miles away, so the meter’s calibration seems about right.
Shortly thereafter, the humidity dropped to the mid-70s as the wind picked up and, over the next few hours, falling branches took out vast swaths of Central Hudson’s electrical infrastructure. My little generator saved our refrigerator & freezer during 15 hours of outage; three days later, thousands of folks around us still have no power.
A confluence of other events, none nearly so dramatic, will throttle my posting over the next two weeks.
Being the type of guy who uses metal bits & pieces, I thought this might be a useful aluminum rod:
It turns out to be an aluminum tube holding a lithium cell and a reservoir of oily brown juice:
The black plastic cap read “EonSmoke”, which led to a defunct website at the obvious URL. Apparently, EonSmoke went toes-up earlier this year after ten years of poisoning their customers, most likely due to “competitor litigation”.
The black cap held what looks like a pressure switch:
Suck on the icky end of the tube to activate the switch, pull air past the battery (?), pick up some toxic vapor around the heater, and carry it into your lungs:
Maybe there’s a missing mouthpiece letting you suck on the icky end, activate the switch, pull vapor through the heater, and plate your lungs with toxic compounds. I admit certain aspects of my education have been sadly neglected.
The lithium cell was down to 1.0 V, with no overdischarge protection and no provision for charging, so it’s a single-use item. I’m sure the instructions tell you to recycle the lithium cell according to local and state regulations, not toss it out the window of your car.
As is all too common with 3D printed replacement parts done remotely, the first Shuttles game pegs didn’t quite fit into the game board’s holes. Fortunately, living in the future means rapid prototyping and quick turnaround:
They’re slightly smaller, tapered toward the bottom, and take slightly less time to print.
The OpenSCAD code in the GitHub Gist now has has the tweaks.
Given a collection of music files in various subdirectories, find all the mp3 files that aren’t in the target directory and copy them. The only catch: don’t use rsync, because the target directory is on a Google Pixel phone filesystem which doesn’t support various attributes required by rsync.
The test pieces for the Mesh Screen Frame came out a bit short:
Which turned out to be the M2’s first extruder clog in a long, long time. The printer shut down normally, with no error messages, and the objects look fine as far as they go, making the diagnosis fairly simple.
The filament still didn’t feed with the drive gear turning
It’s worth noting I use only PETG plastic from a single supplier, so Slic3r uses set-and-forget temperature and speed values, and I manually change colors only on those rare occasions when color matters. Most clogs occur after switching from a higher- to a lower-temperature plastic (PETG to PLA), where a chunk of soft-but-not-molten plastic jams in the nozzle; not the situation here.
Undo the various screws holding the block to the drive gear housing and pull it off. The drive block looked fine, with a clear round hole along the entire filament path, so that’s not the problem.
The filament snippet sticking up out of the hot end also looked fine, apart from the expected drive gear gouge, with nice serrations below that point into the hot end. It’s the third filament from the top in this group photo:
Although it’s called a “cold pull“, you can’t yank a solid hunk of plastic out of the hot end. Warming the PETG to around 200 °C and pulling the snippet out produced the long tapered end shown above.
I rammed another snippet into the hot end to bond with whatever was inside:
Which produced the top snippet above, with no particular trouble found.
Repeating the process with some nylon (?) cleaning filament:
In need of more traction, I sank a #60 twist drill into the molten plastic:
Let things cool a bit, haul it out (it’s halfway in the picture above), and we’re making progress:
I warmed the PETG-encrusted bit over a butane flame, wiped it on a shop rag to get most of the plastic off, then drilled a few holes in a hardwood block.
Note that a #60 drill (40 mil = 1 mm) is much much much larger than the nozzle hole:
The vertiginous view looks downward into a small hand-held mirror.
Although some folks swear by 0.3 mm carbide drills for nozzle cleaning, I doubt I could avoid wrecking that nice round 0.35 mm hole. The new red silicone coat has chipped from around the nozzle over the last few sessions, so it’s no longer wiping the top layer.
During all this flailing, something that might have been a glass fiber emerged from the nozzle while shoving one of those PETG snippets into the hot end. Of course, when I pried it out of the goo with tweezers, it snapped away into the clutter, never to be seen again. Despite being covered in PETG, it was a rigid sliver, rather than the gooey extruded thread. Perhaps the whisker extending from the PETG surrounding the drill bit was a similar fiber, but I didn’t notice it at the time.
One of the PETG cold warm pulls contained two brownish lumps:
This chunk doesn’t appear in the group portrait. It’s obviously been melted, measures a bit under 1.75 mm diameter, and the drive gear tooth marks show it passed through the filament drive block under motor control, most likely retraction.
Passing the Xacto Knife of Inquiry through the leftmost lump split it neatly in two. The left section:
And the right section:
In person, the sections look like granular / burned residue surrounded by clear PETG. I’d expect anything burned to come from inside the hot end, but I don’t know how those lumps would get surrounded by nice, clear PETG inside a reasonably cylindrical section with drive gear notches.
Anyhow, the clog has now Gone Away™ and the M2 extrudes just fine. I’ll declare victory and move on …
Plant seedlings started in pots require some hardening off time outdoors before being transplanted. Veggie seedlings also require protection from critters regarding them as a buffet, so Mary covers them with a sheet of floating row cover, which must be both suspended over the plants to give them growing room and tucked under the tray to keep the bugs out. She asked for a frame to simplify the process:
The solid model shows the structure with no regard for proportion:
The 5 mm fiberglass rods come from our decommissioned six-passenger umbrella, cut to length in the Tiny Lathe™ by applying a Swiss Pattern knife file around the perimeter, over the ShopVac’s snout to catch the glass dust. I started with a pull saw (also over the vacuum) during the weekly Squidwrench v-meeting, whereupon Amber recommended either a Dremel slitting wheel or a file, so I mashed everything together and it worked wonderfully well, without producing any errant glass-fiber shards to impale my fingers.
The corners consist of three tubes stuck together at the origin:
Shrink-wrapping them with a hull() adds plenty of strength where it’s needed:
I decided putting the belly side (facing you in the picture) downward on the platform and the peak upward would distribute the distortion equally among the tubes and produce a nicely rounded outer surface for the mesh fabric:
Which led to some Wikipedia trawling to disturb the silt over my long-buried analytic geometry, plus some calculator work to help recall the process; back in the day I would have used a slipstick, but I was unwilling to go there. Although I could special-case this particular layout, the general method uses Euler’s Rotation Theorem, simplified because I need only one rotation.
Should you need concatenated rotations, you probably need quaternions, but, at this point, I don’t even remember forgetting quaternions.
Anyhow, the Euler rotation axis is the cross product of the [1,1,1] vector aimed through the middle of the corner’s belly with the [0,0,-1] target vector pointing downward toward the platform. The rotation amount is the acos() of the dot product of those two vectors divided by the product of their norms. With vector and angle in hand, dropping them into OpenSCAD’s rotate() transformation does exactly what’s needed:
v=cross(BaseVector,Nadir)) // aim belly side downward
Dang, I was so happy when that worked!
Because the corner model rotates around the origin where all three tube centerlines meet, the result puts the belly below the platform, pointed downward. The next step applies a translation to haul the belly upward:
translate([ArmOAL,0, // raise base to just below platform level
ArmOC/sqrt(3) + (ArmRadius/cos(180/SocketSides))*cos(atan(sqrt(3)/2)) + Finagle])
This happens in a loop positioning the four corners for printing, so the first ArmOAL as the X axis parameter translates the shape far enough to let four of them coexist around the origin, as shown above.
The mess in the Z axis parameter has three terms:
Raise the centerline of the ends of the tubes to Z=0
Raise the rim of the tube to Z=0
Add a wee bit to make the answer come out right
The 0.18 mm Finagle constant fixes things having to do with the hull() applied to miscellaneous leftover angled-circles-as-polygons approximations and leaves just a skin below the platform to be sheared off by a huge cube below Z=0, matching the corner bellies with the bottoms of the feet.
Because the corners have awful overhangs, the results look a bit raggedy:
That’s after knocking off the high spots with a grubby sanding sponge and making a trial fit. They look somewhat less grotendous in person.
If we need another iteration, I’ll think hard about eliminating the overhangs by splitting the corner parallel to the belly, flipping the belly upward, and joining the pieces with a screw. What we have seems serviceable, though.