BOM Visible 3Bot (3-Gantry Visible Robot) V1.1

This BOM is for a Visible Robot with 3 gantries – the “Visible 3Bot.” The gantries described here are identical in height, although, using alternative lengths of shafts and bracing for the gantry assembly will give taller and shorter gantries. Be sure to use longer or shorter Z-axis shafting if you go this route. Be sure also to calculate the effective working envelope with the end-effectors you intend to use.

The names of the parts are as they called as .STL files.

3D-printed Parts by Major Assembly

Screenshots are not to scale

Base                                                              Qty
base_corner_3b_00_top*                     1        base_corner_00_top

base_corner_3b_00_bottom*              1         base_corner_00_bottom

base_corner_3b_01_top*                      1        base_corner_01_top

base_corner_3b_01_bottom*              1         base_corner_01_bottom

base_corner_3b_10_top*                      1        base_corner_10_top

base_corner_3b_10_bottom*              1        base_corner_10_bottom

base_corner_3b_11_top*                      1        base_corner_11_top

base_corner_3b_11_bottom*              1        base_corner_11_bottom

leveling_dial                                                   4        leveling_dial_lg

leveling_dial_long_nut                            4      

leveling_dial_static_v1_1                         4      

Base assembly sub-total                         16

* Find these parts in the STLs_Visible_3Bot folder. The other parts, shared with the Visible Robot are in the STLs_Visible_Robot folder.

The Qty column reflects the number of parts need for the Visible 3bot. The base remains the same as the Visible Robot. The ‘Y’ axis adds a few parts to accommodate the additional ‘Y’ motors and drives. ‘X’ and ‘Z’ axes are triplicated.

Gantry                                                           Qty
gantry_shoulder_short_0                   3        gantry_shoulder_short_0

gantry_shoulder_short_1                   3        gantry_shoulder_short_1

gantry_hip_0                                                3        gantry_hip_0

gantry_hip_1                                               3        gantry_hip_1

gantry_hip_bearing_retainer_0       3        gantry_hip_bearing_retainer_0

gantry_hip_bearing_retainer_1       3         gantry_hip_bearing_retatiner_1

gantry_hip_band_attach                        3        gantry_hip_band_attach

arduino_mega_pcb_bracket_v1_1   3     

arduino_pcb_bracket_clamp           12        arduino_bracket_clamp

gantry_hip_uswitch_bracket             3       

megatronics_v3_pcb_bracket (opt) 1       megatronics_v3_pcb_bracket

megatronics_standoff             (opt)     4           megatronics_standoff_8mm

 Gantry assembly sub-total               39


X-axis                                                          Qty
x_carriage_bottom_v1_1                   3        

x_carriage_top_v1_1                           3        

x_leadscrew_capture                          3        x_leadscrew_capture

x_uswitch_stop                                     3        nema17_centering_ring

 X-axis sub-assembly sub-total    12


Y-axis                                                          Qty
y_nema23_motor_mount                  3         y_nema23_motor_mount

nema_17_to_23_motor_mount*   3        nema17_to_23_motor_mount

3bot_y_leadscrew_capture                3        3bot_y_leadscrew_capture

3bot_trap_rod_capture                     2        3bot_trap_rod_capture

3bot_far_end_nut_seat                       2         3bot_far_end_nut_seat

y_gantry_drive                                       3          y_gantry_drive

 Y-axis sub-assembly sub-total    16    (19, if using NEMA17 motors)

* Use this part with the y_nema23_motor_mount part, above, to mount a NEMA17     motor to drive the ‘Y’ axis. Not needed for X-axis, as the NEMA17 mount is integral to the shoulder.


Z-axis                                                 Qty
z_carriage_base                               6         z_carriage_base

z_bearing_bar                                  9*       z_bearing_bar

z_bearing_sleeve                          18**    z_bearing_sleeve

z_cable_bracket_v1_1***           3       

z_top_motor_mount_v1_1*** 3       

z_min_uswitch_bracket                3         z_min_uswitch_bracket

z_max_uswitch_bracket               3         z_max_uswitch_bracket

 Z-axis part sub-total                    45

* Four holes are drilled out for M3 pass-thru for each of the three Z-axis assemblies, Two for each assembly drilled to be used as M3 lock nuts.
** Two holes drilled out for M3 pass-thru for each Z-axis assembly, Four drilled to be used for M3 lock nuts.
Reference the specifics on how this is done in the Post-processing Guide P6, 7.

        *** Used on both Original and Alternate Z-axis forms

