Arduino IDE for Microsoft Visual Studio and Atmel Studio

PLEASE NOTE: Upgrading Arduino IDE to 1.6.11 can cause compile errors. In that case open the "Visual Micro Explorer > Board Manager" then click the Rescan button twice. After that there should be no problems. Please report to the forum if you encounter other issues. Version 1609.4.3 + of Visual Micro is required for Arduino 1.6.11+

tips: Blind Arduino Blog | Arduino Blog | | release notes | GDB Debugging (new)Share Code Between Projects | Faster Builds | Extend Intellisense | ESP8266 | Energia and texas Instruments | Atmel Studio 7

Visual Micro is a free fully compatible Arduino programming plugin for Microsoft Visual Studio and Atmel Studio. Visual  Studio and Atmel Studio are also available for free. The 'Pro' version is also free for education in public funded or not-for-profit organizations.

Visual Micro uses the configuration of the Arduino IDE. That means that if your code works in the Arduino IDE then it should automatically work in Visual Micro (without additional configuration). There are also configuration features that surpass the Arduino IDE for advanced users.

Click to see full size image of Arduino programming in Microsoft Visual Studio 2010.


Arduino compatible hardware from a wide range of manufacturers is supported. Visual Micro automatically understands all of the open source cross platform (hardware and library) designs that have been published for Arduino since forever :)

Arduino sketch/project code does not need to change to work in Visual Studio, it remains fully compatible with the Arduino IDE (whichever version you are using)

The Arduino debugger allows breakpoints and trace messages to be sent conditionally or at regular intervals.

New Arduino users are guided to work within the normal Arduino framework, in a similar manner to the Arduino IDE. Advanced Arduino users have a range of options that allow the simple (but restricting) Arduino rules to be broken. The following example demonstrates the IDE in it's simplest form.

The project tool bar for Arduino provides a simple way to new users to insert libraries, add code, build and upload. Advanced users can make use of the standard Visual Studio commands and keyboard short cuts to perform the same tasks.


The Boards List shows install Arduino Boards grouped by Platform. Boards are automatically added to the Recently Used Boards List.

Visual Micro is fully compatible with the features of the Arduino development environment and uses the same libraries, source code and development tools.  The difference lies in Visual Micro's user interface which provides a more professional development environment. 

The plugin also supports all Arduino library formats, all third party Arduino compatible hardware and, for the more advanced user, all programmer combinations.

April 2015 now includes an automatic Board Downloader and Manager 

The Arduino Boards Manager provides a simple way to download and install the source code and tools for new hardware

and a Library Downloader and Manager

The Arduino Library Manager in Visual Studio provides a simple way to download and install new Arduino libraries. New versions of installed libraries will also appear in the Library Manager

IDE features such as:- see/edit library sources, jump to code definition, jump to compiler error, class explorer, intellisense, remembers board and Arduino version per project, code completion and a super fast compiler make learning and programming Arduino faster and easier.

youtube overview. A quick start guide is at the bottom of this page. See us and other development tools on

Oct 2015 - Pro users can create, test and debug Arduino libraries.

Sept 2015 - Break all of the Arduino rules if you want! Override C++ compiler properties. pro users can store code in sub folders. share code with other projects.

Aug 2015 - Support for the @Plot command in the Pro version of Visual Micro. Use the breakpoint 'when hit' property to implement any number of graphs to visualize Arduino variables and/or expressions. Plot related values on the same graph, set colors, labels and caption. The Arduino program code does not need to be edited to use the Visual Micro debugging tools.

other stuff ...

Visual Micro also includes an optional (not free) Arduino software debugger.

The debugger is unique and for the first time enables Arduino developers to monitor a running Arduino by simply clicking the code they want to monitor.

The concept of clicking code and adding break or trace points is common practise. The unique element that Visual Micro provides is to silently add (inject) special (known protocol) Arduino 'Serial' instructions during compilation without altering the developers original source code.

The debugger also listens for the special debug Serial messages and populates the various debugger status windows to reflect what is happening  on the Arduino. When required, for break points that pause and wait, the 'Serial' is also used by the Arduino to listen for the F5 Continue command.

The debugger supports many features found in hardware debug tools such as conditional breakpoints, hit counters and update of variables without need to re-compile. There is also a few features not found in other debug tools such as timed break points and trace points (ie: every x millis). 

The usb debugger is a very quick and useful but does not have some features found in hardware debuggers. For example the Visual Micro debugger can only step between break points where as a hardware debugger can usually step each line of code. note: Changing break or trace point settings requires re-compile and upload to the Arduino

Visual Micro provides many additional features such as compiler error drill down, disassembly view, Arduino help and examples explorer, usb serial debugger and more. The examples explorer makes it easy to work with or view the examples installed with the Arduino IDE and libraries (see below).

Arduino IDE reference and help explorer. Open or copy Arduino examples with just a few mouse clicks

Tips for Arduino variations:-

Atmel Studio 7



Arduino Yun

Energia and texas Instruments

Wiring Ide



Please see the documentation for more information.

For help, assistance and new release notifications please join the free forum

Other Pages