Some advise for compiling last releases?
Moderators: grovkillen, Stuntteam, TD-er
Some advise for compiling last releases?
Hi @all,
I´m new to the ESPEasy topic and have to say it´s a really impressive project. Great work !!
Since I use FHEM for my home automatisation I need to compile the R126 version. There are some new FHEM related topics I wan´t to try.
Today I started some tests compiling ESPEasy R126. But I almost get errors.
If I use IDE Version > 1.6.5 I get something like "was not declared in this scope".
If I use IDE Version 1.6.5 I get errors with the ArduinoJson Lib (even if I use the latest version from the ArduinoJson github).
So it would be great if you can give some advice on how to compile the latest release.
Which IDE must be used (I assume 1.6.5) und which Libs have to be used (in which version)?
regards
Dominik
I´m new to the ESPEasy topic and have to say it´s a really impressive project. Great work !!
Since I use FHEM for my home automatisation I need to compile the R126 version. There are some new FHEM related topics I wan´t to try.
Today I started some tests compiling ESPEasy R126. But I almost get errors.
If I use IDE Version > 1.6.5 I get something like "was not declared in this scope".
If I use IDE Version 1.6.5 I get errors with the ArduinoJson Lib (even if I use the latest version from the ArduinoJson github).
So it would be great if you can give some advice on how to compile the latest release.
Which IDE must be used (I assume 1.6.5) und which Libs have to be used (in which version)?
regards
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
For me it works with these libraries and IDE 1.6.5:
ArduinoJson (version ArduinoJson-v5.6.4 https://github.com/bblanchon/ArduinoJson)
IRremoteESP8266 (https://github.com/sebastienwarin/IRremoteESP8266)
LiquidCrystal_I2C (https://github.com/marcoschwartz/LiquidCrystal_I2C)
PubSubClient (https://github.com/knolleary/pubsubclie ... s/tag/v2.6)
Also important to upgrade to ESP8266 core 2.3.0 with this URL for the boardmanager:
http://arduino.esp8266.com/stable/packa ... index.json
ArduinoJson (version ArduinoJson-v5.6.4 https://github.com/bblanchon/ArduinoJson)
IRremoteESP8266 (https://github.com/sebastienwarin/IRremoteESP8266)
LiquidCrystal_I2C (https://github.com/marcoschwartz/LiquidCrystal_I2C)
PubSubClient (https://github.com/knolleary/pubsubclie ... s/tag/v2.6)
Also important to upgrade to ESP8266 core 2.3.0 with this URL for the boardmanager:
http://arduino.esp8266.com/stable/packa ... index.json
Re: Some advise for compiling last releases?
Thx for the information.
I will try that this evening.
And you can compile R126 without any errors?
Dominik
I will try that this evening.
And you can compile R126 without any errors?
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
Yes I can compile all releases including R126 .
I only get a warning about the LiquidCrystal_I2C library which I ignore.
I only get a warning about the LiquidCrystal_I2C library which I ignore.
Re: Some advise for compiling last releases?
Well I tried the JSON Lib 5.6.4. But still got this error:
IDE is 1.6.5-RC5 with ESP8266 Toolchain 2.3.0
Any ideas?
Dominik
Code: Select all
C:\Users\Dominik\AppData\Local\Temp\build541259997608530700.tmp\ESPEasy.cpp.o: In function `UdpContext::connect(ip_addr, unsigned short)':
C:\Users\Dominik\Desktop\arduino-1.6.5-r5\portable\packages\esp8266\hardware\esp8266\2.3.0\libraries\ArduinoJson/include/ArduinoJson/Internals/../JsonBuffer.hpp:119: undefined reference to `handle_upload_post()'
collect2.exe: error: ld returned 1 exit status
Any ideas?
Dominik
regards
Dominik
Dominik
- nonflammable
- Normal user
- Posts: 42
- Joined: 09 Mar 2016, 22:19
- Location: Poland
Re: Some advise for compiling last releases?
1. Clean install Arduino IDE (zip) v1.6.11
2. http://arduino.esp8266.com/stable/packa ... index.json v2.3.0 (install: https://github.com/esp8266/Arduino#inst ... ds-manager)
3. Libraries copied from http://www.esp8266.nu/downloads/ESPEasy_R120.zip to Arduino IDE folder\libraries
4. Github source https://github.com/ESP8266nu/ESPEasy
5. Rename ESPEasy-master folder to ESPEasy
Compiled without errors/warnings.
Please check step 3 on your computer.
2. http://arduino.esp8266.com/stable/packa ... index.json v2.3.0 (install: https://github.com/esp8266/Arduino#inst ... ds-manager)
3. Libraries copied from http://www.esp8266.nu/downloads/ESPEasy_R120.zip to Arduino IDE folder\libraries
4. Github source https://github.com/ESP8266nu/ESPEasy
5. Rename ESPEasy-master folder to ESPEasy
Compiled without errors/warnings.
Please check step 3 on your computer.
Last edited by nonflammable on 17 Sep 2016, 20:23, edited 1 time in total.
Re: Some advise for compiling last releases?
Ok I will check that this evening.
But that was exactly what I have done ...
Get back with results soon. Thx so far
But that was exactly what I have done ...
Get back with results soon. Thx so far
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
Hi @all,
in the meantime I can compile the GIT sources even with 1.6.11 (ESPEsay R 129).
But it can only be done if you disable the SPIFFS Feature.
As soon as you anable SPIFFS it results in the known error:
I got the same error (SPIFFS enabled) if I use Arduino IDE 1.6.5-r5.
Without SPIFFS there are no Problems.
regards
Dominik
in the meantime I can compile the GIT sources even with 1.6.11 (ESPEsay R 129).
But it can only be done if you disable the SPIFFS Feature.
As soon as you anable SPIFFS it results in the known error:
Code: Select all
undefined reference to `handle_upload_post()'
Without SPIFFS there are no Problems.
regards
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
If I understand the feature of SPIFFS well, ESPEasy is not 100% functional without SPIFFS.
Because all the settings are saved in SPIFFS which are read again after a reboot.
So I will not use IDE 1.6.5 RC5 or 1.6.11.
Just using 1.6.5 until a new version of ESPEasy forces me to use a newer Arduino IDE release .
Because all the settings are saved in SPIFFS which are read again after a reboot.
So I will not use IDE 1.6.5 RC5 or 1.6.11.
Just using 1.6.5 until a new version of ESPEasy forces me to use a newer Arduino IDE release .
Re: Some advise for compiling last releases?
Hi !

Ok, but where can you download 1.6.5. If you look at arduino.cc there is only version 1.6.5 RC5.Just using 1.6.5 until a new version of ESPEasy forces me to use a newer Arduino IDE release .

regards
Dominik
Dominik
Re: Some advise for compiling last releases?
SPIFFS hasn't been tested for a while and some code needs to be fixed and added to use SPIFFS again. It will be fixed in R130.moelski wrote:I got the same error (SPIFFS enabled) if I use Arduino IDE 1.6.5-r5.
Without SPIFFS there are no Problems.
regards
Dominik
Although i would currently not recommend using SPIFFS (you may well be the only one using it...)
Re: Some advise for compiling last releases?
Just did a download of 1.6.5 R5 and it seems to be exactly the same as 1.6.5 when compiling both give a file of the same size.moelski wrote:Hi !
Ok, but where can you download 1.6.5. If you look at arduino.cc there is only version 1.6.5 RC5.Just using 1.6.5 until a new version of ESPEasy forces me to use a newer Arduino IDE release .
So apparently you are talking about the SPIFFS found in the source code :#define FEATURE_SPIFFS while I was talking about the SPIFFS found in the tools section of the IDE under : Flash Size.
So a misunderstanding from me. I have never tried to change the setting from false to true of the FEATURE_SPIFFS because just above that section you read:
// DO NOT CHANGE ANYTHING BELOW THIS LINE
So why are you trying to change the setting to true ? I do not see the benefit of this even if it worked.
Re: Some advise for compiling last releases?
I´m interested in coding and testingSo why are you trying to change the setting to true ?

Anyway ... Martinus made it clear

So the results are as follow ...
Compiling with 1.6.11 is no problem until you have the correct libs from the R120 package, the 2.3.0 ESP toolchain and SPIFFS is not touched

greetings
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
i can confirm this.moelski wrote: Compiling with 1.6.11 is no problem until you have the correct libs from the R120 package, the 2.3.0 ESP toolchain and SPIFFS is not touched![]()
i still wondering, why SPIFFS is not used more in ESPeasy.
on the 4M esp's there is lot of room for some web-server files.
as far as i saw in the espeasy-source, there are only config.txt (as bin) and rules.txt on the SPIFFS.
(i must be another thread, if it is now SPIFFS....)
may check here, what could be done:
WEBSERVER on SPIFFS (i tested it working fine!:::)
https://bitbucket.org/bachi76/esp8266-framework/src
https://github.com/esp8266/Arduino/blob ... ile-system
http://www.insign.ch/blog/2016/01/29/io ... rettyPhoto
Re: Some advise for compiling last releases?
SPIFFS is a real memory hog! Takes more than 3k RAM.
This 3k can be spend on much more usefull stuff than SPIFFS (ESP Easy is not a webserver, it's a wireless sensor)
But if you want to use it, you can enable it. I may work (again) with the latest release.
This 3k can be spend on much more usefull stuff than SPIFFS (ESP Easy is not a webserver, it's a wireless sensor)
But if you want to use it, you can enable it. I may work (again) with the latest release.
Re: Some advise for compiling last releases?
i agree with everything on the esp-development here.
a little "but": there may be slightly different use-cases for the espeasy.
i have all my 2 needed sensors on my installed espeasy-3 (out of 14) running.
and as far as i see, there are 27k ram left.
so i can easyly give 3k for an shining web-interface.
and also like you: i dont really need the web-interace
. i have the espeasy as a sensor. exactly as you said.
i dont pack all possible sensors on one module. but why not have a shiny web-gui? its an option.
and SPIFFS can be an option (where RAM is left over.)
thankfully you build the option in, so we have it already in the beloved espeasy.
with the coming esp32 there will maybe more room for this,
may we see upcoming use-cases for SPIFFS wich we will like ?!?
in the linked demo the webserver looked good, but overall, same as you, i like the sensor-capability most on the espeasy

a little "but": there may be slightly different use-cases for the espeasy.
i have all my 2 needed sensors on my installed espeasy-3 (out of 14) running.
and as far as i see, there are 27k ram left.
so i can easyly give 3k for an shining web-interface.
and also like you: i dont really need the web-interace

i dont pack all possible sensors on one module. but why not have a shiny web-gui? its an option.
and SPIFFS can be an option (where RAM is left over.)
thankfully you build the option in, so we have it already in the beloved espeasy.
with the coming esp32 there will maybe more room for this,
may we see upcoming use-cases for SPIFFS wich we will like ?!?
in the linked demo the webserver looked good, but overall, same as you, i like the sensor-capability most on the espeasy

- Attachments
-
- free-ram.png (17.66 KiB) Viewed 23743 times
Re: Some advise for compiling last releases?
Hi !

In my case I like to use ESPEsay as an actor. I know that is not the main purpose of ESPEasy, but I hope/think it will work.
I´d like to controll my self build living room light with ESPEasy.
That lamp uses RGP stripes (WS2812) and some LED lights which need to be dimmable.
Using SPIFFS allows me to serve a small webpage with a color selector for the RGP Stripe. I know this could also be done by embedding the javascript code.
But using SPIFFS would make life much easier
Anyway ... this gets a little bit offtopic
But thank you guys for ESPEasy and the SPIFFS possibility
Dominik
Correctthere may be slightly different use-cases for the espeasy.

In my case I like to use ESPEsay as an actor. I know that is not the main purpose of ESPEasy, but I hope/think it will work.
I´d like to controll my self build living room light with ESPEasy.
That lamp uses RGP stripes (WS2812) and some LED lights which need to be dimmable.
Using SPIFFS allows me to serve a small webpage with a color selector for the RGP Stripe. I know this could also be done by embedding the javascript code.
But using SPIFFS would make life much easier

Anyway ... this gets a little bit offtopic

But thank you guys for ESPEasy and the SPIFFS possibility

Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
Hi !
Just a small note about SPIFFS here.
I build R131 with SPIFFS enabled. Works like a charm
Thx for fixing that !!
And it seems to be very easy to get my "RGB-lamp" project setup ...
Attached two first test screens
Loading javascript from a webpage is also no problem for SPIFFS. Excellent
But I will open a new topic in Projects for that.
Just a small note about SPIFFS here.
I build R131 with SPIFFS enabled. Works like a charm

And it seems to be very easy to get my "RGB-lamp" project setup ...
Attached two first test screens

Loading javascript from a webpage is also no problem for SPIFFS. Excellent

But I will open a new topic in Projects for that.
- Attachments
-
- SPIFFS RGB Color Picker.PNG (13.47 KiB) Viewed 23586 times
-
- SPIFFS Filelist.PNG (19.4 KiB) Viewed 23586 times
regards
Dominik
Dominik
-
- Normal user
- Posts: 51
- Joined: 15 Sep 2016, 00:20
Re: Some advise for compiling last releases?
Hi,
I am trying to compile last release. The source is compiling fine, uploading is done without error.
But in serial window I see errors:
It's a Wemos D1 Mini. I tried both flash size: 4M (3M SPIFFS), 4M (1M SPIFFS).
A possible workaround:
In Arduino IDE -> SKETCH -> EXPORT COMPILED BINARY -> rename .bin to ESPEasy_R131_4096.bin. Then using flashcmd.bat I am able to upload and run latest Esp Easy.
Question: why it's not uploading correctly trough Arduino IDE?
I am trying to compile last release. The source is compiling fine, uploading is done without error.
But in serial window I see errors:
Code: Select all
ets Jan 8 2013,rst cause:2, boot mode:(3,0)
load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v09826c6d
~ld
��U
PID:0
Version:0
INIT : Incorrect PID or version!
RESET: Reboot count: 2
FLASH: Erase Sector: 100
FLASH: Erase Sector: 101
A possible workaround:
In Arduino IDE -> SKETCH -> EXPORT COMPILED BINARY -> rename .bin to ESPEasy_R131_4096.bin. Then using flashcmd.bat I am able to upload and run latest Esp Easy.
Question: why it's not uploading correctly trough Arduino IDE?
Re: Some advise for compiling last releases?
Hi there,
Which option should i choose for compiling the firmware sketch for ESP-01 1M (black) and also for ESP-07 and ESP-12 4M (1M or 3M SPIFFS)?
Thank you!

Which option should i choose for compiling the firmware sketch for ESP-01 1M (black) and also for ESP-07 and ESP-12 4M (1M or 3M SPIFFS)?
Thank you!


Re: Some advise for compiling last releases?
Hi !
That depends on your needs
Personally I use an ESP12E (nodemcu 1.0) which has 4MB of flash. And I use 3MB für SPIFFS.
That means you have 1MB left for the program (like ESPEasy).
The Arduino IDE gives me this result:
In other words ... My Program can be 1MB in size max and I have 3MB for SPIFFS.
For your ESP-01 ... Well at the moment you can use 1M / 512k. ESPEasy should fit into the flash.
But if you need some extras you could get into storage trouble. In that case you switch back to 1M / 256K
Hope that helps ...
Dominik
Code: Select all
Which option should i choose for compiling the firmware sketch for ESP-01 1M (black) and also for ESP-07 and ESP-12 4M (1M or 3M SPIFFS)?

Personally I use an ESP12E (nodemcu 1.0) which has 4MB of flash. And I use 3MB für SPIFFS.
That means you have 1MB left for the program (like ESPEasy).
The Arduino IDE gives me this result:
Code: Select all
Sketch uses 444,277 bytes (42%) of program storage space. Maximum is 1,044,464 bytes.
For your ESP-01 ... Well at the moment you can use 1M / 512k. ESPEasy should fit into the flash.
But if you need some extras you could get into storage trouble. In that case you switch back to 1M / 256K
Hope that helps ...
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
i think you are free to choose the size you want for a filesystem (SPIFFS),
on which are by default only 3 small files...
http://www.esp8266.nu/index.php/Tutoria ... and_upload
on which are by default only 3 small files...
http://www.esp8266.nu/index.php/Tutoria ... and_upload
Re: Some advise for compiling last releases?
Good starter information provided, Thank you for that!tozett wrote:i think you are free to choose the size you want for a filesystem (SPIFFS),
on which are by default only 3 small files...
http://www.esp8266.nu/index.php/Tutoria ... and_upload

Re: Some advise for compiling last releases?
it sould be a new SPIFFS thread, or better in the wiki,
but the FLASH layout (and space for SPIFFS) is clearly shown here:
good overview:
http://esp8266.github.io/Arduino/versio ... ystem.html
found more details here:
https://github.com/pellepl/spiffs/blob/ ... /TECH_SPEC
active branch?
https://github.com/pellepl/spiffs
but the FLASH layout (and space for SPIFFS) is clearly shown here:
good overview:
http://esp8266.github.io/Arduino/versio ... ystem.html
found more details here:
https://github.com/pellepl/spiffs/blob/ ... /TECH_SPEC
active branch?
https://github.com/pellepl/spiffs
Re: Some advise for compiling last releases?
any chance to see your SPIFFS code from this project?moelski wrote: Loading javascript from a webpage is also no problem for SPIFFS. Excellent![]()
But I will open a new topic in Projects for that.

Re: Some advise for compiling last releases?
Hi !
But for sure I can show my code for that. But let me prepare a useable demo (or just finish my Candle Output
).
In general you have to enhance the Webserver addHeader Funktion with your JavaScript.
And then the webserver code handles the rest ... You have to enable SPIFFS of course.
The drawback is that in my current version the JavaScript is embedded into all pages.
That´s not so funny ... As soon as I have fixed that I can post some information.
Dominik
Well I think this get´s a little bit offtopicany chance to see your SPIFFS code from this project?

But for sure I can show my code for that. But let me prepare a useable demo (or just finish my Candle Output

In general you have to enhance the Webserver addHeader Funktion with your JavaScript.
And then the webserver code handles the rest ... You have to enable SPIFFS of course.
The drawback is that in my current version the JavaScript is embedded into all pages.
That´s not so funny ... As soon as I have fixed that I can post some information.
Dominik
regards
Dominik
Dominik
Re: Some advise for compiling last releases?
cool. thank.
you open a new topic SPIFFS?
i had some testing code working, serving files from spiffs.
if not found, than the usual way on ESPeasy.
while bug-hunting i found a great example for an already working best-looking gui with SPIFFS.
worth to have a look?
https://github.com/esp8266/Arduino/issu ... -214698254
now jumping out this thread to your topic SPIFFS...

you open a new topic SPIFFS?
i had some testing code working, serving files from spiffs.
if not found, than the usual way on ESPeasy.
while bug-hunting i found a great example for an already working best-looking gui with SPIFFS.
worth to have a look?
https://github.com/esp8266/Arduino/issu ... -214698254
now jumping out this thread to your topic SPIFFS...

Re: Some advise for compiling last releases?
regards
Dominik
Dominik
Who is online
Users browsing this forum: Ahrefs [Bot] and 12 guests