AVRProjectIDE - Editor for AVR/Arduino Projects

I’ve written a development environment for AVR microcontrollers that is geared towards AVRStudio and Arduino users. I have just posted the first alpha and I’m looking for the first batch of users to use it, test it out and give me feedback.

Here’s some teaser screenshots so you’ll actually go to my link and try it out

http://frank.circleofcurrent.com/pics/a … editor.png

http://frank.circleofcurrent.com/pics/a … wizard.png

http://frank.circleofcurrent.com/pics/a … config.png

Distiguishing Features

  • Scintilla editor, with configurable syntax highlighting and indentation preferences

  • Docking subwindows and tabs, with workspace preference saved upon exit and reloaded at startup

  • Backs up open files with modifications in configurable time intervals

  • Supports the building of C, C++, and Arduino projects using WinAVR

  • Quickly configure AVRDUDE and burn your project right from the editor

  • Customizable project templates, apply as much or as little settings as you want

  • Customize your help menu with bookmarks which you can edit through an XML file, even launch your own applications

Compatibility Features

  • Import and export .aps files used by AVRStudio

  • Generates makefiles, or run your own makefile

  • Build process automatically detects Arduino code and builds that code in a way identical to how Arduino actually builds its code

AVRStudio Related Improvements

  • Uses AVRDUDE so you can use non-official programmers from within the editor

  • Configuration manager is very familiar

Arduino Related Improvements

  • Serial port terminal that supports escape sequences and displays non-printable characters

  • More project configurability

  • Apply an Arduino template to quickly choose your Arduino flavor, the chip will be choosen, clock speed set accordingly, and AVRDUDE will be set to use the bootloader.

Interested? Get it here:

http://code.google.com/p/avr-project-ide/

good work

A feature I used extensively in other IDEs, missing in AVRstudio, is, in the editor, “go to definition of”. This takes the token (symbol, function) at the cursor location and jumps the editor to the source module/line where that token is defined.

Big time saver.

Hard to implement.

ah, yea I love how visual studio does that, that, and intellisense is what i will try to implement later, i need to use regular expressions to hunt down function definitions on another thread

in order to build arduino sketches, i already have that function-finding going on to construct function prototypes, so it won’t be hard since i already have the code, i’m just worried that it might make it too sluggish (it will involve searching through non-open files too). i’ll try it out later, this one will take a while to make smooth

I use IAR a lot - and it does that.

Will there be a version for Linux/UNIX also? I have it installed on Windows Vista now and it looks good so far. There needs to be a way to select font and size for the editor. :slight_smile: I’d really like to get away from using the standard Arduino environment.

8-Dale

sorry, this program is build on .NET , you can try running it with mono or wine though

you can adjust font size i think, read this

http://code.google.com/p/avr-project-id … zationHelp

The latest featured alpha version has working intelligent autocomplete. it is variable scope aware, it also checks which files you’ve #included so it gets all the functions and keywords from there too. each keyword in the autocomplete has a icon with the color indicating where the keyword came from (C, CPP, Arduino, AVR Libc module, or user defined) and a shape indicating what it is (type, function, statement, variable, etc)

it’s as close to intellisense as i can get to at the moment without basically writing a C compiler of my own.

http://frank.circleofcurrent.com/pics/a … mplete.png

please try it out for me :slight_smile: get it here

http://code.google.com/p/avr-project-ide/

Any interest on collaborating on an Arduino editor for MacOSX? I could probably have a good portion of the UI whipped up in a day but would need help with the Arduino editor specific stuff (understanding the .pde binary format, understanding what pre-compile steps are taken by the Arduino editor, etc.)

that sounds cool, what are your plans so far?

there are a few magic tricks you need to do perform to compile arduino sketches. this will sound insane

you need to first get all the function prototypes in all of your .pde files, the only way to do this is first strip out all comments, then collapse all of the functions, and then grab the prototype with a regular expression

also search the file for #include so you know which libraries to compile

now you have a list of prototypes, you then use several regular expressions to find the first non-comment and non-preprocessor statement, and insert all prototypes after that point, you do this for each .pde file

then you join all of the .pde files together, stick #include “WProgram.h” on top, and the main function on the bottom, also stick #line 1 “filename” at the start of each .pde file so errors from the compiler can be parsed correctly

compile the file you just stuck together with avr-g++, compile the arduino core files and the libraries you found, the “utility” folder inside each library folder should be treated as though the utility folder is in the same directory as all the other library files.

once you have all of your .o files from the sketch, the core, and the library, use avr-ar to make an archive .a file, and then link all the .o files together with the .a file with avr-gcc, this outputs the .elf file

use avr-objcopy to output a .hex file from the .elf file

upload the .hex file to the arduino using the stk500v1 programmer protocol with the right baud rate and port, also include the -F option, this is how the bootloader works

Just saw your project and liked it (not a big fan of the Arduino IDE but it works so I won’t complain).

Thanks for all of the great data! Another project to stuff away into the “I’ll get to it” file. :wink:

Thanks!

Greg

Hi

I am creating a visual studio addin called ‘visual micro’ that is arduino board.txt, serial port and intellisense aware.

Nothing clever, it just provides an easy way of adding/removing links to cores and maintains a set of make files so that you can build and compile easily.

The visual micro system also allows arduino libraries to be easily added to projects and maintains the links required for complete visual studio intellisense.

The design ensures sketch compatibility with arduino so you easily switch between the two IDE’s. The product has a number of other useful features that makes developing arduino much faster (you can read more on http://www.visualmicro.com)

The free version will be released later this month. I’m looking for willing beta testers and will gladly consider additional requests.

The visual micro add-in has a small foot print, doesn’t alter any visual studio core settings, is easily installed and uninstalled. Designed to work on Visual Studio 2005, 2008, 2010 (check your software licence for your version of visual studio)

If you don’t mind breaking your arduino warranty there are compile and upload options. All these options are provided without warranty! we use it :slight_smile:

Please let me know if you would like to beta test, or just keep a look out on http://www.visualmicro.com

Or if you have any questions mailto://info@visualmicro.com

Thanks