Skip to content
Go to file


  • This project will allow you to set a breakpoint in your sketch and step through it
  • Proper wiring to each device is supported and expected in some cases
  • Actual Arduino libraries such as Keypad.cpp are used wherever possible.

Supported Projects/Components

Project FilesComponentsDescription
LEDSwitch.txtLED, Momentary Depress SwitchLED goes on when switch is pressed
Blinky.txtLEDLED goes on/off automatically
Digit3.txt3 Digit 7 segment display, Momentary Depress Switch7 segment display updates when momentary depress switch presed
Keypad.txt4x4 matrix keypadSerial output updates upon key press
KeypadDisplay.txt4x4 matrix keypad, LCD DisplayLCD display updates upon key press
LCDDisplay.txtLCDDisplay, Momentary Depress SwitchLCD display updates when switch is pressed
SevenSeg.txt7 segment display of single digit7 segment digit increments upon switch press
RotaryDip.txtRotary Dip switchSerial output updates when one of 3 rotary dip switches are changed
ShiftRegister.txt74HC595 Shift Register, LED, Momentary Depress SwitchLEDs connected to shift register update when switch is pressed
Multiplexer.txt4051 MultiplexerWhen switch is depressed multiplexer chooses other input

Free CPP Compiler:
The free cpp compiler that was used to build this project can be downloaded from

Build/Run instructions:

  • Download and install above cpp dev compiler
  • Download from this github repository
  • Unzip the contents of to C:\ArduinoDebugger
  • Open C:\ArduinoDebugger\ in cpp dev
  • Execute, Rebuild All from cpp compiler (F12)
  • Execute, Compile and Run from cpp compiler (F11)
  • Ignore Serial Monitor, and select Project, Open Project
  • Select an existing project (like SevenSeg.txt)
  • This will change a source file called: sketch.ino, so you must close the program and rebuild all (F12) and Run(F11) again
  • Again select the same existing poject (like SevenSeg.txt) this time the sketh.ino will not change
  • The graphical interface should now behave like expected, and breakpoints can be set in the cpp dev environment to step through the arduino code

Online videos that demonstrate usage:

Last Tested 7/6/2018 on Windows OS: Windows 10

Last Tested with Arduino libraries from version 1.0.2


I have recently discovered TDD which dictates that
all code changes be preceded by a test case enhancement. While I don't have that many test-cases, I do have a suite of
projects which are loaded and tested before every release.

Design Notes

  • SimUtilities Class
    Contains utilities to list all connections and set a value on the connection
  • Pull-up Resistor
    • pinMode (pinNumber,INPUT);
    • digitalWrite (pinNumber,1); // Set pull-up resistor
    • Will have constValue.value = 1, and constValue.resistance = 20000


Arduino Debugger/Simulator



No releases published


No packages published
You can’t perform that action at this time.