Tag: debugging

Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.

(Brian W. Kernighan)

This quote is very much to the point, in particular, when one starts to create overly complex implementations. Keep it simple, stupid!

Debugging(4): Stub it out!

How can you use a stub in order to squash your software bugs? This blog post shows how to arrive in 7 easy steps at a working debugging solution using a gdb-stub for some 8-bit AVR MCUs. The only additional hardware you need is an ISP programmer in order to burn a new bootloader (well, if you are satisfied with a very slow-running program, you do not even need this).

Continue reading

Debugging(3): Debugging is Like Being the Detective in a Crime Movie Where You are Also the Murderer

One has to add to the title (quoted from a tweet by Filipe Fortes) that the detective suffers from memory loss. Otherwise, the case could be solved easily. Similarly, with debugging: If I only knew what nasty things I have hidden in the source code, I could just remove them – but I simply do not know. In this blog post, we will have a look at what kind of tools one could use to find the skeletons hidden in the closet.

Continue reading

Debugging(2): It’s the Hardware, Stupid!

When something goes south, it is not always the programmer who is to blame. It could also be the hardware (resp. the electrical engineer) that might be responsible. Note, however, when you are developing your system as a hobbyist, you are both: the electrical engineer and the programmer (so you always can blame yourself). In this blog post, we will take a look at some of the things that can go wrong on the hardware side.

Continue reading

Debugging(1): What Kind of Bug is This?

Be honest: When did you last time designed a system that worked right from the start and did not need any corrections? Right, that was probably a long time ago – or never. People usually spend a lot of time in identifying and correcting errors, colloquially called bugs. In this blog post, I will give you an overview of different forms of bugs and what you can do about them.

Continue reading

Copyright © 2026 Arduino Craft Corner

Theme by Anders NorenUp ↑