⚠ Under heavy construction

As of July 11, 2026, Sorter V2 is not yet in a position to be built.

The documentation that exists is incomplete. Any given page may be accurate, inaccurate, present only as an example, or badly out of date. We do not yet recommend that anyone attempt to build Sorter.

For the most live updates on our progress, join our Discord ↗.

Electronics — Preparing the control board

Preparing the control board

How-to guide

The five stepper drivers, the Pico, the jumpers that address the drivers, and the bypass jumpers on the four LED ports.

Author Spencer

Contributor Jon

Parts needed

Custom PCBs

  • 1×

Electronics

  • 5×
  • 1×
  • 10×

A an interchangeable alternative works (hover for what).

Tools needed

  • Soldering iron and solder
  • Tweezers or needle-nose pliers

Do this with the board loose, before the housing.

The bare green basically Embedded Control Board on a wooden bench with five blue-finned TMC2209 stepper driver modules laid out in a row above it
Photo: Spencer.

The Pico comes with its two rows of 20 pins already fitted. That is what the parts list above buys, and step 2 here only pushes it into its sockets. A bare Pico and 40 header pins do the same job if you would rather solder them on yourself.

A Raspberry Pi Pico on a white background, seen at an angle from above with the chip and micro USB socket facing up, forty bright solder joints along its long edges and the pins pointing down away from the board
A Pico with its pins on. Photo: BrickCycleAlice.

Step 1 Seat the five drivers

Static caution: the TMC2209 modules and the board are ESD-sensitive. Touch a grounded metal surface before handling them, and avoid doing this on carpet in dry weather.

Heatsink up, EN/MS1/MS2 edge towards the middle of the board. Module and socket are both silkscreened, so match the labels. A reversed module can be damaged the moment power is applied, so double-check against the photo before moving on.

A single TMC2209 V1.3 driver module standing on a bench, blue heatsink upwards, with its pin names readable around the edge
Photo: Spencer.
A TMC2209 driver pushed fully down into its socket on the control board, heatsink upwards, with the remaining drivers out of focus behind
Photo: Spencer.

Step 2 Seat the Pico

Into the two long sockets down the middle, USB end towards the edge of the board.

A Raspberry Pi Pico held just above its two long header sockets on the control board, ready to be pushed down, with seated stepper drivers behind it
Photo: Spencer.
The Raspberry Pi Pico fully seated in its sockets on the control board, sitting flat and parallel to the board
Photo: Spencer.

Step 3 Set the address jumpers

The five drivers share a UART bus, so each needs its own address. You set it by bridging the MS1 and MS2 header pins: 1-2 bridged reads 3V3 (HIGH); 2-3 bridged reads GND (LOW). MS1 is the low bit of the two-bit address. Two pins allow four addresses, one short of five steppers, so the board runs a second bus for the fifth driver. Ten jumpers in total, two per driver; tweezers or needle-nose pliers make placing the small 2.54 mm (0.1 in) jumper caps much easier.

Annotated close-up of one driver's MS1 and MS2 headers: MS1 boxed in green with its jumper on pins 1 and 2 for 3V3, MS2 boxed in blue with its jumper on pins 2 and 3 for GND, beside a table mapping the four combinations to addresses 0 to 3
Photo: Spencer.

Which driver is which channel is fixed by the board, not by you: each driver socket is wired to its own pins on the Pico, and to the pair of stepper connectors beside it. The board prints the name of each one beside it, Stepper_A2 to Stepper_A6, so set the jumpers by that name.

Printed on the boardIts stepper connectorsChannelStepperBusAddressMS1MS2
Stepper_A2J23 / J240chute_stepperuart00GND (2-3)GND (2-3)
Stepper_A3J27 / J281c_channel_1_rotoruart013V3 (1-2)GND (2-3)
Stepper_A4J31 / J322c_channel_3_rotoruart02GND (2-3)3V3 (1-2)
Stepper_A5J35 / J363carouseluart033V3 (1-2)3V3 (1-2)
Stepper_A6J39 / J404c_channel_2_rotoruart10GND (2-3)GND (2-3)

The two connectors in each pair are the JST-PH socket and the row of 2.54 mm (0.1 in) pins beside it, wired to the same four nets. Nothing plugs into them yet: the motors go on at connecting the components, step 2.

Read the 1 2 3 printed beside every header. The fifth driver's block is mirrored, which is why the board prints !Double check! next to it, and a wrong address fails silently: that driver never answers and its stepper stays unconfigured.

Step 4 Bridge the bypass jumpers on the LED ports

The board has four LED ports, and each one feeds +24 V through a 180 Ω resistor: R21 on J8, R22 on J9, R27 on J10, R28 on J11. That resistor is there for a bare LED board, which has no current limiting of its own. Nothing this machine plugs into those ports wants it: the camera lamps run LED strip, which limits its own current, so the resistor only costs brightness, and brightness is set with PWM in the software instead.

Bridge all four. Beside each port is a two-pad solder jumper, printed Bypass R21, Bypass R22, Bypass R27 and Bypass R28. Melt a blob of solder across both pads of each so they are joined. Nothing is added to the board (Jon, 2026-09-13 and 2026-09-23).

Annotated close-up of the control board between ports J10 and J11: the solder jumper above R27 is circled in green with a green tick beside it and carries a blob of solder across both pads, and a red arrow points at the jumper above R28, which is two bare pads with a gap between them
Circled in green, bridged. The one the red arrow points at is not. Photo: Jon.

Do it now, while the board is loose. Once it is closed into its housing and wired, the pads are under the lid and behind a dozen cables. Which port takes which lamp is picked on the connecting page.

The finished result

This is a correctly jumpered board.

Top-down view of the fully populated control board, with five TMC2209 drivers, the Raspberry Pi Pico, and ten yellow jumpers fitted across the MS1 and MS2 headers
Five drivers, the Pico, and ten jumpers across the MS1 and MS2 headers. Photo: Spencer.

Next: the control board housing.