The release of the Mongoose OS 2.20.0 project is available, which offers a framework for developing firmware for Internet of Things (IoT) devices based on ESP32, ESP8266, CC3220, CC3200, STM32F4, STM32L4 and STM32F7 microcontrollers. There is built-in support for integration with AWS IoT platforms, Google IoT Core, Microsoft Azure, Samsung Artik, Adafruit IO, as well as with any MQTT servers. The project code, written in C and JavaScript, is distributed under the Apache 2.0 license.
Of the features of the project are noted:
- mJS engine designed for developing applications in JavaScript (JavaScript is positioned for rapid prototyping, and for final applications it is proposed to use C / C ++ languages);
- OTA update system with update rollback support in case of failure;
- Device remote control tools;
- Built-in support for data encryption on a Flash drive;
- Delivery of a version of the mbedTLS library, optimized to use the capabilities of cryptochips and minimize memory consumption;
- Support for microcontrollers CC3220, CC3200, ESP32, ESP8266, STM32F4, STM32L4, STM32F7;
- Using ESP32-DevKitC for AWS IoT and ESP32 Kit for Google IoT Core;
- Integrated support for AWS IoT, Google IoT Core, IBM Watson IoT, Microsoft Azure, Samsung Artik and Adafruit IO;
Among the changes in the new release:
- Provided the ability to use an external LwIP network stack;
- Encryption-related functions have been moved to the mbedtls library;
- For esp8266 chips, stack overflow protection has been added to all memory allocation functions and the implementation of malloc functions has been optimized;
- The use of the libwpa2 library has been discontinued;
- Improved DNS server selection logic;
- Improved pseudo-random number generator initialization;
- For ESP32 chips, transparent encryption of data on Flash drives is enabled in LFS;
- Added support for loading configuration files from VFS devices;
- Implemented the use of SHA256 hashes for authentication;
- Significantly expanded support for Bluetooth and Wi-Fi.
Source: opennet.ru