ARX X5 Robot Arm Python SDK
Project description
ARX X5 SDK
Python bindings for the ARX X5 robot arm SDK. This package provides a Python interface to control ARX X5 robot arms.
Prerequisites
sudo apt install build-essential cmake python3-dev
Python dependencies (pybind11) are installed automatically during build.
Installation
From PyPI (Recommended)
pip install arx-x5-sdk
From Source
git clone https://github.com/uma-robots/arx-x5-sdk.git
cd arx-x5-sdk
pip install .
Development Mode
For active development:
pip install -e .
All installation methods automatically build the C++ extension using CMake.
Usage
Simple API (Recommended)
The easiest way to use the SDK with automatic URDF selection:
import arx_x5_sdk
from arx_x5_sdk import ArmType
# Create interface using enum (recommended)
interface = arx_x5_sdk.ArxInterface("can0", ArmType.X5_2025)
# Or use the default (X5_2025)
interface = arx_x5_sdk.ArxInterface("can0")
# Available arm types:
# - ArmType.FOLLOWER : Follower arm (x5.urdf)
# - ArmType.LEADER : Leader arm (x5_master.urdf)
# - ArmType.X5_2025 : X5 2025 model (x5_2025.urdf, default)
Advanced API
For more control, use the low-level C++ interface directly:
import arx_x5_sdk
from arx_x5_sdk import ArmType
# Get URDF path by type
urdf_path = arx_x5_sdk.get_urdf_path_by_type(ArmType.X5_2025)
# Or get URDF path by filename
urdf_path = arx_x5_sdk.get_urdf_path("x5_2025.urdf")
# Create interface with explicit URDF path
interface = arx_x5_sdk.C_ArxInterface(urdf_path, "can0", ArmType.X5_2025)
# Integers still work for backwards compatibility
interface = arx_x5_sdk.ArxInterface("can0", 2) # equivalent to ArmType.X5_2025
Development
Manual Build (Advanced)
If you need to rebuild just the C++ extension:
python setup.py build_ext --inplace
This builds the extension in-place without installing.
Architecture Support
The build automatically detects your system architecture:
- x86_64: Uses
libarx_x5_src.so - ARM64/aarch64: Uses
libarx_x5_src-arm64.so
Troubleshooting
Build errors
Ensure prerequisites are installed:
sudo apt install build-essential cmake python3-dev
Import errors
Make sure the package is installed:
pip install -e .
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file arx_x5_sdk-0.1.2.tar.gz.
File metadata
- Download URL: arx_x5_sdk-0.1.2.tar.gz
- Upload date:
- Size: 4.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9094a34427b9ddb817a0d6f9567bfcc5ad612964d4005bd5926c62e4948cbcbb
|
|
| MD5 |
aa9f8dfa3bc0a2422953f732670380d3
|
|
| BLAKE2b-256 |
4bc7a54a5faa96e5b3e52a7e304fb8673cfbf9201ec7f11b1a3a937adf34d3ea
|
File details
Details for the file arx_x5_sdk-0.1.2-py3-none-any.whl.
File metadata
- Download URL: arx_x5_sdk-0.1.2-py3-none-any.whl
- Upload date:
- Size: 3.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdab24d9571199e0c0882b6b206a8eaeb81f68963594412f02b8bf5d14d6f183
|
|
| MD5 |
a8265b5d404cefdf7cd6ceb11e097c83
|
|
| BLAKE2b-256 |
192a28cc595587fa215cda58dcdf948e8d72a91011b3f05892f957715e6efe3d
|