Microsoft Visual Studio - 100% Arduino Compatibility. Producers vs Hackers!

The Arduino plugin for Microsoft Visual Studio provides 100% compatibility with the Arduino IDE, is very easy to install, very solid and reliable to use and is designed for both new Arduino users and experts. This plugin removes all of the complexities of using a professional development tool, it makes Arduino development very easy!

This thread will be used to make a number of exciting new feature announcements over the coming weeks. You can read reviews from all types of users on the web, a collection of reviews from our forum members can be found here

A short summary of some distinguishing features is shown below, many features are currently unique to this plugin:-

  • Simple install, just enter the location to an arduino.exe
  • Supports ALL Arduino projects
  • Switch Arduino board without configuration changes
  • Supports multiple pde/ino (arduino sources) files per sketch (same as the Arduino IDE)
  • Compiles projects that contains multiple pde/ino sources in the correct order
  • Immediate and automatic update of intellisense at all times. (eg: add library, switch board, add method to .pde/cpp etc..)
  • Ultra fast compilation. The Arduino IDE has started to adopt some of our speed improvment ideas. Cool!
  • Provides double click drill down from compiler errors into all source code (multiple .pde/ino, libraries)
  • Compiles exactly the same way as the Arduino IDE. Ensures projects adhere to the same rules as the Arduino IDE.
  • Full help and examples system (more than the Arduino IDE)
  • Supports additional non-arduino cores (same as the Arduino IDE)
  • Additional option to clone an Arduino example or open a single example source code
  • Automatically provides examples for all libraries (where available)
  • Optionally toggle visibility of Arduino libraries in each project (for easy edit and/or learning)
  • Automatic project creation and detection of Arduino sketch files
  • Automatic validation of sketch projects each time they are opened
  • Multiple Arduino projects per solution
  • Supports both usb and programmer (isp) upload
  • Option for a unique and fully integrated breakpoint debugger. No additional hardware required.
  • Well documented with a professional forum. Please join

The plugin works only with Microsoft Visual Studio Professional and above which can be obtained free for 3 years from here

The unique debugger option is currently being beta tested by approx. 250 users. Join our forum and request a free copy!

The plugin is free and works with Visual Studio 2008,2010 and 2012. Visual Studio 2012 is recommended because it opens very quickly, it opens faster than the Arduino IDE!

Automate Your IDE - Single Click Arduino Commands

Making the IDE work better for you by adding your own quick access Arduino tool bars, buttons, menus and shortcut keys to automate the various Arduino IDE functions can be a lot of fun.

The Visual Studio Plugin automatically provides every Arduino command, serial port, board and programmer as standard Macros that can be used to customize or automate the IDE.

An example might be adding a button that burns a bootloader or uploads using a certain ISP/Serial port to a particular Arduino Board. Any single Arduino command or combination of commands can be assigned to buttons, menus and keys

Hodel has long create my IDE, but there was no time ...
Standard IDE terribly slow, the brakes increased in proportion to the number of COM ports on the system.

Visual Studio 2012 is installed on Windows 8 opens as a notepad even a Tablet PC.

Many thanks for the plug-in to the studio.
Compiling the sketch several times quicker. Adjusted tool bar with the right buttons for me everyday use. IDE from arduino.cc died for me probably forever.

same thing i have done with visual studio 2010 in windos Xp.
i am able to compile all code and all library expect usb2.0 which developed by oleg it show me too much error.

and all error come due to undefined variables. in my opinion it happens because it did not get header file but it happens only usb library.

and most horrible thing is if i am trying to compile ADB library then it working fine. so as of now i dont know what i have to do any suggestion how could i compile usb library?

This is USB library link

Hello, thank you for the good information

It compiles correctly for me (see below). Which example are you trying to compile?

Are you using arduino 1.0.1?

Does your project compile correctly in the arduino ide without error?

Thanks

I have found something interesting with this library if you use Verbose/Warnings settings.

