Blueprint

OREO- ROBOT dog

OREO V2 is an advanced, open-source quadruped robot designed for high-performance mobility and real-time robotic research. While the original OREO was a great starting point, the V2 is a complete "ground-up" rebuild focusing on power, precision, and the industry-standard ROS 2 Humble framework.

Created by A.Adarsh A.Adarsh

Tier 1

134 views

0 followers

Shadow Shadow requested changes for OREO- ROBOT dog ago

Hey! The CAD model direct copy of an existing model rather than an original creation. Please make the CAD yourself and read the submission guidelines before submitting again

A.Adarsh A.Adarsh submitted OREO- ROBOT dog for ship review ago

A.Adarsh A.Adarsh added to the journal ago

did the coding

To improve my pet i should improve the code also so, This was the long stretch—making the Pi talk to the Teensy and teaching the dog how to actually walk.

I started with the Teensy firmware. I wrote a quick C++ parser so it can understand the "S,angle..." commands coming from the Pi. I also added a "Failsafe"—if the Pi hangs or the cable pulls out, the servos automatically go into a "Sit" position instead of going crazy and breaking the 3D-printed legs.

Then came the ROS 2 part on the Raspberry Pi 4. Setting up the Humble workspace always takes time, but I got the serialbridgenode running using pyserial. I had some annoying permission issues with /dev/ttyACM0, but a quick usermod fixed that.

The real "brain work" was hours 5 through 8. I sat down and crunched the Inverse Kinematics (IK) math. Using atan2 was a lifesaver for getting the leg angles right (Coxa=40mm, Femur=100mm, Tibia=100mm). Finally, I coded the Trot Gait. It’s basically a bunch of sine waves working together. I even set up a params.yaml file, so if one leg is slightly tilted, I can just "trim" it in the config file without having to re-flash the whole Teensy.Screenshot (242)

A.Adarsh A.Adarsh added to the journal ago

routed the new pcb

because of i am suing another microcontroller i have to change it so,I spent the first two hours doing a deep dive into why my previous setup was failing. Those 20kg metal gear servos are absolute power-hungry beasts! I realized the standard thin PCB traces would just melt under a 10A load. So, I switched to a solid breakout-board system. I brought in the PCA9685 to handle the PWM signals—this way, the Teensy doesn't have to do all the heavy lifting. For power, I used a "double-decker" buck converter setup: a big 10A one for the "muscles" (servos) and a smaller 3A one just for the Pi 4 "brain."

The next two hours were all about wiring. I mapped out the I2C bus and made sure the Grounding was perfect—star grounding is key here so the servo noise doesn't mess with my MPU6050 IMU data. Tested the 3.3V logic from the Teensy with the 5V PCA9685, and everything is workmodel (1)
ing smoothly now.

A.Adarsh A.Adarsh added to the journal ago

made the model good

Before this version, I had already made a model of the robot dog, but honestly I was not very satisfied with how it looked. The structure was functional, but the design was not clean, the proportions were not proper, and overall it did not give a professional feel. It looked more like a rough prototype than a finished robot. After observing the design language of robots made by Boston Dynamics, I understood how important body proportions, smooth curves, compact structure, and proper leg alignment are for a quadruped to look stable and premium. So I redesigned the entire outer body, improved the leg positioning, refined the 3D prints, and made the frame more symmetrical and balanced. Now the new version looks much more finished, confident, and structured — not just like a school project, but like a proper engineered robot dog. This redesign made me realise that robotics is not only about electronics and code, but also about aesthetics, mechanical detailing, and overall presentation. hahahfahhhh(2)

A.Adarsh A.Adarsh added to the journal ago

OREO v2

I initially built OREO as an ESP32-based quadruped robot with 8 servos just to learn the basics of walking mechanism, servo control, PCB design and mechanical structure. That version helped me understand many practical problems like servo calibration issues, unstable gait timing, power drops, wrong wiring mistakes and even joint stress in 3D printed parts. After multiple fixes and redesigns, the robot started walking properly, but I realised I wanted to take it to the next level. So now I am upgrading it to OREO V2 Small. In this new version, I am using a Raspberry Pi 4 as the main brain and a Teensy for motor control, along with 12 high-torque 20kg servos for better stability and strength. I am also integrating computer vision so the robot can detect and follow a person, and adding a touch sensor so it can react when someone interacts with it. Instead of simple direct control like before, I am now building the system using ROS 2 architecture with separate nodes for vision, gait control, behaviour and hardware interface, so it becomes more structured like real robotics systems. This upgrade is not just about adding more hardware, it represents my shift from basic school-level robotics to research-style robotics development. I am maintaining the total budget under 395 dollars, which was challenging while choosing high torque servos and proper power management. Through this update, I am learning ROS, vision integration, state machines, modular architecture and system-level thinking. OREO V1 taught me fundamentals, but OREO V2 Small is helping me learn actual robotics engineering in a deeper way, and I will continue improving it step by step. images (1)

