Skip to content

Hyperloop-UPV/template-project

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

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors