Instructions for Assembling XYZ Robot¶

Brief Description¶

  • For each new injection of beads for the ChronoSeq Device:
    • We need to make sure the beads from the previous injection are recovered and removed from the Bead Channel.
    • By removing the beads we can ensure the Cells being injected in the the microfluidic chip are Tagged by the Correct Time-Tagged Beads.
    • In addition we don't want to waste the substantial number of expensive Time-Tagged beads already in the Bead Channel by recovering them for use in later experiments.
    • Therefore we deposit the recovered beads in labeled 50ml and 15ml Tubes using the XYZ Robot and the Bead Bypass Valve.
  • To Build the XYZ Robot we will modify a GRBL CoreXY Pen-Plotter.
  • Although we modified the Doesbot plotter there are many other similar plotters available online and the provided CAD Files can easily be modified for those other Plotters. Most Pen Plotters meant for A4 Size Paper should work.
Location of XYZ Robot in Schematic

3D Printing Parts¶

  • We used a Bambu Lab X1 Carbon to print the Parts.
    • 0.4mm Nozzle
    • Textured PEI Plate
  • We generated several 3MF Files with all the Settings we used for the Print. You can open these files on the Orca Slicer.
  • The Original STEP Files and F3D Files can be found in the same directory.
  • We recommend getting a 3D Printing Accessories Kit if you haven't purchased one already.
    • Its extremely helpful in removing supports and cleaning up the print.

Ordering the Parts¶

  • You can order the Doesbot AX4 from either Amazon or directly from the Doesbot website.
  • Limit Switch PCBs.
  • Self Tapping Screw Set
    • We used M3 10mm Screws and M2 10mm Screws.
  • An Electronics Screwdriver set.
  • USB A to USB B Cable
  • Extra MG90S 9g Servo if necessary.
  • Socket Cap Bolts Screws Nuts Assortment Kit
  • M5 2020 Aluminum Profile T Nuts
  • Hex Wrench Metric and Inch Set
  • M5 Sockets Head Bolt Kit
  • Tweezer Kit
  • 2 Pieces 8mm Diameter 450mm Length Rods
  • Extra GT2 Timing Belt if necessary.
  • Digital Vernier Calipers to check dimensions.
  • Jumper Cables

Assembling the Robot¶

Assembling the Centeral Cross Slide¶

  • Instructions adapted from Original Doesbot assembly instructions.
  • You will need the following Parts for Assembling the Cross-Slide.
  • Using the Zip-Ties Secure the Linear Bearings to the Bottom Cross Slide.
  • Using the Cutters from the 3D Printing Accessories Kit, cut the ends of the Zip-Ties.
  • Do the same for the 3D Printed Top Cross Slide.
    • Make sure the orientation of the Linear Bearings is Correct.
    • The Text should be on the Opposite Side to the Linear Bearings.
Secure the Linear Bearings using Zip-Ties 3D Printed Text Should be on the Opposite Side
  • With all the Linear Bearings attached the Top Cross Slide should look like this.
  • Using the Cutters from the 3D Printing Accessories Kit, cut the ends of the Zip-Ties.
  • Push the M4x40mm Cross Screws through the Bottom Cross Slide.
  • Place four ⌀4x7mm Round Plastic Column pieces on Top.
  • Place four F624 Flange Bearings on top with the Flange facing downwards. The Flange is the wider part of the Bearing.
  • Place another four F624 Flange Bearings on top with the Flange facing upwards.
  • Place another four ⌀4x7mm Round Plastic Column pieces on Top.
  • Now Place the Assembled 3D Printed Top Cross Slide on Top. The Text should be visible and facing upwards in the orientation shown.
  • Using the 3.0 Ph0 Head and the Screwdriver from the Electronics Screwdriver Set:
    • Put M4 Hex Nuts on Top.
    • Hold the Nuts with your hands and tighten the screws from the other side.
    • Do not overtighten.
    • Execute the Cell Below to Watch a Video of the process.
In [1]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/Ca5o3hkrSwA?si=Ne49SfWFjsm5dMI8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • You will need the following Parts for Attaching the Limit Switches to the Assembled Cross Slide.
  • Use your Hands and the Hex Wrench to Attach the Limit Switches.Execute the Cell Below to Watch a Video of the process:
In [2]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/ppYSZmjUukY?si=xGZ0W8fq5oYfmQ85" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • The Cross Slide should look like this after attaching the Limit Switches.

Assembling the Left and Right Stepper Motor Pedestals¶

  • You will need the following Parts for Assembling the Side Panel of the Pedestal.
  • Use the Arrows on the Side Panel to make sure the orientation matches. The Arrows should be pointing forward and to the right.
  • Push the M3x20 Screws Through the Side Panel as shown.
  • Put the pieces shown on top.
  • Put the remaining pieces on top.
  • As shown in a previous video, Using the 3.0 Ph0 Head and the Screwdriver from the Electronics Screwdriver Set:
    • Put M3 Hex Nuts on Top.
    • Hold the Nuts with your hands and tighten the screws from the other side.
    • Do not overtighten.
  • Put the M4 Square Nuts in the Slots shown on the right and left.
  • Use the M4x12 Cross Screws to Holds the Square Nuts in Position.
    • You might have to slide the nuts a little up or down in their slot.
    • This is to make sure the M4 Screw is aligned with the hole in the Square nut.
Top View of assembled M4 Nut and Screw Side View of assembled M4 Nut and Screw
  • Follow the same steps for the second side pedestal panel. The two sides should now look like this.
  • Now we need to attach or stepper moter to the top panel of the pedestal. You will need the following parts.
  • Using the Phillips Head Screwdriver, screw the Top panel to the Stepper Motor.
    • The Electical Connection Pins and Rectangular Slots should be on the same side.
  • Following the same steps, do this for the second stepper motor and top panel.
  • Next we will attach our Side Pannel to 2020 Aluminum Extrusions for Support. You will need the following parts.
  • Make sure the orientation is correct before you screw everything in. The threads should be pointing towards you.
  • Execute the Cell Below to watch a Video of the process.
In [3]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/uwFnuTbKBMI?si=FAS2oX-pzww6NWx1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Make sure the side panel bottom and the Aluminum Extrusion bottom are in the same plane.
  • We will now attach the Top Panel with the Stepper Motor to the Side Panel for the Pedestal. You will need to following parts.
  • Execute the Cell Below to Watch a Video of the Process.
In [4]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/HmJP4HB_h6U?si=oBu2SMqeAgPqaA1X" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • We now need to further secure the Top Panel to the Side Panel for the Pedestal. For this you will need the following parts.
  • The Final Assembly should look like this. Execute the Cell Below to Watch a Video of the Process.
In [2]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/CJFpv_chTI0?si=-J44G_Kx6DUwwj3H" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Follow the same steps to assemble both the right and left side Pedestals.

Rear Axis Mount Assembly¶

  • You will need the following parts to assemble the Read Axis Mount.
  • Push the M4x30 Cross Screw through the Acrylic piece as shown.
  • Put the ⌀4x2mm Round Plastic Column on Top.
  • Put the F624 Flange Bearing on top with the Flange on the bottom.
  • Put another F624 Flange Bearing on top with the Flange on the top.
  • Put another ⌀4x2mm Round Plastic Column on Top.
  • Put the Second Acrylic Piece on Top as shown.
  • Loosely Screw the M4 Hex Nut on Top.
  • Next we will assemble the Rear Plate for mouting the part we assembled above. You will need the following parts for this.
  • Make sure the Orientation of the Acylic Piece matches what is shown.
    • The Arrows should be pointing away from you and towards the left.
    • Then push in the four M3x20 Screws as shown.
  • Put the Acrylic pieces shown on top.
  • Then put the remaining Acrylic pieces shown on top.
  • Similar to shown previously, Screw the M3 Nuts on.
    • Hold the Nuts and tighten from the other side using PH0 Phillips head Screwdriver.
  • Put the M4 Square Nuts in the Slots shown on the right and left.
  • Use the M4x12 Cross Screws to Holds the Square Nuts in Position.
    • You might have to slide the nuts a little up or down in their slot.
    • This is to make sure the M4 Screw is aligned with the hole in the Square nut.
