Tag: dw-link

SNAP: Debugging for the Masses

Microchip recently lowered the price for its hardware debugger SNAP from more than €50 to less than €20 €10. I have recently created the Python script dw-gdbserver for this and other hardware debuggers so that you can now use SNAP in the Arduino IDE 2 to debug classic ATtinys and small ATmegas. All in all, this is an affordable and care-free debugging solution for classic AVRs.

Continue reading

Debugging 2.0

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.

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

Surprise, Surprise!

When you develop a tool for a protocol that is undocumented, it is not surprising that you will encounter situations you will not have be anticipated. This was exactly what I experienced developing the hardware debugger dw-link, which connects debugWIRE MCUs to the GDB debugger. Although a substantial part of the debugWIRE protocol has been reverse-engineered, I encountered plenty of surprising situations: Split personality MCUs, stuck-at-one bits in program counters, secret I/O addresses, half-legal opcodes, and more.

Continue reading

Copyright © 2026 Arduino Craft Corner

Theme by Anders NorenUp ↑