I seem to take on hobbies that do not reward fuzzy thinking. Twenty years of flying, and especially 10 years of instrument flying are one example. Now I’m trying to return to my childhood and learn a little bit about electronics.

Today I learned the hard way that saying “This will look cleaner if I swap power and ground rails and turn the CPU 180°” does not mix well with “I don’t need to re-draw my schematics, I’ll just re-route in my head as I transfer from the breadboard.” Took a bit of debugging before I realized I had swapped output pins. What was worse: I swapped the pins once to account for inverting the CPU, started wiring it up correctly, then snatched defeat from the jaws of victory and swapped them again because I forgot that I had already swapped them in the first place!

Fortunately, the ports are equivalent in hardware, so I could implement a software fix instead of breaking out the desoldering pump.

Also, I hadn’t altered my schematic when I switched n-channel mosfets from TO-220 to TO-92 packages; I had just re-routed the components on the breadboard. Of course, I followed the schematic (modulo switching power and ground as mentioned) when I soldered them in place. That fix did require desoldering, but was trivial; just two resistors off by one trace.

Now, finally, I have an aquarium light that adjusts dynamically and programatically to ambient light, and I can tweak the program until I’m satisfied. ☺


John Pitney June 22, 2014 20:56

Wow! This post hits on 3 hot button issues for me: flying, microcontrollers, and aquaria! Thanks for sharing.

Michael K Johnson June 22, 2014 21:05

+John Pitney pilot or just more generally interested in flying?

The aquarium is my wife’s toy, I just helped out by replacing the old florescent bulb with LED and then was annoyed that it was too bright for comfort and had no timer controls or other adjustments.

First I thought about making it timer-based, then settled on ambient light, and now I have an RTC module for whatever time-based project I cook up next.

Michael K Johnson June 22, 2014 21:42

Reviewing my notes: I find that I redrew a schematic for rotating the CPU, had the output ports wrong on the schematic, started hooking them up correctly, then “corrected” them to follow the incorrect schematic.

Connecting my pulldown resistors to the wrong traces initially was from accidentally following an old schematic that I kept out for comparison purposes; I had drawn it correctly on my revised schematic. Sloppy but less cavalier than I had remembered.

John Pitney June 22, 2014 23:25

I’m just a student pilot and son of a CFI. I haven’t flown in many years, besides commercial, but I’m still an av-nerd.

David Megginson June 23, 2014 05:57

I’d suggest that hand-flying in turbulence, especially with strong up/down-drafts, is an excellent application of fuzzy thinking: your heading and altitude are vague ideals more than actual metrics.

Michael K Johnson June 23, 2014 06:43

+David Megginson Well, when hand-flying approaches in turbulence it takes vigilence to remain within the margins.  But I was thinking of fuzzy as “careless” not “imprecise”. (Not “fuzzy logic”)

Michael K Johnson June 23, 2014 08:23

+John Pitney My father is a pilot, and his father was a pilot as well. Will be interesting to see whether any of my children learn to fly. ☺


Imported from Google+ — content and formatting may not be reliable