AVR Eclipse Plugin 2.0.1 released

Go To Last Post
24 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hello,
---------------------

Update 2007-12-30:
Version 2.0.1 has been released, which fixes the Size tool bug on non-winAVR toolchains. It has some more fixes for the Assembler and some more Options for Assembler and Compiler. See the Release Notes and Changelog for more details.

---------------------

I have released a new version (2.0.0) of the AVR Eclipse Plugin. This plugin integrates the avr-gcc toolchain into the Eclipse IDE. It is a complete rewrite of the previous version 20070813.

See the project homepage for details on how to download and install the plugin via the Eclipse Update Manager. Or go to the sourceforge project page to download this plugin as a zip file.

New features and major changes of version 2.0.0

* Setting of target MCU Type and Clock Frequency (once per build configuration)
* Debug and Release build Configurations
* Application and Static Library build types (static lib not tested yet)
* Builds hex, eep and lss files (user selectable)
* Assembler integrated into toolchain
* A new viewer to show some information about AVR processors
* Basic documentation incl. a small tutorial on how to create a AVR application project

Feedback and bug reports are highly welcome.

brgds

Thomas

Last Edited: Sun. Dec 30, 2007 - 12:34 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The plugin mostly works on Mac OS X. There are some minor issues that I am working around.

First, the path seems borked up. I had two entries for /usr/usr and nothing for /usr/local. I don't know where that path gets set globally but it is a simple fix in the project properties.

Second, the avr-size properties doesn't seem to have any way to change the options. The WinAVR parent item has a 'All Options' field that is not editable and the General item doesn't have 'Options' field that we can edit. The OSXAVR toolchain hasn't been updated in a while and we don't have the new and sexy options yet.

Third, is an avrdude plugin supposed to be included? Google pointed to your SF.net page as a place to get it from but I don't see it as a stand alone and I didn't see it on the update page in Eclipse.

It sounds like I am whining but these are minor issues on an unsupported platform. Excellent work. Thanks.

You can have my mac when you pry my cold dead fingers off of it.

Kevin McEnhill -- mcenhillk@gmail.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi mcenhillk,

thanks for trying the plugin on MacOS X. I was already curious if it would work on OS X at all and "minor issues" sounds encouraging.

First:
The path thing. Yes, /usr/usr was a typo on my side. But anyway this path is currently hardwired in the source for all non-Windows machines which is ugly. I am already working on a more intelligent solution.
BTW, on OS X, where are the following files located?
avr-gcc
avr/io.h
make (if gnu make is not on the system path)

Second:
'All Options' is never editable, it is just showing the command line.
What options do you need from avr-size?
If they could be useful for others then I will include them. Otherwise I will add an "other flags" field to the General page.

Third:
So you noticed that I kind of silently dropped avrdude support :-))
But this is only temporary. I will add avrdude support back again in a more integrated fashion, but this will take a little bit more time.
You could still try out the old avrdude plugin from the sf.net project page. Download the 20070813 release and copy the folder org.mrm.avrdude_20070813.0.0 into your Eclipse plugins folder.

brgds

Thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

OSXAVR puts all of it's binaries in /usr/local/bin. Includes are in /usr/local/avr/include (avr/io.h is under that). GNUmake is in /usr/bin. Basically, you can treat Mac OS X as you would any other UN*X boxen unless you are talking about Java (Apple does some weird things there).

I didn't need to turn on any options, I needed to turn off the --format=avr and mcu=atmega16 options because we are running an old version of avr-size. Putting a "other flags" field on the General tab will allow us to do what is recommended in your FAQ. :-)

You can have my mac when you pry my cold dead fingers off of it.

Kevin McEnhill -- mcenhillk@gmail.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for the info about OSXAVR.

And with regard to the size options: I finally realized what the real problem is. -mcu=xxx is hardwired on the commandline and this options make non-winAVR avr-size commands barf.

I am working on it and I should have a soon.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Version 2.0.1 has just been released.

It fixes the size bug and has some more bug fixes and some new minor features.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

I didn't know that there was a plugin for AVR's before, and I've been wanting to try Eclipse!

Seems good so far, though I'm having a problem...

when I try to build my program it gets to this line:

static FILE mystdout = FDEV_SETUP_STREAM(put_char, NULL, _FDEV_SETUP_WRITE);

and then it gives me this error:

../../../../../avr-libc-1.4.6/crt1/gcrt1.S undefined reference to `main'

I don't know what that means. The program compiles just fine in AVR Studio. Any help would be appreciated, Thanks!

-Alan

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

alancarr wrote:

static FILE mystdout = FDEV_SETUP_STREAM(put_char, NULL, _FDEV_SETUP_WRITE);

and then it gives me this error:

../../../../../avr-libc-1.4.6/crt1/gcrt1.S undefined reference to `main'

I don't know what that means. The program compiles just fine in AVR Studio.

Well I don't know what it means either (other than the obvious), but as I have had the same report before I would like to investigate.

As it is working in AVR Studio it might be a problem of a missing option to either compiler or linker.

Could you send me the console output of both the working AVR Studio build and the failing AVR Eclipse build and I will try to figure out the difference.

