Reference: Vendor Capability Matrix
Vendor Overview
| Vendor | Add Method | Typical Transport | Protocol Family |
|---|---|---|---|
| Damiao | add_damiao_motor() | SocketCAN, DM Serial | DM-J4310/4340 |
| RobStride | add_robstride_motor() | SocketCAN | RobStride Extended CAN |
| MyActuator | add_myactuator_motor() | SocketCAN | MyActuator RMD |
| HighTorque | add_hightorque_motor() | SocketCAN | HighTorque native |
| Hexfellow | add_hexfellow_motor() | CAN-FD | Hexfellow MIT |
Unified Mode Support
| Vendor | Typical Models | MIT | POS_VEL | VEL | FORCE_POS |
|---|---|---|---|---|---|
| Damiao | 4310, 4340P, 6006 | ✅ | ✅ | ✅ | ✅ |
| RobStride | rs-00 through rs-06 | ✅ | ✅ | ✅ | ❌ |
| MyActuator | X8 | ❌ | ✅ | ✅ | ❌ |
| HighTorque | hightorque | ✅ | ✅ | ✅ | ✅ |
| Hexfellow | hexfellow | ✅ | ✅ | ❌ | ❌ |
RobStride Mapping Notes
MITmaps to native impedance packet (pos/vel/kp/kd/tauall effective).POS_VELmaps to native position flow (run_mode=1,loc_ref,limit_spd, optionalloc_kp).- Always pass the physical RobStride model (
rs-00…rs-06) for limits and logs. High-level control and runtime parameter read/write share the protocol section 4 table (0x7005..0x702E). - Full runtime parameter tables are available in RobStride Parameter Tables.
- In unified
pos-vel, CLI args--vel/--kd/--tauare ignored by design and shown as warnings. - Torque/current is currently parameter-level only (
write-param), not a separate unified mode (FORCE_POSremains ❌).
Unified Mode -> Native Vendor Mapping
| Unified Mode | Damiao | RobStride | MyActuator | HighTorque | Hexfellow |
|---|---|---|---|---|---|
MIT | Native MIT | Native MIT | Not supported | Mapped to native pos+vel+tqe | Native MIT |
POS_VEL | Native POS_VEL | Native position flow (run_mode=1 + loc_ref + limit_spd) | Native position flow | Native POS_VEL | Native POS_VEL |
VEL | Native VEL | Native Velocity | Native Velocity | Native Velocity | Not supported |
FORCE_POS | Native FORCE_POS | Not supported | Not supported | Mapped to native pos+vel+tqe | Not supported |
Experimental Section: Vendor-Native Protocol Entrypoints (Implemented)
This section exposes implemented vendor-native capabilities that are outside the unified 4-mode surface, mainly for commissioning/debug workflows.
| Vendor | Native Entrypoints (examples) | Notes |
|---|---|---|
| Damiao | id-dump, id-set, damiao-read-param, damiao-write-param --store 1 (CLI) + set_zero_position() (API) | Register/parameter R/W, ID update, zeroing flow |
| RobStride | ping, robstride-read-param, robstride-write-param --store 1, run --mode read-param/write-param/save | 29-bit extended-frame parameter path; runtime parameters use the common section 4 table (0x7005..0x702E); save uses type 22 with status ACK |
| MyActuator | Vendor-native command path (adapter exposed) | Position/velocity-first flow, limited register surface |
| HighTorque | Vendor-native command path (adapter exposed) | Internal scaling under unified API |
| Hexfellow | CAN-FD native path (socketcanfd) | Primarily MIT/POS_VEL, requires CAN-FD |
RobStride Native Parameter Command (Cross-Platform)
Linux / macOS:--model rs-06 only for a physical RS06 motor. For other RS00-RS05 motors, replace it with the actual model for limits/logging; runtime read-param / write-param uses the common section 4 table.
Persist a RobStride parameter in v0.4.1:
Cross-Platform Command Templates
All examples below use the unified Python package CLI:motorbridge-cli.
Linux (Ubuntu / SocketCAN)
macOS
Windows (PowerShell / PCAN)
- Linux/macOS CAN channel is typically
can0. - Windows PCAN is typically
can0@1000000. dm-serialis Damiao-only.
Host / Feedback ID Notes
| Vendor | Recommended feedback/host ID policy |
|---|---|
| Damiao | Distinct feedback ID per motor path (motor_id + base) |
| RobStride | Default to 0xFD; runtime may fallback probe 0xFF/0xFE |
| MyActuator | 0x240 + motor_id |
| HighTorque | Fixed by protocol path |
| Hexfellow | Fixed by protocol path |
Register / Parameter Access
| Vendor | Read | Write | Persist |
|---|---|---|---|
| Damiao | Full register API | Full register API | Yes |
| RobStride | Typed parameter API | Typed parameter API | Yes |
| MyActuator | Limited | Limited | Yes |
| HighTorque | Limited | Limited | Yes |
| Hexfellow | Limited | Limited | Yes |
RobStride Parameter API
Reference Example (RobStride)
Device-ID and Zeroing Status (RobStride)
set-id: available and aligned with upper-tool style frame semantics.zero: available via control command path, with firmware-dependent ACK behavior.- For production commissioning, always verify by reading back
mechPos/ status after zero or ID changes.