Workshop finishing update

I’ve done a fair bit of work to update the workshop, but have been terrible at taking pictures. So, here’s the current state:



There’s a pretty new window in the bottom picture to bring some natural light into the space. The walls are all insulated with Roxul rock wool, which was a significant pain in the ass because the long wall has studs 12” on center and it doesn’t come in those widths, so I had to take 23” batts and split them. Ick. There are three new boxes for outlets, but the circuits aren’t hooked up yet. The wall is 1/2” CDX plywood, chosen because I want to have a wall I can hang things on.


Here is a pretty picture with the wall painted white to make the whole room lighter.

Up next will be doing the electrical, moving the cabinets back, and working on the rest of the room.

WPC driver board issues

My WCS 1994 is having some issues; the DMD display is showing static and now the game is behaving strangely.

I’ve been using the guide here, but I’d like to share some other data I’ve gathered since I didn’t find it elsewhere.

Test point Working DC Working AC Problem DC Problem AC Description
TP1 14.7 0.63 13.5 0.08 +12V filtered but not regulated
TP2 4.93 0.01 4.97 0.001 +5V regulated Digital supply
TP3 11.92 0.008 0.758 0.122 +12V regulated digital supply
TP4 0.37 0.63 3.62 0.06 +50V filtered
TP5 0.03 Board ground
TP6 73.2 0.2 – 0.8 75.1 0.01 +50V for solenoids, flippers
TP7 21.7 0.09 21.6 0.04 +20v flash lamps
TP8 15-17 0.2 (ish) 11-14 0.8 (ish) +18 to lamp columns

“Working” values come from my Twilight Zone (working), while “Problem” ones come from my WCS (not working).

What can we tell from this?

Well, a few things. The obvious issue is TP3; it is less than 1 volt when it should be around 12 volts, and it’s letting a lot of AC through at all.

Time to pull out the schematics.


Sorry, that was the best image I could pull from a PDF; the paper version isn’t much better.

Basically, we have power coming in from the left side, which should be a nice healthy 18volts (measured at TP8). It goes through two series diodes that will drop the input by a little over a volt, and then it goes to an absolutely-standard 78xx linear regulator circuit; a capacitor on the input, a 7812 (for 12volts) and a capacitor at the output. 78xx regulators are pretty robust, so let’s see if we’re using it correctly…

Like most linear regulators, the 78xx series has some limitations around input voltage; it requires about 2 volts of headroom to be able to give us the output voltage, so we should be looking for 14 volts coming in. We have 11-14 volts – it fluctuates because the lights are flashing in attract mode. That 11-14 volts isn’t enough to consistently give us enough voltage for the 7812 to give us a nice 12 volts.

So, we don’t have enough power coming in, so that is the problem, right? Well, not so fast. Based on what I know about the 78xx regulators, one would expect that if the voltage drops enough so that you don’t have a full 2 volts, you will see the output voltage slowly drop down.

I pulled out a 7809 and hooked it up to my variable power supply, and found that this was mostly true; the dropout voltage was about 1.2 volts (two diode drops). That means I would expect that the 7812 would put out less voltage but something close to 12V.

So, that suggests that we have two issues going on; we don’t have enough voltage coming in for the regulator to work and the regulator looks fried. That is supported by some data I had before this where the game was acting very weird and the voltage at TP3 was fluctuating all over the place. So, a new 7812, and it would be a good idea to replace the 1n4004 diodes and the electrolytic capacitors in this section at the same time, since this board is nearly 25 years old.

Looking at the input voltages at T8, note that there is a decent AC component in the DC voltage – about 0.8 volts. Back to the schematics:


This is also really simple; we have AC from the transformer coming in, going through a full-wave rectifier, and then there are two honking big 15,000 uF electrolytic capacitors. As these capacitors age, they are going to lose some capacity and have an increased internal resistance; both of those make them worse at filtering, so it’s time to replace those as well. It’s possible that the AC that they are putting out ended up hastening the end of the 7812.

It’s typical to replace both the capacitors and the bridges when the board is reworked, just to make sure, so I will probably do that.

I am a little concerned by some of the values I see on my TZ board; there are some indications that the caps there need replacement as well. I’ll do the WCS and then compare it to the TZ one.

The biochemistry of weight and nutrition–Part #1: Carbohydrates

Back in May of 2017, I started a journey to learn more about how the biochemistry of weight works; how our bodies metabolism carbohydrates, protein, and fats, and how that influences our weight.

When I started, I had a pretty simplistic view of how our bodies work.  I’m still only starting to have a functional understanding of the underlying biochemistry, but what I’ve found is that our bodies are very complex and fascinating systems shaped by the environment in which we evolved, and that if you understand the underlying biochemistry, things make more sense.

