Open Source RoboticsRobots, software & learning

CubeMars ROS2 lifecycle driver source

Software

This repository implements a ROS 2 lifecycle driver for CubeMars/T-Motor actuators, with actual SocketCAN and hardware-interface source. [1] [2] [3] [4] [5]

Installation & first result →Official websiteGetting started

For
Robotics developers inspecting the specified interface/research source [1] [2] [3] [4] [5]
Source rights
Some licenses are unresolved. Review licenses
Unknowns
operating system, compute requirements not fully established. Review gaps

Source researched · Not tested by us
Sources checked · Research details

Licenses & related hardware
License
not fully assessed for software, documentation · Details by part

Requirements · Research details and dates

On this page

Overview

This repository implements a ROS 2 lifecycle driver for CubeMars/T-Motor actuators, with actual SocketCAN and hardware-interface source. The useful contribution is its explicit communication/command-state workflow. It is a source-available driver reference, not an actuator hardware design or a validated safety controller. [1] [3] [4]

Is this for you?

Known limitations
  • Package license declaration isunfinished; no rootgrantidentified.
  • Configuredstatecanenablemotors whilezero commands; lifecyclelabelsnotverifieddeenergization orsafecontrol.

Editorial assessment of cited source; no runtime or hardware test.

[1] [2] [3] [4] [5] · Editorial assessment

What you need

Dependencies
  • ROS2lifecycleinterfaces, SocketCANcan0 atdocumented1Mbps andmatchingmessage/configpackages
  • NamedCubeMarsmotor/firmware variant andfreshjoint_commands atconfiguredfrequency

[1] [2] [3] [4] [5]

Installation & first result

Open the upstream getting-started guide [1] [2] [3] [4] [5]

  • Inspect the named implementation and matched configuration; reconcile the documented gaps first.
  • Select only the relevant interface/backend; do not treat example output as completed physical action.

Editorial assessment of cited source; no runtime or hardware test.

[1] [2] [3] [4] [5] · Editorial assessment

Installation

Documented can0 setup at 1 Mbps and parameter-file launch for cubemars_hardware_node; match motor/protocol and inspect lifecycle implementation before connection.

Documented source requirements/route, not installation or compatibility reproduced by this catalog.

[1]

Project notes

Match the CAN and motor configuration first

The README configures can0 at 1 Mbps and describes device naming, queue settings and a parameter-file launch for cubemars_hardware_node. These are source instructions for a chosen host/interface, not a CAN adapter discovered by this catalog. The selected implementation opens an AF_CAN raw socket and contains motor-version-specific handling. Match device IDs, firmware/protocol and configuration before attempting commands; no CAN interface was configured. [1] [3]

The README's documented lifecycle-node workflow begins unconfigured without CAN communication. Configuration then enables motors while transmitting zero commands and publishing joint states; activation additionally requires sufficiently frequent valid joint_commands. Consequently, configured is not a synonym for unpowered or physically harmless. No motor state was observed or validated. [1] [4]

Inspect failure and deactivation semantics

The README describes returning to configured on errors or missing commands, with damping commands after prior activation, and cleanup returning to unconfigured. The shown hardware-interface callbacks differ: on_configure initializes commands, potentially including nonzero initial values; on_activate calls start_motor_control_mode; on_deactivate calls exit_motor_control_mode. Their relationship to the README's node workflow is unresolved in this packet, so the configured-state warning above is scoped to that documented node workflow. Inspect the actual node path and callback integration before adopting either description. Lifecycle labels and the README's command-frequency requirement do not prove safe stop, correct damping or recovery on a particular actuator. None of those behaviors was tested here. [1] [4]

Package metadata retains an unfinished license declaration and no root grant was identified in the inspected tree. Public source access does not settle reuse permissions or the rights of external interfaces and firmware. No ROS build, lifecycle operation, electrical configuration, motor response or physical-control result was reproduced. [2]

What we checked

Source/document review only; no build, installation, binary/device/network execution, control commissioning or performance test.

Not yet established

  • Requirements: operating system, host computer
  • Version-specific hardware compatibility (ecosystem tags alone do not establish it)

Updates

Upstream last updated
Not established
Latest release
Not established
Profile updated
Nov 1, 2026
Sources last checked
Nov 1, 2026
Next review
Dec 1, 2026
Reviewed revision
837e408

Source files and licenses

Narrow source-available robotics interface or research implementation; gaps in licensing, binary core or physical setup are explicitly separate from the inspectable contribution.

LayerAvailability / license
softwareavailable · License not fully assessed
No complete source reuse grant identified in the selected repository; source visibility is not redistribution permission. Package declarations and third-party rights remain separate. [1] [2] [3] [4] [5]
documentationavailable · License not fully assessed
No complete source reuse grant identified in the selected repository; source visibility is not redistribution permission. Package declarations and third-party rights remain separate. [1] [2] [3] [4] [5]

No separate physical design, pretrained distribution or dataset is selected as the released contribution in this scoped software review.

References

Each source links to the exact revision we read. “Used for” shows where this page relies on it.

Correction guidance · Discussion is not enabled · Profile format 0.7.0-draft.5

Change history