Z-axis – alternate form                       Qty

The alternate Z-axis is lower parts-count and stiffer, but requires precision drilling of the bearing seats. This is best accomplished with a drill-press and a fixture. Howevere, using a heat-gun on the z_carriage_alt part after fitting with bearings and shafts has been shown to work to greatly reduce friction if the tunnels were slightly out-of-true after drilling without a drill press (in other words, by hand).

The alternate form is now the recommended Z-axis carriage.

z_carriage_alt_v1_1                                 3       

z_carriage_cap_alt                                   3         z_carriage_cap_alt

z_max_uswitch_bracket_alt                3         z_max_uswitch_bracket_alt

z_min_uswitch_bracket_alt_v1_1    3        

Z-axis alternate part sub-total     12


End-effector Platform (EEP)

The obvious advantage of having three gantries to run is that you can put three EEPs on the system. They can be the same or different. One can run a 3D-printer, another a mill and a third can carry a camera. Or you could get really fancy and run a Finix 3Struder platform with an auto-tool changer (ATC) and something else. There’s really a lot of options.

eep_platform*        (beta)                            end_effector_platform

* This is a stand-in platform meant to allow the fixing of tools to it. It will accept a  bottom-mounted motor, or a leadscrew-capture part if the motor is top-mounted.

eep_cable_bracket                                         eep_cable_bracket

3_extruder_platform**    (beta)                   finix_3_extruder_platform

** This is a stand-in platform that will mount three E3D extruders. The boltholes for     attachment to the extruder release mechanism are non-standard. They were derived  from a Printrbot gearhead beta direct-drive mechanism.

3_extruder_platform_cable_bracket          3_extruder_cable_bracket


finix-3struder_platform          3_extruder_platform 3_extruder_basefinix_extruder_tee_bracket
w/leveling base (sold separately)

Total printed parts                       131     (107 with alternate Z-axis)


Purchased Parts

Base                                                                       Qty
12mmx800mm hardened, chromed shaft   2    Y-axis
5/16” x 22” (560mm) threaded rod *        4    End-rods
5/16” x 34” (860mm) threaded rod *        2    Stiffening
¼” x 1” hex bolt **                                               4    Leveling
¼” hex nut **                                                         4    Leveling
.177 cal. (4.5mm) BBs (buy a package)    1    Leveling dial bearings
Microswitches                                                       6    Travel limit switches

Base purchased part subtotal                  23

* 8mm can be substituted

** 7mm can be substituted

Gantry                                                                    Qty

8mm x 11.5” (~290mm) shaft*                    12    Fixes gantry height
5/16” x 13” (330mm) threaded rod          12    Gantry stiffeners
3/8” x 22” (560mm) threaded rod **        6    Y-axis drive rods

Gantry purchased part subtotal           30

*8mm x 13 ½” (340mm) shaft can replace this one to give additional Z-axis height—and workspace volume. Alternatively, 8mm x 9 ½” (250mm) shaft can be used to improve stiffness. These replacements may require gantry hips and shoulders to be printed with slightly different angles at which to hold the stiffening (angled) braces. These also use longer (and shorter) lengths of threaded rod, 16” and 12½” (~410mm and ~320mm), respectively.

**10mm c/b substituted

X-axis                                                                                 Qty
10mm x 500mm hardened, chromed shafts    6
LM10UU 10mm linear bearings                            12
Nema23-56 stepper motor *                                    3

Nema23-76 stepper motor                                       3
Nema17-48 stepper motor                                       3
Nema17-60 stepper motor                                       3
6.35×6.35 rigid coupler (Nema23 motor) ** ^ 3
6.35x5mm rigid coupler (Nema17 motor) ^      3
1/4” – .250 (lead) x 18” (455mm) leadscrew     3
1/4” – .250 anti-backlash leadnut                          3
22” (~560mm) x 1/2” (12mm) steel band ^^     3
Microswitches                                                                    6 
X-axis purchased part subtotal                         39

*The mounting features of the gantry_shoulders will take either NEMA17 or NEMA23 steppers. Motor choice should be related to the Visible Robot’s intended use.

** This coupler must have a diameter no greater than 5/8” (15mm)

^ Flexible couplers can be used.

^^ banding/strapping can be a scavenger-hunt challenge. It’s used for strapping large items to pallets. Try appliance stores.


