Snowflake–custom controller

The Adafruit Huzzah was a nice starting point for the snowflake, but it’s both more expensive and not well-tuned for what I need. To drive the WS2812s, all I need is a single output, and I don’t need dedicated buttons on the board.

I went back and forth on whether I wanted to do two controller boards – one that used the ESP8266 and another that used a cheaper AVR, but the ESP can be had so cheaply that it hardly seemed worth it. I considered a number of different ESP modules – or even building directly from the ESP8266 and adding flash, but the ESP-12 is pretty cheap and it has FCC certification (or is claimed to, at least).

So, basically, I took the Huzzah design and looked at it in Eagle, and then pared off things that I didn’t need and did my design in KiCad. It currently lives here.

The design is pretty minimal; it has a small 3.3 volt linear regulator to power the ESP (I used the same SPX3819 as on the Huzzah), appropriate resistors to put the ESP in the right state, diodes to handle level conversion between the 5V world and the 3.3V world and two headers. There’s a 6-pin programming header that has power, serial connections, and the reset and GPI00 pins on it, and there’s a three pin header for operation that has 5V and GND in to power the board and the data line out for the WS2812 string. Simple and straightforward. There will probably be another version with another sensor; I’m going to need a way to reset these things to handle wireless setup and my new design will be fully encapsulated, so I’ll probably do something magnetic.

Here’s the schematic:


Once I had that, it was off to do the PC board layout. That is really my favorite part of the process; to go from a set of random components on the board to something functional (and perhaps even elegant) is a rewarding process. Here’s the layout.


I decided that I wanted both sets of connectors at the bottom and the ESP-12 at the top. Basically, the jacks are at the bottom, the 3.3V supply is in the middle, and the resistors, diodes, and LEDs are on the sides. All of the small components are 0805 sized, since I wanted something that I could hand-solder if necessary, and those will also reflow reasonably well if I want. Given the need for two jacks and the space they take up, there’s not a lot of margin in going smaller at this point.

One of these times, I’m going to do snapshots of what it took to get to a decent layout.

The PC boards got finished and sent out to, who sent me 10 (actually, 11) copies of the board for a total of $5.49 with about a 7 day turnaround. I don’t understand the economics of how that can be profitable, but I’m not going to complain right now.

Initial guesses at the overall costs for the controller:

Part Price
ESP-12 Module $1.78
3819 regulator $0.06
Other parts $0.11
PC board $0.50
Total $2.45

No labor in there yet, but it’s just a matter of putting the parts on there and reflowing them. It should be pretty quick, and I’ll check to see what it would cost to outsource it as well.

The boards have showed up, but I was too cheap to pay for fast shipping of the other components, so they’ll trickle in and then we’ll see if my design works.

Snowball pricing analysis

I’ve been thinking about maybe selling the snowflakes – or a variant of the snowflakes – commercially. Pursuant to that, I did a few calculations on parts costs.

Here’s what it would take to build the prototype in volume (say, 100 units):

Part Price
PC Boards $2.04
55 WS2812 LEDs $3.72
Adafruit Huzzah $7.96
Acrylic $4.07
Printed separators $1.00
Labor @$13/hour $26
Total $44.79

The labor is frankly a bit of a guess; it’s probably quite a bit worse than that.

Assuming I wanted a 50% margin, that would put the retail cost at about $90. The snowflakes are nice, but I’m not sure they are $90 nice.

To reduce the price, we need to look at the places that are the most expensive. Clearly, labor is a problem, so making the design easier and more robust to assemble is going to be critical. And the cost of the Huzzah is a big part of the parts cost, so coming up with an alternative that is easier and cheaper to use makes sense.

Snowflake Final

The snowflakes – five in total – have all been finished.

Well, mostly finished… there are three animating themselves on the gutters of the house right now, while the remaining two (which were on the house until this afternoon) are waiting for their waterproofing to cure.

This post will cover a lot of ground, since I missed a couple of updates along the way. 


When we last left our story, we had a PCB in the snowflake form and some laser-cut pieces of translucent acrylic that go on the front.

The next step was to put the LEDs on the board. My hope had been that I could use the hot air rework station to reflow all the LEDs, but a bit of experimentation showed that I was melting the LED cases and hand soldering was faster, so I went that way. I think a cheap reflow oven is in my future.

I used the following approach:

  1. Add solder to all the solder pads on the snowflake (55 * 4 = 220 of them).
  2. Carefully hold an LED in the right position, and touch two of the pads to tack it in place.
  3. Press down hard on that end of the LED, and touch each pad until the LED sinks down even with the level of the board at that end. .
  4. Repeat on the pads at the other end of the LED.
  5. Reheat the first two pads to get rid of the stresses induced when the second end was dropped down.

That was mostly straightforward, except it turns out that if you put the LEDs in backwards, they turn into HEDs – Heat Emitting Diodes – and you get to remove them and put new ones in their place. I put my new hot air rework station – a 9570W+ – to work at that.

Eventually, I got all of them soldered correctly, fixed some connection issues between the boards, and had something I could run my initial animation code on.

It worked.

My original plan was glue the PCBs directly to the acrylic, but I discovered that I liked the result better if there was some space between them. I did tests using pennies as spacers, grabbed my calipers to get some measurements and drew a quick drawing, and then came up with this in TinkerCad:


And then printed up a bunch of them in clear PLA. They mostly work pretty well; the only downside is that the connection at the small end needs to be flexible to warp around the board but that also makes it a bit weak, so I’ve broken a few of them. Carefully put them on the PC board and squeeze in the acrylic, and you end up with this:


Call this the first prototype. At this point, I was a bit tired of soldering and was waiting for some more parts to show up – and finding out that Amazon’s two-day prime shipping is only aspirational at times – so it was time to write some code.


Both the code and the circuit designs live in GitHub here.

I’ve written four or five versions of color-blending animation code. Last year I wrote a nice abstraction that worked great for the linear strip animations I was doing, but it didn’t adapt very well to what I wanted to do here, so I went back to first principles.

Using polar coordinates, the code knows the location of each LED on the snowflake. For some of the animations, the color is determined by either the angle or distance of the LED from the center, and in these, there is just a simple mapping that says “add the animation offset to that number, and then use it to find a color”.

The nice part of this approach is that is gives me appropriate color blending across the whole snowflake.

I spend a few days on the code, and it’s decent as a first try. It implements four animations:

  • A continuous rotation of all the colors around the arms of the snowflake.
  • An animation of colors based on the distance of the LEDs from the middle.
  • A “sparkle” effect; all the LEDs smoothly and slowly blend between colors, while random LEDs flash full white and then fade back to the current color. I wrote some nice code for this.
  • A bouncing effect called “worm” that is a bit of a take on the Larson Scanner, but across opposite arms of the snowflake, also with color blending.