This library causes 100's of warnings like the ones shown below. So many warnings cause it to take a few minutes to compile but it does compile okay.

If you have switched on "Verbose" or "Warnings" in the options I suggest that you switch them OFF again...

Tools>Options>Visual Micro>Compiler>Verbose = False
Tools>Options>Visual Micro>Compiler>Warnings = False

The example I tested, it does compile correctly. BUT, it produces so many warnings it looks like a bad error. but is not :slight_smile:

message.h : Warning: only initialized variables can be placed into program memory area
message.h : Warning: only initialized variables can be placed into program memory area
parsetools.h : pBuf will be initialized after nStage
parsetools.h : arLenCntdn will be initialized after arLen
confdescparser.h : : In member function 'void ConfigDescParser<CLASS_ID, SUBCLASS_ID, PROTOCOL_ID, MASK>::PrintHidDescriptor(const USB_HID_DESCRIPTOR*)':
confdescparser.h : Warning: only initialized variables can be placed into program memory area
confdescparser.h : Warning: only initialized variables can be placed into program memory area
confdescparser.h : Warning: only initialized variables can be placed into program memory area
..
..
..
Compile OK

NB: You will see the same output in the Arduino IDE if you switch on "ArduinoIDE>File>Preferences>Verbose". So this library is best used without these settings in both Visual Studio and the Arduino IDE

Thanks for replay,

same example i am trying. that is blink_led.

No i am using Arduino 1.0.0 IDE

Yes my project compiles correctly in Arduino IDE

And also i getting error not warnings.

Tools>Options>Visual Micro>Compiler>Verbose = False
Tools>Options>Visual Micro>Compiler>Warnings = False
This is by default in my system i never changed even i also tried to make true but nothing special for me

if i am using Arduino 1.0.1 IDE then it's working for me

OK, I'm curious. Could this be made to work using the pieces of Visual Studio that are installed when you put "Atmel Studio" on your computer?

@ambuj.

Are you saying that Visual Studio compiles this project correctly for you with the Arduino 1.0.1 IDE?

There was a problem with Arduino 1.0.0 and Visual Studio?

Thanks

@westfw Good question.

I have made as much of this plugin (all the arduino stuff) a separate api and have ensured that all the Arduino/Project settings are not tied to any Visual Studio settings. So actually it could work with any IDE in the future.

Although Atmel Studio lacks a lot of the nice features of normal Visual Studio systems it isn't that far away in terms of what it might do for us. Much of the user interface provided by the plugin would probably work "as is" with Atmel Studio it might only be the areas that modify VS CPP properties (to detect Arduino sources and set board properties) that would need to change. This is an easy change because VS 2008 and VS 2010 use different CPP systems so the code is already conditional in this area. However with the proper support from Atmel we could really tap this stuff into their IDE and integrate it fully.

The problem is that Atmel are not a proactive company and their developer support is poor. I only have a few questions for them and have approached them a number of times. Each time I have been promised that developer support is planned for some future time. Not very helpful! I am sure I could work it out by myself but time is the limiting factor.

If anyone would like to help with the understanding of the Atmel side of things I would be more than happy to give it a go sooner rather than later.

So far, this project has cost a lot of time and money which makes it difficult to justify the addtional time for Atmel studio right now. For obvious reasons there is no support for this project from Arduino or Microsoft :slight_smile: This is why the new Arduino debugger tool is not going to be free (but is free and in beta at the moment). I hope the revenue from the debugger funds the time and provides the motivation to make this plugin work with Atmel Studio.

@Visual Micro,

Are you saying that Visual Studio compiles this project correctly for you with the Arduino 1.0.1 IDE?

There was a problem with Arduino 1.0.0 and Visual Studio?

yes it's happens with me it strange but true
may be i m doing some thing wrong with it.. :stuck_out_tongue:

