Meet Rudy! A quadruped which I have designed and built from scatch!

Rudy was designed to operate using ROS 2, running on an Ubuntu Raspberry Pi and powered by Dynamixel XC430 motors.

Currently, Rudy walks using a phased trot gait. The next phase will focus on implementing kinematics using a custom kinematics package I developed, along with integrating more advanced gait algorithms to improve locomotion and control.

Github Link: https://github.com/ncknight-un/Quadruped_Rudy


Gait Generation

  • Implemented a trot gait using a single ROS 2 node that controls Dynamixel motors through a unified whole-body joint state update within a timer callback.
    • The gait is generated by pairing alternating legs with a phase offset, allowing one pair to push off while the other pair lands. This simulates a trot gait and allows the quadruped to have more body stability during its gait as atleast two feet are on the ground at all times.
  • Future Work: Implement the body kinematics package for gait generation using existing Bezier curve trajectory models.



Static Pose Transitions

  • Static whole-body joint poses commanded via ROS 2 service calls.
    • Rudy is programed for the following static poses:
      • Lie Down
      • Sit Down
      • Stand Up
      • Kneel
      • Shake Paw



CAD Design & Modeling

  • Iteratively designed the robot using Fusion 360 to achieve the intended degrees of freedom:
  • Identified and removed all joint impingement points in Range-of-Motion Testing as of January 18th, 2026.
  • Total Robot Weight: 4.8 lb (2.18kg) - excludes battery
    • (Final Model assembled using PLA-CF for the body and TPU for the Feet)

Range of Motion Evaluation

  • Two degrees of freedom at each hip:
    • Abduction/adduction (15-deg Abd / 65-deg add)
      • Hip Abad was included to support center-of-mass shifting and balance for future advanced gait control methods.
    • Flexion/extension (90-deg Flex/Ext)
  • One degree of freedom at each knee:
    • Flexion/extension (112-deg Flex/Ext)

Software & Embedded Design

  • The robot runs Ubuntu 24.04 LTS with ROS 2 Kilted on a Raspberry Pi 4-B+.
  • Each motor is daisy-chained to the U2D2 Power Hub Board, which distributes power and communication to all servos.
  • Control logic is implemented using a ROS 2 node that generates joint trajectories and gait timing.
  • The current controller implements a trot gait using joint waypoint trajectories for a trot gait style.
  • Future work includes kinematics and Bezier trajectory-based gait generation.


Electronics Layout & Power Distribution


Additional Media



Next Steps

Continue developing gait generation and validating kinematics

  • Use RViz to assist with kinematic validation and continue gait prototyping.
  • Implement an open-loop gait controller using rosjoy for joystick-based control.
  • Implement distance awareness using Ultrasonic Sensor.

Skills Improved

  • Mechanical design iteration and validation for legged robots
  • CAD modeling with an emphasis on joint kinematics and range-of-motion analysis
  • Electronics integration, power distribution planning, and wiring practices
  • Actuator bring-up, motor ID management, and torque-aware system design
  • Embedded systems planning using Raspberry Pi and Dynamixel motors
  • ROS ecosystem, including URDF modeling and RViz visualization from a bottom-up project

Key Takeaway

This project has quickly deepened my understanding of how mechanical design, electronics, and software must be developed together when building a robotic system from scratch. Bringing up the electronics and validating motor operation reinforced the value of careful system architecture and documentation, particularly when planning for future ROS integration. Designing the robot with simulation and software control in mind from the beginning has helped shape a more scalable and extensible platform for gait development in the future beyond the initial phase shift waypoint trot gait that I currently have implemented on the robot!

Overall, this project has strengthened my confidence in tackling open-ended robotics problems that span CAD, hardware integration, and software planning. It has also sparked my interest in legged locomotion, robotic simulation, and building platforms that transition seamlessly from hardware prototypes to software-driven experimentation. I hope to continue advancing the software and gait trajectories of Rudy in the Future!