Congratulations, you have just finished assembling your electronics project. After checking for obvious problems you apply power and… it didn’t do what you wanted. They almost never work on the first try, and thus we step into the world of electronics debugging with Daniel Samarin as our guide at Hackaday Superconference 2019. The newly published talk video embedded below.
Beginners venturing just beyond blinking LEDs and premade kits would benefit the most from information here, but there are tidbits useful for more experienced veterans as well. The emphasis is on understanding what is actually happening inside the circuit, which explains the title of the talk: Debugging Electronics: You Can’t Handle the Ground Truth! So we can compare observed behavior against designed intent. Without an accurate understanding, any attempted fix is doomed to failure.
To be come really good at this, you need to embrace the tools that are often found on a well stocked electronics bench. Daniel dives into the tricks of the trade that transcend printf and blinking LED to form a plan to approach any debugging task.
Because the flow of electrons are invisible to the eye, understanding our circuit requires measurement tools of the electronics trade. Such equipment can get quite expensive, but Daniel points to several tools with good “bang for the buck” where a modest investment can give us substantial insight. We rarely need the top of the line specialized instruments. A humble multimeter can take us a long way! It’s less about the tools we use, and more about how we use them in a rigorous and disciplined manner. It doesn’t matter if it’s a basic meter or the latest augmented reality helper hotness, the foundations are the same.
It’s no surprise that DMM and oscilloscope are the first two recommended tools but he goes on to recommend having a thermal sensor — you can use your finger but infrared thermal guns and thermal cameras are going to be much more useful. Checking to see if anything’s getting too — or hotter than it should be — is on the front lines of troubleshooting when bringing up a new board design. Daniel’s list of must-have tools is rounded out with current sensors and logic analyzers.
Don’t forget to double-check your tools; is that bench supply full of noise? Is it actually putting out the right voltage? Are your Oscilloscope probes damaged? Debugging your own test bench is as important as debugging the board you’re working on.
Isolating the problem is key. If you cannot reproduce the issue, you can’t solve the problem. A big part of this is taking good notes along the way so that you don’t waste time going over and over the same portion of the design trying to figure out what you did that caused the failure. Notes make patterns appear that won’t if you’re doing everything from memory.
We can poke and prod at mechanical issues to understand problems, and software development offer debuggers for internal insight at our fingertips. The tools of electronics debugging may be different, the symptoms may be more opaque to discovery, but the fundamentals apply everywhere.