Top View of assembled M4 Nut and Screw Left Side View of assembled M4 Nut and Screw Right Side Video of assembled M4 Nut and Screw
  • We will now join the Rear Plate with the Rear Axle Mount.
    • Make sure the orientation of the Rear Plate Matches
    • The arrows should be pointing away from you and towards the right.
    • You will need the following parts.
  • Insert the Axle Mount into the Rear Plate as shown. The Nut for the Axle Mount should be facing you.
  • Insert the M3 Nuts and Tighten the Screws for the four slots between the Axle Mount and Read Plate.
  • Tighten the Axis Screw you left loose previously.
    • Use a Phillips Head 3.0.
    • Hold the Nut on the other side with your other hand to provide a counter-torque.

Front Axis Mount Assembly¶

  • You will need the following parts to assemble the Front Axis Mount.
  • Make sure the Orientation of the Acylic Piece matches what is shown.
    • The Arrows should be pointing away from you and towards the right.
    • Then push in the four M3x20 Screws as shown.
  • Put the Acrylic pieces shown on top.
  • Then put the remaining Acrylic pieces shown on top.
  • Similar to shown previously, Screw the M3 Nuts on.
    • Hold the Nuts and tighten from the other side using PH0 Phillips head Screwdriver.
  • Put the M4 Square Nuts in the Slots shown on the right and left.
  • Use the M4x12 Cross Screws to Holds the Square Nuts in Position.
    • You might have to slide the nuts a little up or down in their slot.
    • This is to make sure the M4 Screw is aligned with the hole in the Square nut.
Top View of assembled M4 Nut and Screw Left Side View of assembled M4 Nut and Screw Right Side Video of assembled M4 Nut and Screw

Attaching 3D Printed Z Axis Servo Assembly to Front Axis Mount¶

  • You will need the following parts to attach the 3D Printed Parts to the Front Axis Mount.
  • The final assembly should look like the following. Execute the Cell Below to watch a video of the process.
    • Front View. Make sure the Orientation Matches.
    • Back View.
In [6]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/FXEYt6oFKC0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Attaching Servo Gear and Linear Rail to Front Axis Mount¶

  • You will need to following parts to assemble the 3D Printed Mini Gear onto the Servo.
    • The Doesbot kit should include the extension cable already attached and taped to the servo motor.
    • If the joint is not taped or you use a replacement Servo, make sure to tape this joint to prevent contact errors.
  • Hold the Gear in Place while tightening the screw.
  • The assembled Servo should look like this.
  • Next we need to attach the Servo and Linear rail to the Front Axis Mount. You will need the following parts for this assembly.
  • Execute the Cell Below to Watch a Video of the Process.
In [7]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/PjlSYiQZlqQ?si=NLqHWcjsFoTzWi8S" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Next you need to make sure the screw for mounting the gear to the servo is tight.
    • If the screw is loose the gear will keep rotate freely and the linear rail will move up and down freely.
    • Tightening the screw should prevent free movement of the linear rail.
    • Execute the cell below to watch a video of the process.
In [8]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/BPy2oqiKcA0?si=IXMXUMIgS1LAgnQm" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Left and Right Pedestal Assembly¶

  • We will now connect the Left and Right Pedestals. You will need the following components for this.
  • Using the Phillips Head screw the Aluminum Extrusion Rod to both the right and left pedestals as shown.
Left Pedestal Right Pedestal

Assemble with Central Cross Slide¶

  • Now we will connect the Cross slide with the Pedestal Assembly. You will need the following components for this.
    • Two 8mm Diamter 450mm length rods are available with the Doesbot kit.
    • The other two are from the Amazon Link provided at the start.
  • Turn the Pedestal Assembly upside down and loosen the screws as shown for both the left and right side pedestals.
Right Front Screw Right Back Screw
  • Push the rods through the opening on the right side as shown.
  • Push the central cross slide through the two rods as shown.
  • Push the rods all the way through the opening on the left side as shown.
    • Make sure the top and bottom surfaces of the rods are in the same plane as the back of the left and right pedestals.
  • Turn the Pedestal assembly upside down and tighten all four screws as shown for both the left and right side pedestals.
  • The Central cross slide can now freely move along the X axis. Execute the cell below to watch a video of the process.
In [9]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/A7pUYTj-wic?si=dbczwky1H5vIfhym" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Assemble Front and Rear Axis Mount¶

  • Now add the Y Axis rods through the cross slide as shown.
  • Loosen the screws on the sides for the Rear Axis Mount.
  • Attach the Rear Axis Mount to the Y Axis rods as shown.
    • Make sure the flat surfaces on the rods are in the same plane as the Rear Axis Mount.
  • Tighten the screws on the sides to secure the Rear Axis Mount in place.
  • Loosen the screws on the sides for the Front Axis Mount.
  • Rotate the Robot 180 degrees and then attach the Front Axis Mount to the rods as show.
    • Make sure the flat surfaces on the rods are in the same plance as the Front Axis Mount.
  • Tighten the screws on the sides to secure the Front Axis Mount in place.
  • The Linear Rail on the Front Axis Mount can now be moved freely in the XY Plane. Execute the cell below to watch a video of the process.
In [10]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/vWC7Dn3ono8?si=7u_oBKN-Z5m70x-8" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Attaching the Height Raisers for the Left and Right Pedestals¶

  • You will need the following components to raise the height of the XYZ Robot.
  • We will first tighten the screws holding the Z Axis servo in place.
    • Using the Blue Cutter hold the screw in place to provide a counter torque.
    • Tighten the screw from the other side using the 1.27mm Hex Wrench.
  • Execute the cell below to watch a video of how to attach the 3D printed height raisers to the XYZ Robot left and right pedestals.
In [11]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/GuQ31nuUHzY?si=fkr41ZrQxGJ-MVeo" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Threading the GT2 Timing Belt Through the XYZ Robot¶

  • All our parts are connected but there is no way for the Stepper Motors to control the movement of our robot.
  • We need to connect a Timing Belt through the Stepper motors and thread it through the X and Y axes.
  • Please see the Doesbot assembly documentation for additional details on how this belt is threaded.
  • You will need the following Parts to get started.
    • The timing belt included with the Doesbot kit works quite well. 2m of Timing belt is sufficient for our case.
    • You will also need a set of Tweezers to help pull the belt through narrow gaps.
  • Execute the cell below to watch a video of the Timing Belt threading process.
In [12]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/AziFLNQE4DY?si=j5LqXo-Px71VFJRs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Next we will make sure the four bolts on the central cross slide are tightly secured.
    • Hold the nut in place to provide a counter-torque using the Calipers or a wrench.
    • Tighten the bolts on the bottom using the Phillps head screwdriver.

Connecting the Wiring and Testing the Components of the XYZ Robot¶

  • The Control Board included with the Doesbot kit comes with two heatsinks.
    • Peel the Film from the Bottom of the heatsinks and attach them to the Stepper Motor drivers as shown.
Control Board and Heatsinks Heatsinks attached to the Stepper Motor Driver ICs on the Control Board
  • Connect the Control Board included with the Doesbot kit via USB to your computer.
  • We will start by first testing our Z Axis Servo. This is the servo connected to the linear rail.
    • The Jumper cables for the servo should be labelled.
    • Connect the Jumper cables to their respective pins on the Control Board.
    • Connect the included 12V Power supply.
  • Next we will upload the Doesbot sketch using the Arduino IDE and test our Servo.
    • Execute the cell below to watch a video of the process.
In [13]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/DzaNyuvrcw8?si=745Qyv2A5HPedlcn" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Next insert the Linear rail back. Execute the cell below to watch a video of the process.
In [14]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/p3d7iKRlRm8?si=TRBQfe-IwbTXat56" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • We will now connect the X and Y axis limit switches to our Control Board.
    • The Cables are included with the Limit Switches.
    • You will need additional Jumper wires to make the connection.
    • Execute the cell below to watch a video of the process.
In [15]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/cpaFZN4TgHo?si=IT_S-Q2Kym6T5sQ0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • Next we will connect the left and right stepper motors to our board and test various commands.
  • Execute the cell below to watch a video of the process.
In [3]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/N3V3dKkm8Ko?si=MvzGb-DvAMLpEIci" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Controlling the Robot through Serial Commands via Jupyter Notebooks¶

  • We can identify the COM Port by connecting and then disconnecting the Control Board via USB. By checking which new COM Port shows up in Arduino IDE.
    • In our case the port is COM6.
  • Close the Arduino IDE before moving to the next step.
    • Execute the cells below to test controlling the robot via Jupyter notebooks.
In [ ]:
import serial
import time
mainPlotterRobotCOM="COM6"
plotter=serial.Serial(mainPlotterRobotCOM,timeout=1,write_timeout=1)
time.sleep(5)
print(plotter.name)
print(plotter.get_settings())
print(plotter.is_open)
if not plotter.is_open:
    plotter.open()
    time.sleep(5)
In [ ]:
#We can send the robot home
plotter.write("H\n".encode())
time.sleep(5.0)
In [ ]:
#Lets move to multiple coordinates with and then go back home.
plotter.write("G-5000,-5000|G-2500,-2500|G-7500,-7500|H\n".encode())
time.sleep(15.0)
  • Now we have assembled and successfully tested our XYZ Robot. We can also control it via Jupyter notebooks.
  • Execute the cell below to close the connection to the XYZ Robot.
In [ ]:
plotter.close()

Replace right pedestal height raiser with new raiser and Organize cables¶

  • We will need two M3x6mm Self Tapping Screws to attach the Control Board to the Right pedestal Height raiser.
    • Make sure you print the Model with the two mounting holes.
  • Replace the Right pedestal height raiser with the replacement raiser and screw the control board in as shown.


  • Thread the Servo cable from the front for better cable management.
  • Thread the left Stepper Motor Cable through the Center of 2020 Aluminum extrusion connect the left and right pedestals.
    • Then secure the cable in place using Zip ties.
    • Remember to cut the protruding end of the Zip ties after you are done.



  • Secure the cables from the limit switches to the Top of the Central Cross Slide.

    • By Zip tieing them to the bottom right zip ties on the Cross Slide.
    • By using Zip ties at regular intervals to avoid the cables from getting tangled.
    • Cut the protruding excess zip tie ends.
  • Tape the Jumper wire connection from the Limit switches to the Control Board to prevent unwanted contact errors.

Using a Pipette Tips to Secure 1/16" OD PTFE Tubing in Place¶

  • You will need 1/16" ID 0.5mm ID PTFE tubing {CAT NO. JR-T-4183-M25}
    • Email precision@vici.com for a Quote. Tell them your credit card details for payment.
  • Cut a 30cm Piece of PTFE Tubing using a Stanley Razor Blade.
  • I recommend getting these Pipette Tips:
    • Genesee Scientific 200/20μl Tips
  • Next make sure the Linear Rail for your Front Axis Mount is at the correct position.
    • This should be the position when the Tube is down "T0".
    • There should be six teeth above the top surface of the 3D printed mount.
    • The base of the seventh tooth should be in the same plane at the 3D printed mount.
  • You will need clear Silicone Adhesive to attach the Pipette Tips to the Linear Rails.
  • Execute the cell below to watch a video of the process.
In [1]:
%%HTML
<iframe width="800" height="600" src="https://www.youtube.com/embed/gTlfDnKuvek?si=EYNy-YdKv7w8HFz7" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
  • You can add more Silicone Adhesive to help secure the Tip even more.
    • Leave overnight to cure whenever you add more adhesive.