GithubHelp home page GithubHelp logo

sloeber / arduino-eclipse-plugin Goto Github PK

View Code? Open in Web Editor NEW
414.0 414.0 131.0 23.7 MB

A plugin to make programming the arduino in eclipse easy

Home Page: https://eclipse.baeyens.it/

HTML 4.99% CSS 0.06% PHP 4.92% JavaScript 8.58% Shell 0.06% Java 80.78% C++ 0.27% Batchfile 0.01% C 0.10% Hack 0.24%

arduino-eclipse-plugin's People

Contributors

aalobaidi avatar alex-kent avatar alexandrezia avatar amorellgarcia avatar b3ndo avatar bergmannm avatar brodykenrick avatar dajtxx avatar davidtopham avatar eismeraldo avatar henols avatar infthi avatar jantje avatar jipp avatar kigster avatar marcelolimori avatar martinmikula avatar mjmeijer avatar nafep avatar neuweiler avatar nicoverduin avatar riban-bw avatar rlogiacco avatar robamu avatar stefan-code avatar superook avatar tnarik avatar uzi18 avatar wimjongman avatar wmarkow avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

arduino-eclipse-plugin's Issues

incorrect Arduino IDE version detection

This is related to #11

On ubuntu 13.04, the plugin has determined the Arduino IDE Version to be "1:1.0.5+dfsg-2" (this is displayed in the Arduino-Arduino preferences page, but is not editable)

This gets passed thru to the compile flags as "-DARDUINO=1:105+dfsg2-1"

Then during compilation the ":" and other special characters give a syntax error in the standard external library version check "#if ARDUINO < 100"

A workaround is to override the project's Build Variable ARDUIONO_IDE_VERSION to simply "105" in project settings.

Further info: on another machine, the ide version is simply detected as "1.0.3" and passed thru as "103", despite the installed package version being "1:1.0.3+dfsg-2". I have no idea why one is is simplified and the other is not.

NullPointerException on build

I get a NullPointerException consistently when building projects. However, the project does appear to build ok and I can upload to the Arduino. I am using plug-in version 1.2.4. The errors/environments are as follows:

Error 1
org.eclipse.core.runtime.CoreException: Internal error building project ws2801-test configuration Release
    at org.eclipse.cdt.managedbuilder.core.ExternalBuildRunner.invokeExternalBuild(ExternalBuildRunner.java:142)
    at org.eclipse.cdt.managedbuilder.core.ExternalBuildRunner.invokeBuild(ExternalBuildRunner.java:72)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:753)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:510)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:459)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
    at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:513)
    at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:422)
    at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
Caused by: java.lang.NullPointerException
    at org.eclipse.cdt.core.resources.RefreshScopeManager.initializeConfigMap(RefreshScopeManager.java:523)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getConfigurationToResourcesMap(RefreshScopeManager.java:305)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getResourcesToExclusionsMap(RefreshScopeManager.java:283)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getResourcesToRefresh(RefreshScopeManager.java:395)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.shouldResourceBeRefreshed(RefreshScopeManager.java:773)
    at org.eclipse.cdt.core.resources.RefreshScopeManager$2.refreshResources(RefreshScopeManager.java:350)
    at org.eclipse.cdt.core.resources.RefreshScopeManager$2.run(RefreshScopeManager.java:374)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
    at org.eclipse.cdt.internal.core.BuildRunnerHelper.refreshProject(BuildRunnerHelper.java:334)
    at org.eclipse.cdt.managedbuilder.core.ExternalBuildRunner.invokeExternalBuild(ExternalBuildRunner.java:133)
    ... 17 more
Error 2
eclipse.buildId=M20120208-0800
java.version=1.6.0_33
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product -keyring /Users/teabot/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.jee.product -keyring /Users/teabot/.eclipse_keyring -showlocation

Error
Sun Sep 16 18:38:08 BST 2012
Internal error building project ws2801-test configuration Release

java.lang.NullPointerException
    at org.eclipse.cdt.core.resources.RefreshScopeManager.initializeConfigMap(RefreshScopeManager.java:523)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getConfigurationToResourcesMap(RefreshScopeManager.java:305)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getResourcesToExclusionsMap(RefreshScopeManager.java:283)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.getResourcesToRefresh(RefreshScopeManager.java:395)
    at org.eclipse.cdt.core.resources.RefreshScopeManager.shouldResourceBeRefreshed(RefreshScopeManager.java:773)
    at org.eclipse.cdt.core.resources.RefreshScopeManager$2.refreshResources(RefreshScopeManager.java:350)
    at org.eclipse.cdt.core.resources.RefreshScopeManager$2.run(RefreshScopeManager.java:374)
    at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
    at org.eclipse.cdt.internal.core.BuildRunnerHelper.refreshProject(BuildRunnerHelper.java:334)
    at org.eclipse.cdt.managedbuilder.core.ExternalBuildRunner.invokeExternalBuild(ExternalBuildRunner.java:133)
    at org.eclipse.cdt.managedbuilder.core.ExternalBuildRunner.invokeBuild(ExternalBuildRunner.java:72)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:753)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:510)
    at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:459)
    at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
    at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
    at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
    at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:513)
    at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:422)
    at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

Build Options: Included Features

The current build contains the C/C++ environment, git and the Arduino plugins.

I have left out: Mylyn and CVS

We can include all sorts of other features in the main build, even those directly from marketplace.

Is this basic product enough (let people install their own features if they want) or should be provide additional features in the base product?

arduino plugin fails on Eclipse 4.2 (Juno) 64 bits install

I have made some testings and I couldn't install arduino plugin on Ubuntu 12.04 64 bits and eclipse Juno 4.2. I am continuously getting the following error message:

An error occurred while collecting items to be installed
session context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
No repository found containing: osgi.bundle,org.eclipse.update.ui,3.2.300.v20100512

I wonder if it is an arduino plugin issue or a eclipse Juno issue. Please, give me some advice.

Information is wrongly spelled

I'm unable to create a new sketch project.
Platform: Ubuntu 13.4
Eclipse: Kepler
Arduino: 1.0.5
Plugin source: http://www.baeyens.it/eclipse/V2

I'm new to Arduino, so maybe I've got a config item wrong.
(But the Arduino IDE is working OK for me.)

A BIG problem is that 'information' is spelled wrong on the page below. :)

broken

Failed to import SoftwareSerial library

I cannot import standard Arduino libraries. Specifically, I'm trying to import SoftwareSerial and followed the wizard. When I click Finish, I get an error that it Failed to import library:

'ArduinoLibPath/SoftwareSerial' is not a valid location. The location is relative to undefined workspace path variable 'ArduinoLibPath'.

I'm using version 1.2.2 of the plugin with Eclipse Indigo on OS X. How can I set this workspace path variable?

"Port already in use" in OS X 10.6.8 with walkaround

When uploading with avrdude the plugin give a error prompt saying "Port already in use" (while no other application is using the port). After clicking OK it actually uploads the program to Arduino board. It happened with versions 1.20 and 1.21.
Pic here:
http://ldy.name/images/stories/blog/port_in_use.png

Here's the error log:
!ENTRY org.eclipse.ui 4 4 2012-03-14 14:30:53.607
!MESSAGE Invalid preference page path: XML Syntax
!SESSION 2012-03-14 14:30:59.302 -----------------------------------------------
eclipse.buildId=M20120208-0800
java.version=1.6.0_29
java.vendor=Apple Inc.
BootLoader constants: OS=macosx, ARCH=x86, WS=cocoa, NL=en_US
Framework arguments: -keyring /Users/daoyuanli/.eclipse_keyring -showlocation
Command-line arguments: -os macosx -ws cocoa -arch x86 -keyring /Users/daoyuanli/.eclipse_keyring -showlocation

!ENTRY org.eclipse.core.net 1 0 2012-03-14 14:31:02.690
!MESSAGE System property http.nonProxyHosts has been set to local|.local|169.254/16|.169.254/16 by an external source. This value will be overwritten using the values from the preferences

!ENTRY org.eclipse.mylyn.tasks.ui 2 0 2012-03-14 14:31:03.121
!MESSAGE No search provider was registed. Tasks search is not available.

!ENTRY it.baeyens.core 4 0 2012-03-14 14:31:14.270
!MESSAGE Serial port /dev/tty.usbserial-A400hB3D already in use. Try quiting any programs that may be using it
!STACK 0
gnu.io.PortInUseException: Unknown Application
at gnu.io.CommPortIdentifier.open(CommPortIdentifier.java:465)
at it.baeyens.arduino.arduino.Serial.(Serial.java:130)
at it.baeyens.arduino.arduino.Serial.(Serial.java:97)
at it.baeyens.arduino.common.Common.ResetArduino(Common.java:317)
at it.baeyens.avreclipse.ui.actions.UploadProjectAction$UploadJob.run(UploadProjectAction.java:409)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

!ENTRY it.baeyens.core 4 0 2012-03-14 14:31:28.529
!MESSAGE Serial port /dev/tty.usbserial-A400hB3D already in use. Try quiting any programs that may be using it
!STACK 0
gnu.io.PortInUseException: Unknown Application
at gnu.io.CommPortIdentifier.open(CommPortIdentifier.java:465)
at it.baeyens.arduino.arduino.Serial.(Serial.java:130)
at it.baeyens.arduino.arduino.Serial.(Serial.java:97)
at it.baeyens.arduino.common.Common.ResetArduino(Common.java:317)
at it.baeyens.avreclipse.ui.actions.UploadProjectAction$UploadJob.run(UploadProjectAction.java:409)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