Iamalive Iamalive 🚀 requested changes for OREO- ROBOT dog ago

Woah awesome cad model! I really like how it looks like the Boston Dynamics dog :) Same thing as the previous reviewer - you need to include a bom.csv, the .step files of the cad model, and also add more to your journals that explain the design process more! You can't just say "I made the model" and get that approved.

A.Adarsh A.Adarsh submitted OREO- ROBOT dog for ship review ago

Shaurya Bisht Shaurya Bisht requested changes for OREO- ROBOT dog ago

hi your readme isnt organized and also needs images in it. there should be a seperate bom.csv file and you should also have organized folders

A.Adarsh A.Adarsh submitted OREO- ROBOT dog for ship review ago

Tanuki Tanuki ⚡🚀 requested changes for OREO- ROBOT dog ago

Hello! I love how informative the Readme is, it should also include the assembly though. Please format this nicer as well. Please check https://blueprint.hackclub.com/about/submission-guidelines! looks nice :)

A.Adarsh A.Adarsh submitted OREO- ROBOT dog for ship review ago

technical_. technical_. requested changes for OREO- ROBOT dog ago

You barely have any journals, and the ones that exist are very short, and only say "I finished the design" or something similar. Please break up your journals into chunks, and go in depth with your writing.
In addition, we are not going to approve a RP5 in your cart. Use a cheaper alternative.
Your repo is quite lacking in files. You must have the PCB project files, (.pro, .sch, .pcb) and the CAD step files of your 3d model.

A.Adarsh A.Adarsh submitted OREO- ROBOT dog for ship review ago

1mon 1mon requested changes for OREO- ROBOT dog ago

please upload complete cart screenshots, as well as expand your journal entries to include some reasoning behind your pcb and cad choices. additionally, you need a bom and pictures of your completed project in your readme.

OREO- ROBOT dog was submitted for review ago

A.Adarsh A.Adarsh added to the journal ago

i have done coding

0309d867ee9625cc894c4c9b1ddf9661_display_large
i have done coding it was really good equally i vibe coded using the Claude Ai and also I coded the bugs Ai made . Why i choose claude os that other ai is really make so much bugs and i prefer only gemini and claude for coding i2cscanclifailsafe
webServerHAL_PCA9685robotdogesp32testHALgaitsettingscliGetconfighelperspowerSensor
WiFiclicliSetsubscriptionconfig_wifi.exampleimuservoHALdefsubscriptionconfig_smallHAL_ESP32PWMpackagesProcess

A.Adarsh A.Adarsh added to the journal ago

i have done the modelling of the project

i did the project at last i did all the modeling yesterday it took me like 8 hrs that like it was reall funny and i liked it . I DID THIS modeling on tinkercad and i used some models from online to make accurate my wasnt enough goodBody
Body_Lid
shank_48x4HipRightHamRightHamLeft

A.Adarsh A.Adarsh added to the journal ago

Done pcb

