-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Closed
Labels
Category: BuildRelated to building/IDE/releasesRelated to building/IDE/releasesType: DiscussionOpen ended discussion (compared to specific question)Open ended discussion (compared to specific question)
Description
The last 2 weeks, the nightly builds are based again on:
- Core 2.4.1
- LWIP 1.4
The builds before that were based on:
- Core 2.4.2
- LWIP 2.0 low memory
Major changes from 2.4.1 => 2.4.2:
- Arduino cont stack overlaps system stack by 4 kB, freeing 4 kB of user memory. ( Move continuation stack from .bss onto sys stack esp8266/Arduino#4622 )
- Move lots of strings to flash, saving RAM.
- I2C: improve bus recovery procedure
- numerous WiFi bug fixes.
- Improve hardware serial
- New waveform generation code supporting multiple analogWrite, Servo, Tone at the same time (Support multiple tone(), analogWrite(), and Servo esp8266/Arduino#4640, Compatibility and IRQ fixed for waveform/tone/pwm esp8266/Arduino#4872)
- Add ESP.deepSleepMax() function to get maximum possible deep sleep time ( Mention ESP.deepSleepMax() in the list of ESP-specific functions esp8266/Arduino#4627 )
Possible breaking changes:
Overlap of stacks between system and Arduino cont:
- We define a number of rather large objects on the system stack.
- It is not entirely sure this behavior will introduce other stability issues.
- Large objects could be moved to the heap when in doubt.
New waveform generation code:
- (PWM flicker is back again with new core 2.4.2 #1653) changes stability of PWM signal.
Issues fixed in 2.4.2 and broken in 2.4.1:
- (since 20181004 NeoPixel SK6812/WS2812B pixel errors (2.4.1 vs 2.4.2) #1882) since 20181004 NeoPixel SK6812/WS2812B pixel errors (2.4.1 vs 2.4.2)
- (Restarts due to notification LED [mega-20180809] #1642) Restarts due to notification LED [mega-20180809]
- More available free memory makes the unit faster and perhaps less likely to crash due to allocation errors.
Are there any other issues which may help in deciding what version of the core library to use?
It is also possible to make different choices for different builds.
For example, for typical Sonoff builds (1M flash) it may be useful to have the extra memory. Although 2.4.2 builds may be bigger in size making it harder to perform OTA.
Metadata
Metadata
Assignees
Labels
Category: BuildRelated to building/IDE/releasesRelated to building/IDE/releasesType: DiscussionOpen ended discussion (compared to specific question)Open ended discussion (compared to specific question)