!ENTRY it.baeyens.core 2 0 2012-03-14 14:31:28.551
!MESSAGE Failed to handle Com port properly
!STACK 0
java.lang.NullPointerException
at it.baeyens.arduino.arduino.Serial.setDTR(Serial.java:503)
at it.baeyens.arduino.common.Common.ResetArduino(Common.java:332)
at it.baeyens.avreclipse.ui.actions.UploadProjectAction$UploadJob.run(UploadProjectAction.java:409)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

After reading issue #6 I check the librxtxSerial.jnilib in eclipse:

.cp$ file librxtxSerial.jnilib
librxtxSerial.jnilib: Mach-O universal binary with 4 architectures
librxtxSerial.jnilib (for architecture x86_64): Mach-O 64-bit bundle x86_64
librxtxSerial.jnilib (for architecture i386): Mach-O bundle i386
librxtxSerial.jnilib (for architecture ppc7400): Mach-O bundle ppc
librxtxSerial.jnilib (for architecture ppc64): Mach-O 64-bit bundle ppc64

While in my Arduino application the librxtxSerial.jnilib output is:

librxtxSerial.jnilib: Mach-O universal binary with 2 architectures
librxtxSerial.jnilib (for architecture i386): Mach-O bundle i386
librxtxSerial.jnilib (for architecture ppc): Mach-O bundle ppc

So I just copied the Arduino.app//Contents/Resources/Java/librxtxSerial.jnilib file to eclipse/configuration/org.eclipse.osgi/bundles/419/1/.cp/librxtxSerial.jnilib
It works after restarting eclipse. No error prompts are shown.

Great work! Thanks!

New projects have a spurious include.

When creating projects with plugin version 1.2.4 (OSX/Indigo) - I see the following warning:

Invalid project path: Include path not found (leonardo_test).

This included project seems to be due to an include path in .cproject:

<listOptionValue builtIn="false" value="&quot;${workspace_loc:/leonardo_test}&quot;"/>

Removal of these elements appears to correct the issue.

"Import Arduino libraries in the current project" doesn't bring up useful dialog

<First off thanks for all the effort Jantje!>

"Import Arduino libraries in the current project" is not allowing for the selection of Arduino libraries (either Arduino or Sketchbook/Private) on my system.

Setup:
Ubuntu 13.04 (64-bit)
Eclipse 3.8.1 (installed to system via apt-get)
Arduino 1.5.2 (installed to a directory)
arduino-eclipse-plugin V2.1.0.4 (installed from update site)

Arduino IDE path: /home/brody/arduino-1.5

Private Library Path: /home/brody/Dropbox/Arduino/arduino_sketchbook/libraries
(has 25 entries -- many of which are symlinked)

I right click on my project in the project explorer pane, select Import.
Select "Import Arduino libraries in the current project" from under Arduino

Then I receive a "select the Arduino libraries" dialog but it is empty. It contains a field for options but contains no entries/check boxes. I am expecting that there would be a list of arduino and libraries in my private/sketchbook options - but ehre is nothing.

I can click finish and nothing happens (as nothing was selected) other than the dialog closing.

This was working on the older version -- I just updated and re-created my project.

This is low priority issue. I have a workaround for as "Import a folder cont....." works -- but introduces linker (combiner) order issues -- which then has another workaround.

Hex file not being created

I haven been away from my project for a couple months, but everything should still work as I left it.
For some reason now, I keep receiving the error that the hex file is not being created.
I clean my entire project and build all, but still receive the same issue.

I then created a new project using instructions @ http://www.baeyens.it/eclipse/UsethePlugin.html .
This still leads to the same issue. Any tips?

#if ARDUINO < 100

When using the Arduino IDE version 1.0.1, the eclipse plugin defines an environment variable ARDUINO_IDE_VERSION to be 10.1. This Environment variable is then Used to define the ARDUINO symbol.

This causes issues when using external libraries which check to see whether to include WProgram.h or Arduino.h by using for example:

 #ifdef ARDUINO
    #if ARDUINO < 100
        #include "WProgram.h"
    #else
        #include "Arduino.h"

In the above case not only does the compiler try to include the wrong header file (10.1 < 100), but I also get an error for using a floating point constant in a preprocessor expression.

Project doesn't work after removing a library

Hi there,

firstly, thanks for this amazing plugin. It has taken Arduino development to another level.

secondly, I think I might have found a bug. Every time I delete or rename a library that has been imported, the project stops compiling.
One of the symptoms is that some basic libraries paths get deleted, like /${ARDUINOBOARDNAME}/arduino and /${ARDUINOBOARDNAME}/${ARDUINOBOARDVARIANT}.
I am checking that at C/C++ General -> Path and Symbols.

Steps to reproduce:

  1. Create an Arduino Project.
  2. Import TWO libraries
  3. Right some code to use those libraries.
  4. Compile.
  5. Delete or rename one of the libraries.
  6. Remove the just created code to use the library which has been deleted.
  7. Compile again

It won't compile.

Thanks,
Franklin

Combiner should link the Arduino sketch before the libraries (like Arduino IDE)

The combiner using INPUTS variable for the objects can cause for linking issues. The "sketch" should be linked first (per the Arduino IDE -- the source code specifically treats the sketch first in the linking) but the order is left up to Eclipse in the plugin.

This is generally not an issue, but there are some libraries that do not work properly if linked after the sketch. For example SoftTWI can have an issue preventing it working if linked in before the sketch (that is what got me looking into this).

The combining step has the recipe (Project Properties>C/C++ Build>Settings>Arduino combiner):
${A.RECIPE.C.COMBINE.PATTERN.1} ${FLAGS} ${INPUTS} ${A.RECIPE.C.COMBINE.PATTERN.2} ${A.RECIPE.C.COMBINE.PATTERN.3}

In my project INPUTS resolves to:

./Libraries/panstamp/cc1101.cpp.o ./Libraries/panstamp/spi.cpp.o ./Libraries/SoftTWI/SoftTWI.cpp.o ./Libraries/MMA7660/MMA7660.cpp.o ./Libraries/EEPROM/EEPROM.cpp.o ./my_sketch.cpp.o

with the "sketch" code linked at the end.

Ideally sketch would be at the start as in the following:

./my_sketch.cpp.o ./Libraries/panstamp/cc1101.cpp.o ./Libraries/panstamp/spi.cpp.o ./Libraries/SoftTWI/SoftTWI.cpp.o ./Libraries/MMA7660/MMA7660.cpp.o ./Libraries/EEPROM/EEPROM.cpp.o

If the sketch can be put before the libraries then the behaviour will be more similar to IDE and avoid strange differences.

Low priority as there is a workaround.

Workaround:
This is an easy workaround (after you determine the issue is this combining/linking problem -- that is the hard part). Replace INPUTS in the recipe with your own reordered set of object files (easily copied from the Eclipse output).

Odd Build Error When Using Eclipse Juno

Hi Jantje,
I get an error every time I build my project in Juno. Everything builds fine and it compiles, but then this message comes up.

Errors occurred during the build.
Errors running builder 'CDT Builder' on project 'Copter'.
Internal error building project Copter configuration Release
java.lang.NullPointerException
Internal error building project Copter configuration Release
java.lang.NullPointerException

PC: Windows 7 (64 bit)
I believe I'm running 64 bit eclipse but I'm not entirely sure about that
Java 7 update 5

Solved

Thanks for your tips. The Stacktrace in the error view was more informative:

java.lang.NoClassDefFoundError: Could not initialize class gnu.io.CommPortIdentifier
at it.baeyens.arduino.arduino.Serial.(Serial.java:121)
at it.baeyens.arduino.arduino.Serial.(Serial.java:97)
at it.baeyens.arduino.common.Common.ResetArduino(Common.java:317)
at it.baeyens.avreclipse.ui.actions.UploadProjectAction$UploadJob.run(UploadProjectAction.java:409)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

And I've seen this before. So I did a search for the librxtxSerial.jnilib Lib in the eclipse directory and found it here: /Applications/eclipseCPP/configuration/org.eclipse.osgi/bundles/318/1/.cp . The installed lib ist just for 32 bit:

file librxtxSerial.jnilib.old
librxtxSerial.jnilib.old: Mach-O universal binary with 2 architectures
librxtxSerial.jnilib.old (for architecture ppc): Mach-O dynamically linked shared library ppc
librxtxSerial.jnilib.old (for architecture i386): Mach-O dynamically linked shared library i386

I replaced the 32-bit with a 64-bit version:

file librxtxSerial.jnilib
librxtxSerial.jnilib: Mach-O universal binary with 4 architectures
librxtxSerial.jnilib (for architecture x86_64): Mach-O 64-bit bundle x86_64
librxtxSerial.jnilib (for architecture i386): Mach-O bundle i386
librxtxSerial.jnilib (for architecture ppc7400): Mach-O bundle ppc
librxtxSerial.jnilib (for architecture ppc64): Mach-O 64-bit bundle ppc64

And now it works like a charme. And the Ports are displayed, too.

I made a post in my blog (most in german, but with a little note in english): http://www.stepqom.de/pblog/2012/02/24/arduino-entwicklung-mit-eclipse-auf-mac-osx-10-7-64-bit/

And again. Thank you for respons und for the plugin.

Serial monitor shows no serial ports

Platform: Ubuntu
Eclipse Juno SR1
Arduino IDE 1.0.1
Plugin version 1.2.5.5