I had more ideas for animations, but decided to freeze the implementation so I could finish the build.

Autonomous display

For the prototype so far, I was driving it with a ESP that was powered by the serial port, and with a short ribbon cable carrying signals to the snowflake itself.

My plan was to put the ESP remote from the snowflake (so it could be under the eaves and shielded from rain), so I cut two-foot lengths of red/black/yellow wire (for power and signal), wired everything up, plugged it in…

And the LEDs started flashing randomly. Tried decoupling capacitors, tried signal resistors, tried a whole bunch of things, and nothing worked; if I made the signal line longer than about 10”, it wouldn’t work.

Trying to fix that consumed the better part of a day. Ultimately, I decided that the problem was that I was getting a lot of transients, so I decided to run the 5V power directly to the snowflake, and then chain the ESP off of that.

And it worked perfectly the first time, leading to this arrangement:


Plus 4 = 5

During the long hours of making four more of the PCBs – cursing my choice to use tiny pads for data connections and not doubling them – I realized that there was a far better way to do the attachment; if I allowed the boards to overlap vertically, I could use through-holes that aligned between the parts and just solder component leads into the holes. My guess is that I could do that basic board in about 1/10th the time, even less than that if I could reflow solder the LEDs. And the boards can probably be (mostly) square, which will make them easily fababble, easily broken apart, and they will fit tighter for better utilization.

Sounds like version 2 to me.

I didn’t take any pictures during this time, but it was a huge pain in the butt to get them all working; the tiny data paths were especially troublesome.

Finally that, was done, and I could turn to other matters. Four more Huzzahs were wired up:


and were all attached to the snowflakes.

With the Huzzah mounted close, it needed some protection, so a bit more time in TinkerCAD yielded a nice little case:


That’s a PrintrBot simple metal pro with a custom heated bed on it. I had the usual problem getting tolerances right, but eventually got to here:



Whenever anybody asks me what the hardest part of these projects is, I always respond “cabling”.

LEDs are power hungry, and unfortunately small wires introduce voltage loss, which means you get color shift. If I had 3 snowflakes on one wire, the last one is going to be dimmer and the colors will likely shift as well. In my previous projects I’ve resorted to powering strips at both ends and using thick landscape lighting wire, but it’s a huge pain.

This time, I got smart.

WS2812s pull about 60 mA max if they are all white, and with 55 of them I needed 3.3 amps @ 5 volts. Since I can live without full white, I decided that 3 amps would be sufficient. And bought 5 of these:


One of these will be right next to each snowflake, and then I just need wires that supply something around 12 volts, and everybody will get a nice solid 5V supply and be happy. I reused the 10-gauge wire I had for the project this replaced, but I could easily get by with something like 18 gauge.

I’m not sure powering with DC is the right approach, however; it might be cheaper to go with small 5V AC power supplies and just use standard AC cords.


I live in the Seattle area, and the holiday season is generally quite wet, and the electronics will need some protection from the elements.

I have quite a bit of West Systems epoxy sitting in the garage leftover from a custom subwoofer enclosure I did a while back, but their website didn’t yield much information about its conductivity. So, I built this:


and embedded it in a whole lot of epoxy:



Works fine…


About this time, I had a couple of distractions. First off, this showed up from Italy:


Getting it picked up, legs on it, and ordering parts to recondition it took a bit of time.

And, I had an event where I needed the snowflakes to be part of the display, so I totally finished two of the snowflakes and put them out on the house, trusting that the weather would stay unseasonably dry. Here’s the bench test:


You can see the DC->DC converter to the left of the lower snowflake.

I should at this point mention that pictures or video never do these colors justice; they are much more intense than they show up here.

Waterproofing part 2

To keep the attached wires in the right spots, the wires and the Huzzah needed to be supported above the PCB which will be covered in epoxy. Here’s what I ended up with:


After I carefully poured epoxy over all the parts of the board that needed them, the boards got hung up to cure:


It being about 40 degrees in the garage, they did not cure overnight and eventually I had to pull them inside to finish curing. They looked like this when they finished curing:


I retested them. One of them worked perfectly, the other two did not; only some of the LEDs worked.

So, out came the air rework gun to debond the epoxy in an area and then I could trace from there. I ended up replacing about 5 LEDs; from what I can tell they were touching but no soldered, and the cold weather shrunk things enough so that the epoxy could get in there. I also had one pcb trace break (really?). Then, those two got an epoxy touchup to cover over the reworked areas. .

Finally, the huzzah box got hot-glued to the back and silicone was used to plug the hole.

Not perfect, but version 1.


You can also see the molex connectors that bring 5V into the snowflake.


Snowflake from Eric Gunnerson on Vimeo.

Version 2

*Lots* of ideas for version two, which might be a commercial version.

  • The whole mounting and waterproofing approach is far too finicky and may not work very well. I’m considering vacuum-forming the snowflake out of thinner plastic with both a front and back, and those can then be solvent welded (or siliconed) together to give me something that is truly waterproof. It will also give much better support for the PC boards.

  • The approach of “click-together” pc boards worked, but it required fine-tuning for each and every joint and then detailed soldering for each part. And then rework when the stresses built up. Instead of click-together, I’m going to use overlapping boards that are connected with through-hole wiring. That will take me down to 10 easy-to-solder joints per arm, or about 60 in total. I also think I can get each of the PCs to be rectangular in format, and that will make panelization easier and waste less space. I think.
  • I really need a way to reflow solder all the LEDs, and it may be time to make/buy a tiny reflow oven. Or *maybe* get somebody to do that for me, though the initial quotes I looked at are higher than I expected.
  • Moving the ESP8266 onto the snowflake board, probably on the back. That would require adding a simple 3.3V regulator for power and (probably) programming pins. I’m currently using an ESP-12; I could probably get away with a simpler one but they are pretty cheap already so it may not be worth it.
  • Add more built-in animations. Color wipes in the x/y direction, flash and off animations, concentric rotating color blends could all be done.
  • WiFi coordination between standalone snowflakes, with a dedicated network just for the snowflakes, and *maybe* a separate gateway to connect to an existing wireless network.
  • WiFi connection to an existing wireless network to allow control of the snowflakes. This might encompass setting their default set of animations, being able to download new animations, or being able to do “command control” over the wireless network, either just setting the animation that’s being run or driving every LED independently.

Snowflake update…

Have made decent progress on the snowflake. I have two PCBs assembled and populated. The right way to do it would be to use a reflow oven, but I’ve settled on using my new hot air rework station and solder paste to do the data lines – since the pads that I need to connect are tiny – and hand soldering everything else, including the LEDs. I did reflow on a test LED and it worked, but I had to get things hotter than I would like.

