The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

Author: Ed

  • Bicycle Tire Liner Abrasion

    The front tire (a Primo Comet blackwall) on Mary’s Tour Easy was flat when we rolled out of the garage a few days ago. While a flat isn’t pleasant at any time, it’s much nicer to find one at home, before the ride, rather than out on the road!

    I figured the tire ate something sharp that managed to work its way through the tire liner and into the tube; that’s rare, but it sometimes happens. These two pix of the tread show why we use tire liners: sidewall-to-sidewall nicks, cuts, gouges, and gashes, despite the fact that the herringbone tread has plenty of life left in it. Click the pix to enlarge, if you dare…

    Tire cuts 1
    Tire cuts 1

    And another section; it’s like this all the way around the tire. I think this one is the better part of a year old, so it has maybe 2000 miles on it. It handled 200+ miles along the Pine Creek Gorge rail-trail this past summer, which was sharp crushed gravel, but most of the cuts came from roadside debris on our ordinary utility rides around home.

    Tire cuts 2
    Tire cuts 2

    As it turned out, the tire liner had prevented all those punctures from reaching the tube, while killing the tube all by itself. The sharp edge where the the two ends of the liner overlap had worried its way through the tube.

    Abrasion from tire liner
    Abrasion from tire liner

    The tire liner wasn’t a genuine fluorescent green Slime strip, but some translucent brown thing. The difference: Slime liners are thinner and don’t have nearly this much abrasive power.

    Alas, I didn’t have a Slime liner in my stash (remedied with the most recent bike parts order), so I put the brown liner back in with a few layers of genuine Scotch electrical tape to build the end up a bit. There’s really no good way to feather the end without making it into a ragged knife edge.

    New tire and tube, of course. I’m not that crazy!

    With any luck, the liner and tape will behave for another few years, until the tire wears out, and then I’ll replace everything. Other than this event, flats aren’t a big part of our riding experience.

  • Failed Switch

    Switch Innards
    Switch Innards

    When I flipped this switch on, it started fizzing and emitting ozone-scented smoke while the lights it controlled flickered. This is not a nominal outcome. I toggled the switch a few times, but it continued to misbehave, so I installed a replacement switch and laid the old one out on the desk for an autopsy.

    It’s an old-school mechanism, as suits the 1930-vintage structure it came from. The lyre-shaped arch with the spring swings back and forth on its tabs, which rest in the small recesses near the middle of the switch body. The peg on the toggle handle engages the spring, thus providing the over-center snap action.

    The switch action takes place at the bottom of the arch, where those two very small tabs stick out. They wipe on the grubby-looking bottom tabs of the oddly shaped flat-brass doodads, the U-shaped ends of which surround the screws that clamp the copper wire to the switch.

    I expected to find a scorched contact or perhaps an insect in the mechanism, but nothing seemed out of the ordinary. Apart, that is, from the layer of congealed grease covering everything inside. I suspect the grease was applied in the factory to help prevent contact corrosion, but the volatiles are long gone.

    Switch Contacts
    Switch Contacts

    A closeup of the switch contacts shows (what I think is) the problem.

    All the contact points are covered in grease, but the lyre-shaped gizmo looks like it’s been painted: its contact points were black and resisted cleaning by fingernail scraping.

    As nearly as I can tell, all the current passed through a very few high spots that were wiped somewhat clean as the contacts closed. As those spots heated up, the grease melted and flowed over them, increasing the resistance and the heat.

    The switch had been working for many decades, as the BX armored cable in the box had fabric-covered rubber (stiff rubber) insulation. I managed to install the replacement switch without breaking the insulation, but it was ugly in there.

  • What’s Inside This Box?

    Digital Media Player box
    Digital Media Player box

    Got a package from halfway around the world that, I thought, corresponded to a recent eBay order. Opened the envelope and pulled out a box containing … a Digital Media Player?

    That’s odd. I don’t recall ordering one of those.

    At this point, anybody who’s read Frank Herbert’s The White Plague should get the chills. Do you or don’t you open a mysterious package from far away that seems to offer something interesting?

    Pandora might have something to say, too.

    Digital Media Player box - contents
    Digital Media Player box – contents

    Well, open it I did, and found exactly what I’d ordered: a stash of female headers pins. Of course, one can’t tell what else might have come in the package, but so it goes.

    Now I can hand Eks half a lifetime supply of the strips to replace the ones I mooched.

    One other mildly surprising part of the package: it seems we’ve gotten to the point where magnetic closures are cheap enough to replace everything else, including intricate origami tucks. There’s a small steel plate pasted under the flap. Who knew?

    Digital Media Player box - magnetic closure
    Digital Media Player box – magnetic closure
  • A Christmas Season Poem

    Twas the Night…
    By Mary Nisley

    ‘Twas the night before September, when outside the house
    Many creatures were stirring, not just a mouse;
    The garden was fenced all ‘round with care,
    In hopes that deer would never come there;
    My daughter was nestled all snug in her bed,
    While replays of band practice ran through her head;
    My husband was sleeping, and hoped for much more,
    As I settled down for a short summer snore.
    When out in the yard there arose such a clatter,
    I sprang from the bed to see what was the matter.
    Away to the window I flew like a flash,
    But saw nothing on the deck; what was that crash?
    Then off to the kitchen to flip on the lights,
    To better reveal the outermost sights.
    When, what to my wondering eyes should appear,
    But an eight pointed buck: a powerful male deer!
    His head, it was lowered; his mouth, it was red,
    He looked mean and angry, a monster to dread.
    When he moved I saw a most terrible sight,
    His antler was tangled in the fence very tight.
    I ran for my husband, to wake him from sleep,
    He groggily blinked, then from the bed he did leap.
    We dashed to the doorway, but the buck, he was gone,
    One glimpse of my motion made him quite strong.
    We surveyed the garden with the help of a light,
    What destruction was done before the buck’s flight?
    Alas! My poor garden, damage lay all around,
    Two heavy steel fence posts he’d bent to the ground.
    The ruin was total in two veggie beds:
    Stalks twisted and broken, big leaves lay in shreds.
    We pushed the posts upright, unsnarled all the net,
    As we patched the fence up, we felt it was wet.
    Shining flashlight on hands revealed blood on our fingers,
    But it was not ours: could deer blood still linger?
    Sunshine the next morning revealed all of the damage,
    Plus an antler tip broken in the buck’s desperate rampage.
    The rabbits and woodchuck say “Thanks Mr. Buck!
    You’ve opened the garden, it’s our great luck!
    We’re feasting on beet greens, parsley and chard,
    To fatten for winter is no longer hard.”
    We wish you happy holidays, filled with warmth and good cheer,
    And may your next growing season have gardens without deer.

    Folks: I couldn’t make this one up; that is exactly what happened. I believe the buck was grazing on fallen apples from my neighbor’s tree when, in the dark, his antlers tangled in my fence netting. They were velvety, still soft and growing, so when he broke a tip trying to escape, there was blood all over. At 2:00AM I was outside, stringing up twine and drenching it with deer repellent, hoping to keep the rest of his herd from testing my jury-rigged fence.

    Acknowledgments: Thanks to Clement Clarke Moore and his “The Night Before Christmas” for the shape of this poem and for my lines 9-11. His words fit the situation so well that I couldn’t resist using them.

    Ed says: It’s Christmas: we can take the day off from tech, right?

  • Failed LED

    Dead LED
    Dead LED

    Doesn’t look like much, does it? It’s an ordinary blue LED that I used for the upper colon dot in a clock. Worked fine for a few dozen power-on hours, then it turned off a bit after 6:00 pm one day. Back on an hour later, more or less, then off again by the next morning, back on again, off again.

    Might be a software error, as each colon LED is a separate TLC5916 display driver output. Might be a soldering problem, as my board doesn’t have plated-through holes. Might be (shudder) a burned-out transistor inside the TLC5916.

    When it’s off, VCC appears on both sides, within a few tens of millivolts.

    Resoldered the joints, after which it worked for a while. When it’s on, voltage measurements look normal: about 3.5 V drop across the diode and 1.5 V across the driver transistor.

    No obvious code problems, but, then, code problems are never obvious.

    Finally the thing stopped working for a few hours. I unsoldered it and there’s no continuity: it failed open. Peering deeply inside with a microscope shows nothing unusual: the flying gold wires look OK, the bonds look flat, and the chip has no burn marks.

    Just a bad LED, I suppose. It’s surplus, of course, but that doesn’t mean much these days; there’s a lot of surplus going around.

    Soldered in a replacement from the same batch and it’s all good.

    So far, anyway.

  • Whirlpool Refrigerator Shelf: Drawer Slide Repair

    Refrigerator shelf bracket - inside
    Refrigerator shelf bracket – inside

    The bottom glass shelf in our Whirlpool refrigerator (the “Crisper Cover”) rests on an elaborate plastic structure that includes slides for the two Crisper drawers. Perhaps we store far more veggies than they anticipated, we’re rough on our toys, or the drawer slides came out a whole lot weaker than the designers expected. I’m betting on the latter, but whatever the cause, the two outside slides broke some years ago.

    I don’t know what function the rectangular hole above the flattened part of the slide might serve, but it acted as a stress raiser that fractured the column toward the front. With that end broken loose, another crack propagated toward the rear, so the entire front end of the slide drooped when the drawer slid forward.

    The minimum FRU (Field Replacement Unit) is the entire plastic shelf assembly, a giant plastic thing that fills the entire bottom of the refrigerator. You could, of course, buy a whole new shelf assembly, perhaps from www.appliancepartspros.com, but it’s no longer available. Back when it was, I recall it being something on the far side of $100, which made what you see here look downright attractive.

    My first attempt at a repair was an aluminum bracket epoxied to the outside of the slide, filling the rectangular opening with JB Industro-Weld epoxy to encourage things to stay put. The plastic cannot be solvent-bonded with anything in my armory, so I depended on epoxy’s griptivity to lock the aluminum into the shelf. That worked for maybe five years for the right side (shown above) and is still working fine on the left side.

    Refrigerator shelf bracket - bottom
    Refrigerator shelf bracket – bottom

    The right-side bracket eventually broke loose, so I did what I should have done in the first place: screw the bracket to the shelf. Alas, my original bracket remained firmly bonded to the bottom part of the shelf and secured to the block of epoxy in the rectangular hole. Remember, the broken piece didn’t completely separate from the shelf.

    So I cut another angle bracket to fit around the first, drilled holes in the shelf, transfer-punched the bracket, and match-drilled the holes. Some short(ened) stainless-steel screws and nuts held the new bracket in place and a few dabs of epoxy putty filled the gaps to make everything rigid.

    That’s been working for the last few years. The refrigerator is going on 16 years with only one major repair (a jammed-open defrost switch), so I’ll call it good enough.

  • TLC5916 Configuration Code Setting

    TLC5916 Writing Config Code
    TLC5916 Writing Config Code

    The TLC5916 data sheet clearly shows that you write the configuration code (which controls the LED current) by shifting seven bits in, then raising LE during the 8th SCK pulse while simultaneously shifting the 8th bit.

    That makes no sense whatsoever: you couldn’t use standard SPI hardware in a chained configuration, because you’d have to blip LE while shifting.

    In fact, the chip doesn’t work that way. You set the config code in Special Mode just like you set the LED driver bits in Normal Mode: shift ’em all in, then blip LE to latch ’em into the parallel holding register.

    Here’s the code to make it happen…

    DisableSPI();                               // manual SPI control
    
     digitalWrite(PIN_DISABLE_DISPLAY,HIGH);    // initial condition
     digitalWrite(PIN_LATCH_DO,LOW);
    
     PulsePin(PIN_SCK);                         // 1
     digitalWrite(PIN_DISABLE_DISPLAY,LOW);
     PulsePin(PIN_SCK);                         // 2
     digitalWrite(PIN_DISABLE_DISPLAY,HIGH);
     PulsePin(PIN_SCK);                         // 3
     digitalWrite(PIN_LATCH_DO,HIGH);           //   sets Special Mode
     PulsePin(PIN_SCK);                         // 4
     digitalWrite(PIN_LATCH_DO,LOW);
     PulsePin(PIN_SCK);                         // 5
    
    //-- Send brightness level
    
     EnableSPI();                               // turn on SPI hardware
    
     SendRecSPI(Brightness);
     SendRecSPI(Brightness);
     SendRecSPI(Brightness);
     SendRecSPI(Brightness);
     SendRecSPI(Brightness);
    
     PulsePin(PIN_LATCH_DO);                    // latch new shift reg contents into drivers
    
    //-- put LED drivers back in Normal Mode
    
     DisableSPI();
    
     digitalWrite(PIN_DISABLE_DISPLAY,HIGH);     // initial condition
     digitalWrite(PIN_LATCH_DO,LOW);
    
     PulsePin(PIN_SCK);                          // 1
     digitalWrite(PIN_DISABLE_DISPLAY,LOW);
     PulsePin(PIN_SCK);                          // 2
     digitalWrite(PIN_DISABLE_DISPLAY,HIGH);
     PulsePin(PIN_SCK);                          // 3
     digitalWrite(PIN_LATCH_DO,LOW);             //   sets Normal Mode
     PulsePin(PIN_SCK);                          // 4
     digitalWrite(PIN_LATCH_DO,LOW);
     PulsePin(PIN_SCK);                          // 5
    
     digitalWrite(PIN_DISABLE_DISPLAY,LOW);      // turn the LEDs on again
    

    The SendRecSPI() function does exactly what you’d expect:

    byte SendRecSPI(byte Dbyte) {                // send one byte, get another in exchange
    
     SPDR = Dbyte;                      // assume it's OK to send a new byte
    
     while (! (SPSR & (1 << SPIF))) {   // wait for shift to finish
      continue;
     }
    
     return SPDR;                       // SPIF will be cleared
    }
    

    I don’t know. Maybe the chip also works the way they show in the datasheet, but I doubt it’s worth finding out.