Releases: SmingHub/Sming
v3.1.2
This release contains changes leading to more free heap space, faster tcp operations, faster and smaller Docker images, improved CI tests for Windows and more.
Changes
- Fix compilation of native spiffy executable.
- Linker script refactoring.
- Docker images are now based on Alpine with Cloud9 and Xtensa GCC toolchain.
- Added UDK on Windows to our CI system.
- Moved debugf strings into SPI flash to preserve heap space.
- Optional disabling of Command Executor to preserve heap and flash space.
- Unified the memanalyzer input.
And much more. All merged PRs in this release can be seen from here
Requirements
- Starting from this version having
python
version 2.7 or bigger is a requirement in order to be able to upload the compiled application to your device and be able to see the memory analysis.
For a complete list of changes run the following command:
git log 3.1.0..3.1.2
And last but not least this release would have been possible without the help of our fantastic contributors and community members. And again special thanks to ADiea who contributed a lot in this release and has a trove of features that promise even more improvements.
v3.1.1 Hotfix
Hotfix release based on v3.1.0 containing bug fixes for
spiffs_mount
: It was not possible to mount SpifFS automatically- Custom LWIP compilation headers were not set correctly
For a complete list of changes run the following command:
git log 3.1.0..3.1.1
v3.1.0
This release contains major changes, new drivers and bugfixes.
Major Changes
- Switched to using the open-source code of LWIP. This means more free heap and possibility to adapt the LWIP settings according to your network setup
- Added support for SDK 2.0
- Refactored
HardwareSerial
for better responsiveness and speed. Allowed the use of UART1. - Added hooks that will allow extending OTA with signed ROMs and encrypted OTA. See wiki for details.
- Better Spiffs mounting logic
- Initial support for YeeLight smart WiFi bulbs. ( #925 )
- Initial support for AM2321 I2C sensor support.
And much more. All merged PRs in this release can be seen from here
Backwards-incompatible changes
- spiffs_mount_manual() is using the actual Flash address. Before that it was using the memory-mapped address. If you used this function you should recalculate the mounting address using this formula: `new_address = (old_address - 0x40200000)
- espconn_* functions are not enabled by default. If you are using them make sure to compile your application with
ENABLE_ESPCONN=1
. - HardwareSerial - there is RX buffer but if a more complex buffering is desired it has to be implemented inside the callback delegate. Also the callbacks will not receive every single character that was types but the latest one and all unread characters can be read from the buffer.
- If you use esp-alt-sdk 1.4 you should patch it in order to be able to use custom LWIP.
- With this version we officially support SDK 2.0 and 1.5. Support for 1.4 is removed.
For a complete list of changes run the following command:
git log 3.0.1..3.1.0
And last but not least this release would have been possible without the help of our fantastic contributors and community members. Special thanks to ADiea who contributed a lot in this release and has a trove of features that promise even more improvements.
v3.0.1
Minor bug fix version that contains the following changes:
- The
master
branch is our release branch. It contain now all submodules and patched sources directly applied in the source tree. This fixes issues with the release zip file (see #840 ) not containing all third-party submodules and missing the patches for them. - Better compilations with Windows UDK (#842)
- Better documentation for Server and ServoChannel (#862)
- Fix for samples/ScreenTFT_ILI9340-ILI9341 (#865)
- Fixed compilation of Sming with custom heap based on umm_malloc (#868)
For a complete list of changes run the following command:
git log 3.0.0..3.0.1
v3.0.0 X-Mas
We are having a fantastic Christmas release full of new features, performance and stability improvements.
Let’s mention a small part of them:
- Better handling of third-party libraries. Sming is using code from other open source projects. Getting the latest version of that code used to be time consuming and error-prone process. In this version that is no longer the case. We can have the latest version of Spiffs, rBoot, axTLS, Esp-Gdbstub or Stefan Bruens PWM in seconds.
- SSL support based on axTLS v2.1+. You can now send HTTP, MQTT or Websocket messages over SSL. This means that your small devices can securely report the temperature to a remote server.
- Better fatal error reporting and support for custom crash handlers.
- Improved WebSocket support.
- Optional use of Stefan Bruens high-quality PWM library (as a drop-in replacement for the Espressif’s one)
- Optional use of Umm-Malloc heap allocation for better usage of the available heap memory and prevention against heap fragmentation problems.
- Faster SPI.
- And many small or big bug-fixes, performance and stability improvements.
For a complete list of changes run the following command:
git log 2.1.5..3.0.0
Thanks to all of you that contributed to this fantastic major release and … Merry Christmas everyone!
V2.1.5
This is the latest stable release of Sming.
What's new
- It is now possible to create a Sming development environment using Docker
- Better API and Wiki documentation. To generate it locally run
make docs
. The API generation requiresdoxygen
. - Support for SI7021 and APA102.
- Multiple bug-fixes.
V2.1.0
Generic
This is an Bugfix Release of Sming Framework.
Release notes
Supported Espessif SDK
NONOS SDK 1.5.0 (preferred)
NONOS SDK 1.4.0
Bugfixes
Fix Hex output on m_printf
Fix buffer overflow in m_printf
Fix out-of-bounds in reading from UART
Fix interrupt handling in UART SerialCallback'
Fix Template sending when field is on buffer end
Fix TelnetServer initialize member variables correctly
Repository updates
Samples moved to subdirectory
Allow project to add Modules in makefile
V2.0.0
Generic
This is an Update Release of Sming Framework.
Important Changes
- No support for Espressif NONOS V1.3.0 or earlier
- ArduinoJson version update from 4.2 to 5.0.5
- Rom creation now uses esptool2, please have this in your path or set ESPTOOL2 env var to point to the binary
Release notes
- SDK v1.4.0 & v1.5.0 support
- Fix to ensure flash size is correctly set when flashing rBoot with a flash tool that does not set it for you
- Performance fix when closing TCP connections
- New upstream ArduinoJson
- SmartConfig support added to Station class
- Adafruit Neopixel driver and sample added
- Formatting spiffs now done properly, to enable future features like enabling the magic option
- getNetworkMask(), getNetworkGateway() & getNetworkBroadcast() added to AccessPoint class
- getNetworkBroadcast() added to Station class
- Last will and testament support for MQTT
- Websockets support for CommandProcessing
- Hardware PWM support (your results may vary!)
- Fix return code for initialising SD card
- Pass USER_CFLAGS to compiler (you can define this in your Makefile-user.mk to pass options to the build)
v1.4.0
Generic
This is a new Base Release of Sming Framework.
Since the 1.3.0 release, effort has been done to stabilize Core and extend integration within components.
Note: Spiffy/SPIFFS users should build and use the new Spiffy (run make spiffy
in the Sming directory or build from the Sming eclipse project).
Added/Improved Features
- Including Spiffy within Sming repository
- Upgrade to SPIFFS upstream version v0.3.3
- Improve Spiffy/SPIFFS integration
- Improved rBoot integration options
- Fix WDT usage
- Fix DS1820 library
- Initial integration of Sming/Travis CI
Features
- ESP8266 functionality based on Espressif SDK 1.3.0
- TCP Stack based on LWIP
- HTTP, AJAX, Websockets support
- MQTT, support based on libemqtt
- OTA support based on rBoot (open source bootloader)
- Filesystem support based on Spiffs and Spiffy (internal)
- JSON support based in ArduinoJson
Libraries
A large number of (Arduino) libraries have been ported to the Sming environment.
Please check the Libraries and Examples folder for a full list.
v1.3.0
Generic
This is a new Base Release of Sming Framework.
Since the 1.2.0 release, major effort has been done to stabilize Core and extend with major functionality.
Note: the libsming.a binary is not included in the source release any more, please build it yourself.
(New) Features
- ESP8266 functionality based on Espressif SDK 1.3.0
- TCP Stack based on LWIP
- HTTP, AJAX, Websockets support
- MQTT, support based on libemqtt
- OTA support based on rBoot (open source bootloader)
- Filesystem support based on Spiffs and Spiffy
- JSON support based in ArduinoJson
Libraries
A large number of (Arduino) libraries have been ported to the Sming environment.
Please check the Libraries and Examples folder for a full list.