I finished the outline design and cut the snowflake fronts from white acrylic. This was a bit frustrating; the Glowforge is advertised as being able to cut about 11.5″ in the forward/back direction, but they haven’t been able to achieve that, so I had to cut slightly smaller than I wanted.

I used one sheet each of #7328 and #2447 acrylic so I could see which one I liked better:


After playing around a bunch (something like 15 variants) with both plastics and with keeping them different distances from the LEDs, we settled on 2447 spaced about 10mm away.

Then it was off to Tinkercad to design a clip that would hold the front to the pc boards, which finally led to this. You can see the clips (printed in clear PLA) holding the snowflake at the right distance.

MVI_8888 from Eric Gunnerson on Vimeo.

After a false start or two, I think I have a handle on how I want to structure the animation code; it’s nice and mathy…

Now I just need to order some more Huzzahs to drive the other snowflakes, figure out how I’m going to handle the cabling, and buy some waterproof 12V –> 5V buck converters (I’m tired of worrying about voltage drop).

The video is powering the LEDs from a USB port using tiny wires, and the 5V supply is sagging down to around 4 volts because of the load. So, it will be brighter than this.

Snowflake PCBs…

The PCBs showed up very quickly. Here are front and back pictures of them.




They look pretty nice and have holes in all the right places. Because of the design, I need to cut them apart by hand.

I used my Dremel osciallating multi-tool, but frankly I think the normal Dremel would be a better choice.

That gave me a pile of parts:


Next, it was time to assemble the pieces. If everything was exactly sized, all the parts should have fit together perfectly. As it was, I had a few protrusions to file down and then I needed to file most of the pieces to get them to fit together. Took about half an hour.

And then, the first view of the snowflake board assembled.


The *plan* was that there would be copper right to the edges of the boards, and then they could just be soldered together.

What the fab *did* was pull the copper back from the edge by a little bit, so there was a gap between each of the pads that I needed to solder together. The power and ground pads are pretty big, and I could easily bridge them with a bit of bare copper wire.

The signal lines were another matter. The pads are much smaller, and with the copper lost by the fab, I just had a hairline of pad to solder to. I ended up using very fine wires to bridge the gap, putting the super-fine tip on my Hakko, and very carefully soldering the wires on. It was pretty exacting work, but it got easier over time.


The design was perfect except for a missing via that leaves a broken connection to the Vcc line. I fixed it with a short bit of red insulated wire.

I ordered a new hot air rework station so that I can reflow the WS2812 LEDs onto the PCBs, and I’m going to use that to solder all the little jumper wires that way.

While I wait for the new tools to show up, I’m going to write some code.

Snowflake #2–PCB design

I thought that I was done with the PCB design, but it turns out that I wasn’t close.

Basically, I ran into two big issues.

The first was the wierd angles that I had in my design; they didn’t pack together very well. What I really needed was a way to rotate the two short arms so they were at 90 degree angles.

I couldn’t find anything, so I went and wrote a utility to do it. On the way, I learned a lot about the KiCAD file format. It was a nice little exercise; I’ll note that it’s in pretty rough shape and you would need to recompile it to get the rotation you wanted (and to work on the file you wanted); maybe I will clean it up at some point. It’s C# code because that’s what I speak best.

I guess I should also note that I built a little .pcbnew parser to do it; it parses the file into a bunch of nodes, you change the ones you want to change, and then it writes the file back out the way it was before except for the changes. So, it will likely be useful for other stuff as well.

So, anyway, that gave me everything at increments of 90 degrees, which was good. Then I went off and started trying to understand if PC fab houses could build what I wanted. The answer seemed to be “yes” (though not in the current form), but they would likely charge extra and there was a decent chance they would make a mistake. The problem is that I have 4 different irregularly-shaped boards. You can’t use v-groove panelization because that only works with (mostly) rectangular boards. I was hoping to use the GerberPanelizer, but I couldn’t get any of my boards to show up in it; I suspect it’s because of their shape.

So, I went off and taught myself the requirements and spent a bunch of time coming up with this:


This is a hand-panelization of my boards. The idea is to come up with a design that can be fabricated as a single piece by the fab (and assembled/soldered/etc., if you are planning on having somebody do that) but can still be easily separated.

You do this by putting little breakaway tabs with small holes (I used large vias because KiCAD only supports holes in footprints). The idea is that after you get the pcb, you can carefully break off the parts with the weak tabs to separate the boards. The tabs are also called “mousebites”.

To make them breakable, you need to design things so that you have multiple tabs that are in a line and could easily bend. That isn’t even close to possible with this design, so what I’m going to do is cut the boards apart with my Dremel rotary tool or oscillating multitool. The rough edges will not matter for this application. If the design is correct, all the yellow edges will be cut with a router after the PCB is etched.

Oh, and the small boards on the right are little WS2812 breakout boards; I had a bunch of extra space in the square, so I added them in.

My first check is to upload to OSHPark and see what it thinks; I’m not going to order there but it does full visualization of the boards. Here’s what I got for the board and the board outlines:

Yeah, that’s not very good. The design looks fine. However, when I was switching between layers, I accidently chose the “Eco2.user” layer instead of the “Edge.Cuts” layer. They are rendered in the same color. All I needed to do was to turn off that layer, and then I could flip those lines over to the edge cuts layer, and that fixed the issue.

OSHPark still has trouble with the design, but I’ve exported Gerber files (one file per layer in the design tool) and looked at them in other viewers and they are fine. I think the OSHPark viewer is having trouble with the internal cutouts.

Because of the complexity of the design, I’m not sure how to spec it on the online ordering tools, so it is currently out to order.


For the last 5 years or so, I have led a “Holiday Lights Bike Ride” in early December. It’s fun to tour around and look at lights on a bike, and the view you get on a bike is very different than in a car.

One of the houses has a large snowflake with white and blue lights. Very nice and pretty.

After four years of service, I retired the LED strips I had along my gutters. The “waterproof” strips had started shorting out and it was a pain to replace sections. I personally liked the “line of light” look, but the vast majority of people didn’t even notice that they changed color.

My first thought was to replace them with WS2812 strips, so that I could address all of them. I played around with a few designs, but didn’t solve the design problems to my satisfaction; coming up with a way to keep the strips actually waterproof while still supplying them with power (which you need every 2.5 meters) was a hard problem. So, I put that project on the back burner.

A while back, my Glowforge showed up, and that triggered a new thought about the snowflakes. Instead of doing addressable LEDs on the gutter, could I do snowflakes that hung at gutter level? And then do the gutters with some nice traditional C9 LEDs.

Here are the basic parameters that I came up with.

  • Addressable LEDs (probably WS2812s)
  • Snowflake outline in acrylic (because I can cut it on my glowforge), white so that the color spreads out, and something like 12″ across (a little small, but it’s an easy size to deal with, and larger sizes make it harder to deal with the wind storms we always get).
  • Around 50 LEDs per snowflake
  • With local 5V power supply. I’m tired of running 10 gauge cable and worrying about voltage drop, so I want something regulated and local. It will probably be a local 12v to 5v converter, though I might end up with local AC instead.
  • Microcontroller controlled. That was obvious with the ws2812 choice.
  • *Maybe* WIFI controlled. I’m thinking maybe 8 of the snowflakes, and I can do an ESP8266 across that many relatively cheaply. That would let me drive them in sync from the comfort of my office machine.

The snowflake design was pretty simple; it had to be so that I could easily light it with LEDs.

One of the truisms in these projects is that it’s always the wiring that is the most painful part. That almost killed me on the Snowman project; lots of individual wires, and each has to be cut, stripped, and soldered. Not fun.

I’m thinking about doing 8 of these, so that would be 8 * 50 (leds) * 4 (connections), or something like 800 wires and 1600 solder joints. And to compound that, you need decent sized conductors so that you don’t lose too much voltage along the way.

The way to get rid of all the point-to-point soldering is to use a PC board. Since boards are priced based on their area, I explored using APA102 LEDs which are available in a 2020 package.

That’s 2mm x 2mm, or just a little bit more than 1/16” square. I’m planning on soldering with a heat gun (or maybe I’ll pick up a cheap hot air rework station), but the 2020s will be blown right off the board.

So, it was back to the 5050 (5mm x 5mm) package, and at that point the WS2812B won out on cheapness. The APA102s are nicer but much pricier. Oh, and they have separate clock and data, which is one more wire to try to route correctly.

And there I ran into a problem. A run of eight 12″ x 12″ boards would be right around $200, which is a bit pricier than I had hoped, and it’s not clear to me that I could find a fab that would be able to cut such a fragile arrangement of boards; in fact, I was pretty sure I couldn’t find one.

After some thought, I realized that I could do the snowflake as a series of boards; a central board, 6 straight boards that attach to the central board, and 12 arm boards that radiate from the straight boards.

After a bunch of iterations, it ended up looking like this:


And yes, I did notice the resemblance:

Image result for klingon warbird drawing top view

I took that design, pulled it apart, duplicated parts, and came up with this layout:


The PC board will be a little bigger because I’ll need tabs between each part, but it will be close. That is about 5” x 5.3” and has all the parts for a 12” snowflake.

But would it work? Well, a trip to the glowforge with a piece of cheap plexiglass and two minutes of time yielded enough pieces to test it out (the rest didn’t cut cleanly because cheap plexiglass):


The laser loses a bit of material in the kerf, so they are a bit loose, but that will be better with the real design, and it isn’t structural; all of this is supported by the acrylic snowflake, which is thicker and beefier.

It was time to do some board designing. Unfortunately, I don’t have a full license to Eagle, and the free version won’t let me design boards that big (actually looking at the new Autodesk free license, I probably would have been fine), so that meant I had to teach myself KiCAD. Like Eagle, it has a bunch of weird eccentricities which are of course different than the ones Eagle has, and I’ve spent a lot of time researching how to do things that are very simple.

The circuit is really very simple; just power, ground, and a daisy-chained data line. The only big constraints are:

  • I want big traces to limit the voltage drop
  • I need to be able to connect from one board to another

My usual approach for PC board design is to draw the schematic, and then just start playing around with layout. The layout of LEDs is pre-determined, so it’s really just about routing all the conductors.

Here’s a very ugly schematic:


I luckily forgot to save my early versions because they were pretty bad, but with a lot of refinement and rework, here’s version 0.9.


The fat green VCC and GND traces are on the underside of the board, and then the thin red traces (or yellow if there are green lines behind) are the data lines. Wherever there are breaks between the boards, the are solder pads that span across the boards; the idea is that those will be soldered to hold the boards together.

The hub on the right was an interesting challenge; I need to design the pads and place the pads for the other 5 arms so that they will correctly align with the one arm that I did design.

Here’s a close-up of the hub:


The yellow line is the board edge, so what what I have is pads that hang halfway over the board edge and out into space. You will see some small little blue dashes; those are used to align the pads properly on the cutout.

If you look at the little red data line pads, you’ll see that they aren’t so well aligned. I think I’m going to need to redesign those pads with the same alignment marks so they can be better aligned. Then I’ll have to tear out most of the data lines and the old pads, rotate each new pad to the proper angle (each one is different because of the shape of the recess), and then redo all the tracks that run to them.

Such is the nature of PC board design; you think you are done, and then you need to do a bunch of re-routing.

Luckily, the tool helps out a lot; the system knows which pins should be connected to other ones. If I get rid of some of the connections, it looks like this:


Each of those thin gray lines shows a connection that is made in the schematic, but is not correctly made on the board. The software also has a number of other design rules that help you find mistakes.

At this point, I upload is to OshPark, which I like for small boards, and it gave me this as a final design view:

Which looks pretty nice. 9 LEDs on each arm plus one on the hub gives me 55 LEDs per snowflake.

Given the size of the scrunched together version, I think I can get the boards for 8 full snowflakes made and delivered in 12 days for around $80, which is pretty good.

The downside of this approach is that you spend a lot of time on the pc design, but I’d rather be doing that then spending days straining my eyes and back hand-soldering.

Now the big question is, “how lucky do I feel?” Do I order a whole run at once, or do I order one and verify that it works before ordering the other 7?

Bicycle Adventures Gulf Islands Tour–August 2017

This tour starts in Victoria, but first we had to get from our house to Victoria. Transportation from Seattle to Victoria on the Clipper was included, but the 7:30 AM departure meant we had a 6:30 AM arrival time and an even earlier meeting time. Since Bicycle Adventure is headquartered a couple of miles from where we live, we headed there first and they graciously took us to Seattle to make our logistics easier.

Us == me, my wife Kim, and my daughter Samantha.

Except the early hour, the trip up was uneventful; at 30 knots, the Clipper is nice and fast and all of our luggage and our two bikes arrived in great shape. Our hotel was an easy walk from the ferry dock, and we stashed our bikes and luggage at the hotel and had a quick lunch of wraps in a nice shaded spot under the trees. We got to know our guide, Noe, and the other two cyclists on the trip, Percy (not his real name) and Grace (not her real name).

Most of the guided rides we have done have been on the larger side – 12-25 people – and have had three guides. This one was planned with two guides, but due to logistical problems (many guides head back to other jobs in September), we only had one guide. It was a little weird only having six people total, but we knew about it ahead of time, so it was fine.

That afternoon, those using the BA bikes got fitted out and we went for a short ride; just a quick out-and-back on one of Victoria’s many bike trails. This helps those who have not been on a bike recently get their legs back and for the guide to get a better idea of what the group is like.

The ride was 14.8 miles and 334′ of up; a nice warmup after a lot of sitting on the clipper.

Dinner that night was in the restaurant in the hotel – Aura.

Pork 2 ways
ash glazed loin, 18hour sous-vide belly, pommes bouchon, charred onion, cauliflower, sea buckthorn gastrique

The tenderloin was small and quite overdone and the pork belly was underseasoned. I don’t get why you would use sous-vide on pork belly; the whole point of sous-vide is not to overcook your protein and the pork belly is all fat and benefits from higher heat. I think they got the cooking methods backwards.

Not horrible for $24 Canadian, but this continues a trend that I’ve noticed; restaurants attached to hotels tend to be a bit disappointing. That, and trendy cuisine is mostly wasted on me; after a ride I’m looking for something a little more substantial.

Day 2 – The Butchart Gardens

Breakfast this morning was eggs and bacon, and then we packed up and headed out on the ride. This ride has two legs; there is a trip from Victoria to Butchart Gardens, and then a trip from the Gardens to the ferry near Sidney.

The first leg of the trip took us along the waterfront and then up the east side of Vancouver island, and was very picturesque. BA has just started using Wahoo Element Bolts for guest navigation, and that meant we mostly didn’t have to refer to paper instructions for printed maps during the week, which was nice. We stopped at a Starbucks – of course – for a break:


At that point Percy and Grace decided to van to lunch and IIRC Samantha went with them, and Kim and I kept riding. Eventually we made it to the gardens, and although we ended up having to recruit most of the staff to find the van, find them we did.

I had visited the gardens in my youth, and remembered them as very big, but apparently we just went very slow, as Kim and I went through the majority of the areas in about 45 minutes. Many of the flowers were unnaturally large; Kim guessed excellent care and lots of fertilizer and I guessed cobalt radiation, but overall the effect is very nice. Here’s a taste of what we saw (this is the “sunken garden” section).

That clump in the middle has a little viewpoint that you can climb up into, thereby reenacting the rebel lookout scene from Return of the Jedi.

At least that’s what I told Kim it looked like when we were walking by it. Let’s compare:

As you can see, a perfect match; delta differences in foliage, the height of the lookout, and the number of X-Wing fighters.

Now I know why Kim was shaking her head.

Anyway, we headed back to the van and had a nice lunch of salad and shredded chicken in the shade under the trees. Then it was time to mount up and head towards the ferry. Samantha, Percy, and Grace chose the shorter and less hilly “direct route”, and Kim and I chose the longer and more scenic route. It was nice for the first 5 miles or so, and then Kim started getting cramps in her quads.

I have a tic-tac box of electrolyte pills that I carry that were perfect for this, but I had cleverly left them in my luggage as this was a short ride for me. Kim was fine on the flats and descents, but on the steeper ups she would walk and I would push the bikes up. This gave us a bit of anxiety because we had a ferry we needed to catch – we weren’t in danger of missing it yet but it was getting tighter. At one point I saw a “Ferry” sign, pulled out the detailed map I had, and figured out we could take the direct route to get there. Oh, and we managed to reset our Wahoos to use the direct route, quite the feat when you have old person eyesight like we do.  A quick stop at a store to get Kim some salt-laden cheetos and both of us a Coke Zero, and we made it to the ferry without incident. Only to find our ferry was late, so we grabbed dinner at Stone House Pub, a pub sited in a stone house. Hence the name. I had the Stonehouse burger with cheese, bacon, and mushrooms, and a side salad. Yum.

The ride ended up with 43 miles and 2411′ of up. Despite the cramps, Kim puts in a really nice effort for the distance and amount of up.

We catch the ferry to Galliano island, where we stay in the Galliano Oceanfront Inn and Spa. It was a nicely updated but kind of older and funky place, which is at least wheelhouse-adjacent for me. Except for lighting that was never updated after the energy crisis of the 1970s (ie “dark”), it was nice place, and we had a little patio that faced the water.

Day 3 – Mayne Island

After two eggs and bacon for breakfast – you probably sense a pattern here – we grab a ferry to Mayne Island, which is a small island. We van up the first hill, and then start riding around the island. Before the first mile is done, we hit a nice 19% hill, which sets a pattern for the rest of the week. If you’ve ridden the San Juans, the Gulf island roads are both hillier and steeper. My climbing legs are fine and I overall feel good – and I know today is going to be less than 20 miles – so I spend some time working on sprinting and waiting. The morning I’m riding with the wife and offspring, so I climb and wait, and sometimes double a hill. We descend back down to the water on the East side of the island, and pull into the Bennett Bay Bistro for lunch. I have the Santa Fe salad, which is pretty good.

We climb back out for our ride to the ferry; I wait after the first hill and tell the wife I’m going to do an optional section. I ride off and immediately miss the turn to the optional section, so I just ride the rest of the route down to the ferry and the climb back up from the ferry to find the group. Percy and Grace pass me on the downhill, and after I start to head back up the hill I hit the wife and offspring. Offspring turns off towards the ferry, and I redo a little loop with the wife.

The ride ends up with 17.1 miles and 1991′ of up. Anything over 100′ per mile is pretty hilly, and though I missed the optional part – which was only about 3 miles long – I did a nice hard ride. We ferry back to Galliano.

Dinner is at the Atrevida – which Google translate tells me means “cheeky” in Spanish – restaurant where we are staying. I order the Goat Cheese Wild Mushroom stuffed chicken breast.

Cheeky it is, for when my plate shows up, it is a breast with a small thigh attached to it, and it can’t weigh more than 4 ounces. There is a tiny amount of stuffing, and as far as I can tell, no goat cheese at all. The wife takes pity on me and gives me a piece of her rack of lamb, which is nicely done. I go back to the room and snack on the bag of nuts that I brought along, because I’m still hungry. I’m now 2 out of 2 for disappointing hotel food.

Day 4 – Galliano Island

Today we are going to ride around Galliano Island. I decide that two eggs isn’t enough so I order 4 eggs and ham, and gladly eat the 4 eggs and bacon that show up. They’re nicely done, so I’m fine with it.

My plan today is to ride solo in the morning and take it from there. I’m going to do the long spine and then an optional section and maybe a quick out-and-back before our lunch at lover’s leap.

The first climb is over pretty quick; I feel a bit heavy in the stomach from the big breakfast but that settles down and I start making time. I hit a turnoff down to the water and head down and the crappy road gets crappier and crappier, deteriorating into totally torn up pavement at the bottom. I take a picture at the bottom, and then head back up the crappy road and back onto the route.