Firstly, everything builds perfectly fine. I have no problems with the rest of the plugin at all. Except for where serial ports are involved. In the serial monitor I go to add a monitor and the droplist to select the serial port is empty and greyed out. :(

Also, I noticed that when creating a project and selecting the serial port, no ports are listed, but that field is editable so I can type the port device in manually.

In my case, the port device is /dev/ttyACM0.

I'm happy to help debug this as required. I think even as a simple fix, changing the serial monitors serial port selection field to an editable drop list so I can type it in manually would be enough for me.

And lastly, I just wanted to add that this plugin rocks. Thanks Jantje! And thanks for keeping it open sourced! (Donation coming when I get paid, haha).

Import project to eclipse - Arduino settings do not restore

Hello,

I use version 1.2.4.

Steps to reproduce:

  1. Create Arduino sketch project by plugin's wizard (File->Project->Arduino->New Arduino sketch)
  2. Delete project from IDE (Right-click on the project and choose delete, but dont mark "Delete project contents on disk"
  3. Import project (File->Import->Existing projects into workspace)
  4. Select deleted project root directory for "Select root directory"
  5. Press Finish
  6. Go to imported project properties

Actual result:

  • Board selection is lost under "Your arduino board specifications"
  • Port selection and other parameters for AVRDude and Target Hardware seem right
  • Under C/C++ Build -> Environment environment variables ARDUINOBOARDNAME, ARDUINOBOARDVARIANT etc are emptied

As the result, IDE can not resolve include path to Arduino.h

Expected result:
Board setting maintained and environment variables are right

How to recover:
Choose correct board - environment variables will restore. Then right-click project and do Index->Freshen all files

Thanks for your attention

Unable to create new project in Linux; port cannot be configured properly

When creating a new Arduino project (sketch), then the selection box for port does not have any items. Typing /dev/ttyUSB0 leads to unclear errors:
screenshot from 2013-09-29 10 36 38

When trying to by-pass the problem by clicking OK, the project seems to have been created already, and OK will prevent closing the dialog. See next message:
screenshot from 2013-09-29 10 56 44

Hardware serial port as "Serial"

First of all: Thanks for the great plugin! It has made the work with
Eclipse and Arduino much easier - especially linking libraries.

Unfortunately the Serial library doesn't work out of the box.

The solution is quite simple: Include

extern HardwareSerial Serial;

in the specific project .h file.

A new version of the plugin could do this by default.

Kepler is not supported

I installed the plugin prerequisites from default repository, under Ubuntu 12.04, 32 bit. In Eclipse Kepler, select Window->Preferences, then click the AVR tree view entry. After selecting Paths tab, the whole dialog freezes. Happened every time when I tried. Any ideas or suggestions? Thanks.

Create Tycho build

I have created a tycho build for the plugins

Creating and Eclipse product and Update site is now easy as:

git clone https://github.com/wimjongman/arduino-eclipse-plugin
mvn verify

The file system will contain a target directory in the product folder which will contain an eclipse product for your platform.

The P2 repo is contained in the updatesite plug-in

All fields greyed out on "create new project" screen.

Hi

When creating a New Arduino sketch project, all the fields on the "Provide the Arduino Information" screen are greyed out.

The behaviour is the same under root account.

There are no errors on the console:
Experimental: JNI_OnLoad called.
Stable Library
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7

PS: Information is spelled incorrectly ;-)

Create Project1

Create Project

Could not initialize class gnu.io.CommPortIdentifier

Mac OSX 10.7.3

Eclipse IDE for C/C++ Developers
Version: Indigo Service Release 1
Build id: 20110916-0149

Arduino-eclipse-plugin 1.2.0

I get the following error, if I try to upload my projekt to my arduino uno:

An internal error occurred during: "AVRDude Upload".
Could not initialize class gnu.io.CommPortIdentifier

If I start avrdude from shell it works (from the Release Directory):
avrdude -C /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf -patmega328p -carduino -P/dev/tty.usbmodemfd141 -b115200 -Uflash:w:FirstArduino.hex:a

Do you have any ideas what's wrong?

By the way: great tool!

Thank you for your efforts.

Stefan

Creating Arduino Project Error

Hi,

I'm using:
Windows7/32bit
Eclipse Version: Juno Service Release 1, Build id: 20120920-0800
ArduinoPlugIn 2.1.0.4

While creating the first Project I get an Error:

"Error parsing C:/Program Files/Arduino/hardware/arduino/platform.txt or C:/Program Files/Arduino/hardware/arduino/boards.txt
C:\Program Files\Arduino\hardware\arduino\platform.txt (Das System kann die angegebene Datei nicht finden)" => "File not found".

I have a boards.txt in C:\Program Files\Arduino\hardware\arduino.

Maybe the PlugIn uses "/" insteand of ""?

Thanks a lot

Turning on serial monitor during deployment to device

connecting serial monitor view while deploying to Arduino, causes errors and a decently long timeout. Unable to work for the minute or so while the deploy process is timing out.

PS: I'd be tempted to call it normal behavior...as in "don't do that".

Steps:

  1. click the green Arduino arrow to deploy to device
  2. while step 1 in progress, turn on the serial monitor
  3. deployment hangs, eventually timing out.

screen shot 2013-07-27 at 9 24 35 pm

Build options: Continuous Integration

It is possible with the new build method to provide a snapshot build of the latest and the greatest. It would build every time a change is made to the master repo. It could be instructed to build for all major platforms.

This means that we can setup a jenkins build server that will automatically build the product and the update site.

Is this possible in the current infrastructure (looking at cost and bandwidth)? Is there a server that we can use?

If no should we find ways to mirror it somehow?

Arduino v1.5.2 not supported - required for Due support

The latest Arduino IDE has changed its path structure. E.g. for BOARDS_FILE_SUFFIX the directory was split into "hardware/arduino/avr/boards.txt" and "hardware/arduino/arm/boards.txt".
As a first sign of trouble, the IDE can not be specified in the preferences.

AVRDude reports that serial port not found

Ubuntu
Eclipse Indigo
Arduino IDE 1.0
Plugin version 1.2.0

When I try to upload to my arduino, I get a dialog box that states that the port doesn't exist. I dismiss the dialog box, and then the upload happens normally. It asks me if I've chosen the correct port on the properties page. When I go to the properties page, the port DOES appear to be a drop-down list, but the drop-down button is disabled. So I just enter my port name: /dev/ttyACM0 - this is the same port name as is used by the arduino IDE.

I noticed that the port name appears in two places - on the project properties page for Arduino, and under each configuration for AVRDUDE. If I remove the port name from the arduino page, I get the same result. If I remove the port name from the avrdude configuration, I get a different error and it seems to be trying to use an alternate port name.

I guess since it ultimately works, this isn't really a bug, but I thought I should bring it to your attention.

BTW - this is a GREAT plugin. I'm so happy that there is a professional alternative to the Arduino IDE.

bug with some arduino boad config

the pugin works well when i select the arduino boad as Mega or Diecemila whick are largly used . However ,when i specify the boad as mini pro 3.3v ,error occurs.the error log is just as following:

eclipse.buildId=M20110909-1335
java.version=1.7.0
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: -product org.eclipse.epp.package.cpp.product
Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.cpp.product

Error
Tue Feb 21 16:16:44 CST 2012
Path variable name cannot contain character: ,.

some other uncommon boards seems the same problem .Hope for you answer!
[email protected]

Serial monitor does not find arduino's TTY to connect to

Hello,

I am running the plugin on Ubuntu in Eclipse indigo. I am able to compile and flash the project. Avrdude is invoked with the following command:
avrdude -patmega2560 -cstk500v2 -P/dev/ttyACM1 -b115200 -Uflash:w:arduino_test.hex:a

When I open serial monitor and try to add new connection it does not let choosing any port

I run ubuntu in virtual box

Thanks

Import dialog: when pasting in a path, still have to opendialog to get the path accepted

env: Mac Mountain Lion (10.8.4), Eclipse Juno (Service Release 2 Build id: 20130225-0426)

Steps:

  1. right click project
  2. import
  3. choose library path
  4. paste in a legit path, leave the edit with the legit path
  5. finish does not become enabled
    screen shot 2013-07-25 at 11 44 00 pm

work-around:

  1. right click project
  2. import
  3. choose library path
  4. paste in a legit path, leave the edit with the legit path
  5. click browse
  6. click Open on the file open dialog
  7. finish is enabled

Serial port not found when using a programmer

Using linux. It is possible to set up an avrdude "Programmer configuration" for an external programmer, rather than the arduino boot loader. Avrdude works, but the plugin gives a serial port error first. Here is an example command line:

avrdude -patmega328p -cdragon_isp -Pusb -Uflash:w:xbeeFio.hex:a

It would be nice to be able to stop the plugin from trying to access the port itself with a check box, for cases where a programmer is used instead of the boot loader.

Thank you.

Create Arduino Project Error

1
2
3

Prerequisite:

  1. Unselect "Use default location" when "Create a new Arduino Sketch"
  2. Under that workspace, the core project of the chosen board has not been created before

Environment:

  1. Windows 7 x64, Java 1.6.0_29 x86, Eclipse Indigo SR2 x86, CDT 8.0.2, Arduino Extension 1.2.55, Arduino 1.0.3
  2. Windows 7 x64, Java 1.6.0_32 x64, Eclipse Indigo SR2 x64, CDT 8.0.2, Arduino Extension 1.2.55, Arduino 1.0.3

Error Description:
When create a new Arduino Sketch project named "ArduinoMegaAdk_EclipseDemo2", by chosen "MegaADK" board, then below error will pop up:


Failed to create project ArduinoMegaAdk_EclipseDemo2
Invalid project description.
OK
F:\PROJECTS\Arduino\ArduinoMegaAdk_EclipseDemo2 overlaps the location of another project: 'ArduinoMegaAdk_EclipseDemo2'


Result:

  1. The core project is not created.
  2. "F:\PROJECTS\Arduino\ArduinoMegaAdk_EclipseDemo2" created, with ArduinoMegaAdk_EclipseDemo2.h, ArduinoMegaAdk_EclipseDemo2.cpp inside.

a space anywhere in the path makes the project wont compile

I had a space in my path and I got following error when compiling (verifying or building):

16:15:34 **** Incremental Build of configuration Release for project test ****
make all
Building file: ../test.cpp
Starting C++ compile
"/home/jan/programs/arduino-1.5.2/hardware/tools/avr/bin/avr-g++" -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=152 -I"/home/jan/programs/arduino-1.5.2/hardware/arduino/avr/cores/arduino" -I"/home/jan/programs/arduino-1.5.2/hardware/arduino/avr/variants/standard" -MMD -MP -MF"test.cpp.d" -MT"test.cpp.d" -x c++ "../test.cpp" -o "test.cpp.o"
Finished building: ../test.cpp

make: *** No rule to make target /home/jan/workspaces/eclipse', needed bytest.elf'. Stop.

16:15:35 Build Finished (took 645ms)

basically there was a space after "/home/jan/workspaces/eclipse" in "/home/jan/workspaces/eclipse plugin"

replacing the space with _ solved the problem. It took a while for the indexer to catch up.

Best regards
Jantje

Create new sketch and name start with numbers -> problematic

Creating a new sketch with name "100_Blink" failed on V1.2.4/Indigo.
The reason could be the lines below in the included/generated header file.

ifndef 100_Blink_H_

define 100_Blink_H_

Eventually the "define" must be only start with a not numeric sign.

Workaround: Create the sketch without numbers at the beginning of the name. After creating it successfully rename the project in eclipse.

PluginDev: "Failed to create project" from "run as Eclipse Application" of latest code in github

Hi Jantje,

I forked the code to look at adding in the support for the other issue on order #43 . However I am having some strange things occur on creating a new project under a new workspace with the plugins from source on my machine.

I execute the plugins per this readme.md @ https://github.com/brodykenrick/arduino-eclipse-plugin/blob/master/readme.md

I get a pop-up mid execution that indicates a failure to create the project. dialog has details of "Failed to create project Test"

The error log has "unable to apply the invalid project description for project Test" in it also.

I have traced this down to the file ShouldHaveBeenInCDT.java and the line:
mngr.setProjectDescription(project, des);

I looked at the code and could see that the root error is in CProjectDescriptionManager.java

if(!des.isValid() && (!fAllowEmptyCreatingDescription || !des.isCdtProjectCreating()))
    throw ExceptionFactory.createCoreException(SettingsModelMessages.getString("CProjectDescriptionManager.17") + project.getName());

Both of the boolean conditions being tested return false in my setup:
System.out.println("des.isValid()=" + des.isValid());
System.out.println("des.isCdtProjectCreating()=" + des.isCdtProjectCreating());
mngr.setProjectDescription(project, des);

Any thoughts?

I am now setting up a pristine Juno CDT to begin working solely from there for this plugin work. I'll see what that does for this and issue #42.

avrDude not recognized

hi,
i've installed the beta version on eclipse juno 64bit on linux, and setted as ide an arduino 1.0.1 installation but the selection of the MCU in the avrdude say that all chips are unsupported
if i run thr avrdude test, it say that the response from avrdude is not recognized.
the file exists, seems like a response parsing error

The latest version does not load in debug (and run mode) in juno and eclipse

I wanted to continue working on the migration of my multichannel monitor code but I cant even run the plugin any more.
So I installed a kepler and it doesn't work there as well.
There are no errors and no plugins are loaded (help->about->loaded plugins)
I tried some things to get it back to work but nothing seems to work.

New arduino sketch does not work

When I try to create a new arduino sketch the third page (Provide the Arduino Information.) provides only disabled buttons and thus does not allow to validate the new project.

I tried with a new workspace too but it does not work anymore.

Using plugin version 1.1.7
Eclipse version: Indigo Service Release 1
Build id: 20110916-0149

Eclipse crashes when connecting serial console (Ubuntu 12.04)

Hi jantje,
first of all thank for the great plug-in. I was happy to find there is an Eclipse plug-in, when I got my little Arduino this week.
I installed the plugin following the instructions in your video and resolved the issues mentioned there without a hitch. So now compiling and transfering to my Arduino works (e.g. serial not showing up and the supposedly unresolved dependencies).

But I have an issue, when I want to connect to my Arduino from the Eclipse serial console (the Arduino IDE console works fine) and I am unable to resolve it.

I press the green '+' button to add a new connection and select the port and baud-rate correctly. After hitting 'OK' it shortly shows something like 'Connected to /dev/ttyACM0 at 9600 baud.' and then shortly afterwards Eclipse crashes.
When running Eclipse from bash heres the error message it gives me when crashing:

=========================================
Native lib Version = RXTX-2.1-7
Java lib Version   = RXTX-2.1-7
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007ffaae2f4462, pid=14222, tid=140714640856832
#
# JRE version: 6.0_24-b24
# Java VM: OpenJDK 64-Bit Server VM (20.0-b12 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.11.3
# Distribution: Ubuntu 12.04 LTS, package 6b24-1.11.3-1ubuntu0.12.04.1
# Problematic frame:
# C  [librxtxSerialx86_64.so+0x6462]  read_byte_array+0x52
#
# An error report file with more information is saved as:
# /run/lock/hs_err_pid14222.log
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

As you can see I am running Ubuntu 12.04 LTS 64bit using the Ubuntu-provided OpenJDK 6 and JRE.
If you need the error log that it points to I can send it to you. Hope you have an idea on how to solve this issue. BTW what JRE/JDK version do you use?
Best regards,
M.

Minor: Clean project doesn't delete the hex file

Clean project doesn't delete the hex file.

Build a project then clean project.

Right click in project explorer, "Build Project" then right click in project explorer, "Clean Project". The PROJECT_NAME.hex is not deleted.

Output that shows issue:
12:49:02 **** Clean-only build of configuration Release for project MovementAlerter ****
make clean
rm -rf MovementAlerter.elf /home/brody/git/MovementAlerter/MovementAlerter/Release/arduino.ar ./arduino/WInterrupts.c.d ./arduino/hooks.c.d ./arduino/malloc.c.d ./arduino/wiring.c.d ./arduino/wiring_analog.c.d ./arduino/wiring_digital.c.d ./arduino/wiring_pulse.c.d ./arduino/wiring_shift.c.d Release/MovementAlerter.hex ./arduino/CDC.cpp.o ./arduino/HID.cpp.o ./arduino/HardwareSerial.cpp.o ./arduino/IPAddress.cpp.o ./arduino/Print.cpp.o ./arduino/Stream.cpp.o ./arduino/Tone.cpp.o ./arduino/USBCore.cpp.o ./arduino/WInterrupts.c.o ./arduino/WMath.cpp.o ./arduino/WString.cpp.o ./arduino/hooks.c.o ./arduino/main.cpp.o ./arduino/malloc.c.o ./arduino/new.cpp.o ./arduino/wiring.c.o ./arduino/wiring_analog.c.o ./arduino/wiring_digital.c.o ./arduino/wiring_pulse.c.o ./arduino/wiring_shift.c.o ./MovementAlerter.cpp.d ./arduino/CDC.cpp.d ./arduino/HID.cpp.d ./arduino/HardwareSerial.cpp.d ./arduino/IPAddress.cpp.d ./arduino/Print.cpp.d ./arduino/Stream.cpp.d ./arduino/Tone.cpp.d ./arduino/USBCore.cpp.d ./arduino/WMath.cpp.d ./arduino/WString.cpp.d ./arduino/main.cpp.d ./arduino/new.cpp.d ./Libraries/panstamp/cc1101.cpp.d ./Libraries/panstamp/spi.cpp.d ./Libraries/SoftTWI/SoftTWI.cpp.d ./Libraries/MMA7660/MMA7660.cpp.d ./Libraries/EEPROM/EEPROM.cpp.d ./MovementAlerter.cpp.o ./Libraries/panstamp/cc1101.cpp.o ./Libraries/panstamp/spi.cpp.o ./Libraries/SoftTWI/SoftTWI.cpp.o ./Libraries/MMA7660/MMA7660.cpp.o ./Libraries/EEPROM/EEPROM.cpp.o MovementAlerter.eep MovementAlerter

See the file delete references the hex as Release/MovementAlerter.hex when it is already in the release directory and should be ./MovementAlerter.hex

NB: Minor issue. I'll probably get around to fixing myself later.

Absolute paths in .project file prevent sharing of Arduino projects

When more than one developer is working on a project (e.g. like on https://github.com/neuweiler/GEVCU ) some path variables are stored in the .project file which usually could be shared in a repository. Although one sets the arduino paths in global preferences, they are stored in the .project file and not in the workspace settings:

Here's an excerpt of my .project file:

<variableList>
<variable>
<name>ArduinoHardwareLibPath</name>
<value>file:/Z:/development/arduino/arduino-1.5.2/hardware/arduino/sam/libraries</value>
</variable>
<variable>
<name>ArduinoPinPath</name>
<value>file:/Z:/development/arduino/arduino-1.5.2/hardware/arduino/sam/variants</value>
</variable>
<variable>
<name>ArduinoPlatformPath</name>
<value>file:/Z:/development/arduino/arduino-1.5.2/hardware/arduino/sam</value>
</variable>
</variableList>

Is it possible to move these to another location so the .project file can be shared on different platforms like it is the case with standard eclipse projects?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.