SDK Overview
This document introduces the PyPI package boosteros, a Python SDK client for developing applications on Booster robots. Developers can use this SDK to connect to Booster physical robots or virtual robots created in Booster Studio, read data such as images, IMU, joint states, and odometry, and send commands for mode switching, velocity control, joint control, actions, trajectories, and audio playback.
boosteros is positioned as an SDK client for robot application development. It currently supports two robots from Booster Robotics. The supported models and runtime requirements are listed below:
Item | Current description |
|---|---|
Manufacturer | Booster |
Model | Booster K1 / T1 / T2 |
Runtime environment | Currently only supports running on physical Booster robots or virtual robot simulation environments created by Booster Studio |
Python | Python >=3.10 |
Firmware version | Booster robot firmware version >= |
Quick Navigation
If you already know what you want to do, use the directory below to jump directly to the relevant section. New users are recommended to start with Quick Start, then move to the API reference, vision and speech, or data type documentation as needed.
Getting Started and Environment
- Quick Start: Install
boosteros, run your first connectivity check, and read image, joint, and IMU data. - FAQ: Troubleshoot common issues with installation, runtime environments, connections, and API calls.
- Extracting Example Code: Quickly collect example snippets from the documentation for local debugging and reuse.
BoosterRobot API Reference
This section is the main entry point for daily robot control. It covers connection, state retrieval, sensors, subscriptions, motion control, and advanced tasks.
- API Overview: View the main APIs and return types by capability area.
- Construction and Connection: Create a
BoosterRobotinstance and connect to a robot. - Information and State Retrieval: Check robot information, mode, gait, frames, joints, and action lists.
- Sensor and State Snapshot APIs: Read images, camera information, IMU, odometry, joints, battery status, fall-down state, and transforms.
- Sensor Subscription APIs: Subscribe to image, IMU, odometry, battery, and fall-down state updates.
- Motion Control APIs: Switch modes and gaits, set velocity, control the upper body, control joints, set head angle, and reset odometry.
- Advanced Task APIs: Manage asynchronous tasks, execute actions, get up, run trajectories, and play audio.
- Audio Manager: Set system volume, record audio, and play audio streams.
- Hand-Guiding Manager: Record and manage hand-guiding sessions.
- Automatic Soccer Kick Manager: Start, update, and stop automatic soccer kick tasks.
Vision and Speech
- Vision and Speech Overview: Understand the scope of optional
braincapabilities. - Speech: Speech recognition, chat, and voice list APIs.
- Detection: Model listing, model loading, object detection, and result plotting.
Common Data Types
If you are not sure which fields a returned object contains, start from the corresponding data type page here.
- Basic Time and Header Information:
Time,Duration, andHeader. - Sensor and State Data: Images, detection results, camera information, IMU, odometry, transforms, battery, audio, and more.
- Joint-Related Data: Joint states, joint state collections, and joint commands.
- Robot Metadata: Robot information, joint limits, joint information, action information, modes, and gait names.
- Tasks and Subscriptions: Task handles, task status, subscription objects, audio playback stream handles, and more.
- Trajectory Data: Trajectory metadata, joint trajectory points, and trajectory data.
Debugging, Examples, and Protocols
- FAQ and Debugging Tools: Centralized access to FAQ, example code extraction, example update and backup mechanisms, and gain tuning tips.
- General Robot Development Protocol: Understand the general Robot capability abstraction, API categories, and cross-model development conventions.