STM32 workflow - Hyp-ed/hyped-2024 GitHub Wiki

Warning

This is very WIP, these are currently my (Tom Lonergan) notes and ideas

Bootloaders

I really like the CAN approach, as all the boards will already be connected and it would integrate neatly with the Pi binary management system, but there are problems with it:

  • The "translator" board is not connected over CAN as it is on MQTT in order to talk to the Pis (Maybe there is an MQTT bootloader here? Maybe OpenBLT could be made to work over ethernet? This feels like it's going downhill)
  • Each board will get different code loaded onto it, and I'm not sure how we distinguish what goes where

If we are using the binary manager for the STM boards too, then we should use a CAN bootloader. STLink and STM32CubeProgrammer would be simpler for the case where we're manually flashing each board, and will likely be the starting system, at least until we have STM32 binaries building outside of CubeIDE.

Build system

Might just be able to include https://github.com/STMicroelectronics/stm32f7xx_hal_driver/ or equivalent, wrap all the nasty C stuff in the IO libraries, and integrate that way? I am concerned it won't be that easy though

⚠️ **GitHub.com Fallback** ⚠️