Windows/Linux/Mac Eclipse plugin to compile and upload arduino sketches

I thought there must be something similar for Sloeber, but I can't find any doco.

If there is documentation it is not on sloeber.io. I never heard of this. Jantje

So is there any way from within Sloeber to include a binary file (such as an SSL certificate) into the compiled application binary?

So is there any way from within Sloeber to include a binary file (such as an SSL certificate) into the compiled application binary?

This is a very open question which doesn't mean anything implementation wise. Answering it even openly I say "yes". Yes because sloeber is opensource and as such you can modify anything (but you can't because you don't have the time)

If you want a real answer you will have to be less open in your question. What one needs to know is: Which commands need to be executed at which time.

As a shortcut: take a look at project properties->arduino->compile options There you can append to the build commands

You can run a extra command before building. To do so go to Project properties->C/C++build->settings->build steps

I am not a long time sloeber user, but have used the underlying program Eclipse for Java, PHP and C++ programming. If I were interested in doing what you want to do, I would first look into make files for C++ to see if it can even be done. If you can do the import with a make file, there should be a way to alter the build commands to include the file you want. The trick may be to not just import it, but to be able to access the data once you have the program compiled.

Just some thoughts that may be way out in space.

Hey guys, first of all, great plugin! Far more comfortable than the Arduino IDE.

But one question: Is there a way to upload the binaries created from sloeber without eclipse via commandline with the esptool.exe? Can the command be displayed which is launched by sloeber after compilation? The console output in eclipse seems to be incomplete.

edit: Additional info: I want to flash an ESP32 (WEMOS Lolin32).

Hello, is it possible to create project folders ?, for example, a folder "library tests", another "hardware tests" another "prototypes", etc., and within these put the projects. I have reached the point where I have about 30 projects and maintaining order is complicated, so creating sub-folders would be very useful. if this is already implemented, how is it done ?, I have tried the menus that I had available, the one to create folders only makes it inside the folder of a project therefore it does not work.

I also have to mention that I have found a problem, the version 2.5.0 of the ESP8266 core has so many configurations that some do not reach to be visible in the project configuration, for which I can not select the ones that are hidden, leaving the core unused. Also note that there is a large empty space at the beginning of the list of properties. My operating system is Windows 8, also provide Windows 7 and the same thing happens. My version of Sloeber is 4.3.1 in both tests.

by the way, excellent plugin, since I met him I have not used Arduino IDE ...

Hello!

It's possible to use Sloeber to program an AVR MCU without Arduino.h (not including it/compiling it)?

Thanks!

Hi,

I am totally new to sloeber in combination with OTA and don't know if this is the right place to ask for help. Any help is highly appreciated.

I run sloeber on my Windows 10 professional machine. I have the BasicOTA running on my ESP8266. It shows the IP of my ESP8266. Then I changed the BasicOTA inside loop() to write something to serial. This changed sketch I wanted to use to test OTA.

What I am missing is the OTA port in the project properties. I only see the COM3. Python 2.7.13 is installed.

My sloeber version:

Sloeber, the Eclipse Arduino IDE (plugin version) 4.3.1.201810100607 io.sloeber.feature.feature.group Sloeber.io

What I further have to do to make the OTA-port available under the ports? I think there must be a *.py file which establishes the OTA port but I cannot find any and neither know where to place it. I also believe I have to setup something inside Eclipse / Sloeber.

I found a video:

https://www.youtube.com/watch?v=MGAyIOC24lU

It shows (at 12:29) the OTA port right after uploading the BasicOTA to the ESP8266 - but in my Eclipse this port is missing as I told you already. I only see COM3 in the list.

If I further compare to the video I see they use a board.txt in the property settings. But in my Sloeber I just can select the platform folder:

C:/Program files/sloeber/.../esp8266/hardware/esp8266/2.5.0

Where is this board.txt coming from?

Is there any documentation of how to setup OTA for Sloeber?

Thanks a lot!

Hello,

are there shorcuts in Sloeber to verify/upload sketches? Is it possible to install or somehow use shortcuts?

Thanks.

Pretty cool plugin...

2 questions...

  1. Is Jantje still on patreon? It get a 404! :-)

  2. How do I go about debugging the ESP8266 OTA? It works fine if I put in the IP address. But fails if I use the hostname.local. Do I need to install bonjour anything? Or should it just work out of the box? This is a win7 machine.

Thanks!

Jim

jbuszkie: 1. Is Jantje still on patreon? It get a 404! :-)

See: Eclipse / Sloeber IDE May be Set Adrift.

Hi guys,

sorry if my question is a bit stupid, but I just downloaded bundle for mac, unpacked and installed it, added esp8266 board, created a simple sketch with just `void setup() { Serial.begin(115200); Serial.println("Hi from eclipse");

} ` and got a lot of error messages. Please help, how to fix it?

