RoboticExplorationLab / mcu-solver-benchmarks

Benchmarking solvers on microcontrollers (MCU), within TinyMPC project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mcu-solver-benchmarks

Benchmarking solvers on microcontrollers (MCU), within TinyMPC project

Installation

How to use

  1. Move to qp_mpc_problem dir
  2. Config and run gen_mpc_problem.py
  3. Config and run move_to_mcu_dir.py
  4. Upload and run the program with your MCU via PlatformIO

Ready-to-run program

  • Problem
    • Random QP-MPC with input constraints
    • Safety filter
    • Rocket landing
  • Solver
    • HPIPM (safety filter/random QP-MPC)
    • OSQP (safety filter/random QP-MPC)
    • ECOS (all problems)
    • SCS (all problems)
    • TinyMPC (all problems)
  • MCU
    • STM32 (Adafruit feather board)
    • Teensy

About

Benchmarking solvers on microcontrollers (MCU), within TinyMPC project


Languages

Language:C 51.5%Language:C++ 47.7%Language:NASL 0.4%Language:Python 0.2%Language:CMake 0.1%Language:MATLAB 0.0%Language:Makefile 0.0%Language:Jupyter Notebook 0.0%