Bird Nesting Boxes: Cleanout Time

Springtime moves the Bird Box Cleanout chore to the front of the to-do list…

Three different species used this box in succession:

Bird box - stacked nests

Bird box – stacked nests

Those tiny birds haul all this stuff into the boxes one twig / feather / strand at a time:

Bird box nests

Bird box nests

The big branches come from a pick-up-sticks session; we don’t have birds that big around here!

One nest sported a decorative yellow plastic ribbon that the bird surely regarded as a rather tough bit of grass:

Bird nest with plastic strand

Bird nest with plastic strand

They could handle this job on their own, but we think we can reduce the number of parasites by airing out the boxes. We should do the cleanout in the fall to provide nice empty cavities that they can use for winter shelter, but they seem perfectly happy to snuggle together atop the nests in the cold and the dark…

About these ads


Leave a comment

Some (Re)assembly Required

Setup: the local Walmart just replaced all their cart corrals.

What’s wrong with this picture?

Walmart cart corral - incorrect assembly

Walmart cart corral – incorrect assembly

As nearly as I can tell, the installers permuted the railings; a simple three bit rotate-left-by-one operation would fix it.

Not much to my surprise, every single corral looks like that; either the instructions were wrong or, more likely, the installers never read the instructions. Obviously, they didn’t think about the results and nobody ever checked the final result.

Prediction: the corrals will look like that forevermore…


Revised Thinwall Open Box Calibration Object

Which thinwall open box is better?

Object A:

Thinwall Open Box - Minkowski - solid model

Thinwall Open Box – Minkowski – solid model

or Object B:

Thinwall Open Box - hull - solid model

Thinwall Open Box – hull – solid model

The latter, of course: I blundered the inner corner radius, which occasionally produced little tiny dots of infill that shouldn’t be there. Just one of those errors that hides in plain sight until something else goes wrong, then it’s obvious.

Rather than fix the Minkowski version, I rebuilt it using the hull() operator to shrinkwrap four cylinders for each solid, then remove the smaller block from the larger. Commenting out the hull() operators  shows that the cylinders now line up properly:

Thinwall Open Box - un-hulled - solid model

Thinwall Open Box – un-hulled – solid model

The OpenSCAD source code:

// Thin wall open box calibration piece
// Adapted from Coasterman's Calibration set
// Ed Nisley - KE4ZNU - Dec 2011
// Adjust for Slic3r/M2 - March 2013
// Reworked for hull() with correct corner radii - April 2014

//- Extrusion parameters must match reality!
//  None of the fill parameters matter

ThreadThick = 0.20;
ThreadWidth = 0.40;

Protrusion = 0.1;           // make holes end cleanly

function IntegerMultiple(Size,Unit) = Unit * ceil(Size / Unit);

// Dimensions

Height = IntegerMultiple(5.0,ThreadThick);

WallThick = ThreadWidth;

CornerRadius = 2.0;
CornerSides = 4*8;

SideLen = 20.0 - 2*CornerRadius;

Rotation = 45;


module ShowPegGrid(Space = 10.0,Size = 1.0) {

  Range = floor(50 / Space);

    for (x=[-Range:Range])
      for (y=[-Range:Range])



