Rovari Circuit Studio v0.1 Initial Release u/Separate-Choice • Rovari Circuit Studio v0.1 Initial Release
I built "TheDeck", an open-source, touchscreen driven StreamDeck alternative running CircuitPython u/CityConsistent7574 • I built "TheDeck", an open-source, touchscreen driven StreamDeck alternative running CircuitPython Hey everyone, I wanted a macro pad that felt more dynamic and customizable than a fixed grid of physical mechanical buttons, so I built TheDeck. Instead of static keys, it uses a 2.8" Adafruit touchscreen to create a flexible, ever changing interface that swaps between different functional layouts. The hardware runs on a Seeed Studio XIAO RP2040. Because the XIAO has a fairly minimal pinout, I integrated an MCP23017 I2C port expander to give myself enough IO pins to route everything, including a rotary encoder for media control and two Cherry MX tactile switches (for instant play/pause/stop actions). The entire firmware is written in Python using CircuitPython libraries. I’m running an internal UI engine with custom widget rendering (progress bars, arc widgets, animations, and transitions) that handles multiple screens like an App Launcher, Pomodoro Timer, and a "Now Playing" media screen. For the "Now Playing" functionality, I wrote a lightweight Windows companion app using the WinSDK that grabs active media data from my PC and streams it over serial. The RP2040 parses it over UART and live-updates the screen layout. Everything is open source (schematics, EasyEDA PCB files, 3D CAD files for the enclosure, and the CircuitPython firmware). GitHub Repo: https://github.com/ItsAkshatSh/thedeck Shoutout to Hack Club for supporting this project! I would love to hear your thoughts on the design, or any suggestions on the custom UI rendering in CircuitPython. psst star it if you like it :)
The Python on Microcontrollers Newsletter: subscribe for free u/HP7933 • The Python on Microcontrollers Newsletter: subscribe for free