Skip to content

RainbowRobotics/rby1-sdk

Repository files navigation

rby1-sdk

CI Issues Releases Apache-2.0 python

rby1-sdk is an SDK designed for seamless control and development with the RB-Y1 robot. It provides Python and C++ APIs, making it easy to integrate into various applications, from basic scripting to advanced real-time control.

Installation

Python

Install SDK via pip:

pip install rby1-sdk

Alternatively, install from source:

pip install .
# or
poetry install

C++

Build From Source

Step 1: Install Conan

Conan is required for dependency management:

pip install conan

Step 2: Clone the Repository

git clone --recurse-submodules git@github.com:RainbowRobotics/rby1-sdk.git

Step 3: Install or Build Dependencies

conan install . -s build_type=Release -b missing -of build

Note

On aarch64 platforms (e.g., ARM64 Ubuntu runners), please make sure to set the appropriate compiler explicitly:

export CC=/usr/bin/aarch64-linux-gnu-gcc

Step 4: Configure, Build, and Install

(Option 1) CMake >= 3.23
cmake --preset conan-release -D BUILD_EXAMPLES=ON
cmake --build --preset conan-release

# Install
cmake --build --preset conan-release --target install
(Option 2) CMake < 3.23
cd build
cmake .. -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE=./conan_toolchain.cmake -DCMAKE_POLICY_DEFAULT_CMP0091=NEW -DCMAKE_BUILD_TYPE=Release
cmake --build . # or make

# Install
make install

Get Started

Python Example

import rby1_sdk as rby

robot = rby.create_robot("localhost:50051", "a")
robot.connect()
print(robot.get_robot_info())

C++ Example

#include "rby1-sdk/robot.h"
#include "rby1-sdk/model.h"

int main() {
  auto robot = rb::Robot<rb::y1_model::A>::Create("localhost:50051");
  robot->Connect();
  std::cout << robot->GetRobotInfo().robot_version << std::endl;
}

ARM Intellisense Issue

For issues with ARM Intellisense, refer to the following GitHub Issue.

To fix the Intellisense problem, add the following code at the top of your source file:

// Add this at the top of your source file
#if __INTELLISENSE__
#undef __ARM_NEON
#undef __ARM_NEON__
#endif

Resources and Support

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages