Eclipse Foundation Member
Eclipse C++ IDE for Arduino Eclipse Project

Add this URL to your Eclipse Installation to reach this solution's update site.

Oxygen (4.7)


Neon (4.6)


Learn more...

Details Group Tabs

pcarew's picture

Hello Doug,
I upgraded/updated my Neon eclipse to Oxygen.

One of my prior Arduino projects somehow is no longer recognized as Arduino.

The launch bar only shows 'Debug" as an option and it can't find Arduino.h anymore.

Can you let me know where I need to go to tweak/update the project settings?

Is there a preference file somwhere that holds this?

Paul.

pcarew's picture

Doug, I have a pretty reasonable background in both Java and 'C'. I'm willing to help with working through some of the Arduino CDT issues.

Would you contact me at Paul.Carew@CloseReachCommunications.com

Cheers

Paul.

zinvestigator's picture

I'm using Eclipse Oxygen on Windows 7. Problem is, whenever I want to reflash the Arduino (Uno) while serial console is open, it gives an error stating "avrdude: ser_open(): can't open device "\\.\COM13": Access is denied."

I've figured it out that I have to first click on the disconnect button (in command shell) then hit the flash button. But in the youtube video tutorial you provided, it seems the plugin automatically closes the serial port before upload and the reopens it.

How can I do this?

Thanks for this awesome plug-in :)

vad7's picture

Arduino SAM Boards (32 bits ARM Cortex-M3)

Eclipse IDE for C/C++ Developers
Version: Oxygen Release (4.7.0)
Build id: 20170620-1800

cschindler607's picture

why does installing arduino remove marketplace in the help menu?

kdur's picture

Hi,

I am on mac os 10.12.4 with eclipse 4.6.3.

When I try to download a platform with Arduino Download Manager, I select "Add" and I get this error :

Error loading http : //arduino.esp8266.com/stable/package_esp8266com_index.json
Server returned HTTP response code: 403 for URL: http : //arduino.esp8266.com/stable/package_esp8266com_index.json

When I copy this url in my browser, the json is appeared.

Thank You.

ikostov's picture

Hi guys,

for some reasons I'm not able to download any package from the download manager. It says ( I have removed the "http's" ):

Error loading arduino.esp8266.com/stable/package_esp8266com_index.json
Server returned HTTP response code: 403 for URL: arduino.esp8266.com/stable/package_esp8266com_index.json

When I open the link in a browser everything looks good ( it's not a proxy or firewall issue ).

Any idea ?

Thanks,

Ivan

bbs's picture

hi

have successfully installed and the Plugin works fine. well done!

is there a readme or other link for create new Package ( ESP32 ) for the

new Arduino Downloads Manager which is available in the Help menu ?

also for board platform SDKs and libraries ?

i would like to import the arduino esp32 part from espressif's github repo arduino-esp32

"espressif/arduino-esp32"

on this fine way over the Arduino Downloads Manager in Help menu.

thank you

best wishes

rudi ;-)

rshah658's picture

I have successfully installed this plugin and built some of the earlier Arduino codes smoothly. I do have question about code suggestion for all the Arduino functions like pinMode, digitalWrite etc. That is one of the major reason why I turned away from original Arduino IDE. So, is it possible to get code suggestions for all the arduino functions?

dschaefer's picture

Yes, Control-Space (Command-Space on Mac) is the default key binding for it. It's one of the main reasons I built this plug-in for Eclipse CDT too :)

mschmeing's picture

