THEDECK transforms the concept of traditional macro pads by incorporating a responsive touchscreen, allowing for a flexible and customizable user interface. Built on the affordable Seeed Studio XIAO RP2040, this device combines functionality and creativity, providing enhanced control for media and various tasks.
TheDeck is an innovative macro pad that operates on a Seeed Studio XIAO RP2040 microcontroller, featuring a 2.8-inch resistive touchscreen, a rotary encoder, and two Cherry MX switches. It employs the MCP23017 to expand pin availability, providing an enhanced user experience compared to traditional button-based macro pads like StreamDeck.
Key Features
- Dynamic Interface: Unlike standard grid layouts, TheDeck utilizes a touchscreen to deliver a customizable and flexible interface that can adapt to different user needs and preferences.
- Versatile Components: Built with cost-effective yet powerful hardware:
- Seeed Studio XIAO RP2040: An affordable microcontroller that powers the device.
- Rotary Encoder: Ideal for various media control functionalities.
- Cherry MX Switches: Allow for intuitive control options such as play/pause and timer management.
- MCP23017: Provides additional input/output pins for extended functionality.
- Adafruit 1770 Touchscreen: The key component that offers an engaging user interface, albeit at a higher cost.
Hardware Development
For developers looking to contribute or build their own version of TheDeck, visit the Hardware section:
- Access the BOM for a list of required components.
- Download PCB files from the Hardware directory and follow the instructions to customize and manufacture a circuit board that meets personal specifications.
Firmware
TheDeck’s firmware is entirely developed using Python and CircuitPython libraries, allowing for easy modifications and enhancements. A glimpse into the firmware structure reveals multiple modules for extensive functionality, including app launching, media control, and UI animations:
└── MCU/
├── lib/
├── font/
├── screens/
├── ui/
├── boot.py
├── code.py
├── config.py
├── display_driver.py
├── input_handler.py
├── requirements.txt
└── touch_handler.py
For music control and ‘Now Playing’ support, see the MusicBridge directory, where the integration with Windows SDK enables real-time information capture.
Visual References
Explore more about TheDeck through detailed visual documentation:
- Schematic and PCB images illustrate the design and assembly:

- CAD Models: View CAD representations of TheDeck here for more technical insight.
Community Engagement
Special thanks to Hack Club for their support in developing TheDeck. Engage with the project through the GitHub repository, where contributions, suggestions, and discussions are encouraged.
No comments yet.
Sign in to be the first to comment.