jdolinay / avr_debug

Source level debugger for Arduino - GDB stub for Atmega328 microcontroller used in Arduino Uno.
GNU Lesser General Public License v3.0
142 stars 33 forks source link

Source level debugger for Arduino

Created by Jan Dolinay, June 2015
Works for Arduino Uno, Nano, Pro Mini (ATmega328), Arduino Mega, as well as for AtMega1284(P).

ARDUINO LIBRARY NOTE

To use this debugger as Arduino library, go to the arduino/library sub-folder. The avr-debugger is the Arduino library which you can copy to your Arduino libraries folders to use it. For more information please read the readme.txt file in arduino/library/avr-debugger.

Introduction

This is debugger for Arduino based on GNU Debugger (GDB). The debugger is implemented using GDB stub mechanism. This means a piece of code (stub) is added to your Arduino program. This code then communicates with the GDB debugger. No external programmer or modification of the Arduino board is required. Eclipse can be used as a graphical frontend for debugging. For more information and tutorial please see the manual in /doc directory.

Revision History

March 2022

April 2021 (thanks to Bernhard Nebel, https://github.com/felias-fogg/avr_debug)

April 2021 (thanks to Bernhard Nebel, https://github.com/felias-fogg/avr_debug)

March 2021

July 2020

May 2020

July 2019

June 2019

July 2018

January 2018

June 2017

January 2017

June 2015

Contents of this package:

Tool Description
avr8-stub source code of the debug driver (gdb stub for ATmega328 used in Arduino Uno)
arduino arduino library and some other code.
doc documentation with tutorials.
examples example projects which can be imported into your eclipse workspace. See documentation for instructions on use.
hub4com-2.1.0.0-386 hub2com tcp-serial proxy from http://sourceforge.net/p/com0com/news/2012/06/hub4com-v2100-released
start_proxy.bat convenience script to start the com2tcp proxy.

Notes

You can also start the tcp-serial proxy directly from command line:

com2tcp.bat --baud 115200 \\.\COM1 11000

(The example command assumes Arduino on port COM1; GDB connecting to localhost at port 11000).

License

This is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.