# Presto Stream Deck Controller

**URL:** <https://forums.pimoroni.com/t/presto-stream-deck-controller/27930>\
**Category:** Projects\
**Created:** [June 17, 2025, 7:05pm UTC](https://forums.pimoroni.com/t/presto-stream-deck-controller/27930 "2025-06-17T19:05:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![goodeb](https://avatars.discourse-cdn.com/v4/letter/g/4af34b/32.png) [@goodeb](https://forums.pimoroni.com/u/goodeb)\
**Post date:** [June 17, 2025, 7:05pm UTC](https://forums.pimoroni.com/t/presto-stream-deck-controller/27930/1 "2025-06-17T19:05:09Z")

</div>

First, let me say, I’m really liking my Presto. I got it to make a stream deck like desktop controller for my Lyrion Music system (formerly Slimdevices Squezebox). To make my life easier, I wrote some classes to calculate the layout and draw buttons based on definitions in a JSON file. The classes also provide a simple way of linking a button press to executing a custom python function. Everything about the buttons: their layout, appearance, and action can be changed in the JSON file without needing to change the code. Before I finished my planned project I realized that it wouldn’t be much work to create a generic project to demonstrate the code and how to use it for any project of this sort. So here that is.

[https://github.com/goodeb/Presto-Stream-Deck](https://github.com/goodeb/Presto-Stream-Deck)

 ![streamdeck](https://us1.discourse-cdn.com/flex016/uploads/pimoroni/original/2X/e/e4c509723ecf0634d81b99c230f07905b9f333a6.png)

---

<div class="post-metadata">

**Author:** ![hel](https://sea2.discourse-cdn.com/flex016/user_avatar/forums.pimoroni.com/hel/32/6075_2.png) [@hel](https://forums.pimoroni.com/u/hel)\
**Post date:** [June 18, 2025, 12:45pm UTC](https://forums.pimoroni.com/t/presto-stream-deck-controller/27930/2 "2025-06-18T12:45:12Z")

</div>

Looks great! I’ve linked to this project from the Presto repo - hope that’s OK.
