Assembly Guide

June 30, 2026 ยท View on GitHub

This guide provides detailed instructions on how to assemble the parts for the Microban robot. Printing the parts and buying the necessary components are prequisites for this guide, so please refer to the Printing Guide and the BOM before starting the assembly process.

At any point during the assembly, you can refer to the Onshape assembly to see how the parts fit together.

The steps to assemble the robot are as follows:

  1. Motor Setup: Configure the motors using the Dynamixel Wizard software.
  2. Cable Setup: Prepare all the cables necessary for the assembly.
  3. Leg Assembly: Assemble the legs of the robot.
  4. Torso Assembly: Assemble the torso and arms of the robot.
  5. Electronics: Assemble the top of the trunk, build the battery module, and connect the electronics.
  6. Final Assembly: Assemble all the parts together to complete the robot.

1. Motor Setup

The first step in the assembly process is to set up the motors. I highly recommend writing the motor IDs directly on them to avoid mixing them up during configuration and assembly. The following table lists the motor names and their corresponding IDs:

Motor NameID
Left Hip Yaw11
Left Hip Roll12
Left Hip Pitch13
Left Knee14
Left Ankle Pitch15
Left Ankle Roll16
Right Hip Yaw21
Right Hip Roll22
Right Hip Pitch23
Right Knee24
Right Ankle Pitch25
Right Ankle Roll26
Left Shoulder Pitch31
Left Shoulder Roll32
Left Elbow33
Right Shoulder Pitch41
Right Shoulder Roll42
Right Elbow43
Head51

To configure all the motors, connect one motor at a time to your PC using the U2D2 kit as presented in the image below.

image

Then, launch Dynamixel Wizard. If your XL330 motor is not new, perform a factory reset by clicking on the "Recovery" button, selecting the XL-330-288 model and following the instructions.

In the "Option" tab, select "Protocol 2.0", "57600 bps" as the baud rate, and verify that the correct COM port is selected. Then, click on the "Scan" button to detect the motor. Once the motor is detected, you can set the following parameters (and click on the "Save" button to save the settings):

  • ID: the ID of the motor as listed in the table above
  • Baud Rate: 3 (1Mbps)
  • Return Delay Time: 0
  • PWM Slope: 255 (no slope)
  • Shutdown: 52 (Removing "Bit 0 Input voltage error")

Once the parameters are set, you can disconnect the motor and move on to the next one. If you want to check the motors at the end, you can connect them together as their IDs are set. You will need to change the baud rate of the scan to 1Mbps as it as been changed during the configuration.


2. Cable Setup

The XL330 motors used in the Microban robot are daisy-chained, which means that the motors are connected in series. This allows to limit the number of cables that need to be routed through the robot. The only exception is near the board, where the first cables are split to connect to several links. The following diagram shows how the motors are connected to each other and to the board, and what cable lengths are used for each connection.

routing

2.1 Splitter Cable

