Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

HEXFELLOW ROBOT DRIVER

DOI       


📖 Overview

What is hex_driver_robot

hex_driver_robot is a Python library for controlling HEXFELLOW robots with a unified interface. It supports the Hello Y6 (6‑DOF arm with joystick grip and RGB LED strip), Archer Y6 (6‑DOF arm with optional grip), and Firefly Y6 (6‑DOF arm with optional grip) robot models. The library runs each robot controller in a background thread, streams robot states via deque ring buffers, and exposes consistent readers (get_arm_state, get_grip_state on Archer/Firefly, or get_grip_joy on Hello Y6) plus model‑specific command writers: MIT / joint position / Cartesian pose commands on Archer and Firefly, and grip RGB LED control on Hello Y6. Each model also provides a callback variant (HexRobotArcherY6Callback, HexRobotFireflyY6Callback, HexRobotHelloY6Callback) for event‑driven state handling.

What problem it solves

  • Unified robot interface: Use the same API pattern for different robot models (Hello Y6, Archer Y6, Firefly Y6).
  • Background control: Each robot controller runs in its own thread; the main thread only reads the latest state when needed.
  • Low‑latency sharing: States and commands are passed through deque ring buffers, avoiding serialization overhead.
  • Real‑time control: Archer and Firefly support MIT impedance, MIT with compensation, joint position, and Cartesian pose commands; Hello Y6 focuses on motor telemetry, joystick input, and LED control on the grip.
  • Callback support: Every model offers a callback class for event‑driven programming alongside the polling‑based class.

Target users

  • Robotics researchers prototyping manipulation pipelines with HEXFELLOW robots.
  • Developers who need a simple, consistent way to interface with real robot hardware.
  • Anyone who wants to switch between different robot models without changing client code.

📦 Installation

Requirements

  • Python ≥ 3.10
  • OS: Linux (macOS/Windows may work but are less tested)
  • Core dependencies:
    • hex_util_runtime ≥ 0.0.0, < 0.1.0
    • hex_util_robot ≥ 0.0.0, < 0.1.0
    • hex_util_urdf ≥ 0.0.0, < 0.1.0
    • hex_util_msg ≥ 0.0.0, < 0.1.0
    • hex_device ≥ 1.4.0, < 1.5.0

Install from PyPI

pip install hex_driver_robot

Install from Source

For those who need examples, you can install the package from source code with examples.

Note: We use uv to manage the Python environment. Please install it first.

  1. Clone and install in editable mode. The venv.sh script expects uv.

    git clone https://github.com/hexfellow/hex_driver_robot.git
    cd hex_driver_robot
    ./venv.sh
    
    • ./venv.sh — creates .venv, installs hex_driver_robot in editable mode.
  2. Activate before running examples:

    source .venv/bin/activate
    

📑 API

See API for details of all robot driver classes and parameters.

💡 Example

See Example for usage aligned with example/archer_y6_example.py, example/firefly_y6_example.py, and example/hello_y6_example.py.

📄 License

Apache License 2.0. See LICENSE.

🌟 Star History

Star History Chart

👥 Contributors

Metadata

Release files for hex-driver-robot 0.1.1a3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for hex-driver-robot 0.1.1a3
File Size Uploaded
hex_driver_robot-0.1.1a3.tar.gz 14.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hex-driver-robot 0.1.1a3
File Interpreter ABI Platform
hex_driver_robot-0.1.1a3-py3-none-any.whl Python 3 none any Details

Total release size: 33.1 kB

Release files / hex_driver_robot-0.1.1a3.tar.gz

Download URL hex_driver_robot-0.1.1a3.tar.gz
Size 14.6 kB
Tags Source
SHA-256 checksum
How to use checksums
9c3dc3360efbd37cff6dac3f0b92889dde78ebf203f044e33751ba2a7fdfde1e
BLAKE2b-256 checksum
How to use checksums
5076ac199d976fda235d88de51f422f82f44c0760178e99645c32897bb308f1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12

Release files / hex_driver_robot-0.1.1a3-py3-none-any.whl

Download URL hex_driver_robot-0.1.1a3-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
81d5a70a55d94993f09c1cac3ca0044ab25fce8ae06f8c9a5c2ab703df446877
BLAKE2b-256 checksum
How to use checksums
f8a5fe3dc4ba0edcdba3ed72965c591cbdc10bdb27e56c726a9312ea6ca76a2b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.12
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page