Windows/Linux/Mac Eclipse plugin to compile and upload arduino sketches

The wire library also contains a include library. Due to "not top quality code of the wire library" a project using the wire lbrary also needs to include the utility folder. The same problem exists for ethernet and SD libraries.
From version 1.3 onwards libraries containing an utility subfolder also have the utility subfolder added to the include path.

I have been doing some tries, to add the utility to the include path.
But i haven´t got any luck.

Can you explain me the correct process for adding the utility subfolder to the include path in eclipse?

LuisSoares:
Can you explain me the correct process for adding the utility subfolder to the include path in eclipse?

You need to go into your project properties (right click the project and select properties)
There you can go to this window and add the utility subfolders to the "GNU C" and "GNU C++" languages

Best regards
Jantje

PS note you will see other values. That is perfectly normal.

Solved.

I had forgot to include the path in the GNU C++. Only included it in the GNU C.

Thank you

Hi Jantle,

As I explained on this topic http://arduino.cc/forum/index.php/topic,86344.0.html I'm having problems compiling Wire library.

This is the message I get from the compiler console:

/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.c:115: error: conflicting types for 'twi_readFrom'
/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.h:45: error: previous declaration of 'twi_readFrom' was here
/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.c:192: error: conflicting types for 'twi_writeTo'
/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.h:46: error: previous declaration of 'twi_writeTo' was here

Do you have any hint to help me?
Many thanks in advance.

Jantje:

LuisSoares:
Do you have any idea what might be the problem?

This page has been moved

Jantje,

I downloaded "twi.h" from Arduino issue #791 Google Code Archive - Long-term storage for Google Code Project Hosting. .

I still didn't manage to compile my code and the error is the same I posted above.

Is there any more step to follow? I really enjoy your Eclipse plugin but since I need to compile Wire library, I don't know what to do...

Has anyone else had this problem?

Thanks.

Hi Jantje,

I had the same problem as Globe.

When compiling the libraries i got the following errors:

**** Build of configuration Release for project ETHERNET_Test ****

make all 
Building file: C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.c
Invoking: AVR Compiler
avr-gcc -I"C:\Program Files\arduino 1.0.2\hardware\arduino\cores\arduino" -I"C:\Program Files\arduino 1.0.2\hardware\arduino\variants\mega" -I"C:\Program Files\arduino 1.0.2\libraries\Ethernet\utility" -I"C:\Program Files\arduino 1.0.2\libraries\Ethernet" -I"C:\Program Files\arduino 1.0.2\libraries\SPI" -I"C:\Program Files\arduino 1.0.2\libraries\Wire" -I"C:\Program Files\arduino 1.0.2\libraries\Wire\utility" -D__IN_ECLIPSE__=1 -DARDUINO=102 -DUSB_PID= -DUSB_VID= -Wall -Os -g -mmcu=atmega2560 -DF_CPU=16000000UL -MMD -MP -MF"Wire/utility/twi.d" -MT"Wire/utility/twi.d"  -c -o "Wire/utility/twi.o" "C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.c"
C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.c:115: error: conflicting types for 'twi_readFrom'
C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.h:45: error: previous declaration of 'twi_readFrom' was here
C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.c:192: error: conflicting types for 'twi_writeTo'
C:/Program Files/arduino 1.0.2/libraries/Wire/utility/twi.h:46: error: previous declaration of 'twi_writeTo' was here
make: *** [Wire/utility/twi.o] Error 1

**** Build Finished ****

LuisSoares
I see you use arduino 1.0.2. I never tested with this version.
Can you try with arduino 1.0.1?
Best regards
Jantje

Jantje:
LuisSoares
I see you use arduino 1.0.2. I never tested with this version.
Can you try with arduino 1.0.1?
Best regards
Jantje

I believe the issue will remain... I have the same problem as LuisSoares and I'm using arduino 1.0.1.

I just tested this with Arduino 1.0.1 works like a charm.

@Globe
You state you use Arduino 1.0.1. Can you explain why you get

/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.h:45: error: previous declaration of 'twi_readFrom' was here

When twi_readFrom is declared on line 43 with me in Arduino 1.0.1?

Best regards
Jantje