Very soon, I turn right onto the optional section which resolves into a steep climb; the Garmin says 13-15%, and that’s pretty much what it feels like. It then settles down into a generally down but sawtooth profile, and after about 3 miles of that:


I can fit the bike under it, so it obviously doesn’t mean me. Another mile or so, and I come to a signed private drive. While I’m generally adventurous (not really, but that’s what I tell myself), ignoring that sort of sign in a foreign country seems like the wrong thing to do. I don’t think organized group rides should involve that sort of thing.

I ride back and hit the main route where the van is waiting and Percy and Grace (still not their real names) have just arrived. My family has turned down the turnoff to the water I did earlier, so I head back to find them.

I blow by the turn, ride for 5 minutes, stop, pull out my map, ride some more, and finally get about halfway back to the end before I figure it out. I turn around and time-trail my way in the correct direction, and get to lunch about 10 minutes after my family pulls in. Lunch is wraps (again), so I eat the filling of a couple of wraps, drink a caffeine free diet pepsi (ie brown flavored water), and rest while the rest of the group watches a pod of orca go by, trailed by an assortment of whale-watching boats.

The family gears up and heads to the northeast end of the island. We drop the offspring at the van on the way back, and then head out on the last 13 miles with the wife. Kim does well until we descend to Montagne Harbor and need to climb back up; there’s a steep hill (say, >17%) that climbs up about 300′. I scout ahead while Kim walks, and then I return to tell her that it’s not that far, and pretty soon we are at the Hummingbird Inn to load the bikes up and have a snack before the ride back to the ferry. I have the traditional post-ride snack; a diet coke with a side order of cole slaw.

Given my extra bit of riding, I end up with 50.7 miles and a significant 4745′ of up for the day. 

Because it’s past labor day (many restaurants have closed) and we have a tight timeline to hit the ferry, we get dinner from an Indonesian/German food truck on the ferry dock. I play it safe and have a decent hamburger. We get the ferry and head over to Pender Island, where we are staying at Poet’s Cove Resort & Spa, “where inspiration lives”, along with a bunch of people with really nice boats. Apparently the poetry gig is paying better than I thought. The rooms are nice and we have a view of the bay, and they also feature sliding doors that lets you sit in the bathtub and look out at the bay.

Which is fine in concept, but they decided to use doors with slats that face down and frosted glass in the shower area, which means that you can’t use the bathroom in the middle of the night without lighting up the whole room.

Things like that really bother the designer in me.

Day 6 – Pender Island “make a choice” day

I like time on my bike more than most people, but after 4 days of riding, I’m ready for a day off the bike, and today is the day. Today’s breakfast features a custom omelette with a lot of veggies, and since omelette was small I add a plate from the buffet with some more eggs, some bacon, and 12 blueberries. We van over to the harbour to Pender Island Kayak Adventures, and spend a really nice three hours paddling with a great guide; definitely a nice and relaxing experience. I also learn that paddleboards are called “SUP” in Canada; I had previously refrained from asking, “What’s SUP?” to my companions with great difficulty.

Lunch is at the Port Browning Marina. Service is a little slow but I really like my steak salad, except for all of the tortilla chips that I forget to ask them to leave off. We van back and have the afternoon to ourselves; I gaze longingly at my bed and decide instead to head to the fitness center for a light workout and then a soak in the hot tub.

Dinner that night is it Syrens Bistro & Lounge in the resort. We get a place on the terrace, and I order an artisan green salad and the sockeye salmon.

I feel compelled at this point to engage in a brief exposition on the proper cooking of salmon.

The proper way to cook Sockeye is to heat it so that it is barely set on the interior, just enough so that the interior texture is no longer raw. It is delicious.

Before you accuse me of stacking the deck by ordering the salmon, I do not expect the Sockeye to be cooked properly. What I expect to get is what I call “tourist cooked”, which is the way that you cook salmon if you are serving it to tourists who might not like their salmon to be “raw”. Instead of just set on the interior, it’s cooked so that the interior is obviously done. If you think of it as the “medium” of steak, you’re pretty close. The texture suffers, but it’s okay.

What I get is the salmon equivalent of a well done steak, way past tourist. I do applaud their consistency; our guide has salmon that is cooked the same way. I really should send it back, but I eat it anyway. About 10 minutes after that, my salad shows up.

So, that’s a perfect 3 out of 3 in poor dining experiences at the places we stayed at, a pretty strong confirmation of my theory (p = 0.05).

Day 7 – Pender Exploration

Our last day dawns a bit wet, and it’s still misty outside.

I have my very predictable omelette/eggs/bacon breakfast, though I think “what the hell?”, it’s vacation, and go “outside the box” and have pineapple instead of blueberries.

The original plan is to bike a little, do a hike and eat lunch and the top, and then bike to the ferry. But the road are a bit too wet to ride, so the Gunnersons van up to hike. We start turn off at the eponymous Mount Norman Access Road, and start the hike.

It turns out it’s really more of a climb than a hike; with a lot of steep. After maybe 25 minutes and 600′ of elevation gain, we top out, walk to the observation platform, and take in the beautiful view at the top of Mount Norman (do you think the other mountains make fun of him?):

Or we would have done that, if it weren’t a foggy day. What we did instead was look out at a vast sea of whiteness, watching for the short periods of time where trees or water were vaguely visible.

But it was still a nice hike. We returned to the resort for a quick lunch, and then it is back on the road. Kim and I are the only cyclists for the day. One side trip takes us to a view, another takes us to a park that we are unable to locate, and we roll off of South Pender Island onto North Pender Island, and hit a killer hill.

Which makes me happy.

I haven’t mentioned it earlier, but Kim and Samantha have really been excellent sports on what has been a trip with a lot of steep hills, and not just steep in the 10% range, but steep in the 13-15% range, with a few steeper.

This is a honest 20% climb, but short, and we are soon rolling into the village center, where the van has just arrived. I drink a coke zero while the others snack on more carb-laden fare (okay, I had two pieces of gluten free peanut butter brownies, which were pretty much like eating peanut-flavored sugar cubes), and we headed out for the last little ride to our destination:

The Otter Bay ferry terminal.

We get there about ten minutes before the van shows up, and then the bikes go in the trailer and we get in line.

The ride for today is another short one; 16.4 miles with 1427′ of up.

I’ve been meaning to mention the ferries; the BC ferries run some very tiny boats, and then the run some big new boats.

That clamshell in the front is raised up for loading, and the lowered down for the trip. That allows them to operate ferries in much rougher weather than we see in Puget Sound. In the middle of the entrance, you can see a raised part sticking up.

The ramps lead down to the second car deck which is underneath the main one. Load it up, close the ramps, and the lower car deck is totally enclosed. A neat design. All the exterior doors on the passenger decks are heavy and power operated so they can seal tight.