	difference() {
		hull() {
			for (i=[-1,1], j=[-1,1])
		hull() {
			for (i=[-1,1], j=[-1,1])
					cylinder(r=(CornerRadius - WallThick),h=(Height + 2*Protrusion),$fn=CornerSides);



Replacing Phil Wood Hub Bearings

Back in 2001, I specified Phil Wood hubs for our then-new Tour Easy recumbents, as I had absolutely no interest in fiddling with wheel bearings; been there, done that, it’s no fun at all.

Fast forward thirteen years, during which time I’ve done zero hub maintenance.

A few weeks ago, while backing my ‘bent out of the garage, the front wheel stopped rolling and skidded on the asphalt. Usually, that means a brake problem or something wedged between the wheel and the fender, but in this case, the axle itself jammed: the front bearings seized. I eased a bit of penetrating oil under the seals, the bearings began turning, and we continued the ride as planned.

A close look at the hub shows that, back in the day, Phil Wood used personalized bearings, made in Switzerland by WIB:

Phil Wood Front Bearing - view 2

Phil Wood Front Bearing – view 2

Phil Wood is still in business and a brief email exchange produced the proper bearing number: PWX92, at $17 each. I bought a pair to show my support. It turns out that the new bearings are from NSK and aren’t personalized.

The listing shows that the generic part number is 6902 and gives the dimensions:

  • OD = 28 mm
  • ID = 15 mm
  • Width = 7 mm

I bought a lot of 10 6902RS2 deep-groove bearings from VXB for $35.90 delivered, so that I can compare their performance with The Real Thing.

Use a pair of 5 mm hex wrenches to remove one of the end caps, then gently tap the aluminum axle out of the hub:

Phil Wood front axle and bearing

Phil Wood front axle and bearing

The grease inside looks as good as the day they installed it: no water leaked through the seals or past the races.

Having a lathe ready to hand, I grabbed the axle in the chuck and unscrewed the other cap:

Phil Wood front axle - in lathe chuck

Phil Wood front axle – in lathe chuck

Everything came apart easily!

I applied grease everywhere, slid a new bearing and its wave washer into place on the axle, aligned it with the hub bore, and pushed it halfway into place.

Rather than beat on the bearings, I conjured a simple adapter that let me use the quick-release skewer as a press to persuade the outer race into the hub recess:

Phil Wood front axle - improvised press

Phil Wood front axle – improvised press

I stacked an old bearing between the skewer nut and the new bearing on the other side, with a fender washer to distribute the pressure on the old bearing. In general, you don’t want to press the bearings into place by applying pressure to the inner race, but in this case the pressure was so low that it probably didn’t matter.

With one bearing in place, remove the press, slide the second wave washer & bearing on the other end of the axle, install the press, push the bearing into place, tighten the end caps, and … it’s done!

Flushed with success, I repeated the operation on the front wheel of Mary’s bike. Those bearings felt better, but they turned with essentially no friction at all. That’s a sign the internal grease was pretty much gone and failure loomed over the horizon.

Cutting the seals out of the worst bearing from my bike showed water had gotten into the assembly:

Phil Wood axle bearing - interior

Phil Wood axle bearing – interior

This is not how a bearing should look:

Phil Wood axle bearing - disassembled

Phil Wood axle bearing – disassembled

The other bearing looked (and felt!) much better, but you always replace ‘em in pairs.

Mary’s bike now has the new Phil Wood / NSK bearings, mine has the VXB bearings, and we’ll see what transpires. Both bikes sound much quieter, mine in particular, and I’m sure they roll better…

The rear tire on my bike needs replacing early this season, at which point I’ll dismantle the sprocket and install another two VXB bearings.



Arduino Knockoff: Cold Solder Joints!

The knockoff Arduino Pro Mini I used for the strobe photography controller ran the default Blink sketch perfectly, but didn’t respond to its own Reset pushbutton. Probing the Reset line at pin 29 on the microcontroller showed that the pushbutton didn’t pull the +5 V line to ground, so the switch was broken, a trace was broken, or …

Touching the soldering iron to a switch pin caused the whole thing to pop loose. One glance at the pads tells you something’s badly wrong:

Arduino Pro Mini Knockoff - cold solder joints

Arduino Pro Mini Knockoff – cold solder joints

A closeup, rotated a quarter-turn clockwise:

Arduino Pro Mini Knockoff - cold solder joint - detail

Arduino Pro Mini Knockoff – cold solder joint – detail

That’s the nicest picture of cold solder joints you’ve seen in a while, isn’t it?

Resoldering the switch solved the problem and, while the iron was hot, I touched all the microcontroller pins, too, just in case


Monthly Image: Expedient Water Tank Repair

If the only tool you have is a wooden plug…

Wood-plugged water tank - tweaked

Wood-plugged water tank – tweaked

I took that picture back in mid-1969, near the Hummelstown, PA water treatment and pumping plant.

The overhead view now shows a small tank behind the water plant, with that house just across the access road at the bottom of the image:

Hummelstown PA water plant - overhead - ca 2013

Hummelstown PA water plant – overhead – ca 2013

Judging from the perspective and the row of bushes, the old tank probably stood across the (now abandoned) tailrace, near that little dot in the mowed area. The dam (in the lower right corner) washed away during a flood some decades ago; I have no idea where Hummelstown gets its water.

That once-spiffy limestone house, built with stone from a local quarry, has fallen on hard times:

Hummelstown PA water plant - ca 2013

Hummelstown PA water plant – ca 2013

The pump house features Hummelstown Brownstone, which also appears in the finest old buildings all along the East Coast. If you poke around the area, you’ll find traces of the Hummelstown Brownstone Company, including several of their quarries. If I recall the story correctly, my father was Mr. Walton’s chauffeur.

The other house may have vanished when the Graystone Farms development ate the surrounding area. Unlike most housing development names, where the name indicates something obliterated to make way for the houses, that area still has plenty of gray limestone:

Hummelstown PA water plant - Pennsy Supply Quarry - ca 2013

Hummelstown PA water plant – Pennsy Supply Quarry – ca 2013

That’s an active limestone quarry, even if they’re not excavating the main pit these days. The orange marker in the lower left marks the water plant; Graystone Farms in the corner. Yeah, that’s a big pit.

I digitized my slide collection somewhere around the turn of the current millennium. This slide faded to a distinct magenta tint that I’ve removed with crude color correction, plenty of dust mars the image, and so forth and so on, but I (still) sympathize with that poor guy faced with a daunting task.

Imagine a kid with a camera poking around an active water treatment station in this day and age…


Wide-Angle Lens Distortion Correction

The Sony HDR-AS30V camera lens has a view angle of 120° or 170°, achieved by internal image processing rather than mechanical lens adjustments. For most action-camera purposes you don’t care about fisheye distortion, but sometimes a more rectilinear picture will look better, in which case the GIMP’s Lens Distortion filter comes in handy.

A still image at 120°, which doesn’t look all that bad, really:

Sony HDR-AS30V 120 angle - as captured

Sony HDR-AS30V 120 angle – as captured

Applying Main=-25 gives this:

Sony HDR-AS30V 120 angle - corrected

Sony HDR-AS30V 120 angle – corrected

A frame captured from video at 170°, with the overhead wires hanging upward:

Sony HDR-AS30V 170 angle - as captured

Sony HDR-AS30V 170 angle – as captured

Applying Main=-25, Edge=-12.5, Zoom=+8 flattens them enough to be acceptable:

Sony HDR-AS30V 170 angle - corrected

Sony HDR-AS30V 170 angle – corrected

The main effect of the Zoom parameter seems to be discarding the severely distorted remnants around the edges of the corrected 170° view. Sometimes, those pixels around the edges can be very, very important, so I’d rather make that decision after the fact.

If you must fix many images at once, Fred’s defisheye ImageMagick Script would certainly be useful. There’s also a bare-knuckles ImageMagick version, including how to measure lens parameters.

Leave a comment