Important
Vulp has been merged into the Upkie wheeled biped software and is not developed as a standalone library any more. If you need similar features for your own robot, we recommend you rather start from the latest moteus C++ bindings.
Vulp provides an action-observation loop to control robots from a standalone "agent" process, like this:
Vulp is designed for robots built with the mjbots stack (moteus servo controllers and pi3hat communication board). It provides a robot/simulation switch to train or test agents in Bullet before running them on the real system. Vulp supports Linux and macOS for development, and Raspberry Pi OS for robot deployment.
- moteus: bindings for moteus brushless controllers.
- odri_control_interface: interface to control robots built with the ODRI Master Board.
- kodlab_mjbots_sdk: C++-only framework integrated with LCM for logging and remote I/O.
- mc_rtc: C++ real-time control framework with QP-based whole-body control.
- robot_interfaces: IPC between non-realtime Python and real-time C++ processes with Python bindings.
- ros2_control: C++ framework for real-time control using ROS2 (still a work in progress).
Vulp means "fox" in Romansh, a language spoken in the Swiss canton of the Grisons. Foxes are arguably quite reliable in their reaction times 🦊