Ran across this file recently in the Program Files directory. Along with this little bit of code from a file called of all things Arduino Debug Basic. What are these for and how do I use them?


#include "Arduino_DebugUtils.h"

void setup() {

int i = 0;

void loop() {
Debug.print(DBG_INFO, "i = %d", i);

arduino_debug.exe outputs debug information about the Arduino IDE. You use it when the Arduino IDE is not working correctly. It is also the best executable to use when you are using the Arduino IDE's command line interface.

It has absolutely nothing to do with debugging your Arduino sketch.

Along with this little bit of code from a file called of all things Arduino Debug Basic

That is an example sketch for the Arduino_DebugUtils library. It is completely unrelated to arduino_debug.exe This library provides some utilities for adding debug output to your Arduino sketch (most often via Serial to the Serial Monitor, but you can use it with any standardized communication interface). You can find more information about this library in its readme:

You can install the Arduino_DebugUtils library by following these instructions:

  • (In the Arduino IDE) Sketch > Include Library > Manage Libraries
  • Wait for the download to finish.
  • In the "Filter your search..." field, type "Arduino_DebugUtils".
  • Press Enter.
  • From the search results, click on "Arduino_DebugUtils by Arduino".
  • Click the "Install" button.
  • Wait for the installation to finish.
  • Click the "Close" button.

If you're interested in "ICE" hardware debugging, the alpha-stage Arduino Pro IDE provides this functionality, though it's currently only supported by Arduino SAMD Boards platform (e.g., MKR1000, MKR Zero, MKR WiFi 1010, Nano 33 IoT), and requires you to connect a CMSIS-DAP debugger to the Arduino board.