Giter Club home page Giter Club logo

Comments (37)

MCUdude avatar MCUdude commented on August 12, 2024

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:
2016-07-10 23 02 03

2016-07-10 22 59 51

from megacore.

wothke avatar wothke commented on August 12, 2024

first of all, here is what my board looks like.. my 128

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):

my 128

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.

MCUdude avatar MCUdude commented on August 12, 2024

Hmm. Your settings window looks completely different than mine:
skjermbilde 2016-07-11 08 20 51

Mine also includes the correct core files. Are you running the latest version of ArduinoEclipse?
skjermbilde 2016-07-11 08 23 04

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

Does regular arduino boards such as the Arduino UNO works?

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

no idea what those different AVR versions might be causing... what do you think?

from megacore.

MCUdude avatar MCUdude commented on August 12, 2024

I have no idea.. Have you tried with another computer?

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

Try deleting the local folder and use the Jon link instead. Worked for me!

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

thanks for the support :-)

from megacore.

MCUdude avatar MCUdude commented on August 12, 2024

A version is released! Please update to MegaCore v1.0.3 in ArduinoEclipse IDE

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

Oops! Now v1.0.3 is available

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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 functionSPIClass::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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

and yes, for MightyCore there is a bunch of programmers listed in the respective dropdown - they are all marked as "(MightyCore)"...

from megacore.

MCUdude avatar MCUdude commented on August 12, 2024

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 😞

skjermbilde 2016-07-14 21 07 25

I hope that the Arduino IDE one day just show the programmers of the selected core!

from megacore.

wothke avatar wothke commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

wothke avatar wothke commented on August 12, 2024

works like a charm.. thanks a lot! :-)

from megacore.

jantje avatar jantje commented on August 12, 2024

I could support a localprogrammers.txt or something like that.
That file would be ignored by the arduinno ide.

from megacore.

MCUdude avatar MCUdude commented on August 12, 2024

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.

jantje avatar jantje commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

jantje avatar jantje commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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.

MCUdude avatar MCUdude commented on August 12, 2024

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)

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.