I just did a quick test with 1.0.2 and it work fine.
I verified and twi_readFrom is declared on line 43 with me in Arduino 1.0.1 and Arduino 1.02.
As on your systems twi_readFrom is declared on line 45 you are not running a standard Arduino.
Please try installing a standard Arduino version (0022 0023 1.0 1.01 or 1.02) and try again.
Best regards
Jantje

Jantje:
I just tested this with Arduino 1.0.1 works like a charm.

@Globe
You state you use Arduino 1.0.1. Can you explain why you get

/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.h:45: error: previous declaration of 'twi_readFrom' was here

When twi_readFrom is declared on line 43 with me in Arduino 1.0.1?

Best regards
Jantje

Jantje,

I am using a standard Arduino version (1.0.1) but I replaced the original twi.h that was inside utility folder on Wire library with the one I downloaded from Arduino issue #791 Google Code Archive - Long-term storage for Google Code Project Hosting. .

Globe:

Jantje:
I just tested this with Arduino 1.0.1 works like a charm.

@Globe
You state you use Arduino 1.0.1. Can you explain why you get

/Applications/Arduino1.app/Contents/Resources/Java/libraries/Wire/utility/twi.h:45: error: previous declaration of 'twi_readFrom' was here

When twi_readFrom is declared on line 43 with me in Arduino 1.0.1?

Best regards
Jantje

Jantje,

I am using a standard Arduino version (1.0.1) but I replaced the original twi.h that was inside utility folder on Wire library with the one I downloaded from Arduino issue #791 Google Code Archive - Long-term storage for Google Code Project Hosting. .

In the mean time I fixed the issue and arduino team changed the twi.h. So do not download this file. Use the arduino one.
Best regards
Jantje

Hi Jantje,

In my case it worked with 1.0.1. . Thank you

I helped Globe with is setup but somehow it didn´t worked, i did the same process.
He is using MacOS might that be a reason?

I tried today with another fresh installation of Eclipse and Arduino 1.0.2 (I never used this version before).

Now everything is working properly (at least it seems so) and I can finally compile Wire library.

Thanks for all your replies.

If i forgot to say thanks, i´m sorry

I´m really glad you developed this plugin and still take the time to help others.

Thank you Jantje

Keep up the awesome work

I want to say thank you for all your hard work and hard time.

Let me start by explaining what i am trying to do with my arduino project. I have basically created an arduino aquarium monitor/controller for my fish tank. Basically I started my projected by dividing it up into about 15 mini projects. So i took care of each individual project and eventually combine them all into one. To do this have the main program void setup (){setupprogram1(); setupprogram2(); }..... I quickly realized the arduino ide was just really hard to work with on my larger project so i used notepad++ and then copied the program to arduino ide for compiling and uploading. I tried before to create a file for each project in arduino and get it to compile them but i got missing invalid function errors.

Now after doing some research i find out that eclipse is much better and more capable of doing exactly what i would like. I previous to finding this amazing plugin i tried to follow some tutorials, but they didn't go well. My problem is i am still trying to find out how to create a multifile program and i just can't seem to find what i am looking for by searching. This usually means i am searching for the wrong thing lol.

Greatly appreciate the help

P.S. keep up the great work

superman (is it really you 8) )
Thanks for the compliments
creating new files is easy in eclipse.
First thing is to decide is what type of file you want? Do you want a class a .cpp a .c a .h ....
Right click your project and select new->class(or header file; or source file; or source folder or just file)
Best regards
Jantje

Jantje:
creating new files is easy in eclipse.
First thing is to decide is what type of file you want? Do you want a class a .cpp a .c a .h ....
Right click your project and select new->class(or header file; or source file; or source folder or just file)

Talk about fast reply
I guess the problem is i don't understand the files (I need to do more research)

Thank You

superman:

Jantje:
creating new files is easy in eclipse.
First thing is to decide is what type of file you want? Do you want a class a .cpp a .c a .h ....
Right click your project and select new->class(or header file; or source file; or source folder or just file)

Talk about fast reply
I guess the problem is i don't understand the files (I need to do more research)

Thank You

Maybe this can help you
http://eclipse.baeyens.it/IDECompatibility.html
Best regards
Jantje