Coding4Fun Blog

Visual Studio 2008/2010 and Arduino? Yep!


While I don't usually highlight Arduino related projects, since there's often little Microsoft relation, I saw this and knew I had to post on it... I mean how much more Microsoft can you get! Smiley

A complete Arduino development system for Visual Studio 2008 and 2010

Arduino for Visual Studio is a small addin for Visual Studio that provides full featured Arduino Development. Developers no longer need to use the Arduino Ide. We can code and upload to any Arduino microprocessor using Visual Studio.

Arduino for Visual Studio is based on the operational procedures of the Arduino IDE and follows the rules applied by the Processing IDE for Arduino. This allows the user to load a standard Arduino sketch into the Visual Studio environment without having to make changes to the sketch or .PDE files.

Arduino for Visual Studio is the most comprehensive and easy to use build environment for Arduino to date and is designed for users who already understand how to use the Arduino IDE. Download Now




The new version is a complete rewrite offering at least the same functionality offered by the Arduino development tool. The final work is to ensure that we are also Arduino1 compatible which includes support for the new Arduino file extensions.

We now use standard visual studio commands such as F5 build and upload, double click “go to” error, simpler setup .The intellisense is complete and the compile/upload works fully. We can even burn new boot loaders. Support for single or multiple solutions containing single or multiple sketches is included as standard. There is also a new api allowing arduino plug-ins to be created for other development systems.

After installation you will see two new tools bars. A "Serial Ports" tool bar and an "Arduino Boards" tool bar. These bars are permanent until you uninstall the add-in. This means that you can show/hide them as required and that you can also Customise the "width" of the Arduino boards list. Try setting its width to 300px (or less) which is the length of the longest arduino board description. The same commands are duplicated on the "Tools>Arduino" menu should you decide not to use the bars.

Most Arduino options are repeated within the Visual Studio menus and tool bars in the same way that standard Visual Studio commands are repeated. For example the "Build" option is on the Visual Studio "Project" menu and on the "Build" tool bar. The "Add New Arduino Code" is on the Project menu and on the "Add New" button of the "Standard" Visual Studio tool bar.

The Tools>Arduino menu contains options that are always available inside Visual Studio such as Burn Bootloader. The "File>Open>Arduino Project" is also always available. Many other options become available when an Arduino project is active.


Arduino Visual Studio User Interface Images




How much? Free! All you need is a version of VS that allows addins (i.e. not Express) and you're just a download away from developing your Arduino project in Visual Studio...

The Discussion

  • basmenthack​er

    this is so cool! thanks for all your work on this I love working with Micro .NET but this just adds to the fun with microcontrollers 

  • Visual_Micro

    Great post thanks. Tips...

    1) The addin also provides a useful feature for people who develop arduino libraries and /or board cores. The "Project" menu has an option called "Show All Arduino Files". The option toggles all c/cpp/h sources of active libraries and core in/out of the Visual Studio Solution/Project Explorer.

    This allows these normally hidden sources to be available inside the object browser and to be viewed/edited/navigated.

    2) The Arduino compiler in Visual Studio is optimized using source file date/time stamps. This makes the Visual Studio compile much faster than using the Arduino IDE.

    Very useful for large projects and works well with point 1) above, ensuring a fast intelligent compilation of just the sources that have been modified.

  • Algorithum

    So wait,  Visual studio Express cannot have extensions?

  • gduncan411

    @Algorithum: Not any provided by third parties, no. Only Microsoft can provide extensions for the free VS Express SKU's.

  • Visual_Micro

    but if you are thinking of doing any professional web development you can get Visual Studio 2010 Professional free for 3 years

  • Spongman

    If you're prepared to forego the arduino libs and use the native Atmel SDK, you can use AVR Studio 5 which includes a simulator/debugger and is built on VS2010 shell (doesn't require VS2010 license). You have to use avrdude yourself to squirt the compiled results to the arduino, but it works a charm. Just get a copy of the relevant datasheet and you're off...

  • gduncan411

    @piersh: Funny you should recommend that as I've already got a post about that in the queue... Smiley

    It's a few weeks out yet, but maybe that will need to change... Tongue Out

  • Visual_Micro

    I'm not sure how useful the debug is for arduino chips because the correct fuses are not set on the arduino programming port. Avr studio isn't aware of arduino libraries or boards so there will be a lot of hunting for information and config for each project. Compile of arduino sketches that contain multiple .pde files isn't straight forward and avr studio will not cater for this. 

    If anyone would like to extend avr studio 5 to include arduino functionality then you can use the api from the visual micro system. Please contact info[at] is you would like to create an arduino avr studio 5 extension

  • Visual_Micro

    New Release Arduino 1.0 for Visual Studio. The latest version is compatible with the new Arduino 1.0 IDE and also with earier Arduino versions. The version also contains a number of useful updates including, for example, enhanced serial tools.

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.