Hace pocos dias se dio a conocer el lanzamiento de la nueva versión del proyecto «Mongoose OS 2.20.0», el cual se posiciona como un marco para desarrollar firmware para dispositivos de Internet de las cosas (IoT) basados en microcontroladores ESP32, ESP8266, CC3220, CC3200, STM32F4, STM32L4 y STM32F7.
Actualmente, en el framework hay soporte incorporado para la integración con AWS IoT, Google IoT Core, Microsoft Azure, Samsung Artik, Adafruit IO, así como con cualquier servidor MQTT. El código del proyecto, escrito en C y JavaScript, se distribuye bajo la licencia Apache 2.0.
De las características del proyecto se destacan de este framework por ejemplo está un motor mJS para desarrollar aplicaciones JavaScript (JavaScript está posicionado para la creación rápida de prototipos y se sugiere C/C ++ para aplicaciones finales), ademas de que Mongoose cuenta con un sistema de actualización OTA con soporte para revertir actualizaciones en caso de falla.
Otra de las características que se destaca es que cuenta con, medios de control remoto del dispositivo, asi como tambien el soporte integrado para cifrar datos en una unidad flash y que en la entrega de una versión de la biblioteca mbedTLS, está optimizada para usar las capacidades de los criptochips y un consumo mínimo de memoria.
Por otra parte tambien se menciona que se cuenta con el soporte para microcontroladores CC3220, CC3200, ESP32, ESP8266, STM32F4, STM32L4, STM32F7, asi como tambien el soporte integrado para AWS IoT, Google IoT Core, IBM Watson IoT, Microsoft Azure, Samsung Artik y Adafruit IO y que se hace uso del kit de herramientas de stock ESP32-DevKitC para AWS IoT y el kit ESP32 para Google IoT Core.
Sobre Mongoose OS 2.20.0
Actualmente, el framework se encuentra en su versión «Mongoose OS 2.20.0» y en esta versión se incluyen algunos cambios importantes tales como lo son:
- Proporcionó la capacidad de usar una pila de red LwIP externa
- Las funciones relacionadas con el cifrado se han trasladado a la biblioteca mbedtls
- Para los chips esp8266, se ha agregado protección contra desbordamiento de pila a todas las funciones de asignación de memoria y se ha optimizado la implementación de las funciones malloc
- Uso discontinuado de la biblioteca libwpa2
- Se mejoró la lógica para elegir un servidor DNS
- Inicialización mejorada del generador de números pseudoaleatorios
- Para los chips ESP32, LFS incluye cifrado de datos transparente en unidades Flash
- Se agregó soporte para cargar archivos de configuración desde dispositivos VFS
- Implementó el uso de hashes SHA256 para autenticación
- La compatibilidad con Bluetooth y Wi-Fi se ha ampliado significativamente.
Finalmente, si estás interesado en poder conocer más al respecto sobre este framework, te recomiendo consultes su sito web en donde podrás encontrar no solo guias de instalación, sino tambien foros de ayuda y manuales de usuario. El enlace es este.
¿Como instalar Mongoose OS en Linux?
Para quienes estén interesados en poder instalar este framework en su sistema, deben saber que es multiplataforma y que en su sitio web oficial podrán encontrar los archivos indicados para poder realizar la instalación en otros sistemas que no son Linux (Windows y MacOS).
En el caso de los que somos usuarios de Linux, cabe mencionar que este framework puede ser instalado de una forma bastante sencilla. Tal es el caso para los que son usuarios de Ubuntu y derivados de este. Para poder realizar la instalación basta con abrir una terminal (puedes utilizar el atajo de teclado Ctrl + Alt + T) y en ella vas a teclear los siguientes comandos.
Lo primero que debes hacer es añadir el siguiente repositorio:
sudo add-apt-repository ppa:mongoose-os/mos -y
Actualizamos el listado de repositorios con:
sudo apt-get update
Ahora procedemos a realizar la instalación del framework con:
sudo apt-get install mos
Y podremos ejecutarlo una vez ya instalado con:
mos
Ahora para el caso de los que son usuarios de Arch Linux y derivados, pueden realizar la instalación realizando la compilación del código fuente de framework. Para ello vamos a abrir una terminal y en ella vamos a teclear:
git clone https://github.com/mongoose-os/mos
cd mos-tool/mos/archlinux_pkgbuild/mos-release
makepkg
pacman -U ./mos-*.tar.xz
mos