Er is een release van het Mongoose OS 2.20.0-project beschikbaar, die een raamwerk biedt voor het ontwikkelen van firmware voor Internet of Things (IoT)-apparaten geïmplementeerd op basis van ESP32-, ESP8266-, CC3220-, CC3200-, STM32F4-, STM32L4- en STM32F7-microcontrollers. Er is ingebouwde ondersteuning voor integratie met AWS IoT, Google IoT Core, Microsoft Azure, Samsung Artik, Adafruit IO-platforms, evenals met alle MQTT-servers. De projectcode, geschreven in C en JavaScript, wordt gedistribueerd onder de Apache 2.0-licentie.
Kenmerken van het project zijn onder meer:
- mJS-engine, ontworpen voor het ontwikkelen van applicaties in JavaScript (JavaScript is gepositioneerd voor rapid prototyping, en C/C++-talen worden voorgesteld voor definitieve applicaties);
- OTA-updatesysteem met ondersteuning voor het terugdraaien van updates in geval van een storing;
- Hulpmiddelen voor het op afstand bedienen van apparaten;
- Ingebouwde ondersteuning voor gegevensversleuteling op een flashstation;
- Levering van een versie van de mbedTLS-bibliotheek, geoptimaliseerd om de mogelijkheden van cryptochips te benutten en het geheugenverbruik te minimaliseren;
- Ondersteunt microcontrollers CC3220, CC3200, ESP32, ESP8266, STM32F4, STM32L4, STM32F7;
- Gebruik van standaard ESP32-DevKitC-tools voor AWS IoT en ESP32 Kit voor Google IoT Core;
- Geïntegreerde ondersteuning voor AWS IoT, Google IoT Core, IBM Watson IoT, Microsoft Azure, Samsung Artik en Adafruit IO;
Onder de veranderingen in de nieuwe release:
- Er wordt voorzien in de mogelijkheid om een externe LwIP-netwerkstack te gebruiken;
- Encryptiegerelateerde functies zijn verplaatst naar de mbedtls-bibliotheek;
- Voor esp8266-chips is er stack-overflow-beveiliging toegevoegd aan alle geheugentoewijzingsfuncties en is de implementatie van malloc-functies geoptimaliseerd;
- De libwpa2-bibliotheek is stopgezet;
- Verbeterde logica voor DNS-serverselectie;
- Verbeterde initialisatie van de pseudo-willekeurige getalgenerator;
- Voor ESP32-chips omvat LFS transparante codering van gegevens op flashdrives;
- Ondersteuning toegevoegd voor het laden van configuratiebestanden van VFS-apparaten;
- Implementatie van het gebruik van SHA256-hashes voor authenticatie;
- Ondersteuning voor Bluetooth en Wi-Fi is aanzienlijk uitgebreid.
Bron: opennet.ru