En esta página se muestran los módulos complementarios para OpenBLT disponibles actualmente. Contienen funcionalidades derivadas de las personalizaciones más solicitadas del bootloader. Estos módulos complementarios no están publicados bajo la licencia GPL de GNU y, por tanto, solo están disponibles en combinación con una versión de OpenBLT con licencia comercial.
Al utilizar OpenBLT, proporcionas a los usuarios la posibilidad de actualizar el firmware de tu producto. En función de la aplicación, esto puede tener efectos negativos potenciales como los siguientes:
El módulo de cifrado del firmware impide que se produzcan estos efectos no deseados. El código del programa en tu archivo del firmware está encriptado utilizando una clave criptográfica AES única de 256 bits. Cuando el bootloader recibe el código del programa durante una actualización del firmware, el código del programa se descifra justo antes de ser programado en la memoria no volátil del microcontrolador.
El cifrado real lo realiza un programa de línea de comandos. Puede invocarse manualmente o como paso automatizado posterior a la construcción, después de compilar y enlazar el código fuente de tu programa de software.
Este módulo adicional incluye:
Ofrecemos un módulo mejorado que utiliza un checksum CRC-16 sobre el código completo del programa. Con este módulo te garantizamos que el bootloader iniciará tu programa de usuario solo si todos los bits del código de tu programa son correctos en la memoria flash. Esto impide que tu programa de usuario dañe tu sistema si, por ejemplo: alguien ha manipulado tu microcontrolador; se ha producido un fallo en la memoria flash; o si se ha modificado accidentalmente el contenido de la memoria flash.
Se incluye un programa de línea de comandos para calcular la información del checksum sobre todo el código del programa de tu firmware. A continuación, parchea la información del checksum al archivo del firmware. Puede invocarse manualmente o como paso automatizado posterior a la construcción, después de compilar y enlazar el código fuente de tu programa de software.
Este módulo adicional incluye:
En un sistema con un microcontrolador maestro y uno o más microcontroladores esclavos, normalmente es el maestro el único que dispone de una línea de comunicación abierta con el mundo exterior. Al ejecutar el bootloader OpenBLT en el maestro, es posible realizar actualizaciones del firmware en el maestro, pero ¿cómo se realiza la actualización del firmware en los esclavos? El módulo adicional de puerta de enlace maestro/esclavo es la respuesta a esta pregunta. Este módulo adicional agrega una puerta de enlace al bootloader OpenBLT que se ejecuta en el maestro, permitiendo la actualización del firmware en los esclavos a través de esta puerta de enlace.
Al iniciar una actualización del firmware con MicroBoot o BootCommander, puedes configurar un parámetro de modo de conexión. Es un valor de 8 bits que se envía al conectarse al bootloader. Cuando el bootloader OpenBLT en el maestro recibe una solicitud de conexión, se evalúa el valor del parámetro de modo de conexión. Si el valor es cero, las actualizaciones del firmware continúan como siempre en el maestro. Si el valor es mayor que cero, la puerta de enlace se activa y la petición de conexión pasa a la red maestro/esclavo, donde la petición es detectada por el bootloader OpenBLT que se ejecuta en el esclavo. Con esta solución es posible seleccionar hasta 255 esclavos individuales para una actualización del firmware.
El módulo de puerta de enlace maestro/esclavo contiene una capa de separación entre la funcionalidad de puerta de enlace de alto nivel y la comunicación de bajo nivel. Esto permite que la puerta de enlace funcione con cualquier red maestro/esclavo. Se ha probado con éxito con RS232, CAN, SPI, I2C y RS485.
Este módulo adicional incluye: