First I want to say that I love Arduino and I think its IDE offers a great starting point for beginners.
Recently, I tried to make the leap to AVR Studio. It has been a long time since I did full C development so it took awhile to get back in the swing of things. I downloaded the beta of AVR Studio 5 and realized its in Visual Studio Isolated Shell. Since I work at a place that writes VS extensions everyday I through together a quick proof of concept of how we could put Arduino menus into Visual Studio.
I'm not suggesting we replace the IDE, but was interested to see what people think of building a Avr studio extension that runs off a local copy of the arduino software. That way you could develop with as many bits of arduino as you desired!
What Visual Studio 2010 is needed? I have VS2010 C++ Express, and I have no choices like "Visual Studio Package" available. I can't afford Visual Studio Pro.
If it wont work for express thats ok. Just limits peoples contribution. Actually, depending on how its done the Visual studio installer can load dynamic dll's compiled in C++ or C#. So a boot loader could be built with full Visual Studio and it would simply load the real plugin.
What we are talking about is an AVR Studio plugin. Downloading the SDK will not get you plugin. All I have is instructions on how to build the first Hello World plugin. I was just seeing if there was interest in connecting AVR Studio 5 to arduino so that people can use a more powerful editor but still got all the snazzy cool stuff that arduino has.
I seldom use the IDE because, well I'm sure you know. I use an editor and makefile or if I go native Studio 4.
I think AS5 will be good when it's stable and I would be interested in using it for Arduino. I currently use VS08, don't know if that's a problem or not.
how we could put Arduino menus into Visual Studio.
How's that work on Macs and Linux systems ?
I think that it's incredibly important that Ardunio makes microcontroller programing accessible to non-windows users.
(and I'm very disappointed that Atmel took such a path with AS5, given that many other vendors are switching to IDEs that ARE explicitly multi-platform (Eclipse, Netbeans)
It won't. It would not be a replacement for the Arduino IDE but just read the same config files etc and produce the same results. I've already started looking at the Java code.
As far as I see the .pde files are straight .c or .cpp and if you rename it, the work is done.
But this isn't the main point. Much more important is
what does the boot loader and how to integrate its functionality in AVR Studio?
Certainly you (or we) need another piece of hardware that communicates via the JTAG interface.
what is initiated in the Arduino before void setup{} is run
To get all of this done, I advice to make a project and involve somebody else.
There is main() defined off in the arduino core that calls init functions before setup().
The bootloader is not directly involved in any arduino functionality. If you have a real device programmer, you can skip learning anything at all about the bootloader. Otherwise, the bootloader implements a stripped-down implementation of the stk500 (version 1) upload protocol. Avr Studio should also support this (but I'm not sure that it will work with the "reduced" version that is optiboot.)
You can see an example of how to use Arduino from AVS 4 in this link http://download.lpmagazine.org/es/2010/Linux_06_2010_ES.pdf on pages 20-23. It is written in Spanish, but perrhaps you could be able to decode the most important information.
The paper also show how you can tranfer your code almost without any modification between both systems. So you can use the IDE that you prefer or need in any moment a simple and fast Arduino IDE or a more deep and heavy AVS 4.
I recently started with c and i really liked AVR Studio for it's editor's auto complete function witch helps alot
'cause i'm new in c.
I also liked the debugger and the ability to monitor the 328p output and input ports in debugging.
So when i made Blink in c i wanted to upload the .hex file to arduino using it's boot-loader.
I used NG Coders. Great Job!!
i followed the instructions and got it working! it preserves the bootloader in flash so my arduino
is still compatible with the IDE.
Next step was to be able to upload the .hex file created in AVR Studio 5 from within it's enviroment.
Well... AVR Studio 5 has an option in the tools menu to add external tools..hehee....
so i did add an external tool named Arduino Uno Upload.
in the Command field i added avrdude located in the ArduinoUploader directory
in the Arguments field i added :