How to order Contact us Distributors Reviews
Register / Login

Select currency

If you'd like to view estimated pricing in other currencies then please select a currency below below.

GBP USD EUR JPY AUD NOK CHF NZD CAD

Please note:

  • Currency conversions are estimates and for information only
  • Your order will be billed in GBP
  • All prices exclude VAT / other local sales taxes
  • Shipping calculated during checkout


Servo 2040 - 18 Channel Servo Controller

by Pimoroni
An image of Servo 2040 - 18 Channel Servo Controller An image of Servo 2040 - 18 Channel Servo Controller An image of Servo 2040 - 18 Channel Servo Controller

Build the hexapod/robot arm/other articulated contraption of your dreams with this all-in-one RP2040 powered servo controller with current measurement, sensor headers and RGB LEDs.

Servo 2040 is a standalone servo controller for making things with lots of moving parts. It has pre-soldered pin headers for plugging in up to 18 servos - enough for the leggiest of hexapod walkers or plenty of degrees of freedom for your robotic arms, legs or tentacles. Servos can be pretty power hungry, especially the chunky ones, so we've added some neat current monitoring functions so you can keep an eye on power consumption.

There's six addressable RGB LEDs (AKA Neopixels) for visual feedback and status reports, plus pin headers to connect up to six analog sensors - useful for sensing where the ground is, if you're about to crash into a wall, or how much pressure The Claw is exerting on your hapless test subject. We've also popped a QW/ST connector on there, to make it super easy to add a Qwiic or STEMMA QT breakout or two.

Servo 2040 is supported by a well documented C++/MicroPython servo library with lots of examples to show you how to use the individual features (and everything together).

RP2040 x servos

We've used RP2040 as the core of this board because of the flexibility of its Programmable IOs (PIOs). Traditionally, each servo needs to be connected to its own PWM capable channel on the microcontroller. RP2040 only has 16 PWM channels, but it's possible to drive up to 30 servos using the magic of PIOs (if you're canny with wiring). RP2040's PIOs are also super fast, so they can drive servos with sub microsecond resolution.

We've built the RP2040 microcontroller right into Servo 2040, so you don't need separate microcontroller and servo driver boards. This makes for nice compact builds - perfect for small robots!

Features

  • Powered by RP2040 (Dual Arm Cortex M0+ running at up to 133Mhz with 264kB of SRAM)
  • 2MB of QSPI flash supporting XiP
  • 18 sets of header pins for connecting 3 pin hobby servos
  • Supports higher voltage servos (up to 11V) *
  • 6 addressable RGB LEDs/Neopixels
  • 6 sets of header pins for connecting analog sensors
  • Onboard voltage and current sensing
  • Reset and BOOT button (the BOOT button can also be used as a user button)
  • USB-C connector for programming and power (3A max)
  • Screw terminals for supplying external power (with reverse polarity protection) (10A max continuous current)
  • Qw/ST (Qwiic/STEMMA QT) connector for breakouts
  • Fully-assembled (no soldering required)
  • C++/MicroPython libraries
  • Schematic
  • Mechanical drawing

Software

Because it's a RP2040 board, Servo 2040 is firmware agnostic! You can program it with C/C++, MicroPython or CircuitPython.

Our C++/MicroPython libraries will help you get the most out of Servo 2040, they're packed with powerful features for working with servos. You'll get best performance using C++, but if you're a beginner we'd recommend using our batteries included MicroPython build for ease of getting started.

  • Download Pirate brand MicroPython (you'll need the 'pimoroni-pico' image)
  • Installing MicroPython
  • MicroPython API documentation
  • MicroPython examples
  • C++ examples

You can also use CircuitPython on your Servo 2040, if you want access to all the nice conveniences of Adafruit's ecosystem (note that you will only be able to control up to 16 servos with CircuitPython).

  • Download CircuitPython for Servo 2040
  • Getting Started with CircuitPython
  • CircuitPython examples

If you'd like to program Servo 2040 from an Android phone then you could try the DroidScript app, available on Google Play.  You'll need a USB-C cable and a recent version of firmware installed on the board.

Connecting Breakouts

If your breakout has a QW/ST connector JST-SH to JST-SH cable, or you can easily connect any of our I2C Breakout Garden breakouts with a JST-SH to JST-SH cable; coupled with a Qw/ST to Breakout Garden adaptor.

  • List of breakouts currently compatible with our C++/MicroPython build.

Printables

  • Mounting bracket for Servo 2040

Notes

  • Measurements: 62mm x 42mm x 12mm (L x W x H, including connectors). The mounting holes are M2.5 and 2.7mm in from each edge.
  • * If you want to supply external power at a higher voltage than 5V (so that you can use higher voltage servos) you'll need to cut the 'Separate USB and Ext. Power' trace on the back of the board. This will prevent the RP2040 and other board components from being damaged by the increased voltage.
  • If you cut this trace you'll need to provide separate power for the board logic (through USB or the 5V on the broken out header).
  • When programming a battery powered robot through USB we'd recommend using something like a data only USB adaptor to avoid back-powering your computer, or the battery.

About RP2040

Raspberry Pi's RP2040 microcontroller is a dual core ARM Cortex M0+ running at up to 133Mhz. It bundles in 264kB of SRAM, 30 multifunction GPIO pins (including a four channel 12-bit ADC), a heap of standard peripherals (I2C, SPI, UART, PWM, clocks, etc), and USB support.

One very exciting feature of RP2040 is the programmable IOs which allow you to execute custom programs that can manipulate GPIO pins and transfer data between peripherals - they can offload tasks that require high data transfer rates or precise timing that traditionally would have required a lot of heavy lifting from the CPU.

Reviews

User photos

Build the hexapod/robot arm/other articulated contraption of your dreams with this all-in-one RP2040 powered servo controller with current measurement, sensor headers and RGB LEDs.

PIM613

You must register for an account and be logged in to view pricing or place an order on the Pimoroni Wholesale store.

If you represent a school or university, a business, or reseller of Maker products then you can sign up for a wholesale account.

If you already have an account you can login to your account here.

Alternatively the easiest way to get your hands on the products we offer is to order them directly from our customer facing online store.

SKU
PIM613
EAN
0769894021439
Brand
Pimoroni
Stock available
61 units
You may backorder this product
Weight
20g

Video introduction

Guides & tutorials

Search

 

Region

Your search returned no results.

Subscribe

We'll keep you up to date with new product launches!

The good ship

We've been sailing the Maker seas offering our wares since 2012.

  • read about our history
  • what our customers say
  • find a local distributor
  • contact our business team

We manufacture all of our products locally at our workshop in Sheffield, UK

Under one roof

Pimoroni are your one-stop shop for bulk and education purchasing of Raspberry Pi, Pimoroni, micro:bit, Adafruit, Sparkfun, and many other brands.

If you have any questions about what we offer then drop us a line.

Pimoroni Ltd

Unit 1, Parkway Business Park,
Parkway Drive,
Sheffield,
S9 4WN,
United Kingdom

Registered in England and Wales:
Company №: 07510759
VAT Reg №: GB 140 8707 21