I have the Eclipse C++ IDE for Arduino installed in Neon. My Arduino is an Arduino M0 pro (and thus my platform package the Arduino SAMD Boards (32-bits ARM Cortex-M0+). Originally, (with version 1.6.6 of the package) everything was fine. But after an update of the platform, suddenly the IDE cannot find the include files (especially Arduino.h) anymore. The compiler on the other hand still finds the includes.
The current version of the package is 1.6.14, but this is not the first version, where I noticed this problem for the first time. I noticed the problem with the previous update that I performed, but I don't know anymore, which version that was.

My Eclipse version is:
Eclipse IDE for C/C++ Developers
Version: Neon.3 Release (4.6.3)
Build id: 20170314-1500

It was installed from the Eclipse Installer.

rhedger's picture

Michael,

I wonder whether it is related to this intermittent bug?

https://bugs.eclipse.org/bugs/show_bug.cgi?id=498171

mschmeing's picture

Yes, it seems to be the same problem. My System is an x86_64 Debian testing and the project is within the eclipse workspace. Otherwise, the descriptions match my problem.

rhedger's picture

I have installed this plugin and successfully programmed several types of Arduino board. However, I am having trouble programming a Sparkfun Pro Micro board (ATmega32U4 8 Mhz 3.3V). Sparkfun boards didn't show up in the platform list of the Arduino Downloads Manager, so I added the Sparkfun json file to the arduinoct directory, restarted Eclipse and was able to add them. When I try to program the Pro Micro board, I get the error listed below. I am able to program an Arduino Micro on /dev/ttyACMx, so it doesn't seem to be the (now fixed) connection bug. I can program the Pro Micro using the Arduino IDE, so the board is OK.

Connecting to programmer: .
Found programmer: Id = "Hello w"; type = o
Software Version = H.e; Hardware Version = l.l
avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude: error: programmer did not respond to command: leave prog mode
avrdude: error: programmer did not respond to command: exit bootloader

gabenthung's picture

I'va just installed this plugin from Eclipse Marketplace on a fresh downloaded Eclipse Neon.2 CDT IDE. When I try to add a new "Connection" for my mega2560 board, I can't select a serial port (/dev/ttyACM0 in my case.) Also typing the port manually into the textfield and hitting the "OK" button doesn't work. The field stays empty when I open the connection from the "connection"-View with [RightClick]->Properties on the created connection. The board is recognised correctly by the vanilla Arduino-IDE. I'm running Kubuntu 16.04

Any suggestions?

dschaefer's picture

A fix for the ttyACM issue is on the way. Hopefully by tomorrow. Try a Check for Updates then.

gabenthung's picture

Thanks /dev/ttyACM0 works now in serial port settings. Is there a public source-code repository/bugtracker for this plugin?

Thanks for the great work and the rapid fix of my problem! Keep up the great work!

dschaefer's picture

Good to hear. The bug report is here https://bugs.eclipse.org/bugs/show_bug.cgi?id=509118. The fix was in the CDT's serial port plug-in. A link to the code review is in the bug.

gabenthung's picture

Today I tried it with a NodeMCU (ESP8266) which is on /dev/ttyUSB0 and it works. It seems that simply /dev/ttyACM* is not configured in the plugin like other posters here mentioned. It would be great, to be able to manually fill out the "Serial Port" field. I could also use the "/dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0" ports which are created on Ubuntu for each device.

gabenthung's picture

Hi, I just installed this plugin from the Eclipse Marketplace on a freshly downloaded Eclipse Neon CDT IDE. When adding a connection for my Arduino Mega2560 board I can't select it (in my case it would be /dev/ttyACM0 ). When I try to type it manually and click the "OK" button it simply doesn't save my setting.

I'm running Kubuntu 16.04

kclough's picture

Great Plugin. Takes working with Arduino to a new level.

I have created some code that I would like to reuse in several variants for a number of mcu's. I would like to make some compile time configurations. I know that this has been addressed before but I am looking for a very simple solution. If I were able to add a define symbol as in a normal cdt project I could have the project build by selecting a specific include file. The plugin quite correctly removes these definitions.

My problem could easily be solved if the target connection were defined I.E. -DLAUNCH_TARGET. Then using #if's I could configure my variants at compile time.

Cheers,
Ken

ndarkness's picture

Hello, I am having an issue with the plugin and windows, it apparently loses the libraries and platforms list in the " Arduino Download Manager". If I hit in updates, I get an error saying " No protocol:" clicking Details does not show anything more, only the same erro " No protocol:".

It does happens after building the project and almost all the references withing my project are highlighted in red; however, if I start a new project and include my code the references work fine, but as soon as I build it, they are gone again...

Have someone experienced this?

Thanks

ashishkin's picture

Great tool, I followed this video and have created and compiled my Arduino test project. But in the 3rd column my run target "Uno" is unavailable, I see only "Local" there. Of course I have created a lot of different connections and got "connected" message in terminal output. I am on Windows 10 x64 and had no problems with standard Arduino IDE and PlatformIO.

dschaefer's picture

Yes, there was a version mismatch in the MarketPlace and what we shipped with CDT Neon.2. Doing a Check for Updates will give you the correct version. And the MarketPlace page has been updated properly.

jwalters085's picture

I went through all of this. I eventually found a part of the setup that required running manually and after this and a restart of eclipse, lo and behold, my targets appeared. I was then able to compile and download a demo app but not run it. I gave up at this point and installed VisualMicro onto Visual Studio 2015. Worked straight out of the box and I was up and running in about 20 minutes.

This is my second attempt with Eclipse. First time was to do cross development on a Raspberry Pi and could never get that tool chain to work. That time I went to Netbeans and again was up and running in under an hour after weeks of faffing with eclipse. It's just too complicated and not in the least bit intuitive. Sorry chaps, needs a serious rethink.

jwalters085's picture

I've followed the YouTube video to install Neon C++ for Arduino, have successfully built a "Hello world" sketch and all appears fine. Now to the real task...
May target board will be an Arduino Due. I have loaded the arm-none-eabi-gcc tool chain with the Arduino Download Manager but I can't find any way of selecting it as the active tool chain for my project. Project/Properties/Libraries/Platform Libraries are set to "Arduino SAM Boards" but the build insists on using the avr-gcc tools.
What am I missing?

pcarew's picture

This is probably similar to what I do to switch between targets...
To switch between Arduino (AVR) and ESP8266 (Expressif), I need to select the correct launch target in the launch bar (3rd dropdown box).

Do you have a launch target configured for the Due board?

jwalters085's picture

Hi Paul,

My problem appears to be the same as Al Shiskin; the targets are simply not appearing in the launch Bar. All I have is Local and the option to create new targets. In similar vein, I can create targets that show up in the Connections tab and I can connect to them but that's about it.

pcarew's picture

Hello John,
One of the things I noticed in the beginning, was a problem in being able to select Arduino Project launch targets in the Launch Bar. I filed a CDT bug for this https://bugs.eclipse.org/bugs/show_bug.cgi?id=500251.

I'm not sure if this is what you're experiencing, but if so I found that after opening a project in the project explorer, I had to 'restart' Eclipse. After the restart, the correct launch target showed up in the launch bar.
Hope this helps.
Paul.

jwalters085's picture

I've followed the YouTube video to the letter and now have a fully functioning IDE that will build a demo project for an ATMega based board. Now for the real work....
The target board will be an Arduino Due with the Cortex M3 CPU. I've downloaded the SAM platform and now have the arm-none-eabi-gcc tool chain installed but I can't work out how to set up the project to use it. I've created a new Launch Target for the Due board but because I don't actually have a target processor connected at this time, it simply uses what appears to be the default tool chain.
How do I configure Eclipse / my project to use the correct tool set?

dcimminon11's picture

Hello,

I am having trouble adding a new library, I know you don't have the option of creating your own library yet, but if the library is already written and on github, Is it possible to add it to the library index json file and download it with the Arduino Download manager? Adding the library in the arduinocdt folder does not work and if I modify the json file, It downloads automatically the old one when I try to search for libraries. The attempted methods in the forum does not work.

Do you allow the community to modify the json file to add new libraries? this could be a temporary fix until the private library option is added.

Thanks for the plugin!

D.

pcarew's picture

I responded to your forum posting with the details, but essentially check that you have a 'library.properties' file in the root folder of your library.

tmcpharlin's picture

When one creates an Arduino project, there are a number of differences from what the IDE does for a standard C++ project:

The project Properties, C/C++ General group lacks the "Paths and Symbols" property group. Among the more useful missing properties are:
a. "Preprocessor Include Paths" settings not to mention that an "includes" folder is not created within the project tree (Next to "src" folder)
b. The "Libraries" and "Library Paths" property tabs are not supported, apparently.

Rather than simply explaining that these settings may be added in a future release, perhaps the author could explain his philosophy for omitting these settings. Was it an intentional design decision or simply omitted in these early releases?

tmcpharlin's picture

Or possibly the "user defined library support" feature you eluded to in an earlier post.
I'm guessing that a user-defined-bootloader may also be required in such scenarios but I have no idea (yet) how compatible the boards may be or how universal a bootloader could be made...

Is a universal SAMD bootloader feasible? How different would it be from, say, an AVR?

very cool project, keep up the great work, Doug.

My post in the main CDT forum:

https://www.eclipse.org/forums/index.php?t=msg&th=1083076&goto=1749742&#...

achestnov's picture

Where is support forum? Where can I ask a Question? I want to use and integrate my own library ? How can i do what. I don't want to write big Json file and push my library to git hub first. Please help. Thanks.

dschaefer's picture

The link to the forum is in the text above. This is open source and support is provided by the community and myself when I have time available.

And as I've stated a few times here and there, we currently do not have support for doing your own libraries. That's something I hope to add for next year's release (Eclipse Oxygen).

amikiciuk's picture

In new version of Eclipse Neon.1 (4.6.1) you can't create new project. Some of buttons is disabled to continue project creation wizard.

dschaefer's picture

I have refreshed the Arduino C++ update site with the neon.1 plug-ins on the weekend. Seems to be working now.

mheeg7k's picture

I've installed Eclipse Neon and this plugin today. But i can't create an Arduino Project! If i click on the "Arduino C++ Sketch" Button the "Next" Button does not activate. If I click on "Finish" the Project Window Closes and nothing happens.

tmcpharlin's picture

Watch the demo on youtube closely, he does not click the Next button, he clicks on the Arduino-Sketch uber-icon-thingy to the right... HTH

dschaefer's picture

If you are having problems after updating to Neon.1, make sure you enable the Eclipse C/C++ IDE for Arduino Neon update site in the preferences under Available Software Sites.

skench's picture

Hi,

I have just installed this plug-in and it is working great but I seem to be missing the Ardunio Neon update sire entry so I cannot enable it.

Should the URL have been inserted in there automagically?

Thanks

psane's picture

I just created a new Arduino project. It created a skeleton and a blank .ino file (with setup and loop). When I added a new source file (.C) to the project, it created a new file but this file is not part of a build system. I cannot get it to build with the .ino file created by default.

pcarew's picture

I believe that source files need to be cpp to be included in the build.

jcollinsgk3's picture

I'm a beginner... how do I include the Adafruit_WINC1500 library using the Eclipse C++ IDE for Arduino.

Most of the essential Adafruit libraries are present; however, there is not a library entry for Adafruit WINC1500, which I require. There is an entry for Adafruit CC3000...

Is this possible?

Please advise.

Thanks.

pcarew's picture

Is it possible to define multiple Build configurations?
I have a project where I want to target a UNO for a release build, but be able to create a debug build that runs on Windows.

I have a stub test harness for the application, that allows the logic to be run and debugged on a host environment. When I'm happy with it, I would then like to rebuild it, this time targeting an Arduino.

I looked under preferences, but didn't see a C++ setting menu (is that the correct way to setup different build configs?).

So far the Neon version for Arduino is working very well, it seems pretty fast and having the CDT source auto-complete is great.

Thanks
Paul.

dschaefer's picture

That's a use case I haven't considered yet. Generally, I do try to make sure CDT projects can target running locally and on embedded targets for the exact reason you mention. But for Arduino, I'm heavily relying on their build system metadata for builds and they don't include anything for building locally.

I'll definitely consider it and see if there's something easy I can do to support it. Might be time to think how I'd do Arduino with CMake like I'm doing with the ESP8266 boards. That will support building locally as well.

Feel free to raise an enhancement request in bugzilla so we don't lose this. Thanks!

pcarew's picture

I have created the enhancement bug and also posed a question about how this might possibly be achieved within the current Arduino Launch-bar environment.

ajanurikqmr's picture

Hi, I have a problem when I try to conect to the console. I click in "Open Command Shell" and I receive the following error message:
An internal error occurred during: "Making Connection".
org.eclipse.cdt.serial.SerialPort.open0(Ljava/lang/String;IIII)J
Anyone knows how to fix it?
Thanks

pcarew's picture

This worked ok on the Mars version, but on the Neon one I experience the same error when opening a command shell to a Uno. I verified that the correct com port (Com6 in this case) was configured.