This repository is currently under active development. Many sections, configurations, and images are subject to change as progress is made. Expect frequent updates, including:
- New mechanical designs and optimized subassemblies.
- Improved CANBus configurations and motor tuning.
- Updated URDF files for better simulation accuracy.
- Additional images and diagrams to illustrate the robot’s structure and posture.
If you have suggestions or find issues, feel free to contribute or report them in the repository's issue tracker.
- Components
- Mechanical Assembly
- CyberGear Motor CANBus Configuration
- Basic Posture of the Robot
- Material Specifications
2-CH CAN HAT+ is an isolated expansion board for Raspberry Pi, supports dual-channel CAN communication, and features multi-protection circuits, wide voltage input, and so on.

With 2–3× the speed of the previous generation, and featuring silicon designed in‑house for the best possible performance, we’ve redefined the Raspberry Pi experience.
eSUN PLA+ for prototyping parts.
eSUN PLA+ filament is modified based on PLA material, easy to print. In addition, PLA plus improves the toughness and layer adherence.
- Design the robot structure in SolidWorks.
- Ensure all mechanical components, including chassis, joints, actuators, and sensors, are properly positioned.
- Maintain proper constraints and tolerances for assembly.
- Carefully group related parts into subassemblies that move together to ensure proper functionality in simulation.
- Identify rigid components that can be combined into a single STL and moving components that require separate STL files.
- In SolidWorks, define the correct mate constraints to simulate real-world motion.
- Steps for exporting STL files:
- Open the subassembly in SolidWorks.
- Click File → Save As.
- Select STL (.stl) as the file format.
- Choose Fine resolution for improved mesh quality.
- Ensure units are set to meters to match URDF scale.
- Save the file and validate the STL integrity in MeshLab or Blender.
- Use xacro to structure URDF files for better modularity.
- Maintain a consistent naming convention for STL files to simplify the URDF structure.
- Ensure that CAN interfaces (CAN0, CAN1) are enabled on the robot’s controller.
- Use a USB-to-CAN adapter if using a PC for debugging.
-
Baud Rate Configuration:
- The default baud rate for CyberGear motors is 500Kbps.
- Adjust using
candumpandcansendif necessary.
-
Set Motor ID:
cansend can0 0x000#02.00.01.ID
Replace
IDwith the desired motor ID. -
Check Motor Status:
candump can0
- Ensure no bus errors.
- Look for correct heartbeat messages.
-
Enable Torque Mode:
cansend can0 0x000#02.00.02.01
- The motor should respond with an ACK message.
- Verify by checking the status byte in return messages.
-
Set Target Speed or Position:
cansend can0 0x000#02.00.03.[speed_value]
Replace
[speed_value]with desired RPM. -
Disable Motor:
cansend can0 0x000#02.00.02.00
---------->this section is for future parameters.<----------
- Standing height:
Xcm - Wheelbase:
Ycm - Joint angles:
- Shoulder:
0° - Elbow:
90° - Wrist:
0°
- Shoulder:
- Resting position: Arms folded at sides
- Forward movement: Controlled by Hub motor.
- Joint movement: Controlled by CyberGear motor commands.
- Balancing: Ensure IMU feedback is active.
---------->this section is for future parameters.<----------
| Component | Material | Properties |
|---|---|---|
| Chassis Frame | Aluminum 6061 | Lightweight, corrosion-resistant |
| Joints | Carbon Fiber | High strength-to-weight ratio |
| Wheels | TPU Rubber | Shock absorption, durability |
| Body Panels | ABS Plastic | High impact resistance, lightweight |
- Aluminum 6061: Used for frame rigidity and lightweight properties.
- Carbon Fiber: Applied in high-stress areas to improve strength.
- ABS Plastic: Used in outer shell for cost efficiency and impact protection.
- TPU Rubber: Enhances wheel traction and improves longevity.
For additional support, please refer to the official CyberGear CANBus documentation and ROS2 URDF tutorials.