make all Building file: ../sloeber.ino.cpp Starting C++ compile make -C "/Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/src" install TOOLS_PATH="/Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-" /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/api_lib.c -o build/api/api_lib.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/api_msg.c -o build/api/api_msg.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/err.c -o build/api/err.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/netbuf.c -o build/api/netbuf.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/netdb.c -o build/api/netdb.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/netifapi.c -o build/api/netifapi.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/sockets.c -o build/api/sockets.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include api/tcpip.c -o build/api/tcpip.o /Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/xtensa-lx106-elf-gcc -c -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections -D_ets_ -DICACHE_FLASH -U_STRICT_ANSI_ -DLWIP_OPEN_SRC -Ibuild -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/include -I/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.5.0-beta3/tools/sdk/lwip/include app/dhcpserver.c -o build/app/dhcpserver.o app/dhcpserver.c:22:34: error: expected '=', ',', ';', 'asm' or 'attribute' before 'ICACHE_RODATA_ATTR' static const uint32 magic_cookie ICACHE_RODATA_ATTR = 0x63538263; ^ app/dhcpserver.c: In function 'create_msg': app/dhcpserver.c:268:26: error: 'magic_cookie' undeclared (first use in this function) uint32 magic_cookie1 = magic_cookie; ^ app/dhcpserver.c:268:26: note: each undeclared identifier is reported only once for each function it appears in app/dhcpserver.c: In function 'parse_msg': app/dhcpserver.c:559:14: error: 'magic_cookie' undeclared (first use in this function) &magic_cookie, ^ make[1]: *** [build/app/dhcpserver.o] Error 1 make: *** [sloeber.ino.cpp.o] Error 2

23:53:54 Build Failed. 5 errors, 0 warnings. (took 955ms)

Also I had to manually delete arduinoPlugin/libraries/WiFi because it conflicts with esp8266 Wifi

1st. Thanks to Jantje for all his effort he had put in! I hope he comes back!

2nd. How do I add a library or files that I can add to github through eclipse? I can import a library from a linked location through sloeber, but I can't seem find a way to add it the git repository. If I add a new folder and copy the files in (outside of sloeber) then I can add them to git but then when I compile it complains that it can't find the header file.

I must be missing something simple, right?

Jim "Very newbie with git"

Anyone tried to build the current version on github, did have some success in the past now it is stuck at

[ERROR] Cannot resolve project dependencies:
[ERROR] Software being installed: io.sloeber.feature.feature.group 4.3.1.qualifier
[ERROR] Missing requirement: org.eclipse.tools.templates.freemarker.java11 1.0.0.201812111206 requires ‘osgi.ee; (&(osgi.ee=JavaSE)(version=11))’ but it could not be found
[ERROR] Cannot satisfy dependency: io.sloeber.feature.feature.group 4.3.1.qualifier depends on: org.eclipse.equinox.p2.iu; org.eclipse.cdt.feature.group 9.5.0
[ERROR] Cannot satisfy dependency: org.eclipse.cdt.feature.group 9.6.0.201812111211 depends on: org.eclipse.equinox.p2.iu; org.eclipse.cdt.platform.feature.group [9.6.0.201812111211,9.6.0.201812111211]
[ERROR] Cannot satisfy dependency: org.eclipse.cdt.platform.feature.group 9.6.0.201812111211 depends on: org.eclipse.equinox.p2.iu; org.eclipse.tools.templates.freemarker.java11 [1.0.0.201812111206,1.0.0.201812111206]

Tried on OSX and Debian, same issues …

As far as I understand due to utter lack of community support Janje is NOT coming back and the Sloeber Website will expire some time in June (or was it July ?)

Jantje's Patreon account has already been closed.

It takes resources to create a powerful too such as Sloeber. Thousands of people used the tool every day for tenthousands of compiles. Many demanded features often in a very disrespectful tone, yet very few felt compelled to donate even one dollar through Patreon.

Sloeber might have been free software but what the free stands for is freedom of choice, not free like free beer. There are many more vocal takers in the one source community than there are actually contributors.

Headroom: As far as I understand due to utter lack of community support Janje is NOT coming back and the Sloeber Website will expire some time in June (or was it July ?)

Jantje's Patreon account has already been closed.

It takes resources to create a powerful too such as Sloeber. Thousands of people used the tool every day for tenthousands of compiles. Many demanded features often in a very disrespectful tone, yet very few felt compelled to donate even one dollar through Patreon.

Sloeber might have been free software but what the free stands for is freedom of choice, not free like free beer. There are many more vocal takers in the one source community than there are actually contributors.

This describes the situation very correctly. Thanks for being my first and longest supporter in this adventure. Jantje

I'm bummed that he dropped development. But I thank him for what he did accomplish. I joined this whole thing after he already left.

For those that want something better than the Arduino IDE, there is PlatformIO.

The configuration is not as easy as a menu.. You have to use compiler directives in a file. But once that's set it's pretty easy to change once you know what you are doing.

I've switched over to that. I might not have all the features of eclispe, but it has what I need. I'm still learning VSC (the editor) but it has the syntax checking and auto complete stuff I liked about eclipse

Thanks again Jantje!

Jim

Hi Jantje, I'm an occasional (have not really used for a year) user of Sloeber, but I do like this very nice environment you created for us. I was about to start using it for some small hobby projects and to do a donation, but unfortunately patreon was not active anymore. Thanks for all the good work you did !

Came here looking for his patreon, would like to show some love for his great work. Just started using sloeber and absolutly love it. Thank you Jantje!!
Hopefully he will come back.