"Please can we have a debugger!!!"

Tried to reply to the title post but was unable due to it being antiquated. So, adding my 2 cents with a new post:

I too would like very much to have a useable debugger with the Arduino products. I have just migrated from PicAxe and note that even that platform has one. I also find "debugging by Serial.print" to be cumbersome and annoying.

Anyhow, I have downloaded the Arduino Pro IDE but was disappointed to find its debug capability does not include the Arduino Uno (which is all I have now). I did note however from the previous post that the Arduino Zero is supported in some capacity at least. I have tried looking around for further info but have not been very successful, at least in finding something that an amateur might be able to make use of. BTW, the Zero is listed on Amazon as being not available with no indication if it will be in future - I don't know if that means anything in particular as to the future of that item.

In any case, could anyone kindly direct me to a good source of information on how well the Zero debug works and how best to set it up (and something a non-expert could understand)? Or maybe other alternatives?

TIA for any assistance....

You can use the Arduino Pro IDE's debugger with any of the Arduino SAMD boards. The Zero is especially convenient because it has a built-in debugger. With the other SAMD boards, you'll need to attach a separate CMSIS-DAP compatible debugger probe to the board. The Black Magic probe is a popular option. I use this low cost, open source option: https://www.tindie.com/products/ataradov/cmsis-dap-compliant-swd-debugger/

When it comes to attaching the debugger probe to the non-Zero SAMD boards, the MKR 1000 is very convenient because it has the standard 2x5 SWD header right on top of the board, so you only need to plug your debugger in and you're ready to go! On the other official SAMD boards, there are pads on the bottom of the board that expose the SWD interface, so you'll need to make the connections to those pads in some manner. The pads on the MKR boards are for a 2x3 0.1" SMD pin header. Those headers are readily accessible and easy to solder and adding one to the board will make it easier to make the connections to the SWD pins.

As for the support in the Pro IDE, this is still in the alpha development phase, so you can probably expect to encounter some occasional bugs in the Pro IDE itself, but this project is under active development so a bug today might be fixed by the time the next nightly build is released.

I'm not very experienced with hardware debugging. From my previous experiences trying to use GDB with AVR, I was expecting this to be difficult to accomplish even with the Arduino Pro IDE. I gave it a try when the debugging functionality was first added to the Pro IDE and was pleasantly surprised how easy it was to get started debugging. But I only did a basic "hello world" type of sketch and haven't found the time to go much beyond that. I'm looking forward to trying it out again and seeing the advancements that have been made since that time.

So I'm not the best person to provide guidance, but if you get the necessary hardware and run into any problems, feel free to post here and I'm sure we'll be able to get you started.

Thanks very much Pert for the useful info. I think the Zero would be the way to go for me and I now note it is available from the Arduino US store.

As for the usefulness of a debugger, I can't imagine doing any sort of serious (or even hobby) programming without one. Way back in the day, I programmed DEC PDP-8 computers in assembler for oil field automation projects and still remember how pleasantly surprised to find out how much easier life was with a debugging capability (no extra hardware was required for the PDP-8s, just a little more RAM for the debug s/w). Maybe it's different for a compiler situation(?).

I hope the same can be made available at some point for the lesser Arduinos such as the UNO but maybe RAM size and/or other hardware limitations preclude it.

If anyone on the forum has actually used the Zero with the Pro IDE, I would also appreciate knowing how it worked out for them...

My suggestion is to add pins to the debug connector of the SAMD21 boards. It's always a unnecessary hassle to solder the black magic probe to the arduino. It would be so easy.

Second: Please connect the I2S pins on the MKR1500 like you did an the MKR1400!

intstarep: It would be so easy.

It's not so easy to do this for the MKR boards because it would make then no longer breadboard-friendly. But they could surely add it as an option. And I don't think it's possible at all on the Nano 33 IoT because those are test points, not any usable header footprint.

It may be easier to add a short flying lead with a standard header if you really want the JTAG capability yet retain breadboard compatibility.