May be i am not sure
But in opinion it has because when i tried to work with(Arduino 1.0.1) then i just change the path for new Arduino version and it work perfectly i dont know what is going on with it.

And the bed thing is when i try to compile any other library to visual studio 2010 with Arduino 1.0.0 so it's work perfectly but for USB library it not working
when i complies with arduino 1.0.1 this time every single library working fine.

Second bed thing for me this is first time when i m using visual studio so if you have any tutorial for debugging then it's good for me.

Hi, we have small language communication problems :slight_smile:

  1. Usb Lib

I will try the library on arduino 1.0 but I think you are happy using 1.0.1? Everything works okay for you?

  1. Debugger

Please "Register" on visualmicro.com. When you register include a request to join the debugger beta team. You will then be given more instructions for the debugger.

The are many documents on visualmicro.com about the debugger, there is a small wiki and also this overview

Debugger on YouTube

After the beta program ends, only registered beta testers will be given a free debugger license

Reminder, the team testing the new Arduino debugging tool has grown to 400+ users. If you would like to join the team and receive a free license for this tool then sign up for the forum on http://www.visualmicro.com and include a request to join the debugger beta team.

The free Visual Studio plugin is the only 100% compatible plugin for Arduino. After installing Microsoft Visual Studio Professional you will have compiled your first Arduino sketch in under 10 minutes.

Compiles any Arduino sketch at the click of a button. Allows you to see what your Arduino is doing and why, discover what hardware is connected to your Arduino using I2c, Digital and Analog graphical displays. Includes hundreds of other features such as Arduino memory free memory and runtime memory usage reporting.

Includes support for Teensy and other non-arduino cores.

Visual Studio Professional can be obtained free for over 3 years. Read more here

I've tried to set mpide-0023 as the arduino path with no luck.
Is there a chance to enhance it to chipkit as well?

Hi,

I hope to implement chipkit at the same time as arduino 1.5 and Teensy.

The Arduino work is planned for when I get my hands on a Due. Unfortunately after many requests to Arduino.cc they have failed to provide a Due, for which I was happy to pay. I have now ordered one from a distributor which is expected in about 30 days.

Maybe you can help clear up my confusion with ChipKit. Is a new version of the ChipKit IDE going to be released soon? I have had no response to this question chipKIT32/chipKIT-core · Discussions · GitHub.

Did I put the question in the wrong place? I would rather do the work once not twice.

Register for news and a free Arduino Debugger by joining the visual micro forum

Read more and download now

The free Arduino plugin for Visual Studio has become very popular especially since the release of the Arduino Debugger. Our beta team has grown to approx 600 people, the forum has grown to 1000 members.

The next release of the plugin is planned for Jan 2013, join the forum to receive an early version.

Below are a few new features...

  1. Arduino 1.5

The current Arduino 1.5 Ide does not have backward compatibility with older sketchbook folder hardware and is therefore a difficult upgrade for many.

The next release of the Visual Studio plugin includes intelligent support for both Arduino 1.0.x and Arduino 1.5 hardware. This makes it easier for users of older custom board formats to program using an Arduino 1.5 compatible Ide. Older hardware configurations such as ATTiny will work in the same Ide as an Arduino Due without the need for configuration changes.

  1. Arduino Debugger Gets Even Better!

The offer for a free Arduino Debugger is still available. Beta testers are automatically issued with a free Arduino debugger license. The current debugger is being used by new and experienced Arduino users. The January release will see some useful additions to the debugger such as Performance Reporting.

Summary

Users of Arduino for Visual Studio Professional say that the plugin makes Arduino programming simpler and improves productivity by a huge factor. Read more here

Many of our users have taken the free Microsoft Offer for Visual Studio Professional. This offer gives you VS Pro for 3 years no string attached!

Here's a big shoutout to Visual Micro, this product needs more attention. It is a great way to bridge the gap between C++ developers that use Visual Studio, AVR developers that use Atmel Studio and of course the hobbist community that uses the Arduino IDE.