Installation and environment
This page applies to Revo 3 SDK 2.1.2. Public source examples are available only from brainco-revo3-sdk; bc-revo3-sdk is the installable Python wheel distribution name, not a public source repository.
2.1.2 adds single-command control, slave-ID changes and firmware transfer progress. The commands below pin the matching example commit to avoid mixing versions when the main branch advances.
Supported environment
Languages and toolchains
| Language | Requirement |
|---|---|
| Python | 3.10 or later; release wheels use cp310-abi3 |
| C++ | C++17 or later compiler |
Operating systems and architectures
| Platform | Requirement |
|---|---|
| Linux | x86_64 or aarch64; release wheels use manylinux_2_34 |
| macOS | Apple Silicon arm64; Intel x86_64 is best-effort compatibility and is not part of formal validation |
| Windows | Windows 10/11 x86_64 |
Obtain SDK & Examples
Obtain the Revo 3 SDK v2.x package (Python wheel, C/C++ headers, dynamic libraries, and bundled examples) through official BrainCo release channels.
To browse 2.0 code examples and standalone utilities online, visit the public brainco-revo3-sdk example repository.
Clone the stable examples:
git clone https://github.com/BrainCoTech/brainco-revo3-sdk.git
cd brainco-revo3-sdk
git checkout 3fcf173ac8e0c020ba9cc48f4a74c7459d074a93git clone git@github.com:BrainCoTech/brainco-revo3-sdk.git
cd brainco-revo3-sdk
git checkout 3fcf173ac8e0c020ba9cc48f4a74c7459d074a93Version Compatibility
Revo 3 SDK v2.x introduces a redesigned architecture and object model and is not backward-compatible with v1.x. Use the stable example repository or the version-matched examples included with the SDK package.
Install the Python SDK
Create an isolated Python 3.10 or later environment:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pippy -3.10 -m venv .venv
.venv\Scripts\Activate.ps1
python -m pip install --upgrade pipInstall the stable package from PyPI:
python -m pip install "bc-revo3-sdk==2.1.2"You can also obtain the wheel matching the operating system and architecture through a BrainCo release channel:
| Platform | Wheel filename |
|---|---|
| Ubuntu/Linux x86_64 | bc_revo3_sdk-2.1.2-cp310-abi3-manylinux_2_34_x86_64.whl |
| Ubuntu/Linux aarch64 | bc_revo3_sdk-2.1.2-cp310-abi3-manylinux_2_34_aarch64.whl |
| macOS Apple Silicon | bc_revo3_sdk-2.1.2-cp310-abi3-macosx_11_0_arm64.whl |
| Windows x86_64 | bc_revo3_sdk-2.1.2-cp310-abi3-win_amd64.whl |
Install the downloaded wheel and verify its version:
python -m pip install ./bc_revo3_sdk-2.1.2-cp310-abi3-*.whl
python -c "from bc_revo3_sdk import main_mod as sdk; print(sdk.get_sdk_version())"The output must be 2.1.2. Do not mix headers, shared libraries, Python wheels, or examples from different SDK versions.
From the public example repository root, install the Python example dependencies:
python -m pip install ./python
# Optional GUI dependencies
python -m pip install "./python[gui]"python/pyproject.toml constrains bc-revo3-sdk>=2.1.2,<3 and installs the example dependencies. GUI dependencies require the gui extra. Applications that use only the SDK do not need these additional packages.
Prepare C/C++
C/C++ applications require public headers and shared libraries from the same versioned SDK package. Download the SDK and build the examples from the public repository root:
bash download-lib.sh
make -C c| File | Purpose |
|---|---|
dist/include/revo3-sdk.h | C11-compatible C ABI |
dist/include/revo3/revo3.hpp | C++17 RAII wrapper |
Include revo3/revo3.hpp and use revo3::Manager in C++. Use revo3-sdk.h for pure C and foreign-language bindings. Do not mix headers, libraries, or Python packages from different SDK versions.
Linux device permissions
Serial ports commonly require membership in the dialout group:
sudo usermod -a -G dialout "$USER"Log in again, then check id and the target device node. CAN devices also require the driver and network-interface configuration for the selected adapter.
Continue with the Quick Start. The default quickstart reads device and health state and sends no motion commands.