Introduction: DIY Doly - a Companion Robot Powered by Raspberry Pi

About: Engineer, maker, entrepreneur. Creator of robot Doly and many more :)


UPDATE: Exciting news! We are LIVE on INDIEGOGO! All DIY enthusiasts, I've heard your feedback. You can pre-order your DIY maker kit TODAY!


Create the advanced robot of your dreams.


Hello everyone!

You might be familiar with the postponed Doly Kickstarter project. After its initial launch, I received a wealth of feedback from our community. It became clear that people have diverse needs and desires when it comes to Doly. Some of you wanted the ability to build it yourselves, while others sought a powerful developer platform for AI projects and advanced robotic features. There were those who were looking for an educational tool for their children or simply a source of entertainment. That's why I've taken the initiative to upgrade Doly to cater to all of these demands.

The original design was centered around embedded Linux, but now it's based on the versatile Raspberry Pi CM4, compatible with any CM4 model featuring WiFi. This updated design offers increased flexibility, enabling you to upgrade your hardware when necessary, whether it's more RAM or storage for complex projects. Additionally, you now have access to hardware with 6 GPIO pins, 2 servos, UART, I2C, and USB connectivity.

While I initially anticipated the upgrade taking four months, it ultimately extended to six months due to unforeseen delays in securing my CM4 orders. Nevertheless, I utilized this time to develop the DYI Doly project, which I'm thrilled to introduce as a guide for building your very own robot from scratch.

On this project page, I'll walk you through the process of constructing your DYI Doly. It's a do-it-yourself endeavor and doesn't include a comprehensive software package like the upcoming original Doly, as it relies on non-free APIs and SDKs that prevent this. However, I'm actively working on software support for your custom robot, including control for displays, servos, sensors, and more. My aim is to provide you with all the resources and assistance you need, such as drivers, libraries, and comprehensive documentation, to ensure your success.

I extend my heartfelt thanks to all robot enthusiasts, makers, and DIY aficionados for your unwavering support and valuable feedback. It's my aspiration that this project serves as an inspiration for you to embark on the creation of something truly extraordinary and unique.

Constructing a robot from the ground up may appear daunting, but with the right resources and guidance, it can be a gratifying and enlightening experience.

The initial step is to 3D print all STL source files.

Following that, you'll need to gather the necessary materials: a Raspberry Pi CM4, various electronic components, servo motors, displays, and a suitable power supply. A comprehensive list of required components can be found in the project documentation.

Subsequently, you'll assemble the robot, adhering to the instructions provided in the project details, complete with schematics and all essential information.

Once your robot is assembled, you can get into programming it to perform a wide range of functions. Given that the Raspberry Pi CM4 runs on Linux, coding becomes straightforward. You can employ programming languages like C++, Python, or others to control the motors, sensors, camera, and other components. The project documentation features an array of examples and tutorials to facilitate your journey.

In conclusion, embarking on the construction of your DYI Doly can be a thrilling and educational venture. You'll delve into electronics, programming, and robotics, and by journey's end, you'll have crafted something distinctive and functional. Don't hesitate to start your DYI Doly project today! My hope is that you'll find the experience as enjoyable and enlightening as I did.


Tiny body packed with a vast amount of technology.

  • Raspberry Pi CM4
  • 8 megapixel Sony IMX219 camera
  • 2x Touch sensors
  • 6 Axis IMU sensor
  • 2x TOF sensor
  • 4x IR edge sensor
  • 2x microphone
  • 2x speaker
  • 2x servo motor
  • 2x motor with encoder
  • 2x LCD Display
  • 2x RGB led
  • 6x GPIO pins
  • 1x Qwiic / I2C port
  • 1x UART port
  • 1x USB output
  • 2x Servo output
  • 18650 battery


Possibilities with DYI Doly

  • Face recognition
  • Speech recognition
  • Object recognition
  • Autonomous companion robot
  • Development platform for study
  • Block Based programing
  • Surveillance camera
  • Desktop assistant

Important Note: Doly not only supports these incredible features but also many more. Support our Indiegogo campaign to unlock them all!

Supplies

