Starfish PnP machine control board combines Raspberry Pi RP2040 MCU with TMC2209 motor drivers

We’ve already seen the Raspberry Pi RP2040 MCU in a 3D printer controller board, so it should come as no surprise that the dual-core microcontroller also found its way into a Pick-and-Place (PnP) machine control board.

Designed by Thea Flowers, the Starfish board leverages the RP2040 MCU capabilities to control three Trinamic TMC2209 motor drivers, MOSFET drivers to control DC vacuum pumps, two vacuum sensors, and offer RS485 and I2C connectivity for feeders and peripherals respectively.

StarFish Raspberry Pi RP2040 PnP control board

Starfish specifications:

  • MCU – Raspberry Pi RP2040 dual-core Cortex M0+ microcontroller at up to 133 MHz with 264 kB of embedded SRAM
  • Storage – QSPI flash
  • Motor drivers – 3x TMC2209 drivers for X, Y1, and Y2
  • MOSFETs – 2x MOSFETs to control the 2x vacuum pumps
  • Valve drivers – 2x TI DRV120 single-channel relay, solenoid, and valve drivers to control two pneumatic solenoid valves
  • Sensors – 2x CFSensor XGZP6857D I2C pressure sensor modules
  • Host interface – USB Type-B  device port
  • Feeder interface – RS485 via MAX3078E transceiver
  • Expansion – I2C interfaces
  • Misc – Reset and Bootsel buttons, 2x status LEDs,
  • Power
    • 24V DC via 2-pin terminal block + 3A fuse
    • Additional 2-pin terminal block for daisy-chaining power to other boards
    • 2x 5V inputs
    • 2x 5V outputs

Opulo LumenPnP

The Starfish Raspberry Pi RP2040 board was initially designed and tested as a replacement for the STM32 board from Opulo’s LumenPnP open-source pick-and-place (PnP) machine pictured above but should work with others too. The board is open-source hardware with the KiCad hardware design files available on GitHub, and best of all, Thea published an article explaining the hardware design in detail. Sadly, I was unable to find any firmware for the board, and there may not be any right now since the GitHub page reads:

Jellyfish and Starfish were made for Winterbloom’s internal use cases and we don’t have the resources to provide support. While we hope that this repository contains useful information for you, please note that issues and pull requests may go unanswered or may be closed without reply.

The “internal use case” mentioned here probably means the assembly of Winterbloom‘s synth modules and accessories.


Share this:

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress

ROCK 5 ITX RK3588 mini-ITX motherboard
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
1 year ago

The web integration of schematics and PCB in the article is so beautiful. 😍 Is it a KiCad plugin or something?

Thea Flowers
1 year ago

It’s completely custom code. I’m hoping to release it for others to use before the end of the year.

Stefan Brüns
Stefan Brüns
1 year ago

R202 seems to have a too low value – P = U^2/R, U >= 22V -> P = 95mW.
8k2 would stay below the 63mW power limit, and limit the current through D203 (@24V) and D204 (@5V) to the same value of about 3mA.

Khadas VIM4 SBC