Tag: Arduino Uno

Debugging 2.0

The featured image of this blog post is based on vector graphics by captainvector at 123RF.

What keeps people from using a debugger? Well, it is mostly that one has initial costs in terms of setting up the debugging environment and of learning how to use the debugging tool. Hopefully, the next iteration of my hardware debugging tool dw-link, which is able to debug classic ATtinys and ATmegaX8s, will somewhat ease that burden, in particular, because you can buy the accompanying hardware now at Tindie.

I sell on Tindie

Continue reading

Calibrating Your AVR MCU

The featured picture is by OpenClipart-Vectors on Pixabay.

In building one’s own MCU board, one often does not use a crystal or resonator. Instead, the internal RC-oscillator is employed, which can be quite inaccurate. Similarly, if one wants to use the internal reference voltage to measure the supply voltage, it turns out that the reference voltage can deviate from its nominal value quite a lot. Both, the RC-oscillator and the internal reference voltage can be calibrated, though. In this blog post, I describe a simple method to calibrate both using only a UNO board and a multimeter employing the avrCalibrate library.

Continue reading

dw-link: A New Hardware Debugger for ATtinys and Small ATmegas

As mentioned in an earlier blog post this year, hardware debuggers are the premier class of embedded debugging tools. However, until today, there were only very few relatively expensive tools around supporting the debugWIRE interface that is used by the classic ATtinys and a few ATmega MCUs.

The good news is that now you can turn an Arduino UNO, Nano, or Pro Mini into a debugWIRE hardware debugger that communicates with avr-gdb, the AVR version of the GNU project debugger.

Continue reading

Debugging a Debugger With Itself

The featured image of this post is is a comic from xkcd.com.

The above xkcd comic, which is titled Debugger, alludes to the concern that when you try to apply a particular method to itself, you might not get what you asked for. Turing’s Halting problem is a very famous example of this, i.e., you cannot algorithmically decide whether an algorithm terminates on an input. So, does that issue apply to debuggers as well? In particular, I asked myself whether it makes sense to debug the hardware debugger I am developing with itself.

Continue reading

Copyright © 2024 Arduino Craft Corner

Theme by Anders NorenUp ↑