Y-axis                                                                          Qty
12mm x 800mm hardened, chromed shafts     2
LM12UU 12mm linear bearings                      12
Nema23-56 stepper motor                                  3
Nema23-76 stepper motor                                  3
Nema17-48 stepper motor                                  3
Nema17-60 stepper motor                                  3
6.35 x 6.35 rigid coupler (w/Nema23) *        3
6.35 x 5mm rigid coupler (w/Nema17) *       3
1/4” – .250 (lead) x 30” (760mm) leadscrew  3
1/4” – .250 anti-backlash leadnut                      3
34” (~860mm) x 1/2” (12mm) steel band       3  

Y-axis purchased part subtotal                       29

* Flexible couplers can be used.


Z-axis                                                                      Qty
8mm x 330mm hardened, chromed shafts     9
LM8UU 8mm linear bearings                               18
Nema17-48 stepper motor                                     3
Nema17-60 stepper motor                                      3
6.35 x 5mm rigid coupler *                                      3
¼”-.100 (lead) x 9.75” (250mm) leadscrew**   3
¼”-.100 anti-backlash leadnut                             3
9” (~230mm) x ½” (12mm) steel band ^         3

Spring (6mm OD x 40mm len, 1.0mm wire)*** 1
Microswitches                                                             6

Z-axis purchased part subtotal                    48

*Flexible couplers can be used.

** Also known as  ¼”-20 (TPI)

^ Depends on EEP used


Z-axis – alternate                                        Qty
M6 x 130      or     ¼” – 20 x 5” bolts *      9
M6        or    ¼” nuts *                                      9

NOTE: Add these Z-axis – alternate items to the list of Z-axis purchased parts, above

* Flanged bolt heads and nuts preferred for better pressure distribution


End-effector Platforms
The platform itself is a printed part. Purchased parts will vary depending on choice of EEP, which will vary due to the function intended.

Electronics                                        Qty
Arduino Mega2560                            3
RAMPS1.4                                              3
Printrboard Rev D or later                 3
Megatronics V3 Rev. F                         3
ATX power supply *                              1

Electronics purchased part subtotal   7    (Arduino Mega2560 / RAMPS assumed)

!!!  The Megatronics board is untested at the time of writing!

*A PSU with 3 12VDC rails is preferred. One for each gantry.


Total purchased parts                         176


Fasteners            Screws*    Nuts        Washers    Locknuts    Setscrews
Base1,2          M3x20 (8)   5/16” (14)  5/16” (14)  5/16” (12)
M3x12 (8)
M3x10 (8)
M3x6  (12)
Gantry3,4,5    M3x25 (6)   5/16” (24)   5/16” (24)  5/16” (24)  M3 (21)
M3x10 (36)    3/8” (18)    3/8” (18)    3/8” (12)
M3x12 (24)
M3x16 (24)
M3x6   (18)
X-axis1,5,6     M4x16 (12)    // NEMA23 mount
M3x25 (12)
M3x10 (21)
M3x6   (9)
Y-axis             M4x16 (12)   M4 (12)
M3x10 (9)
M3x6      (12)
Z-axis1,          M3x25 (42)   3/16” (18)                 M3 (18)                                              M3x10 (39)
M3x8 (18) – socket-head
Z-axis (alternate) M6x135 (9)  M6 (9) – flanged
EEP Platform   Depends on platform used

Usage by sub-assembly                Screw usage
Base fastener sub-total        64        M3x6        51
Gantry fastener sub-total    249        M3x10    159
X-axis fastener sub-total      54        M3x12    12
Y-axis fastener sub-total      45        M3x20    24
Z-axis fastener sub-total    135        M3x25    60
Z-axis alternate fasteners     18        M6x130      9 (Z-axis alternate)
M4x16    24

Fastener total            547    // using original Z-carriage parts
475    // using alternate Z-carriage parts

Total parts w/ fasteners        840    // using original Z-carriage parts
741    // using alternate Z-carriage parts

* I’ve used pan-head screws exclusively except for the M3x8 socket-head screws for fastening the z_bearing_sleeves and z_bearing_bars to the z_carriage_base. The socket-head screws allow for better access with a hex (Allen) wrench.

1 Includes microswitches
2 Includes leveling dial
3 The gantry includes hips, shoulders, their connecting threaded rods, height determining 8mm shafts and plates used as leadscrew capture and stops for the X-axis microswitches.
4 Includes Arduino mount
5 Includes cable band mount
6 Includes motor mounting

Cabling/wiring         Length    Description

The listing below is for each gantry in the system. The Visible 3Bot would take three of each of the cables listed.–one for each gantry.

