Picade Max USB Controller

by Pimoroni

Connect joysticks and up to 30 arcade buttons to this RP2040-powered board to make your own homebrew two player games controller.

This loooong board connects to your PC, Mac, or Linux machine with a standard USB-C cable, and appears as a USB games controller. Then it's just a matter of adding some arcade buttons and joysticks (we sell them separately, and also bundled in our Arcade Parts Kit)!

The buttons and joysticks plug into the board with DuPont pin connectors, which you'll find on one end of our wiring loom. There's also a connector to add Plasma Buttons if you want to add some rainbow-illuminated button-bashing to your games controller.

Features

  • Powered by RP2040
    • Dual ARM Cortex M0+ with 264kB of SRAM
    • 2MB of QSPI flash supporting XiP
  • Easy DuPont socket connectors for attaching buttons and joysticks
    • 2x 4-way joystick inputs
    • 30x (!) arcade button inputs
    • 3x ADC inputs (plus 3V3 power and ground)
  • USB-C connector
  • Plasma button connector
  • Qw/ST (Qwiic/STEMMA QT) connector
  • Status LED
  • BOOT and RESET buttons
  • Fully-assembled (no soldering required)
  • C firmware
  • Schematic

Notes

  • Note that the firmware we provide for this board is written in C to ensure best performance, but it would be possible to write alternative software using other RP2040 programming methods (MicroPython / CircuitPython).

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.