Skip to content

Latest commit

 

History

History
54 lines (40 loc) · 2.4 KB

File metadata and controls

54 lines (40 loc) · 2.4 KB

STM32H7-DevEBox

W25Q64_STM32H750VB-DevEBox board


This project implements multiple different mode bootloaders for the STM32H750VB DevEBox development board with W25Q64 (64 Mbit) QSPI FLASH and integrates various middleware to unleash the potential of the board.

Project is originally developed on Linux (WSL Ubuntu). See the Development Guide for instructions on how to build and use the bootloaders.

Bootloaders

  • bl_iram: Bootloader that loads an application firmware from a file system that is mounted on the QSPI flash to the internal D1 domain 512 KiB AXI-SRAM and executes it. On startup, bootloader runs the comm service for uploading new firmware over UART.
  • bl_qspiflash: Bootloader that Executes In Place (XIP) program stored on QSPI flash memory. On startup, bootloader runs the comm service for uploading new firmware over UART.
  • ext_loader: Special STM32 External Loader firmware for this board for accessing the on-board W25Q64 QSPI FLASH memory in STM32CubeProgrammer.

Special Features

comm

comm is a complete Point-to-Point request-response communication system for accessing QSPI FLASH memory on the target from a host computer over serial UART. comm defines request-response messages both for raw memory and file system access (littlefs). comm implements both a service for baremetal MCU target in C/C++ and a client library in Python for the host computer that together enable communication over serial UART. comm is based on nanopb data serialization library (Protocol Buffers) and min Point-to-Point communication protocol.

TODO List

  • Use stm32-base.
  • Generalize and extract the comm service to a separate library.
  • bl_iram and bl_qspiflash tests with simple demo application binaries.
  • Add copies of datasheet PDFs of MCU and QSPI FLASH to the docs folder.
  • Pick a better name for the project.

References