Mundane ‘aha!’ moments, mistakes, and mental models

A while back, I bought some LED pendants that I put on my dogs when I send them our into the yard at night to do their business. The pendants help me see where they are and when they show up at the back door.

The pendants are really simple: an LED, a 5-pin IC (no markings), a cap and a resistor, and a CR2032 battery all on a simple PCB. Between the battery and the PCB there is some metal that makes a contact when you press the battery.

Being the dunce that I am, I was amazed that with one clicker the pendant could switch from fast blink to slow blink to steady light to off.

Ba-bam!
Then the other night it hit me. What the pendant was probably doing was doing a reset on a chip and the chip knew to cycle between the modes, going into deep sleep when LED was off.

Duh.

Not to be outdone, I wrote up a simple sketch that would do this, fired up my ATtiny programmer, and made my ATtiny45 (and 85) change modes of an LED every time I grounded the RESET, saving the state of the blinking in the EEPROM, going into sleep when the LED was off.

And just now, while writing this up, with this realization in mind, I broke open the pendant again and used my multimeter to find the VCC (pin 2), GND (pin 3), I/O (pin 4), and RST (pin 5) [pin numbering counter-clockwise from upper left in the, seemingly SOT23-5, IC in image to right]**. And with a jumper, I was able to ground the RST pin and cycle through the LED modes.

Mundane leveling up
Ok. I should have thought of this method the first time I opened up the pendant a few months ago and saw the metal clip that was acting as the button. For some reason I was stuck on ‘button’ and thought the cleverness was there.

But really, I don’t think I was ready to think the right way when I first opened the pendant. Something accreted in my mind in the intervening time that allowed me to know have this ‘aha!’ moment.

Also, I am proud of the skills I have gained* to quickly write it up and prove it out.

What I like of these little ‘aha!’ moments is that they push you into another plane of thinking, a new mental model, such that you now think differently from before the ‘aha.’

I suppose experience doesn’t give you the answer as to how to solve a problem, only more ways to think of how the problem can be solved. Before, I was limited, later on, I was not. And not only could I think of the process, but replicate it myself.

An aside on mistakes
I see a lot of newbies being afraid of mistakes. Though they relax when they learn from folks with much more skillz that mistakes happen to all.

For me, mistakes are a learning moment. The mistake teaches you the boundaries of the possible better than blindly following directions can. Through mistakes you can get more ‘aha’s than if you followed the instructions and did everything as you should. The ‘aha’s are important for the growth and expansion of your mental models.

And these mistakes can help you discover things you wouldn’t if you stayed on the path. History is crowded with mistakes that led to ‘aha’ that led to amazing things.

Lean into your mistakes. Better yet, try to make mistakes more regularly.

My wife, who loves to ski, always says, “If you’re not falling, you’re not trying hard enough.”

*It’s been one year since I set out to build my work demo that led to an exploration of electronics. I’m surprised by how much I learned in this time and what I’ve been able to do. Of course, looking forward to the second year.

**No markings means that I’ll have no way of finding what this chip is.