Motorized macro rail
mattwach·motorized_macro_rail·macro_rail_kicad/macro_rail_kicad.kicad_pcb
About the Motorized macro rail PCB
Motorized macro rail is an open source RP2040/RP2350 PCB design by mattwach, published on GitHub. It is a 2-layer board measuring 119.4 × 57.2 mm, with 17 components from 16 distinct parts.
Its main chip is the Pico, from the RP2040/RP2350 family. Other key parts include the LM7805, 4N25 and Pololu_Breakout_A4988. By type, the board carries 5 connectors, 4 switches, 3 ICs, 3 capacitors, 1 module and 1 resistor.
It belongs with the robotics & motion designs in this gallery.
From the project
Contains a hardware design and firmware for a stepper-motor-powered macro rail module. The module is designed to be attachable to a manual rail. Another goal is to make the module easily removed in for cases where manual mode is preferred (such as field work).
This is a project for a motorized macro focusing rail. It is used with special "stacking" software to increase the depth of field of macro images. This project is presented as a modification to an existing commercial rail, but could be extended to use a custom built rail (using steel rods and linear bearings commonly used in at-home 3D printers and CNC mahines).

Main components on the Motorized macro rail
Motorized macro rail bill of materials (BOM)
17 components, 16 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | Pico | RPi_Pico_SMD_TH | U1 |
| 1 | LM7805 | TO-220-3_Vertical | U2 |
| 1 | 4N25 | DIP-6_W7.62mm | U3 |
| 1 | Pololu_Breakout_A4988 | Pololu_Breakout-16_15.2x20.3mm | A1 |
| 1 | Battery | PinHeader_1x02_P2.54mm_Vertical | J1 |
| 1 | Motor | PinHeader_1x04_P2.54mm_Vertical | J2 |
| 1 | 128x128 OLED | OLED_128_128_1.5in | J3 |
| 1 | GIMBAL | PinHeader_1x04_P2.54mm_Vertical | J4 |
| 1 | 2.5mm Plug | PinHeader_1x02_P2.54mm_Vertical | J5 |
| 1 | SHUTTER | SW_PUSH_6mm_H4.3mm | SW2 |
| 1 | PREVIOUS | SW_PUSH_6mm_H4.3mm | SW3 |
| 1 | NEXT | SW_PUSH_6mm_H4.3mm | SW4 |
| 1 | RESET | SW_PUSH_6mm_H4.3mm | SW5 |
| 1 | 470u | CP_Radial_D6.3mm_P2.50mm | C1 |
| 2 | 10u | C_Disc_D3.8mm_W2.6mm_P2.50mm | C2, C3 |
| 1 | 100 | R_Axial_DIN0411_L9.9mm_D3.6mm_P12.70mm_Horizontal | R1 |
Motorized macro rail design files
The KiCad project lives in the mattwach/motorized_macro_rail repository on GitHub; these links point at the commit this page was built from.
Motorized macro rail: common questions
What microcontroller does the Motorized macro rail use?
The Motorized macro rail is built around the Pico, from the RP2040/RP2350 family.
How big is the Motorized macro rail PCB?
The Motorized macro rail measures 119.4 × 57.2 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Motorized macro rail?
17 components, from 16 distinct parts. The full bill of materials is listed on this page.
Where can I download the Motorized macro rail design files?
From the mattwach/motorized_macro_rail repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the Motorized macro rail design in my own project?
The repository has no license, so all rights stay with mattwach. Use it as a reference, and ask the author before reusing the design.
Can I test firmware for the Motorized macro rail without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.
Similar boards
RP2040/RP2350
Open Book Abridged Edition
joeycastillo
85 × 115 mm29 parts2LCC-BY-SA-4.08.1kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
LogicAnalyzer
gusmanb
57 × 55.2 mm6 parts2LGPL-3.05.0kRP2040/RP2350
Jitx design
gusmanb
55.5 × 65 mm26 parts4LGPL-3.05.0kRP2040/RP2350
Pro V2
kata0510
290.1 × 130 mm270 parts2LMIT2.3k