|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |
Launch files
Messages
Services
Plugins
Recent questions tagged robstride_driver at Robotics Stack Exchange
|
robstride_driver package from robstride_ros2 reporobstride_driver robstride_examples robstride_ros2 robstride_ros2_control |
ROS Distro
|
Package Summary
| Version | 0.2.0 |
| License | MIT |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Checkout URI | https://github.com/s2015-turtle/robstride_ros2.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-09-17 |
| Dev Status | MAINTAINED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- yamato
Authors
robstride_driver
The motor profile registry in src/motor_profile.cpp owns the RS00–RS06 and
EL05 protocol ranges. motor_profile() exposes these to configuration clients;
unknown names are rejected. These ranges retain the values checked against the
RobStride English manuals dated July 13, 2026, linked in the source and repository
README. They describe CAN normalization, not recommended operating limits.
robstride_driver is the bridge-independent core library for RobStride
actuators using the documented 29-bit private CAN protocol. It provides frame
encoding and decoding, can_msgs/msg/Frame topic transport, motor lifecycle
commands, feedback monitoring, and Run-mode recovery.
The package does not open a SocketCAN interface and does not provide a
standalone ROS node. Applications configure the transmit and receive topics
through robstride_ros2_control, then connect any compatible CAN bridge. The
example package uses ros2_socketcan.
Public headers are installed under robstride_driver/ and cover:
- protocol constants and command/feedback encoding;
- per-model and per-joint limits;
- CAN topic transport;
- motor activation, stop, watchdog, and feedback handling.
- lock-free snapshots of traffic counters and per-motor feedback timing.
RobStrideDriver::metrics() returns the measured transmit categories,
latest-command-wins motion-command replacement count, recognized receive
counts, transport health, and per-motor mode, temperature, decoded faults,
recovery activity, feedback rate, and age. The snapshot reads a consistent
atomic status sample per motor and does not acquire the transport worker or
driver state mutex. When the normal ROS topic transport is used, the same
information is published once per second as standard diagnostics on
/diagnostics.
While active, the driver distinguishes temporary topic endpoint loss from a
persistent transmit failure. Persistent endpoint loss, a stalled sender, or an
unexpectedly stopped worker is propagated through the Hardware Component’s
write() result. Motor feedback timeout remains an independent end-to-end
check because DDS publication alone cannot prove physical CAN delivery or motor
execution.
Most users should integrate this library through the
robstride_ros2_control
Hardware Component. See the
repository README for
supported actuators, safety behavior, configuration parameters, and
installation instructions.
Changelog for package robstride_driver
0.2.0 (2026-09-06)
- Add CAN traffic metrics and human-readable motor and transport diagnostics.
- Report motor mode, temperature, faults, feedback age, and recovery attempts.
- Reduce transport contention during control updates and propagate persistent transmit-path failures.
- Add virtual CAN transport and fake-motor lifecycle integration tests.
- Centralize RS00-RS06 and EL05 protocol ranges in the motor profile registry.
- Contributors: Yamato.K
0.1.2 (2026-08-26)
- Apply
gear_ratiowhen converting effort commands and feedback between ROS joint and motor coordinates. - Add tests for unity and non-unity ratios with both joint directions.
- Contributors: Yamato.K
0.1.1 (2026-08-25)
- Synchronize the package version for the multi-package compatibility release.
- Contributors: Yamato.K
0.1.0 (2026-08-09)
- Add the RobStride private-CAN protocol, topic transport, motor lifecycle, feedback monitoring, and Run-mode recovery library.
- Clamp position, velocity, and effort commands to per-joint operational limits before CAN encoding.
- Contributors: Yamato.K
Package Dependencies
System Dependencies
Dependant Packages
| Name | Deps |
|---|---|
| robstride_ros2 | |
| robstride_ros2_control |