Hardware components


  • Raspberry Pi Compute Module 4×1
  • Custom Motherboard
  • Custom Eye module
  • Custom Bumper module
  • Arm module
  • Charge module
  • 270 degree servo
  • N20 motor
  • Speaker 2W 23mm x2
  • Fan 2006
  • 3D printed parts
  • M1.6 x 3mm countersunk head screw ×4
  • M2 x 5mm countersunk head screw ×2
  • M2 x 5mm flat head screw ×2
  • M2.5 x 16mm pah head screw
  • 2 x 5 mm self tapping countersunk head screw ×6
  • 2 x 10 mm self tapping countersunk head screw×2
  • 2 x 20 mm self tapping countersunk head screw×2
  • 1.7 x 4 mm self tapping countersunk head screw×4
  • 1.7 x 4 mm self tapping washer head screw
  • 2 x 6 mm self tapping pan head screw×9
  • 2 x 4 mm self tapping pan head screw×1
  • 2 x 10 mm self tapping pan head screw×2
  • ID4mm OD8mm 0.5mm washer×4
  • M2 x 4 x 8mm round spacer×2
  • M2 x 4 x 8mm hexagon spacer
  • 0.5 pitch 8 pin 110mm FPC×2
  • 0.5 pitch 8 pin 40mm FPC×2
  • 0.5 pitch 40 pin 80mm FPC×1
  • 0.5 pitch 20 pin 60mm FPC×1
  • 0.5 pitch 12 pin 50mm FPC×1
  • Phosphor Copper Sheet C5191 0.2mm×1
  • Screen protector 35mm×2
  • Neodymium Magnet 5mm x 2mm×1
  • IMX219 Camera×1
  • 18650 Battery×1
  • Round LCD 240x240×1
  • Encoder magnet OD 7.65 mm, ID 1.0 mm, 12 CPR×4


Hand tools and fabrication machines


  • 3D FDM printer
  • 3D SLA printer
  • Soldering Station
  • Phillips head screwdriver
  • Tweezers

Step 1: 3D PRINT

All STL files are located in here. An FDM 3D printer is required for files that begin with "FDM". An SLA 3D printer is required for files that begin with "SLA".

It is easy to print with PLA, however I recommend printing a heat-resistant filament like PETG or ABS for the bottom lid.

Preferring a translucent resin for hands will give better results for hand lights.

Tracks printed with NinjaFlex 85A TPU

Step 2: PREPARE PARTS

Customize servo

  1. Remove bottom lid.
  2. Desolder cables.
  3. Solder 3 pin 1.0 mm pitch 60mm length cable.
  4. Close bottom cover.


  1. Remove top cover
  2. Secure SLA printed cover with screws
  3. Customized servo completed

Charge Connectors

  1. Print attached connector drawing with 1:1 scale
  2. Paste printed paper to Phosphor Bronze sheet with double sided tape
  3. Cut from outer edges
  4. Bend edges as shown
  5. Remove tape and paper


Step 3: ELECTRICAL PARTS

PCB Design

Designing electronics was not easy due to chip shortages. There is a high chance that you can find listed electronics. However, sometimes you will find components with a different package. If you would like to do it by yourself, you can access the schematics, Gerber files and BOM files from link.


After electronic components are placed on PCB you have to align LCD to Eye PCB with help of 3D printed aligner which is located at link as "LCD_aligner.STL".

* Place eye PCB into aligner as shown.

* Bond LCD to PCB with a double sided tape.

* Remove LCD cover plastics.

* Apply screen protector glass.

Step 4: ASSEMBLY

This video series will show you how to assemble the DIY Doly robot.

Step 5: CHARGING DOCK

3D Print &Assemble

Once you have printed the 3D parts, you will need to assemble the charger board. The schematics and component list (BOM) are located at this link.

When all 3D printed parts are ready,

  • Apply glue carefully to both the top and bottom surfaces.
  • Make sure the glue is kept away from the edges.
  • Ensure that the part is aligned properly.
  • Secure the top side to the bottom side.
  • Install the charger module and secure the bottom lid with four screws after a few minutes.


Step 6: Software

You can find a pre-compiled kernel image which includes drivers, modules and libraries at this link.

I'm working on more examples to demonstrate how to control and access features, but you can find some C++ examples in here.

Step 7: Doly Prototype Videos / DIY Doly Possibilities

Step 8: Showcase

Support project Doly!

We deeply appreciate your support! If you're as enthusiastic about Doly as we are, you can play a vital part in our journey. Join us in sharing our vision on social media. Together, we can build a thriving community centered around Doly and shape the future of personal robotics. Your assistance in spreading the word is priceless to us.


Website

Instagram

Facebook

Back us NOW on Indiegogo

Anything Goes Contest

Runner Up in the
Anything Goes Contest