EncoderPad RP2040

by JPConstantineau

Image of Board

The EncoderPad RP2040 is a Video Editing Macropad with a 60mm Encoder Wheel. This encoder is made of metal and feels like it will last forever. The EncoderPad uses 9 mechanical switches (Cherry MX type) for sending commands to the computer and/or changing the operation of the encoder. The keys are hot-swap socketed and have an individual underglow RGB LED which can be turned on.


  • Powered by RP2040
  • 9 keys connected directly to GPIOs
  • Per key RGB LEDs (NeoPixels)
  • 60mm 100 step Encoder Wheel
  • Kailh hot-swap switch sockets (for Cherry MX-compatible switches)
  • Included buzzer for audio feedback
  • Powered and programmable via USB-C

About the RP2040

The 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.

Powered by CircuitPython

It’s not just a macropad with a big encoder but also a USB drive containing the firmware as CircuitPython files. Its Python code can be changed with any text editor and executed simultaneously, which makes it super easy to customize the macros or to add a new function. No need to download any software or setup a development environment.

Learn More


The EncoderPad RP2040 is currently being tested. Keep an eye on the Tindie store if you are interested in getting one.


Have some info to add for this board? Edit the source for this page here.

CircuitPython 7.0.0-rc.3

This is the latest unstable release of CircuitPython that will work with the EncoderPad RP2040.

Unstable builds have the latest features but are more likely to have critical bugs.

Release Notes for 7.0.0-rc.3

Built-in modules available: _bleio, adafruit_bus_device, adafruit_pixelbuf, aesio, alarm, analogio, atexit, audiobusio, audiocore, audiomixer, audiomp3, audiopwmio, binascii, bitbangio, bitmaptools, bitops, board, busio, countio, digitalio, displayio, errno, fontio, framebufferio, getpass, imagecapture, json, keypad, math, microcontroller, msgpack, neopixel_write, nvm, onewireio, os, paralleldisplay, pulseio, pwmio, qrio, rainbowio, random, re, rgbmatrix, rotaryio, rtc, sdcardio, sharpdisplay, storage, struct, supervisor, synthio, terminalio, time, touchio, traceback, ulab, usb_cdc, usb_hid, usb_midi, vectorio, watchdog

Absolute Newest

Every time we commit new code to CircuitPython we automatically build binaries for each board and language. The binaries are stored on Amazon S3, organized by board, and then by language. Try them if you want the absolute latest and are feeling daring or want to see if a problem has been fixed.

Past Releases

All previous releases are listed on GitHub, with release notes, and are available for download from Amazon S3. They are handy for testing, but otherwise we recommend using the latest stable release. Some older GitHub release pages include the same binaries for downloading. But we have discontinued including binaries as assets on newer release pages because of the large number of files for each release.