brgds
Thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hmm... well I can't seem to make it happen again. I was using the Build Active Configurations button on the top tool bar and it wouldn't compile. I then read through the help files again and tried right clicking on the project and tried that build and it worked. I tried the first build button again to see if I could get the error again, but it worked now so I'm not sure what the difference is.

Sorry to bother you, thanks though.

-Alan

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tomholland wrote:
I have released a new version (2.0.0) of the AVR Eclipse Plugin. This plugin integrates the avr-gcc toolchain into the Eclipse IDE. It is a complete rewrite of the previous version 20070813.

OH MY GOD! I've been waiting for this plugin for years!

thanks so much! i'd been working with a cludged together mess of scripts and project configs - this is great!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Nice tool.
Thanks for the good plug-in.
But this plug-in works if source file is *.c .
I take .cpp file from my old project and got error message "Nothing to build for project ****".
May be I need to change some options in project properties for working with *.cpp files (C++) ?
Regards.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you. Hope that Atmel adopts this solution for AVR IDE.

Signature: We need more peripherals in DIP packages. Namely, USB, 12-bit ADC, 16-bit timer, cheaper tool as a programmer/debugger coz STK600 is expensive! Atmel Studio 5/6 sucks! coz it brings MS visual studio crap to AVR world..

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Dibor wrote:
Nice tool.
Thanks for the good plug-in.
But this plug-in works if source file is *.c .
I take .cpp file from my old project and got error message "Nothing to build for project ****".
May be I need to change some options in project properties for working with *.cpp files (C++) ?
Regards.

Hello Dibor,
thanks you for your feedback!

C++ support has been added with version 2.1 (A Beta version is available for download here https://sourceforge.net/project/showfiles.php?group_id=189165)
Full release probably sometime next week as soon as I've got either a few positive or no negative feedbacks.

brgds
thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

pwhitt wrote:

thanks so much! i'd been working with a cludged together mess of scripts and project configs - this is great!

Thank you for this encouraging feedback!

brgds
Thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

metal wrote:
Thank you. Hope that Atmel adopts this solution for AVR IDE.

While that would be nice (direct access to their simulators) I wouldn't hold my breath, because the plugin is licensed under the GPL and Atmel does not seem to be very much into open source.

Technically I could change the licence since I own the copyright on almost all sources, but I am very much into open source and would be rather unwilling to change it.

brgds

Thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I understand that Thomas. But as long as you can't access thier simulators/emulators, then you need to change the license to suite thier needs, and afterall we can all gain some decent IDE for AVR.

While its better to have an Eclipse based IDE for AVRs, what Atmel thinks about it after all ? Are they willing to move to Eclipse based IDE for AVR ?

Signature: We need more peripherals in DIP packages. Namely, USB, 12-bit ADC, 16-bit timer, cheaper tool as a programmer/debugger coz STK600 is expensive! Atmel Studio 5/6 sucks! coz it brings MS visual studio crap to AVR world..

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

tomholland wrote:
Technically I could change the licence since I own the copyright on almost all sources, but I am very much into open source and would be rather unwilling to change it.

The Free BSD licence instead perhaps?

But as GPL only covers "derivative work" while a plugin to Studio might be considered such a "derivative work" I don't think that'd be true the other way round - plugin GPL code into Studio would not make Studio itself a derivative work.

(but part of the problem of the GPL is that some of the main proponents (Linus Torvalds, Richard Stallman, etc.) even disagree about what was intended by the phrase "derivative work")

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

metal wrote:
Are they willing to move to Eclipse based IDE for AVR ?
Perhaps, they have certainly embraced Eclipse for the AVR32 processors and it was recently rumored that a "total rewrite" of AVR Studio was in development.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I may have started that rumour but I asked my FAE if there was any truth in it - answer is apparently not.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Oh, Cliff -- to let truth stand in the way of rumor -- really, now ;-)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I should not have made the comment about the license :-)

The plugin is and will stay GPL because I like the license. And no BSD for me as I won't work for free for some closed source shop.

If (and a really big if) Atmel will go to Eclipse for the next AVR Studio this would be good news, as Eclipse is a much better platform than the old-fashioned IDE they have now.

Regarding my plugin they could
a) use parts of my plugin and release AVR Studio under the GPL (highly unlikely)
b) Give me money to get the parts of the plugin that I have copyright on with a commercial license (highly unlikely)
c) Ignore my plugin and do it themself (highly likely)

Either way is fine with me because I am programming this mostly for the fun of it (and for giving something back to a community that gave me many great open source programs to use)

Thomas

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I suspect your probability estimates are correct, Thomas; though I'd be very happy to beat the odds on the outcome.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Then this was a rumor -- really frustrating --

Signature: We need more peripherals in DIP packages. Namely, USB, 12-bit ADC, 16-bit timer, cheaper tool as a programmer/debugger coz STK600 is expensive! Atmel Studio 5/6 sucks! coz it brings MS visual studio crap to AVR world..

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
recently rumored that a "total rewrite" of AVR Studio
I really hope NOT!!! The "totally rewritten" Studio4 (was 3) only started to work reasonably with version 4.10 :(

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly