New York State Bike Route 9: Maintenance Thereof

One might expect the NYS Department of Transportation to maintain New York State Bike Route 9, a.k.a. NYS Rt 376 from Poughkeepsie to Red Oaks Mill, in a bicycle-aware manner.

One would be mistaken.

The most recent patch strip very carefully avoids the deteriorated shoulder, all the way around the curve:

Rt 376 SB patch - shoulder deterioration - marker 1111 - 2018-08-23
Rt 376 SB patch – shoulder deterioration – marker 1111 – 2018-08-23

The weeds growing in the serrated shoulder add a decorative counterpoint to the black asphalt patch in the travel lane:

Rt 376 SB patch - shoulder grass - marker 1110 - 2018-08-23
Rt 376 SB patch – shoulder grass – marker 1110 – 2018-08-23

It was a rather large repair crew:

Rt 376 Road Repair Crew - marker 1110 - 2018-08-23
Rt 376 Road Repair Crew – marker 1110 – 2018-08-23

The crew chief said they were there because “somebody wrote a letter” describing the conditions. I suppose that would be me, although after half a year it’s hard to establish causation, let alone correlation.

He also says no details of the letter reached him, which explains why they laid the patches in the travel lane, rather than repairing the conditions I described. He was adamant they were doing the best they could with the inadequate manpower, materials, and time available for the projects.

There are absolutely no requirements to consider bicyclist safety in their repairs, so laying asphalt over the shoulder never happens.

NYS DOT’s Bicycling FAQ says I should “take the lane” around that curve, due to the deteriorated shoulder, to ensure motorists pass only when it’s safe.

Whenever I offer to take a NYS DOT bureaucrat on an inspection ride along their roads, they never have the time. Of course, they don’t “work” on weekends, so they’re unwilling to join me on a pleasant ride around the area some Saturday or Sunday morning.

Just another day of bicycling along NYS DOT’s “complete streets” …


Bike Helmet Mirror Mount Tightening

Almost exactly three years later, it’s time to tighten the helmet mirror mount screws:

Helmet mirror mount - bottom view - setscrew
Helmet mirror mount – bottom view – setscrew

That’s a 0.035 inch = 35 mil hex wrench, of which Eks reminds me “Any time your design requires a tiny [obscene gerund] wrench, you’re doing it wrong”.

The sequence goes like this:

  • Loosen that tiny setscrew
  • Unscrew & remove the mirror boom
  • Remove brass screw & azimuth pivot
  • Tighten screw in elevation pivot
  • Tighten tiny setscrew on elevation arc
  • Reinstall & tighten azimuth pivot
  • Reinstall mirror boom
  • Tighten tiny setscrew

Going strong after seven years!

Raspberry Pi: Nominal vs. Actual I2C Speeds

Two lines in /boot/config.txt enable the I2C hardware and set the I2C bus speed:


However, the actual SCL frequency comes from dividing the CPU’s core clock by an even integer, so you can’t always get what you want. The Pi 3 ticks along at 1.2 GHz (actually 1.1 GHz, because marketing) from a core clock of 550 MHz, so a 200 kHz clock calls for a 2750 divider: 550 MHz / 2750 = 200 kHz.

Actually measuring the SCL frequencies suggests something else is going on:

I2C 200kHz - actual 125kHz
I2C 200kHz – actual 125kHz

D0, the bottom trace, is SCL, D1 is SDA, and D2 is a trigger output not used in this setup. The yellow analog trace is the current in the SCL line between the Pi and the BNO055, about which more later.

So a 200 kHz nominal frequency produces a 125 kHz actual frequency.

The BNO055 pulls the clock low (“clock stretching”), which can (and does) cause problems, but it’s not active during the main part of the transfer where the Pi determines the SCL frequency.

More measurement along those lines produces a table:

CPU Core Clock: 550 MHz
Nominal Ratio Actual Ratio
250 2200 156.20 3521
200 2750 125.00 4400
150 3667 92.59 5940
125 4400 78.12 7040
100 5500 62.50 8800
50 11000 31.25 17600
25 22000 15.63 35189
10 55000 6.25 88000

Apparently, the code converting the nominal I2C rate in config.txt uses a table of divider values intended for another CPU core clock. AFAICT, the boot code could divide the actual core clock by the desired I2C frequency to produce the appropriate value.

I have no particular desire to Use The Source to figure out what’s going on …

[Update: Perhaps this comes along with CPU clock throttling due to temperature. For completeness, I should dump the temperature and actual clock speed.]

Gulfstream V on Final to KPOU

This corner on Maloney Rd is almost exactly one mile from the end of Hudson Valley Regional Airport Runway 24:

Maloney to KPOU map
Maloney to KPOU map

So it’s not unusual to ride under a small plane on final approach. Having a Gulfstream V fly directly overhead, however, is a real attention-getter:

Gulfstream V on final - Maloney Rd - 2018-08-26
Gulfstream V on final – Maloney Rd – 2018-08-26

What’s not at all obvious from the picture is how big a GV looks when seen directly overhead through those trees just ahead on the corner where our paths crossed. There’s a 360 ft (above sea level) hill directly on the flight path, so it’s at maybe 600 ft ASL and 400-ish ft AGL.

Thrust-reversal thunder rolled over us 50 seconds later, as we rode up the rail trail access ramp. Figuring we’re 15 sound-seconds from the strip, the GV was 30 seconds from touchdown.

Tour Easy Daytime Running Light: First Fracture

A wind gust pushed Mary’s bike over with the daytime running light on the downward side:

Fairing Flashlight Mount - Fracture
Fairing Flashlight Mount – Fracture

Frankly, it’s better to have a cheap and easily replaceable plastic widget break, instead of something expensive and hard to find.

Because we live in the future, a replacement part was just a few hours away:

M2 - Nozzle Z Offset Recal - DRL Clamp
M2 – Nozzle Z Offset Recal – DRL Clamp

Well, a few hours after installing a replacement thermistor and recalibrating the M2, but nested repairs happen every now and again.

To the road!

Shapely Fire Hydrant

A Sigelock Spartan hydrant spotted in Franklin PA:

Sigelock Spartan fire hydrant - Franklin PA
Sigelock Spartan fire hydrant – Franklin PA

It’s certainly the shapeliest hydrant I’ve ever seen.

Of course, you need a special tool to remove the main cap, after which some internal lockwork releases the side caps, after which you can spin the valve stem recessed under the top cover. One hopes all those little bits continue sliding and releasing after a few decades, but … the status quo apparently isn’t all that good, either.