BrainCo Revo II Specifications

Complete technical specifications from the BrainCo Revo II developer documentation.

Physical & Kinematic

VendorBrainCo
ModelRevo II (left hand configuration)
Total DOF6 (thumb 2 DOF + index/middle/ring/pinky 1 DOF each)
Thumb DOFFlexion + rotation (rotation = flexion × 0.4)
Finger DOF1 DOF flexion each: index, middle, ring, pinky
Position Range0.0 = fully open · 1.0 = fully closed (normalized float)
Wire Protocol Range0–100 integer (percent closure)

USB-CDC Interface

USB InterfaceUSB-CDC (Virtual COM port)
Linux Device/dev/ttyACM0
Baud Rate115200 (exact — no other rate works)
Python Dependencypyserial

Bluetooth Low Energy (BLE) GATT

BLE Service UUID0000ffe0-0000-1000-8000-00805f9b34fb
Write Characteristic0000ffe1-0000-1000-8000-00805f9b34fb
Notify Characteristic0000ffe2-0000-1000-8000-00805f9b34fb
Python Dependencybleak

Command Protocol

FormatNewline-terminated JSON, UTF-8 encoded
set_finger{"cmd":"set_finger","finger":N,"position":P} — N: 0–4, P: 0–100
set_pose{"cmd":"set_pose","positions":[p0,p1,p2,p3,p4]} — all five positions atomically
calibrate{"cmd":"calibrate"} — lock in firmware travel limits

Piano Mode Timing

Phase 1 — Extend20 ms, finger to hover position (0.15 = 15% closure)
Phase 2 — Drive30 ms, drive to press depth (0.55–0.95 proportional to velocity)
Phase 3 — HoldConfigurable duration — key depressed
Phase 4 — Retract20 ms, lift back to hover position
Press Depth Range0.55 (velocity=0.0) to 0.95 (velocity=1.0)
Hover Position0.15 (15% closure — neutral ready-to-press)
Concurrent PressesYes — per-finger asyncio locks, no dropped notes

Calibration

Calibration Step120 ms per finger (wave sequence: thumb → pinky)
Wave PatternOpen → close to 90% → open (per finger)
Post-Calibration PositionAll fingers settle at hover (15% closure)
Settle Delay (start)300 ms before wave begins

Telemetry & SDK

Telemetry Rate10 Hz default (configurable)
Platform Agentbrainco_revo_agent.py
Python Dependenciespyserial (USB) · bleak (BLE) · websockets (platform)
URDFAvailable for ROS1 and ROS2
Snapshot Fieldsconnected, mode, positions (float[5]), positions_dict, is_pressing, any_pressing, current_note, command_count
View Setup Guide → Developer Wiki →

Ready to Get Started with the Revo II?

Contact RoboticsCenter to discuss availability and integration.