sloeber / arduino-eclipse-plugin Goto Github PK
View Code? Open in Web Editor NEWA plugin to make programming the arduino in eclipse easy
Home Page: https://eclipse.baeyens.it/
A plugin to make programming the arduino in eclipse easy
Home Page: https://eclipse.baeyens.it/
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.
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:
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
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)
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?
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.
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. :)
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?
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!
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=""${workspace_loc:/leonardo_test}""/>
Removal of these elements appears to correct the issue.
<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.
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?
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.
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:
It won't compile.
Thanks,
Franklin
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).
When installing arduino from the package manager (e.g. yum in fedora), then the Eclipse Arduino plugin will not find a proper Arduino IDE and lib location.
Please fix this so that the Eclipse plugin works with official Arduino packages on Fedora (and other) distro's.
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
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.
Hi there,
I'm having issues with libraries such as NanodeUIP which make uses of includes from <sys/?>. When building it complains it cannot file these files.
Any ideas?
Regards,
Johan
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).
Hello,
I use version 1.2.4.
Steps to reproduce:
Actual result:
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
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:
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:
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.
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.
If you create a new Arduino Sketch without setting the path for the Arduino IDE you get a very ugly error that isn't very acurate.
lg Darcade
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
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 ;-)
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
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
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:
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?
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.
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.
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]
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
env: Mac Mountain Lion (10.8.4), Eclipse Juno (Service Release 2 Build id: 20130225-0426)
Steps:
work-around:
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.
Prerequisite:
Environment:
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:
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 by
test.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
Steps
ls -lR of Arduino.app - hope it allows to very setup: http://mattbsoftware.com/arduino/teensy-bug-ls-lR-Arduino.txt
sample project hello_teensy2... http://mattbsoftware.com/arduino/helloTeensy2-first-tri-color-LEDs-and-more.zip
Work Around: Use the teensy loader to deploy. Little bit of a hassle, but by no means halting progress.
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.
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.
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.
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
When creating a new project with the latest version the indexer is not configured properly. When I try to configure it by hand I don't succeed in getting Serial to be recognized by the indexer even though all files are known.
Is the same problem in kepler?
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.
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
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.
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.
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?
Guido informed me this works great.
So I'lll make a link to it in the faq.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.