The ferry ride takes us to Tsawassen, and we overnight in a hotel near the airport. In the morning, we leave at 6AM to van back to Redmond. Our border crossing takes two minutes; I am grateful that it is short but wonder what our border agent was thinking letting a van and a totally enclosed trailer through so quickly.


Miles: 142
Up: 10,933′

Overall, it was a nice vacation. I liked the rides but the ferry logistics can be a bit tedious at times as you have to get to a specific place at a specific time, and I would have liked more bike time – or at least more options – on a couple of days. Our guide was great.

DORMAR Rider’s Guide

DORMAR is a backwards version of RAMROD. It differs from RAMROD by going the opposite direction and by being a totally unsupported ride. You will need good fitness and self-reliance to complete this ride successfully. DORMAR is 152 miles with a little bit more than 10,000′ of climbing, including two major mountain passes climbs.

The start

The ride starts in the Enumclaw Fairgrounds parking lot, at 45026-45098 284th Ave SE, Enumclaw, WA 98022.

The starting time is “Whenever you want”. I’m planning on starting at 5AM to get as much done before it gets too hot

The Route

You can find the RideByGps route here. You can download a route for your GPS from it; figuring out how to do that is left as an exercise for the reader.

A preview of the route is here. Please read it as it has important information.

Turn-by-turn instructions

Mileage Action Notes
0.0 Right
0.2 Right Highway 410
40.2 Right Highway 123 (Cayuse)
51.1 Right Towards Paradise
51.1 Water! Bathrooms!
70.1 Right Towards Paradise
72.2 Left Visitors Center
72.2 Left
74.5 Right Main road
74.6 Left Longmire
83.7 Store!
104.1 Store!
108.7 Right Eatonville – Alder Cutoff Road
115.9 Right Washington Ave
116.1 Stop Deli Stop (Cottage Bakery)
117.2 Right Orville Road
126.2 Right Store! Orville Road
135.4 Right Highway 162
136.4 L & R Onto Trail
142.0 Left Emory
142.0 Right Store! Highway 162
144.3 Left  Buckley
146.0 Right Enumclaw (410)
148.9 Right Warner / SE 456th
150.6 Left 248th
150.9 Stop Done!

Important notes

  • A blinky rear light and money are REQUIRED to get into the national park.
  • Pay attention to the lack of water stops at the start of the ride, and make sure you plan accordingly.
  • This is a long ride; make sure to turn your GPS to smart recording to save battery life
  • The descents will be long and fast. Please choose an appropriate speed.

Riding the Going to the Sun Road

We decided to spend a few days in Bigfork, Montana (a few miles south of Whitefish for my skiing friends) with my sister and brother in law. They graciously offered a room in their two-bedroom condo, and then my spouse graciously suggested that I bring my bike along.

I decided one day of riding was enough for our short visit, and I had two good choices

There was an 80 mile 7000′ ride around nearby lake Kookanusa, or there was a 60 mile 3500′ alp-ish climb in Glacier National Park, called “Going to the Sun Road”.

Both looked interesting, but I decided on the latter because a fondness for alpiness. This ride presented a bit of a problem; some of the sections that I needed to ride were closed to bikes from 11AM – 4PM. Which meant starting early – around 6AM – to finish in time, or starting late and likely finishing in the dark. I decided to do the early version.

Montana was in the middle of a hot spell, with daytime highs in the high 90s and the lows only dipping into the 60s. So, I packed a light set of bibs, my lightest base layer, and a jersey.


To get from the condo in Bigfork – yes, that *is* the “big fork” in town, though it is not, in fact, the particular fork upon which the town is named, the actual one being of fluviatile origin – to West Glacier is a drive of about 45 minutes, which meant leaving sometime around 5AM, which in turn meant getting up at 4:30AM.

The getting up before dawn part of riding is not one of my particular favorites, but get up I did, along with the wife who was going to drive me there and then come and get me. And then there was the problematic task of getting dressed – problematic not because of the mechanics involved, since I am often able to dress myself on my own (though determining how well I accomplish that is a task I leave to others) and there were no buttons or zipper involved, but because of my basic riding gear and a bit of a surprise in the weather department, with west glacier forecast to be in the mid-40s overnight.

There was nothing to be done however, so I pulled on my “very hot weather” base layer, my pair of summer Castelli bibs, and my Sufferin’ Summits jersey.

I generally wear the Sufferin’ Summits jersey when I want publicity for the ride, which in this case is probably a bit pointless, but it is also white (part of the “let’s stay cool” theme) and has very deep pockets. And I threw on my PI sun shades arm warmers, because they work okay as arm warmers.

We load the bike in the car and start the drive to West Glacier. On the way, I eat 1.5 hard boiled eggs and a half cup of strawberries. I also dig through my bike bag and pull out my full-finger gloves, my toe warmers, my fleece hat, my light windbreaker, and my leg warmers. I do this because the temp at the condo is 49 degrees and it is steadily dropping during the ride, hitting a brisk 44 degrees by the time we get to West Glacier. I figure I’m just stuck with being very cold, but I step out of the car, put on the windbreaker, and discover that it’s a dry cold and it’s not that bad.

Thank god for low humidity; 44 degrees in the winter in Seattle means my winter jacket plus overpants plus neopreme shoe covers plus still getting cold.

I pull out my brown bag with supplies for the trip; it contains a half-bag of sport beans, a honey stinger waffle that I’ve been carrying around on rides for at least a month and which now consists only of crumbs, a small pump since the new bike doesn’t have one yet, a ziploc of nuts, a ziploc of cheez its, and my tic-tac container of electrolyte pills. I take a Rocketlyte before I start, hoping it will help with the on-bike nausea I’ve been getting (and by help, I mean “prevent”…)


This ride features an 12 mile flat commute next to a lake before the climbing begins. After a short 1/4 mile spin, I come to the park entrance and the ticket booths, none of which are currently peopled. A lighted sign points me off to the right, and I find a kiosk with envelopes I am supposed to put my entrance fee and write my name and address. Which presents a bit of a quandry, as I have no pen with which to inscribe said name.

I settle for composing a brief poem celebrating the life of John Muir and hum the first few lines of “The forest ranger song”, and hope that will suffice:

When we rangers ride the trail / In sunshine, wind or snow or hail
We’re always ready / We’re true and steady.
There’s a friendly laugh, a joke, / We’re cheery until we see a smoke,
And then we’ll fight, sir, / To get it right, sir.
We never leave a fire till no spark is to be seen;
Our job’s to guard the timber, keep the forest green

