upkie  11.0.0
Open-source wheeled biped robots
Spines

Bullet spine

The Bullet spine runs agents in the Bullet 3 simulator. It can be started as a standalone process that will keep on running while waiting for agents to connect.

The easiest way to start a simulation spine is to run the simulation script from the repository:

./start_simulation.sh

The script will run pre-compiled binaries, downloading them from the latest release if necessary.

Pi3hat spine

The pi3hat spine is the one that runs on the real robot, where a pi3hat r4.5 is mounted on top of the onboard Raspberry Pi computer. To run this spine, you can either download it from GitHub, or build it locally from source.

To download the latest release, assuming your robot is connected to the Internet, you use the upkie_tool command-line utility:

$ ssh user@upkie
user@upkie:~$ upkie_tool update

Alternatively, you can manually go to the Release page, download pi3hat_spine from the assets of the latest release and scp it to /usr/local/bin on your robot.

Once the spine is installed, start it from the command line:

user@upkie:~$ pi3hat_spine

You can then run any agent in a separate shell on the robot, for example the PID balancer from the examples directory:

user@upkie:upkie$ python -m mpc_balancer

Readonly mode

The pi3hat spine can run in readonly mode, which communicates with the actuators to read their state but won't send position commands. This is useful to run agents over real robot states:

user@upkie:~$ pi3hat_spine --readonly

Mock mode

The pi3hat spine can run in mock mode, which is useful to run an agent on the robot without communicating with the actuators:

user@upkie:~$ pi3hat_spine --mock