Comments (37)
I have no experience with Eclipse, but I think that the Arduino IDE is a bit short when it comes to functionality. I've tried using PlatformIO for my projects, but low level settings such as bootloader burning and fuse settings is just painful.
I decided to install Eclipse/Arduino on my mac, and the MegaCore works perfectly when adding the boards manager URL. Please post your error or a screenshot so I might be able to help you out.
Oh, while I'm at it; would mind posting a picture of your ATmega128 board? I'm just curious 😃 At the moment mine looks like this:
from megacore.
first of all, here is what my board looks like..
I agree that the Arduino IDE isn't really an IDE and that's why I'd like to find something that is more than just notepad+.. that's how I came to try that Sloeber IDE.
Unfortunately I meanwhile have the impression that Sloeber also has quite a few quality issues..
The problem that I have mentioned above is this: When you create a new project for some of the built-in microcontrollers, then the IDE will automatically setup a usable environment where your sketch code can use the various stuff from Arduino.h. However when you create the new project based on MegaCore (e.g. for the ATmega128) then the generated environment lacks all the stuff that should be included via Arduino.h, e.g. if you wrote "uint8_t x=0;" then the IDE will mark uint8_t as a syntax error because it doesn't know about the required include location. I had to manually patch in these missing include folders (see below):
I think either it is a bug of the IDE that the automatic include folder generation doesn't work correctly for the add-on cores - or if that is something that is actually controlled from come MegaCore config file, then there might be an issue in there..
Another annoying thing is, that eventhough the project is specifically targeted to a specific core - i.e. ATmega128 - the source code editor is not aware of the respective define AVR_ATmega128 and consequently the syntax/error highlighting is utterly useless.
from megacore.
Hmm. Your settings window looks completely different than mine:
Mine also includes the correct core files. Are you running the latest version of ArduinoEclipse?
from megacore.
I am using the stable win32 version of V3 from the download page (http://eclipse.baeyens.it/stable.php?OS=Windows).. the "core" files are correctly included (see 2 top entries) - but its the standard Arduino stuff that's not.. "Installation Details" gives me Version: 3.0.0.201603312133 for "Arduino Eclipse Extensions".
from megacore.
Does regular arduino boards such as the Arduino UNO works?
from megacore.
yes, that's exactly the point.. the projects generated for regular boards seem to be OK but not the ones for the add-on boards.
from megacore.
no idea what those different AVR versions might be causing... what do you think?
from megacore.
I have no idea.. Have you tried with another computer?
from megacore.
no, I only have this one computer.. btw: when originally installing MegaCore in the Arduino IDE I had used the https://mcudude.github.io/MegaCore/package_MCUdude_MegaCore_index.json approach.. but for Eclipse I had just copied the respective MegaCore folder from the Arduino IDE (see C:...\Application Data\Arduino15\packages) I would have thought that's equivalent to the "manual approach" described on your page - is isn't it?
from megacore.
Try deleting the local folder and use the Jon link instead. Worked for me!
from megacore.
my mistake.. just deleted the folder and reinstalled using JSON. There still are some SPI related compile issued but it now looks much better.
from megacore.
I'll draft a new release soon that fixes all the SPI errors. I think I'll add some info about Eclipse in the Readme file
from megacore.
thanks for the support :-)
from megacore.
A version is released! Please update to MegaCore v1.0.3 in ArduinoEclipse IDE
from megacore.
new JSON URL? maybe Eclipse is caching the old file.. but I still only see versions 1.0.0, 1.0.1 and 1.0.2
from megacore.
Oops! Now v1.0.3 is available
from megacore.
Installing Arduino Board Platforms
Failed to extract tar.bz2. N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/downloads/MegaCore-1.0.3.tar.gz
Can't extract file N:\Program Files\ArduinoWindows\eclipseArduino\arduinoPlugin\packages\MegaCore\hardware\avr\1.0.3\avrdude.conf, file already exists!
from megacore.
now I am getting these errors. I guess the problem are the duplicate SPI source files in the SPI and the SPI/src folders.
"... "-LN:/Program Files/ArduinoWindows/eclipseWorkspace/RainMaker/Release" -lm ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::begin()' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::initialized' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::end()' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::interruptMode' makefile:98: recipe for target 'RainMaker.elf' failed ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::usingInterrupt(unsigned char)' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::interruptMask' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::notUsingInterrupt(unsigned char)' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPIClass::interruptSave' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here ./libraries/SPI/SPI.cpp.o: In function
SPIClass::begin()':
N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/SPI.cpp:27: multiple definition of SPI' ./libraries/SPI/src/SPI.cpp.o:N:/Program Files/ArduinoWindows/eclipseArduino/arduinoPlugin/packages/MegaCore/hardware/avr/1.0.3/libraries/SPI/src/SPI.cpp:27: first defined here collect2.exe: error: ld returned 1 exit status make: *** [RainMaker.elf] Error 1
from megacore.
Really weird! The update went flawless here.. I uninstalled v1.0.2 and installed v1.0.3. I also needed to update my projects to the latest version, if not I get tons of errors about missing files
from megacore.
after I deleted the SPI/src folder and removed respective references in the project the build completes successfully.. (unfortunately I cannot test the code yet since I depend on the programmer to upload the code - but apparently the latest nightly build of the EclipseArduino should also have that feature..)
from megacore.
I just installed the "latest" nightly version of the IDE from scratch and then installed the MegaCore 1,0.3. The SPI/src folder still needs to be deleted before the code builds..
from megacore.
Another thing: when creating a new project for one of the "built-in" board types, Sloeber (Eclipse Arduino) provides a selection of the available "Upload Protocols" (e.g. AVRISP MKII, etc) - among others also the one that I need: "USBasp".
However, as soon as I switch (within that same dialog) to the boards.txt for the MegaCore, all the "Upload Protocol" options disappear and the only option left is "Default" (which doesn't work).
Is there anything within the MegaCore configuration that might explain this behaviour or is this just a Sloeber bug with regard to the handling of non-built-in boards?
from megacore.
MegaCore doesn't originally got its own set of programmers, because the built in ones (The ones that comes with the IDE) works fine. Does these programmers disappear if you try MightyCore (which have its own programmers?)
from megacore.
Where in the Sloeber IDE should the programmers and the burn bootloader option be?
EDIT: I found it! Under the project preferences or when a new project is created. Do you know if it's possible to burn bootloader using Sloeber?
from megacore.
no idea whether or not it's possible to burn bootloader.. when using the "latest" Nightly build version the respective "Upload Protocol" dropdown is also shown in the "New Sketch" funtionality..
from megacore.
and yes, for MightyCore there is a bunch of programmers listed in the respective dropdown - they are all marked as "(MightyCore)"...
from megacore.
There's no problem adding extra programmers so that they will appear in Eclipse when using MegaCore. The problem is that this completely mess up Arduino IDE. Theres duplicates everywhere 😞
I hope that the Arduino IDE one day just show the programmers of the selected core!
from megacore.
In case you don't want to mess up the ArduinoIDE just yet.. could you get me a copy of the MegaCore config that you used for the above sceenshot so that I can use it for Eclipse?
from megacore.
Here's the programmers.txt file:
programmers.txt
The Arduino IDE way of handling the programmers is just terrible! I hope there will be a better solution soon. A solution may be to create an Eclipse branch, I'll need to think about that. I already got two other cores to keep up to date, and the only difference between this branch and the master is the programmers.txt file
from megacore.
works like a charm.. thanks a lot! :-)
from megacore.
I could support a localprogrammers.txt or something like that.
That file would be ignored by the arduinno ide.
from megacore.
That would be great! How about externalprogrammers.txt?
Oh, while you're here; will there be possible to burn bootloader using Sloeber IDE in the future? That's the only missing feature left! 😃
from megacore.
externalprogrammers.txt is fine for me.
Burning bootloaders?
I just added the programmers and more people p*** me off with it than made me happy. But I agree that it is the only missing feature left! And now that I'm no longer pointing to the Arduino IDE the only reason to install the Arduino IDE next to sloeber.
from megacore.
externalprogrammers.txt it is! I'll push the new files this evening.
I just added the programmers and more people p*** me off with it than made me happy.
I didn't quite get that; people are complaining instead of being happy about this feature?
from megacore.
I didn't quite get that; people are complaining instead of being happy about this feature?
yes, I did my first github block ever yesterday.
from megacore.
yes, I did my first github block ever yesterday.
I'm not picking sides, and there's definitely at least two sides of this case. From the owners side it's annoying to constantly get questions where a) the user didn't follow the instructions or read the documentation or b) it's not your issue. You're doing this voluntarily, and it's open source and free, so no one can or shouldn't expect anything. People will always report "false" issues and ask questions, but no one is forcing you to help or answer them. Have a look at AVRdudes issue list; it's long, most issues are unanswered but the latest version (6.3) was just released 😉
From the users side there should be a place where questions can be asked. And there will be questions when documentation is poor. I'll happily donate money to an author if the software is well written, proper support is available and my projects are depending on it.
from megacore.
I'm closing this issue as it's not really my job to make sure it works with Eclipse. My job is to make it work seamlessly with Arduino IDE, and jantjes job is to make sure seamless IDE adding work with Eclipse as well 😉
from megacore.
Related Issues (20)
- ATmega 128 I2C doesn't work HOT 2
- Incorrect clock timing HOT 1
- How to wake up from sleep using WDT reset? (atmega64) HOT 3
- arduino framework does'nt work on ATmega128 HOT 2
- Trouble uploading sketch to Arduino Mega2560 after burning bootloader HOT 1
- unable to burn bootloader for mega2560 HOT 40
- stk500v2 bootloader potential issues HOT 4
- To adopt urboot for MegaCore HOT 2
- Is it possible to program with FT232 programming? Is there a schematic drawing available? HOT 5
- Customizable LED_BUILTIN HOT 4
- Arduino Mega OTEthernet not working HOT 6
- generation of the file .hex HOT 11
- cannot be compiled when using the Wire library HOT 5
- Cannot upload sketch to mega without bootloader using arduinoISP HOT 5
- Original Mega 2560 bootloader HOT 4
- Doesn't work on arduino mega 2560 (clone) HOT 2
- ArduinoOTA problems on Mega2560 using Megacore >= 3 HOT 2
- Erase bootloader
- Support for multiple UARTs at same time?
- ATmega64a serial upload problem HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from megacore.