That sorted, I head straight and then turn right onto the Road to the Sun road, riding next to a Ackbar campground, named after the ever-popular “Admiral Ackbar” of the Star Wars franchise. I’m sure you can see the resemblance:


It’s brisk but really not too bad, and the combination of me warming up and getting next to the lake (which holds some heat) warms me up, except for my feet which are stubbornly frozen.

The lake on my left is Lake McDonald. According to the official Forest Service history, the name of the lake is in commemoration of an eponymous act of vandalism by trader Duncan McDonald who carved his name into a tree in 1878. Disappointingly, the official history is silent on further details, telling us neither whether Duncan ever owned a farm nor what kind of animals might have been kept on said farm.

Traffic is light, which is expected since it is currently 6:20AM on a Monday, but there are a few cars around. With one exception, they all pass courteously.


The flat commute took me to the north end of the lake, which is fed by a stream that Wikipedia names “various stream”. The road parallels this stream and begins to climb up slightly, with extended sections of climbing with a 1% gradient. I grab 23 cheez-its from my stash, drop one, and stuff the remainder in my mouth, hoping to pre-fuel for the long climb ahead.

I get colder; the sun is technically up and you can see it on the highest peaks, but the western valleys are still in heavy shaded and I’m above the moderating influence of the lake. This persists until about the 21 mile mark.


The base of the climb is commemorated by a no passing sign. A search in Google Streetside did not find it, so I have recreated it here:


I did, however, find the following sign:


Luckily, rocks do not fall next to bicycles, so it seems that I am safe.

The climb will take me – with any luck – from 3500′ all the way up to 6647′, for a total climb of a whole lotta feet (927 meters, or just a little bit over 1 Tourmalet). I climb for about 5 minutes at about 180 watts, stop to remove my windbreaker and stuff it into its storage pocket and my jersey (if you do not own a stuffable windbreaker and a stuffable vest I do not know what is wrong with you), and continue climbing. After a bit I pick up the pace a bit, climbing at a little over 200 watts.

My feet are still cold.

My plan for the climb is to ride conservatively for the first half and then see if I have a few more watts in me, so of course I climb too hard at the bottom and have to back off a bit. The climb is very consistent at the 5-6% gradient that highway engineers love, and I’m climbing it at a little over 6MPH.

After a bit I hit “The Loop” switchback, which redirects the northwest road back to the southeast. I wave to a couple of touring riders taking a break in the parking lot, and continue to climb.

The combination of a low speed limit, small tour vans and coaches, and the “no passing” rule means that the traffic patterns are interesting. I might climb for 5 or even 10 minutes with no cars either direction, and then a stack of 10-25 cars will catch up with me and pass “en masse” (could I perhaps say, “en passant”?), only to leave my by myself for another long period. The road is has gotten the “A-list national park” treatment, which means great asphalt or concrete the whole way, with none of the chipseal I was worried about. Many of the drains are piped underneath the road, though there are a number of surface drains with grates over them. The Roubaix is fine with them going up and I make a mental note to be careful with them when I descend back down. The drivers are uniformly well-behaved with no bad passes, and the only hand signal I see is a thumbs up from one car.

The climbing continues. Since we are above treeline and the road runs somewhat in the same direction, I can see the road ahead for a mile or two. Once you reach the end of that part of the road, you are treated to a new vista and a new high point to which one will be climbing. This happens twice. At some point, I pass through 5000′, a point at which I’m about 12% down on oxygen compared to sea level, and shift down to my lowest gear. And keep climbing.

For those of you tracking things at home, my feet remain cold.

There are many water features on the way, notably haystack falls, bird woman falls, and the weeping wall. It’s getting past the peak snowmelt season, so the weeping has slowed down to something more akin to “tearing up”. I don’t stop at any of the features because a) climbing and b) 6 mph gives me plenty of time to look at them. I do not recommend spending much time looking over the edge of the road; that 12″ high stone barrier is often the only thing between you and a significant drop.

I would definitely describe the climb as “Alpy”. Great views and a road that is both very curvy and hung on the side of the road in places.

I still climbing along at about 6MPH, and I finally drop down to my 34/32 for the last little bit. I know it’s the last little bit because a) I’m watching the mileage and b) the road gets sunny up ahead.

I finally crest the end of the climb and reach the top of Logan Pass, 6646′ up and on the continental divide.  The pass is named for William Edmond Logan, a Canadian-born geologist who later went on to star in an sci-fi thriller set in an idyllic society in the year 2274.

Image result for logans run

A brief rest to eat a few sport beans, gather a bit of electronic proof, chat with a few cyclists who climbed up from the other side, and put my windbreaker back on, and it’s time to head back down. I experience a short period of foot warmness.



I like big alpine climbs, but I absolutely love alpine descents. In this one, the long and fast sections are punctuated by wet sections and sharp corners where too much speed will either send you into a rock wall our out into space, neither of which is particularly desirable. I have a bit of a quandry on this descent; I can descend slow but I’m back in the cold air and still a little sweaty, so I will be cold for a long time. Or, I can put a bit of power into the descent, warming me up and spending less time in the cold shade. I settle for the “bit of power” approach for the straight sections and the “slow” approach for the tight turns and the wet spots. My Roubaix’s disc brakes make this trivially easy, and I average about 20 MPH for the descent, completing it in a hair over 30 minutes.

Strava shows me that the fastest descender completed that descent in under 17 minutes for an average speed of nearly 37MPH, which is pretty much unfathomable to me.


At the bottom of the descent, it’s back onto the preamble and then the commute back. It’s at this point that I realize that if I had been smart, I would had a snack and a fair bit of water at the top so I could recover a bit on the descent (trying to eat and drink on alpine descents is not a good move), but I was not, and I’m kindof drained at this point. I stop at Lake McDonald lodge road to eat and drink, but the nuts and cheez-its that I eat and the water I drink are not a happy combination, so I add “upset stomach” to my “lack of power”, and just decide to slow down and spin my way back. I get back West Glacier at about 10:45, and the wife pulls in a few minutes late. Bike in the back, bike gear stowed, and a Coke Zero in my hand, and it’s back to the condo for a shower and some lunch.


A pretty nice ride. I’m happy that I was about to climb at an honest 2000′ per hour for the whole climb while feeling pretty decent; being lighter definitely helped. I’m less happy that I’m still working on fueling and hydration, but such is life.


  • 64.4 miles
  • 4080 ft of up
  • 14.0 MPH average speed
  • 2484 kJ/calories
  • 1 HC hill climbed
  • 0 STPs
  • Strava extreme suffer score (173).

Strava link

Postscript: It has been brought to my attention that the name of the campground at the south end of the lake is “Apgar”, not “Ackbar”, and rather than being named for a character in Star Wars, it is in fact named after the name given to a method to summarize the health of a newborn. We regret the error.