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.
- 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,
- 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
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.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
The web integration of schematics and PCB in the article is so beautiful. 😍 Is it a KiCad plugin or something?
I did not even realize the components were clickable. That’s the code:
I can’t find any plugins that can do that though, maybe it’s some custom code.
It’s completely custom code. I’m hoping to release it for others to use before the end of the year.
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.