So… This is my attempt to present a simplified view of the underlying biochemistry. If you want to learn more, I recommend starting with a copy of “Mark’s Basic Medical Biochemistry”, but I’ll caution you that the section on carbohydrate metabolism alone is around 84 pages, so it’s pretty dense. If you want a slightly lighter approach, you can try “Mark’s Essentials of Medical Biochemistry”, which is a bit shorter. In either case, read them and then find some YouTube videos that talk about the subject, and iterate on this process a few times.

A few basic principles:

Our bodies are adaptive systems

If you’ve ever trained for an athletic event, you know that when you start training it’s really hard, but it gets easier over time as your body adapts, by making physical changes to your body. Our bodies also have an adaptive response to the kinds of foods that we eat, and that response can take time.

Our bodies try to be energy efficient

We evolved in an environment where food was not always plentiful, and our bodies generally attempt to be efficient and not waste any food calories.

Reactions to diets vary significantly between individuals

Genetics, age, sex, medical history, and activity level are all significant when considering how a specific person reacts to a specific diet. Or, to put it another way, one person may be able to remain healthy on a diet that would make somebody else very sick.


I’m starting with carbs because their role is central to how your body reacts to the food that you eat. I’m going to talk about the different kinds of carbohydrates, how they are digested/absorbed, and how they are metabolized (used) by our bodies.

The nomenclature around carbs is a bit confusing, but they break into four broad classes:

Simple Sugars (aka “monosaccharides”)

The simple sugars are the ones that aren’t broken down by our digestive systems to something simpler. Most people are familiar with fructose and glucose, and there is also galactose, which I’ll discuss more in a bit. There are also some rarer sugars and sugar alcohols that I’m ignoring for now.

Compound Sugars (aka “Disaccharides”)

“Di” meaning “two”, these are sugars that are compounds of two simple sugars.

  • Sucrose (aka “table sugar”) is a compound of one molecule of glucose and one molecule of fructose
  • Lactose (aka “milk sugar”) is a compound of one molecule of glucose and one molecule of galactose
  • Maltose (aka “malt sugar”) is a compound of two molecules of glucose.
  • The much maligned High Fructose Corn Syrup is not a compound sugar, but a mixture of simple sugars. It comes in different fructose/glucose ratios, with the most common one being 55% fructose, so it’s similar to sucrose in its underlying composition and effect on the body.

    Complex carbohydrates (aka “Oligosaccharides” and “Polysaccharides”)

    All of the complex carbohydrates are chains of simple sugars hooked together (“oligo” means “a few”, and “poly” means “a lot”).

    In this class we have ingredients like maltodextrin (a small chain of glucose molecules), or starches (big chains of glucose molecules).

    Cooked starches are easily broken down into their simple sugars by our digestion. Some raw starches – also known as “resistant starches” – are poorly digested in the small intestine, and digested by bacteria in the large intestine and converted to short-chain fatty acids, which are absorbed. I would call them “starches that don’t act like more familiar starches”.

    Undigestible carbohydrates (aka “fiber”)

    Humans don’t have the digestive equipment to extract energy from carbohydrates like cellulose, so they just pass through our systems.

    Carbohydrate absorption

    With the exception of resistant starches and fiber, all of the carbohydrates are broken down to glucose, fructose, or galactose by the digestive system before they enter the bloodstream. The rate at which they enter the bloodstream depends upon a number of factors. A refined sugar is more accessible than one that is bound up within fiber in a food, so it is absorbed faster. A sugar that is by itself is more accessible than one that is mixed in with fat and protein. Different sugars have different transport mechanisms to get them from the digestive system into the blood stream and therefore have different rates of absorption.

    But at the bottom, it’s glucose, fructose, or galactose. The sugars that you get from eating an apple aren’t chemically any different from those you get from a can of Coke. The two foods – if you can call a can of coke “food” – differ in the total amount of carbs, the ratios of different types of carbs, the rate at which the carbs are absorbed, and the non-sugar ingredients, but they both end up as simple sugars in your system.

    Complex carbohydrates also aren’t inherently different than simple sugars; they may not taste sweet, but they end up as simple sugars (typically glucose) when they are absorbed.

    Carbohydrate Metabolism

    Metabolism is all about what happens to the nutrient after it gets into our bloodstream. It turns out that the different simple sugars are processed very differently.

    I’m going to start with glucose metabolism.

    Glucose metabolism

    The amount of glucose in our blood – our blood glucose (or blood sugar) level – is one of the most important values for us as living organisms. Too little (aka “hypoglycemia”), and we get hungry, headachy, sleepy, confused, or worse. Too much (aka “hyperglycemia”), and we have other issues; a lot of our body’s systems do not work well with too little or too much blood glucose.

    Our bodies therefore have a system to keep blood sugar constant, and this is a high priority system; it is fair to say that “keep blood glucose within range” is Job One for our regulatory systems.

    Let’s say we ate a small plain bagel or drank a can of Coke. That’s going to send somewhere around 30 grams of glucose into our system. That is over 7 times the amount of glucose we normally have in our bloodstream, so we need a place to put the excess glucose, and biochemical system to pull the glucose out of the blood and put it in that storage place.

    Storing Glucose

    There are two different methods of storing glucose in our bodies.

    We can store it in our liver or our muscles as glycogen, a compound that is very close to glucose chemically. Glycogen is a little like a starch; it’s just a bunch of glucose molecules surrounding a protein known as glycogenin, and it’s quick and easy to get the glucose back out. The storage for glycogen is fairly limited; the muscles can store about 400 grams, and the liver can store about 100 grams, or 500 grams / 2000 calories total. If you have ever “hit the wall” or “bonked” during extended exercise, you’ve experienced what happens when you run out of liver glycogen.

    If your liver and muscle glycogen stores are already full, the excess glucose out of the blood needs to go somewhere else.

    There is only one other place for storing the excess energy that the glucose represents, and that is our fat stores. We tend to think of sugars and fats to be very different things – one is white and crystalline, and the other is oily or greasy – but they are both molecules made from carbon, oxygen, and hydrogen. The liver and fat cells can take in the excess glucose and convert it to fat, which is stored in our fat cells.

    The biochemistry to do this is built on a hormone that we have all heard of, insulin. When blood sugar is high, the pancreas releases insulin, which has 3 main effects our system:

    1. The muscles and liver increase their absorption of glucose to store as glycogen (assuming there is room to store it).
    2. The body turns off fat burning, so that current energy use will help use up glucose.
    3. The fat cells increase their absorption of glucose to store as fat.

    The speed at which glucose can be stored depends on where it is being stored; storing it as glycogen is quick, while storing it as fat is slow. Here’s an interesting chart from a study:

    Image result for insulin resistance glucose levels

    The subjects in this study had slept overnight, which had burned some of the glycogen in their stores. They then gave them one of three breakfasts:

    • A can of Coke
    • A service of instant oatmeal
    • 2 poached eggs.

    Both the Coke and the oatmeal have a lot of carbs, and the eggs have almost none.

    Then, they fed them a *second* breakfast of oatmeal – a lot of carbs – and measured their blood sugar over time.

    What they found was that if the first breakfast was eggs, the second breakfast had little effect on their blood glucose, because all of those carbs went straight back into filling up the glycogen stores. If the first breakfast had carbs, they had mostly refilled the glycogen stores already, and it therefore took quite a while to get the blood sugar back to normal. Which means that much of the second breakfast was stored as fat.

    These charts showed what happened with a healthy person – one that we would call “insulin sensitive”. The blood glucose gets back to normal.

    For some people, that doesn’t happen. There are different theories as to why it doesn’t happen; one is that the glycogen stores just get full, one is that the fat and liver cells can’t do the conversion to fat well, and there are others. Regardless, their glucose-absorbing cells become resistant to the effects of insulin, which we call “insulin resistance”. The first reaction of our bodies is to try harder by using more insulin, but this is an arms race that can eventually lead to problems in insulin production. Many people progress from insulin resistance to type II diabetes and metabolic syndrome.

    I want to stress here that insulin resistance and type II diabetes are about the abilities of our bodies to regulate blood glucose levels, they are not about weight. It is true that people who carry a lot of extra weight are more likely to have blood glucose issues, but there are obese people who have good blood glucose control, and – perhaps more surprisingly – there are thin or normal weight people who have insulin or type II diabetes. They have bodies that are not good at converting excess glucose to fat.

    That is why testing for blood glucose over time is important. Unfortunately, testing for blood glucose every day is intrusive and not something you can use with the general population, so for a long time all that was used was the blood glucose measured at one time, which is not a good predictor.

    Then a weird bit of biochemistry came to the rescue. It turns out that in our red blood cells, the hemoglobin that transports oxygen can become glycated – it can have a glucose molecule attached to it. The chance of that happening depends on the average amount of glucose in the blood; if you have a low average blood glucose, few of your hemoglobin molecules will be glycated, while if you have high average glucose, more will be glycated.

    And, it turns out that when red blood cells die, we can look at the hemoglobin and see how much was glycated, and therefore have a good idea the overall glucose levels, as a weighted average for the past few months. 

    The test to do this generates a value known as HbA1c, or simply A1c, and it’s the prime diagnostic measure for insulin resistance and type II diabetes.

    Low blood glucose

    Thankfully, this is a lot simpler.

    The reaction to low blood glucose is somewhat the opposite to high blood glucose. It is mediated by a hormone released by the pancreas known as glucagon, which has roughly the opposite effects as insulin:

  • The glycogen stored in the liver is converted back into glucose and released into the bloodstream (the glycogen in muscles can only be used locally; it cannot be released back into the bloodstream).
  • The body encourages the release and burning of fatty acids rather than carbohydrates.
  • If that is enough to raise the blood glucose, that everybody is happy. If the low blood glucose continues for longer – say for a few days – the body switches over to an alternate fueling approach known as “ketosis”, which involves the following changes:

  • The liver starts producing what are known as “ketone bodies”, which you can think of a glucose substitute for some of the body tissues; the brain can largely use ketone bodies for fuel, as can some muscles.
  • The muscle switch to burning more fat and less carbohydrate to produce energy. Like any exercise adaptation, this occurs over time.
  • The liver starts producing glucose from whatever it has lying around; it might be glycerol from fat metabolism or excess protein, or both. This is known as “gluconeogenesis”.
  • Together the switch to ketone bodies and the creation of new glucose is enough for the body to function normally without eating carbs. Adapting to this takes a couple of weeks for most individuals, though adapting to burn more fat during exercise takes much longer.

    Ketosis is a response whenever carbs are severely limited, whether it be a fast or a ketogenic diet. Ketosis is not an all-or-nothing response; a person on a relatively low-carb diet might be in ketosis overnight when their carb reserves get low and then switch out of it during the day when carbs are more available.

    And that is the story on glucose.

    Galactose metabolism

    Galactose metabolism is pretty much like glucose metabolism, except a trip to the liver is required to break the galactose molecule apart into two glucose molecules, which are either used by the liver or released into the bloodstream.

    Fructose metabolism

    Our body cannot metabolize fructose directly, so first it has to take a trip to the liver to be converted to something that is more useful.

    It ends up as one of three things:

  • Glucose, which is stored in the liver, converted to fat by the liver, or released into the blood stream.
  • Lactate, which can be used by other tissues
  • Triglycerides (ie fat).
  • There is considerable discussion around what the proportions are between those three products and what controls those proportions.

    Some researchers theorize that in some cases, the triglyceride pathway is especially active and that leads to the accumulation of fat in the liver and a condition known as Non Alcoholic Fatty Liver Disease (NAFLD). My limited understanding says that we don’t have definitive evidence on this, but we do know that alcohol is metabolized into fat in the liver and the accumulation of fat causes alcoholic fatty liver disease, and since fructose can also be metabolized into fat in the liver, it’s an interesting hypothesis.


    That’s all for carbohydrates.

    Upcoming, we have fat and protein to talk about, and probably a discussion around energy partitioning, which is how our bodies decide what fuel to burn.

    DLE (Globes of Fire) Part 3

     The new boards arrived from To recap, this, time I went with standard 0.1” (2.54mm”) header pins between the boards. I ordered some angled headers from the Amazon to use for the connections.


    After I populated 11 faces with LEDs, it was time for assembly. Here’s the first approach:


    The first concept was to wire the faces together with short pieces of header on the back. This worked poorly; it took a long time to hook them up and the angles were rarely right. The first half was technically done, but I was unhappy.

    For the second half – and keeping in mind that prettiness was not a requirement – I decided to go with another approach. I would use angled headers on the outside, and just solder the pins together where they overlapped.

    But first, I needed a better way to set the angle. The led to the following design in TinkerCAD:


    And then a long session of setup to migrate my 3D printer from an absolutely ancient laptop to one that was merely old. I printed up a whole set of these, and then used them to hold the faces at the right angle for soldering. That resulted in this upper ring:


    The alignment clips on the right worked very well; it only took about 30 minutes to do this whole ring. And yes, it’s very ugly.

    Time to hook them together, and then attach on the end face. These are attached with small pieces of header pin on the outside.


    Then it’s time to wire up the 5 volts, ground, and data, and take it out for a spin.

    The first attempt was not successful; one ring lit and the other didn’t. A quick check discovered that the ground connection between the two rings was not functioning, so I added an additional connection. Which led to this:


    The driver is running some simple rainbow code, so each LED is a slightly different color.

    Finally, adding on the requisite acrylic globe gives us the following:

    Globe of fire from Eric Gunnerson on Vimeo.

    Overall, I’m mostly happy. It would be nice if the header holes were a bit tighter on the pins, and I could clearly get by with 2mm or even 1.27mm pins. The 3d-printed alignment clips could use another iteration to make them easier to use.

    DLE (Globes of Fire) Pt 2

    A week or so goes by, and I get a package back from allpcb, so I started building one.

    Each half has a ring of 5 pentagons plus one the end, so I started hooking 5 boards together:


    The WS2812 LEDs are only 5mm on a side, so the whole board is roughly 15mm x 17mm. That’s tiny, and frankly working on it was a huge pain. I did this, put the boards into a box, and closed it.

    Then I came back the next day and decided to have another try. Rather than connect on the outside, I decided to use a much lighter wire and connect on the inside (back) of the boards. Here’s a set of 5 with VCC and GND hooked up:


    Yes, that’s some *ugly* soldering, but in my defense I’d like to note that the spacing on the holes is about 0.05”/1.3mm. This then gets folded into a ring. Eventually, we end up with the top and bottom:


    Next, those two are soldered together with wires to carry VCC and GND between halves, and you end up with this:


    Next was to wire through the data ports. Basically, it starts at one face at the open end, goes around that ring, goes around the lower ring, and finally travels to the bottom. Add in some hot glue to help hold things together, and put the LEDs on, and here’s the result:


    That is one ugly bit of construction, and it took a lot longer than I had hoped.


    After soldering a few hundred WS2812s, you learn how to do it without burning them up. On the left is one face from the 3-LED version that I tested to verify the layout.


    The first version was technically a success, but only because I so cussedly kept on. I was wondering if I could make something small enough to fit in an ornament ball, and the answer is “yes”, but you really don’t want to do it.

    So, it’s practically a failure.

    The biggest problem is the connection between the faces; the holes are too hard to solder, and using individually-cut wires is a pain…

    So, I’m going to abandon the single-LED version (kindof – more on that later) and work on the 3-LED version. I started by going with standard 0.1” (2.54mm) header spacing, and the plan is to use angled headers. The angled headers will stick out to the side, and two faces are connected by soldering the ends of the header pins together. It’s going to look a big weird, but should be a lot easier to construct.

    Here’s the old design and the new one:


    Obviously, the big different is the connectors; they are much larger, though the overall design is only a big bigger. I’ve used the extra space to pull the LEDs a bit farther apart because trying to hand-solder the LEDs in the first version was a difficult. And I added a little bypass jumper; if you solder a wire (or better, a 0805 zero-ohm resistor) across those pads, you can omit the bottom two LEDs and things will work fine.

    If you read backwards, you might see that it says “Dodecahedral Light Engine” on the back, which is the new name for the boards.

    A fully-populated DLE will features 33 LEDs, pull 2 amps @ 5V with everything on white, and put out quite a bit of light.

    I need one more design review pass before I send this one out to have boards made.

    Workshop finishing

    My house is a little weird. The street is the high point of the property, and it slopes away toward the house and into the backyard, so I have a daylight basement in the back.

    I also have a very rare commodity. I have a room underneath my two-car garage. The back half is full height, and then the front slopes up to driveway level.

    The front half has some nice shelves that are used for storage, and the back has some old kitchen cabinets, yard tools, and some junk. The room is uninsulated and has no windows…

    I have an office in the basement where my computer and my electronics workbench is, along with my 3d printer. That works great for those items, but when I bought a Glowforge, I didn’t want to have inside the house because of fumes. So, the logical place was to have it under the garage.

    And since it’s winter, I’ve been freezing my butt off (in Washington state terms) whenever I need to cut things, and the Glowforge does have a lower temp limit.

    So, it’s time to finish the space out. It’s going to get a window in the side wall, Roxul insulation in the walls, and CDX plywood on the walls. It *might* get roxul in the ceiling as well if it’s still too cold, and I’ve also considered a thermal blanket to separate the front section from the back if it turns out I spend a lot of time there.

    Here’s the starting point:






    Chemistry nameplate

    A somewhat belated present for my wife – belated because my Glowforge had to go back to the shop.

    I wanted to do something chemistry-related for her. In the past I’ve bought her a few items like the MadeWithMolecules jewelry, but we all know that gifts that are handmade mean oh so much more.

    So, I came up with a concept; a nameplate for her office with some sort of relevant compound on it, and ideally that compound would wrap over the top of her name.

    The problem is that most organic compounds were either too complex or structurally inconvenient for the layout. I settled on dopamine, which looks like this:

    Image result for dopamine

    Which is fairly simple, except that I wanted to show all the atoms, so it really looks something like this:

    Image result for dopamine model

    I pulled out Visio and started playing around to see if I could get a two-dimensional representation that worked. And I did a bit of searching to find out atomic sizes and expected bond lengths, so that it could be accurate – which is a bit silly given that it pretends that atoms are round balls, but you get the idea.

    Here’s what I ended up with:



    • Green = Oxygen (oxygen cylinders are green)
    • Blue = Hydrogen (because water is blue)
    • Grey = Carbon (it would be black, but the nameplate background is black)
    • Nitrogen = Yellow (because I like yellow and it looks good against black)

    The atomic sizes and bond lengths are as close as I could get them. The bond angles are also mostly right, except for the two carbon/hydrogen bonds at the top; you have to pretend those are a 3-d projection.

    I did a laser test engrave of that on some cheap plexiglass, and that worked okay, so I ordered up some 1/8” cast acrylic for the final version.

    Unfortunately, the acrylic I ordered had plastic film protection rather than paper protection, and that plastic melted into the acrylic when I went to etch it, so the results sucked. About this time, my Glowforge went into permanent “too cold” state, so it had to go back, and then there were the holidays…

    I eventually finished the prototype and gave it to my wife, and we agreed on two things. First, it was a little too small, and second, the saturated blue I used for the hydrogen atoms was too dark. So, here’s the remake of the production version, starting with the acrylic straight off the cutter:


    One of my challenges was figuring out how to paint it; a few tests showed that a brush was too big, and even a toothpick was too big; the bonds next to the tiny hydrogen atoms are *tiny*, and it’s important not to bleed paint from one area to another. I found some acrylic paint bottles, but they still had bit tips.

    Finally, I found these:


    These are syringes and tips that are sold as glue applicators. The tips are known as “Luer Lock” tips, and the twist right into the syringes. And this kit goes all the way to 25 gauge, which is *tiny*.

    So, those showed up while waiting for the Glowforge, and then I had already purchased some acrylic paint from Michael’s:


    If you are using the smallest tips, it’s pretty hard to suck paint up through them, so I used a big tip, pulled some paint into the syringe, and then switched to the smaller tip. It takes very small amounts of paint to do this; I have a lot more than I need here:


    The technique is pretty simple; you put the tip into the corners and then carefully flow the paint into the corners to try to cover all of the walls in the paint, and after that you fill in the recess. I found that it made sense to work from different directions.

    Partway through the name:


    Done with white (the bonds were a bitch, as I expected). This would look better but I didn’t clean the fine gauge tips well enough after the first version, so the ones I wanted to use were plugged.


    Done with paint. Those white spots are specular reflections from the track lights above my workbench


    Dry paint.


    And, finally, after the backing is removed:


    The coloring isn’t perfect; there are some spots where the black shows through, and in this light you can see the texture the laser cutter left. But overall, I think it’s pretty good, and it looks better in real life than in this shot.

    Globes of Fire!

    The parts for the new controller have started trickling in, but until they all show up I’m a stuck there, so I’ve been thinking in other areas.

    In the olden days – pre LED – I had a number of the 50 or 100 light globes in my display:

    See the source image

    I liked them for their intense burst of light, but the ones I had gradually died, and I haven’t found a replacement.

    So… I got thinking again about options. When I built my Animated Snowman, I used WS2182 leds on the faces of 3d-printed dodecahedra. It worked fine, but the hand-cabling was a pain:


    Using the acrylic lamp globes worked great, however. They are cheap, easy to get, and fully waterproof. I just needed a better way to get the LEDs in place.

    One of the nice things about dodecahedra is that the faces are all pentagons. I remember a hack-a-day article a couple of years ago when somebody built one by soldering pc boards together, so I decided to do a design of that what that might look like:


    The concept is that any face can hook to any face. You wire up the ground and VCC connections on all faces to give rigidity to the dodecahedron, and then wire up the DIN and DOUT connections from face to face in whatever pattern makes sense.

    This design gives me 12 LEDs (well probably 11, since the top or bottom one will be used for support) in the space of about an inch, so that would easily work in the small acrylic balls (6”, or 4” if I can get them).

    Of course, why do one LED per face when you can do 3:


    Same concept as before; hook up DIN from another face, it will chain through all three LEDs and then head out through DOUT.

    This board is roughly an inch in size, so the resulting dodecahedron will be around 2” in size. That will give us 33 LEDs and live up to the title of the post, but it may be overkill, which is why I’m going two versions. I’ll drill a hole through the 12th face and use a threaded rod and nuts to mount the DLE (Dodecahedral Light Engine).

    I need to do some design cleanup and then send off for a run of these to see how they work.

    Down 20?

    (Authors Note: This is the fourth time I’ve tried to write something like this, but it kept getting *way* too long and detailed. I’ve kept it simple this time, but that means I’ve left out a lot of details, some of which are surely important. So ask if you have questions…)

    It started with the candy dish…

    Early last spring, due to show reshuffling, my team ended up in the same room as our admin – which was fine – and in the same room as the group candy supply – which was not.

    It was a bit better than my previous team – which maintained what was officially known as “the candy wall” – but the problem was that the candy dish was at the entrance of my room, so was really easy to come back from lunch, grab a few “fun size” pieces, and eat them at my desk. There’s some interesting research in psychology that says that one of the best ways to get adherence is through random rewards, and our candy dish implementation had that; you might not really be hungry for a Reeses ™ peanut butter cup, but if you see one, you better grab it before somebody else does.

    The whole “work food” culture is pretty horrible when you think about it.

    I am lucky enough to have good genetics when it comes to keeping a decent weight, but the extra candy bumped me up from my long-term “fighting” weight of 173 to 178, and I was feeling really tired and crappy in the afternoons. The first did not bode well for the upcoming cycling season, and the second did not bode well in general.

    At the time, I was on a low-fat diet, which is the kind of diet they tell you to be on. And I’d been doing a bunch of reading about glycemic index and glycemic load, and wondered if that was having an effect. Clearly, the candy was high glycemic index, but was there something in my lunches that was contributing to me craving candy?

    So, I started an experiment. Instead of the sandwiches that I ate at lunch 3 days a week (because they were cheap) and the burritos that I ate the other two (because burritos), I switched to salads with meat three days, and burrito bowls without the rice and tortillas the other days (because burritos).

    It was a pretty simple change, but it had a pretty immediate impact; I still habitually wanted candy (because candy), but I didn’t crave it as much, and I could cut down how much I ate. And I felt much better in the afternoons, which was good, but did not convert them to an endless series of rainbows and unicorns (a guy can dream, right?).

    Anyway, that led to a whole lot of research into nutrition, which led to research into biochemistry, watching a few lectures, and reading a lot of clinical research.

    But I started by trying to answer a question that had always confused me:

    Why is it so damn hard for many endurance athletes to lose weight?

    Some of the cyclists I know are very thin and light, but I know others – many that ride a *lot* more miles than I did – who carried maybe 40 pounds more than they would like to. I knew what worked for me – making sure I controlled my blood sugar well after long rides – but that still required a fair bit of discipline to get me to light, and I never got to “cycling light” – that weight where your cycling friends are annoyed at how little you weigh. That was true of most cyclists I knew. My trust power meter said that I was easily burning 4000 calories per week.

    Why wasn’t all of that exercise translating to weight loss?

    Looking at the clinical studies about exercise and weight loss, we see mixed results. Aerobic exercise works in controlled situations – where the amount of food is controlled – but doesn’t work well where people choose what they eat. There are two hypotheses for what is going on; the simple one is that people are hungry and just eat the calories back; the more troubling (and luckily, probably rarer) one is that exercise under caloric restriction can reduce the base metabolic rate for some people.

    To lose weight, eat fewer calories or burn more

    This has been the mantra for weight control for over 40 years, and it’s what I used to believe. It’s simple to understand, but  doesn’t work very well in practice.

    The problem is that it considers all calories to be the same. But when we are talking about body weight, we don’t want to lose weight, what we really want to do is to lose *fat*. So, let’s recast the statement:

    To lose weight, live in a way that minimizes the amount of energy that is put into your fat stores, and maximizes the amount of energy that is pulled out of your fat stores.

    So, I started looking more closely at how fat accumulation works in humans – what drives calories into fat stores, and what pulls calories out of fat stores.

    I originally had a long and technical discussion on what controls energy partitioning – where the energy to run your body comes from – but I am unable to make such a discussion brief, so here’s the simplified version:

    1. The amount of fat you burn during day to day living is tied directly to the percentage of carbs that you eat. Eat a lot of carbs, burn a little fat; eat a few carbs, burn a lot of fat.

    2. The amount of fat you burn during exercise is tied both to the kind of diet you eat and your energy state when you exercise.

    The key point is that both of these are adaptable behavior; our bodies can adapt (mostly) to different mixes.

    The result of this is that two riders of equal fitness can go on the same ride, both burn 1000 calories, and burn *vastly* different amounts of fat. If you want to look at some pretty graphs that illustrate this, go read this article and this article from

    Back to the experiment…

    Back in real life, I expanded my experiment a bit. My breakfast went from a big-ole bowl of cereal with a lot of milk to a small bowl with minimal milk and a hard-boiled egg. My dinners lost a few of their carbs.

    And I was down about 5 pounds, back to the weight that I wanted, with just some small changes.

    At this point, I really didn’t have many carbs in my base diet – and they were increasingly low-GI carbs – but I was still using Skratch on my rides, and I was still using Endurox after my rides; following my traditional fueling strategy.


    I forgot to mention another motivation that got me playing around with diet. My on-bike fueling strategy did not work very well. Thankfully, I rarely got the “GI distress” that some people do, but on longer rides I know that I’m going to get some stomach pain from the skratch, and I’m going to have energy issues. That makes rides like RAMROD a bit of a crap shoot; at best I felt sort of blah, but generally I felt a few rungs below blah.  

    The next experiment was obvious: I put the Skratch in the back of the cupboard, and started filling my bottles with water. I put some cheez-its (carbs + fat + protein) in ziploc in my pocket, added a packet of sport beans just in case, and I started riding.

    And that mostly worked. I felt a little under on power, but it was early season and I’m under on power then anyway. I sometimes supplemented a bit with the aforementioned cheez-its in the middle of the ride.

    About this point, I weighed myself, and the scale said 169. I checked another scale to be sure. I hadn’t been this light in 20 years, not even in 2005 when I rode *way* more miles I ride these days. And I was eating what I thought was a lot of food.


    Somewhere in here, I came across a post by noted cycling coach Joe Friel in which he talked about how he got back down to his “racing weight”, which aligned well with the research I had been doing, the biochemistry I learned, and my experimental results.

    And I thought, “What the hell, let’s see where this thing ends up…”


    I own a copy of “food for fitness”, and a copy of “the feedzone cookbook”. I’ve read all the recommended diets for athletes, and they all recommend a diet high in complex carbs – something like 60 or 65% of calories.

    I decided to go full keto, and see what happened. That means <50grams of carbs per day (though I never actually counted), quite a bit of protein, and more fat. Since I had eased myself into a lower carb diet, the transition was pretty easy (this is not the case for a lot of people), and about a week later, I headed out on Saturday morning for a nice 45 mile ride.

    The first 45 minutes was great; I felt strong, had good power. And then it happened; over the space of about 15 minutes, I ran out of carbs.

    If you’ve bonked, you know what this is like, but this time it was different. I actually felt okay, my brain was fairly clear. I just lost all ability to put power down. You know the Tour de France rides where the guy’s bike breaks and he picks it up and throws it into the bushes? I was close to that. I cut the ride short, could barely push 150 watts the rest of the way home, and regrouped.

    After talking with a few people and doing some more research, I realized that while I was pretty fat adapted for regular life, I was not fully adapted for cycling. So, I kept at it. I did Tour de Blast (6000+ feet of up over 80 miles), felt good at some points and awful at others, bad enough I had my wife pick me up at 70 miles. But the overall trend was positive; I could do my Tue/Thu night rides (35 miles, 2000’ of up) *easily* on just water and feel good at the end. And my high-end power was just fine; one night I out-sprinted one of our race-team guys and did over 1000 watts for about 9 seconds, which is pretty decent for me. The only point of concern I have is the high aerobic range; I don’t think I quite have the pep I used to have there, but give that I made this change right at the beginning of the season (stupid) and didn’t do the kind of high-intensity training I would usually do (lazy), I don’t know how much is a dietary effect and how much is just a lack of training.

    And then finally, near the end of the summer, I did my own supremely stupid ride, Sufferin’ Summits. 9500’ of climbing over 55 miles.

    I did it fasted, and over the 5 hours it took (did I say it was hilly?), I had two servings of a really cool time-release glucose called SuperStarch – about 280 calories total, a bottle of diet coke, and about 14 cheez-its. After dragging myself up the worst hills I know of in the area, I finished the ride.

    And I could have kept going. Honestly, I felt pretty good.

    During the weeks before the ride, my weight continued to drop, and finally the numbers clicked over to 158, which is pretty much where I am right now. I lost two inches off my waist (34 –> 32, my college size), and I lost a ton of subcutaneous fat.  I have a tiny bit of fat remaining around my waist, and I think this spring I might see if I can drop down to 153-155 or so. From what I can tell I *mostly* preserved muscle mass, but since cyclists tend to have the upper bodies of 80-year-old French grandmothers, I have been spending a bit of time in the weight room.

    So that’s the story. Down an honest 20 pounds over 4 months.


    I went as far as I could – heresy, right? – to see what would happen, but there are a lot of variants of low carb. Some athletes do less strict diet variants like Paleo, Primal, or slow carb. Many aim for a higher level of carbs; something like 100 grams per day. A few are very strict on carbs during training but carefully use gels and other simple sugars during events. Some do a complex cyclic protocol. Some do it as a weight reduction approach during the off season and switch back to a moderate carb diet during the bulk of the season.

    There are a lot of options, which is good, because there isn’t a lot of research in this area yet (and I’m not sure who would pay for research; certainly not the exercise drink folks).

    As I said at the beginning, if you have questions, please ask me.

    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.