Basic suggestions for IDE usability improvements

More modern IDEs include the capability to set breakpoints, run from start to the first breakpoint encountered, run from the current breakpoint to the next breakpoint, "single step" through a program (or, if you prefer, "sketch"), examine the contents of variables (and let the user specify variables to display at every breakpoint), and even modify those contents.

Well, that all works great for debugging a program running on the same machine as the debugger. In the case of the Arduino, the code is NOT running on the PC, and there is no debugger for the Arduino. No keyboard (or output device), either.

there is no debugger for the Arduino.

The AVR lacks some of the "standard" debugging capabilities of many CPUs (ie "single step mode"), and Atmel doesn't document the debugging protocols that the chip does support. :frowning:

The AVR lacks some of the "standard" debugging capabilities of many CPUs (ie "single step mode"), and Atmel doesn't document the debugging protocols that the chip does support. :frowning:

just found this doc - http://winavr.sourceforge.net/AVR-GDB_and_AVaRICE_Guide.pdf -

Yes, and it requires the Atmel JTAGICE to talk to AVR chip. :frowning:
(but it's better than nothing.)

Possibility to copy&paste data in the terminal window.

Using hyperterminal or putty instead of the arduino one it's possible to copy/past data. Their connections need to be opened/closed manually every time a small piece of code has changed/needs to be uploaded though.

Arduinos terminal has a great advantage since it automatically closes when uploading. One click also opens it again, it takes good care of the double function of the serial port. But unfortunately it has no copy&paste. :frowning:

CrossRoads:
My laptop doesn't have a middle button.
I just use CTRL-C & CTRL-V to copy & paste. Haven't gotten used to right-click this & right-click that.

Often it's possible to use those when the right-click menu doesn't come up. It is possible in the serial monitor and in the black part of the ide.

regards,
Jeroen

Create HEX y sketch folder?

The AVR lacks some of the "standard" debugging capabilities of many CPUs (ie "single step mode"), and Atmel doesn't document the debugging protocols that the chip does support. :frowning:

Some successfull retro engennering is on the way for undocumented debugWire protocol :
http://ruemohr.org/docs/debugwire.html

PaulS:
Well, that all works great for debugging a program running on the same machine as the debugger. In the case of the Arduino, the code is NOT running on the PC, and there is no debugger for the Arduino. No keyboard (or output device), either.

Say arduino has a keyboard and a monitor, how would you be able to debug on it at a level higher than assembly? I don't know how arduino can maintain a variable list since its code is compiled and it knows no source code. Just my thinking. I don't know enough about a debugger though.

I used turbo C and TASM in DOS. You get decent debug tools. You can display variable values (don't remember if it tracks changes or not).

Just curious, if you get a hardware debugger like dragon, what do you get to do? Pause execution and peek at every memory and register? I'm thinking about getting one but then my programming skill improved a bit, just enough to not freeze arduino.