Skip to content

Hyperloop-UPV/BCU-H11

 
 

Repository files navigation

Template Project

HyperloopUPV STM32 firmware template based on CMake + VSCode, using deps/ST-LIB.

Quickstart

./hyper init
./hyper doctor
./hyper build main --preset simulator
./hyper stlib build --preset simulator --run-tests

Hyper CLI

The repo includes a local helper CLI at ./hyper for the common hardware flow:

./hyper examples list
./hyper build adc --test 1
./hyper run adc --test 1 --uart
./hyper uart
./hyper doctor

It wraps the existing repo scripts instead of replacing them, and also exposes a small ST-LIB namespace:

./hyper stlib build --preset simulator --run-tests
./hyper stlib sim-tests

Useful defaults can be pinned with environment variables:

  • HYPER_DEFAULT_PRESET
  • HYPER_FLASH_METHOD
  • HYPER_UART_PORT
  • HYPER_UART_BAUD
  • HYPER_UART_TOOL

Note

To connect through UART (./hyper uart), it's recommended to install tio with your package manager.

Documentation

Main Working Modes

  • simulator: fast local development and tests.
  • nucleo-* / board-*: hardware builds.
./hyper build main --preset simulator
./hyper build main --preset nucleo-debug
./hyper build main --preset board-debug

VSCode Debug

launch.json and tasks.json include debug flows for:

  • OpenOCD
  • ST-LINK
  • simulator tests

Detailed guide:

BOARD_NAME (code generation)

Packet code generation uses BOARD_NAME (a key from JSON_ADE).

Example:

./hyper build main --preset board-debug --board-name TEST

Generated packet headers such as Core/Inc/Communications/Packets/DataPackets.hpp and Core/Inc/Communications/Packets/OrderPackets.hpp are build outputs derived from the active JSON_ADE schema. They are intentionally gitignored and should not be edited or committed.

About

This repository is about the Booster's control of H11

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 41.0%
  • C 26.0%
  • C++ 19.4%
  • Shell 11.0%
  • CMake 2.4%
  • Batchfile 0.2%