i did build the pcb design ![schematic_MgLmB7miGq](/user-schematic_MgLmB7miGqboard_Gb8iMTn7Feboard_v2_akXxzcH6Rh (1)
board_v2_akXxzcH6Rh i spend many hours on it bcuz i am new in pcb designing . so i spend more than 5 hours and will later be a proo at the pcb designs . also the work i am done is given .
AM REALLy exited to really print this pcb like i am doing for the first time ,earlier I did like direct connection using wires or breadboard

A.Adarsh A.Adarsh started OREO- ROBOT dog ago

11/14/2025 7:52 PM - Done pcb

i did build the pcb design ![schematic_MgLmB7miGq](/user-schematic_MgLmB7miGqboard_Gb8iMTn7Feboard_v2_akXxzcH6Rh (1)
board_v2_akXxzcH6Rh i spend many hours on it bcuz i am new in pcb designing . so i spend more than 5 hours and will later be a proo at the pcb designs . also the work i am done is given .
AM REALLy exited to really print this pcb like i am doing for the first time ,earlier I did like direct connection using wires or breadboard

11/14/2025 7:56 PM - i have done the modelling of the project

i did the project at last i did all the modeling yesterday it took me like 8 hrs that like it was reall funny and i liked it . I DID THIS modeling on tinkercad and i used some models from online to make accurate my wasnt enough goodBody
Body_Lid
shank_48x4HipRightHamRightHamLeft

11/14/2025 8 PM - i have done coding

0309d867ee9625cc894c4c9b1ddf9661_display_large
i have done coding it was really good equally i vibe coded using the Claude Ai and also I coded the bugs Ai made . Why i choose claude os that other ai is really make so much bugs and i prefer only gemini and claude for coding i2cscanclifailsafe
webServerHAL_PCA9685robotdogesp32testHALgaitsettingscliGetconfighelperspowerSensor
WiFiclicliSetsubscriptionconfig_wifi.exampleimuservoHALdefsubscriptionconfig_smallHAL_ESP32PWMpackagesProcess

3/1/2026 9:05 PM - OREO v2

I initially built OREO as an ESP32-based quadruped robot with 8 servos just to learn the basics of walking mechanism, servo control, PCB design and mechanical structure. That version helped me understand many practical problems like servo calibration issues, unstable gait timing, power drops, wrong wiring mistakes and even joint stress in 3D printed parts. After multiple fixes and redesigns, the robot started walking properly, but I realised I wanted to take it to the next level. So now I am upgrading it to OREO V2 Small. In this new version, I am using a Raspberry Pi 4 as the main brain and a Teensy for motor control, along with 12 high-torque 20kg servos for better stability and strength. I am also integrating computer vision so the robot can detect and follow a person, and adding a touch sensor so it can react when someone interacts with it. Instead of simple direct control like before, I am now building the system using ROS 2 architecture with separate nodes for vision, gait control, behaviour and hardware interface, so it becomes more structured like real robotics systems. This upgrade is not just about adding more hardware, it represents my shift from basic school-level robotics to research-style robotics development. I am maintaining the total budget under 395 dollars, which was challenging while choosing high torque servos and proper power management. Through this update, I am learning ROS, vision integration, state machines, modular architecture and system-level thinking. OREO V1 taught me fundamentals, but OREO V2 Small is helping me learn actual robotics engineering in a deeper way, and I will continue improving it step by step. images (1)

3/1/2026 9:32 PM - made the model good

Before this version, I had already made a model of the robot dog, but honestly I was not very satisfied with how it looked. The structure was functional, but the design was not clean, the proportions were not proper, and overall it did not give a professional feel. It looked more like a rough prototype than a finished robot. After observing the design language of robots made by Boston Dynamics, I understood how important body proportions, smooth curves, compact structure, and proper leg alignment are for a quadruped to look stable and premium. So I redesigned the entire outer body, improved the leg positioning, refined the 3D prints, and made the frame more symmetrical and balanced. Now the new version looks much more finished, confident, and structured — not just like a school project, but like a proper engineered robot dog. This redesign made me realise that robotics is not only about electronics and code, but also about aesthetics, mechanical detailing, and overall presentation. hahahfahhhh(2)

3/1/2026 11:44 PM - routed the new pcb

because of i am suing another microcontroller i have to change it so,I spent the first two hours doing a deep dive into why my previous setup was failing. Those 20kg metal gear servos are absolute power-hungry beasts! I realized the standard thin PCB traces would just melt under a 10A load. So, I switched to a solid breakout-board system. I brought in the PCA9685 to handle the PWM signals—this way, the Teensy doesn't have to do all the heavy lifting. For power, I used a "double-decker" buck converter setup: a big 10A one for the "muscles" (servos) and a smaller 3A one just for the Pi 4 "brain."

The next two hours were all about wiring. I mapped out the I2C bus and made sure the Grounding was perfect—star grounding is key here so the servo noise doesn't mess with my MPU6050 IMU data. Tested the 3.3V logic from the Teensy with the 5V PCA9685, and everything is workmodel (1)
ing smoothly now.

3/1/2026 11:46 PM - did the coding

To improve my pet i should improve the code also so, This was the long stretch—making the Pi talk to the Teensy and teaching the dog how to actually walk.

I started with the Teensy firmware. I wrote a quick C++ parser so it can understand the "S,angle..." commands coming from the Pi. I also added a "Failsafe"—if the Pi hangs or the cable pulls out, the servos automatically go into a "Sit" position instead of going crazy and breaking the 3D-printed legs.

Then came the ROS 2 part on the Raspberry Pi 4. Setting up the Humble workspace always takes time, but I got the serialbridgenode running using pyserial. I had some annoying permission issues with /dev/ttyACM0, but a quick usermod fixed that.

The real "brain work" was hours 5 through 8. I sat down and crunched the Inverse Kinematics (IK) math. Using atan2 was a lifesaver for getting the leg angles right (Coxa=40mm, Femur=100mm, Tibia=100mm). Finally, I coded the Trot Gait. It’s basically a bunch of sine waves working together. I even set up a params.yaml file, so if one leg is slightly tilted, I can just "trim" it in the config file without having to re-flash the whole Teensy.Screenshot (242)