To create the 1-to-2 splitter cable, you can cut 2 cables of 180mm to obtain 3 half-cables of approximately 50mm (you don't need more length than that). Then, you can solder 2 of them to the 3rd one. Be careful to solder together the same wires, as an incorrect connection can damage permanently the motors. Do not forget to insulate the soldered connections with heat shrink tubing.

To do the 1-to-3 splitter cable, the process is the same, but one of the 3 outgoing cables should be longer than the other two to allow for the robot opening from the top. So you should cut 2 cables of 180mm into 3 half-cables of approximately 50mm and one half-cable of approximately 120-130mm.

The following images shows how the splitter cable should look like.

image190

2.2 Reducing Cable Length

To reduce the length of the 180mm cables, you can cut them to the desired length and solder the ends back together, but it can lead to a weak connection and communication issues. A better solution is to re-crimp the cables to the desired length. To do this, you will need a crimping tool, JST EH crimp terminals, and optionally a wire stripper. You can check the BOM for references.

image922

First, cut the cable to the desired length. The end cut to the correct length should be stripped to expose the wires on 2mm, not more. While crimping the terminals, the first crimp will be done on the plastic part of the terminal to hold the wire in place, and the second crimp will be done on the metal part of the terminal to make the electrical connection. The details of the crimping process are presented in this video.

image958 image940

Once the 3 end terminals are crimped, you need to retrieve the plastic housing from the second half of the cable. You can do this by rising the plastic stops on the housing with a small screwdriver and pulling the housing out. If you have trouble with this step, here is another video showing how to do it.

Finally, you can insert the 3 crimped terminals into the plastic housing. The order of the wires is important, so make sure to insert them in their corresponding position. Here is a last video showing how to insert the terminals into the housing.


3. Leg Assembly

The objective of this section is to assemble the legs of the robot and fix them to the pelvis.

image

For the assembly, you should refer to the Onshape assembly to see how the parts fit together. Nevertheless, some parts of the assembly require specific instructions and are detailed in the following sub-sections.

3.1 Double-Motor Blocks

For the double-motor blocks used in the ankle and hip joints of the robot, you should pay attention to the cable routing, as the motors are very close to each other. Specifically, the cable connected to the bus between the two motors should be plugged before sliding the motors into the double-motor block. It concerns the cable relying the two motors, as well as the cable connecting the double-motor block to the next motor in the chain. The following images show you the assembly process on a right ankle double-motor block.

Cable routing before sliding the motors into the double-motor block (do not forget the spacer):

image

Result after sliding the motors into the double-motor block:

image image

3.2 Cable Routing

For the cable lengths, refers to the Cable Setup section. You should use the cable sockets on the tibia, femur and hip double-motor blocks to route the cables through the robot. For the tibia and femur routing, you can check the first image of the section. For the hip double-motor block, you can check the image below.

image

3.3 Feet Adhesion

To increase the adhesion of the feet to the ground, you can add an optional layer of rubber on the bottom of the feet. You can use a rubber sheet or cut a piece of an old cycling tire.

image


4. Torso Assembly

The objective of this section is to assemble the torso of the robot.

image

For the assembly, you should refer to the Onshape assembly to see how the parts fit together.

Once the torso is assembled, you can fix it to the pelvis and connect the splitter cables to the hip yaw motors, shoulder pitch motors, and the RPI Robot Hat.

image


5. Electronics

The objective of this section is to assemble the electronics of the robot, including the battery module and the trunk top.

The following schematic shows how the electronics are connected together. The battery module is composed of a 2S 18650 battery holder and a BMS board. It is connected to the trunk top with a xt30 connector. The trunk top contains the USB-C charger and the switch powering on the Raspberry Pi. The routing allows to charge the battery independently of the power state of the robot. The alimentation of the Raspberry Pi is done through one of the 2 JST EHR-4 connectors on the RPI Robot Hat.

microban_elec

5.1 Battery Module

To assemble the battery module, first connect the 4.2V pin of the BMS to the metal contact on the battery holder, located on the side opposite the red (8.4V) and black (0V) wires. To make this easier, you can melt a small hole in the holder using your soldering iron to reach and solder the wire to the contact. Next, solder the positive (+) and negative (-) wires from the BMS to the XT30 connector. Once the wiring is complete, secure the BMS to the back of the battery holder using double-sided tape. Finally, apply hot glue to insulate all the connections and prevent any short circuits. The pictures below show the fully assembled battery module.

image image

5.2 Trunk Top

First, insert the switch into the trunk top. Using pliers, carefully fold its pins down to free up some vertical space.

Next, prepare the JST EHR-4 power cable for the RPI Robot Hat. Cut a Dynamixel cable to a length of approximately 150mm and remove the two unused wires. Refer to the picture below to see which wires to keep.

image

To wire the components, start by soldering the USB-C charger to the XT30 connector, which will be used to connect the battery module. Next, wire the switch by soldering the charger's BAT pin to one of its terminals, and the VIN wire of the JST EHR-4 cable to the other. Finally, complete the circuit by soldering the GND wire of the JST EHR-4 cable directly to the GND pin of the USB-C charger.

The picture below shows the result of the wiring process.

image

Important: Because the trunk top is printed in PLA (which is sensitive to heat), make sure to solder the USB-C charger module before mounting it to the plastic part. Also, once the wiring is complete, you should isolate the connections with hot glue to prevent any short circuits.

6. Final Assembly

To finalize the assembly of the robot, you just have to slide the battery module into the trunk, connect its XT30 connector to the trunk top, connect the JST EHR-4 cable to the RPI Robot Hat, and close the trunk with the trunk top.

image image

WhatsApp Image 2026-06-25 at 18 08 36

If you have followed all the steps of this guide, your robot should be fully assembled and ready to be powered on. You can now proceed to the Deployment Guide to deploy the software on the Raspberry Pi and start controlling your Microban robot!