Listed below is the wiring with lengths, wire gauges and suggested color codes. The color codes shown pertaining to the motors simply reflect some color codes used by motor manufacturers. There doesn’t seem to be a unifying standard for motor color codes.

The wire lengths for the motors having to be “made-up” will depend on the lengths—if any—supplied by the motor vendor. The lengths shown are what’s required to reach from the motor to its termination, including that needed to traverse the flex-banding and still have a little to put in a short loop to resist any stresses.

12VDC Pwr → RAMPS    40” (1m)     4-wire x 16AWG cable (2 wires Bk, 2-wires Y)
PC ↔ VR Comm        6′    (1.8m)    USB Type-A ↔ Type-B cable1

X-axis motor (total)        12” (300mm)    4-wire x 22AWG cable        (Bl,R,Gn,Bk) OR (Gn,Gy,Y,R)
Xmax microswitch cable    43” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)
Xmin microswitch cable    42” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)

Y-axis motor     (total)        45” (1.1m)    4-wire x 22AWG cable (Bl,R,Gn,Bk) OR (Gn,Gy,Y,R)
Ymax microswitch cable    34” (850mm)    3-wire x 22AWG  “ (Y, Bk, R)
Ymin microswitch cable    34” (850mm)    3-wire x 22AWG   “ (Y, Bk, R)

Top-mounted Z-axis motor
Z-axis motor     (total)        45” (1.1m)    4-wire x 22AWG cable (Bl,R,Gn,Bk) OR (Gn,Gy,Y,R)
Zmax microswitch cable    45” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)
Zmin microswitch cable    45” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)

Bottom-mounted Z-axis motor
Z-axis motor (total)        56” (1.4m)    4-wire x 22AWG cable (Bl,R,Gn,Bk) OR (Gn,Gy,Y,R)
Zmax microswitch cable    45” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)
Zmin microswitch cable    45” (1.1m)    3-wire x 22AWG     “    (Y, Bk, R)

Bk – Black    Y   – Yellow
Bl  – Blue    Gn – Green
R   – Red     Gy – Grey

1 Printrboard uses a USB Type-A to Micro cable. Megatronics V3 uses USB Type-A to Type-B.


Following are some of the suppliers I’ve used. The list should be considered as giving hints. It shouldn’t be taken as authoritative. (The search bar is your friend). I’ve found parts using eBay, Amazon, and AliExpress, as well as going direct to the vendor’s site.

Mechanical parts:
8mm, 10mm and 12mm shafting    – Various from China and USA.
Some problems from CN, mostly from poor packaging / international shipping.
1/4” – 20 leadscrews and leadnuts  –
8mm, 10mm and 12mm linear bearings – Various China and USA – VXB.
6.35mm x 5mm (¼” x 5mm) couplers –         // Used with NEMA17 steppers
6.35mm x 6.35mm (¼” x ¼”) couplers –      // Used with NEMA23 steppers
M3 (3mm) screws and nuts – local hardware store*
5/16” threaded rod, nuts and locknuts –  local hardware store*
3/8” threaded rod, nuts and locknuts –  local hardware store*
1/4” hex bolts and nuts – local hardware store*

* While the local hardware store is both handy and quick, it’s usually considerably cheaper to buy from Internet outlets—especially when you’re buying fasteners in quantity. has a huge inventory of fasteners, as well as a very nice introduction to the various kinds of fasteners—and a printable size chart that comes in handy as a reference in identifying scavenged parts. Alternatively, most cities have fastener wholesalers that sell to small jobbers. They will usually have a counter and sell small quantities. Check the Internet or your phone directory.

An alternative to buying small quantities of a large variation of small (M3 or up to about #6 SAE) screws is to buy a larger quantity of longer screws and cut them with a bolt cutter. Wire strippers often feature a bolt cutter for small sizes. (Be sure yours cuts the flavor—metric or inch—that you’re working with).

Electrical parts:
Ribbon cable (40 strand) –  Various
Microswitches – RobotDigg,
NEMA17 stepper motors –  Kysan, RobotDigg, Wantai
NEMA23 stepper motors –  RobotDigg, Wantai,
ATX power supply – Antec, CoolerMaster, Thermaltake, EVGA
Printrboard –
Arduino Mega 2560 –
RAMPS1.4 – Various
Megatronics V3 – ???
Extruders – E3D, Mk8, Ubis

PLA Filament: – has good filament, but limited to 1lb. & .5kg spools, limited colors.