Varios cargadores de arranque de código abierto adecuados para MCU

Índice

MCUboot Bootloader

El uso del gestor de arranque en el microcontrolador depende de los requisitos de diseño del producto. Si el producto necesita actualizarse en línea o tiene consideraciones de arranque seguro, el uso de algunos gestores de arranque de código abierto puede satisfacer mejor las necesidades. A continuación, presentamos algunos gestores de arranque pequeños adecuados para sistemas de microordenadores de un solo chip.

WolfBoot

wolfBoot
wolfBoot (Crédito de la imagen: Github)

WolfBoot es un pequeño gestor de arranque de código abierto y fácil de portar, que admite el arranque seguro y proporciona un mecanismo seguro de actualización del firmware. Después de recibir e instalar la actualización verificada, wolfBoot realizará una copia de seguridad de la imagen del firmware antiguo que funciona normalmente. Si la imagen recién instalada no se inicia por diversas razones, wolfBoot cargará el firmware antiguo de la copia de seguridad que funciona normalmente para garantizar que el sistema no se bloquee.

En la actualidad, WolfBoot ha trasplantado más de una docena de plataformas de microordenadores de un solo chip, como el microordenador de un solo chip de la serie Cortex M de STM32.

OpenBLT

OpenBLT es también un gestor de arranque de código abierto que afirma funcionar en cualquier microcontrolador y utilizar cualquier tipo de interfaz de comunicación para realizar actualizaciones de software.

fetch.php?w=900&tok=b1cce5&media=manual:openblt architecture
Cargador de arranque OpenBLT (Crédito de la imagen: Feaser)

Su código se divide principalmente en tres partes:

  1. Función de gestor de arranque personalizable. El código de esta sección se utiliza para personalizar el gestor de arranque según las necesidades específicas del proyecto. Por ejemplo, la función principal, el archivo de configuración y la función de enlace.
  2. Función de actualización de carga independiente. Esta parte es el núcleo del gestor de arranque. Durante la actualización del software, se encarga de la transferencia de datos desde el archivo de firmware a la memoria. La comunicación entre el host y el gestor de arranque sigue el protocolo XCP 1.0, que es un protocolo general de medición y calibración. Para obtener más detalles, consulte el manual correspondiente.
  3. Características específicas de la plataforma. Esta parte debe modificarse al portar el gestor de arranque a un nuevo controlador de plataforma. Contiene controladores para acceder a las comunicaciones, los temporizadores y los dispositivos de almacenamiento.

RT-FOTA

RT-OTA es un marco de trabajo de arranque de código abierto basado en STM32. RT-OTA es un arranque de uso general para microcontroladores de la serie STM32 lanzado oficialmente por RT-Thread (de naturaleza comercial, el código fuente no se divulga), y RT-FOTA puede entenderse como la versión popular de código abierto del proyecto RT-OTA.

poweron
Bootloader RT-FOTA (Crédito de la imagen: Github)

Funciones principales de RT-FOTA:

  • Compatible con el software oficial de empaquetado RBL de RTT, y se utiliza de la misma manera. Actualmente admite funciones como CRC32, AES256, quicklz y fastlz.
  • Compatible con el modo de línea de comandos (componente FINSH) y la recuperación del firmware de fábrica.
  • Compatible con la partición FLASH (componente FAL).
  • Admite la extensión de funciones (componente RTT).

Arrancador de la MCU

MCUboot es un proyecto de gestor de arranque de código abierto mantenido por la organización JuulLabs-OSS, que afirma permitir implementar fácilmente actualizaciones de seguridad de aplicaciones MCU (los que lo han utilizado, se ríen sin decir nada).

MCUboot Bootloader
MCUboot Bootloader

mcuboot es adecuado para MCU de 32 bits, lo que no tiene nada que ver con la plataforma de hardware específica de la MCU. En la actualidad, este proyecto es relativamente activo y sigue desarrollándose y actualizándose. Se ha adaptado a los siguientes sistemas operativos:

  • Zephyr
  • Apache Mynewt
  • Apache NuttX
  • RIOT
  • Mbed OS

Suscríbete

Únete a nuestra lista de suscriptores para recibir actualizaciones mensuales del blog, noticias de tecnología y estudios de caso. Nunca enviaremos spam y puedes cancelar tu suscripción en cualquier momento.

Acerca del Autor

Picture of Aidan Taylor
Aidan Taylor

I am Aidan Taylor and I have over 10 years of experience in the field of PCB Reverse Engineering, PCB design and IC Unlock.

¿Necesitas ayuda?

Scroll al inicio

Cotización