You are browsing as a guest. Sign up (or log in) to start making projects!

brainlesslukas

@brainlesslukas

Joined June 3rd, 2026

  • 18Devlogs
  • 1Projects
  • 0Ships
  • 0Votes
I am Lukas, 17 years old and I like to code :) Have fun!
Ctrlpad - Opensource Streamdeck alternative:)
Open comments for this post

2h 25m 49s logged

Devlog #18

Today I applied the features I built last week: editing button colors.
One big problem was that I had used a button matrix, and it’s almost impossible to change the background color of just one button in a matrix.
So I did some refactoring. I moved from a matrix to six normal, standalone buttons.
After that, I wrote the functions to apply the config.
In the pictures you can now see how it’s possible to change the button color you select in the app.
(Please ignore my dusty, messy desk xD)

0
0
69
Open comments for this post

7h 26m 59s logged

Devlog #16

I wasn’t really motivated to code this last week.
But I did build something for the desktop software! I created a color and icon selector. The icons are fetched from Simple Icons.
It’s only the UI for now. The feature for the ctrlPad firmware is coming in the next version(s) :)
Stay tuned!

0
0
33
Open comments for this post

5h 34m 46s logged

Devlog #15

I was on vacation for the last two weeks, so I didn’t get much done. But I’m back now. Since then I’ve been working on the hardware side:
I 3D printed a case for the CYD, and it now sits perfectly on my desk. For now it’s a model from MakerWorld.
I’d like to design my own later, but I haven’t had the time yet.
I’m also working on a few fixes for the daemon. Unfortunately, I noticed that the problem with the path is still there. :(

0
0
6
Open comments for this post

2h 17m 51s logged

Devlog #14

Today was a warm one, but I still managed to sit down at my PC :)
I ended up writing some docs, mostly because I couldn’t decide what else to work on.

  • Added installation instructions for the packages I released over the last few days. Nix and Snap. I couldn’t add the AUR one yet, since the AUR is still down and I haven’t been able to finish that release :(
  • Wrote the README for Ctrlpad’s web project. It covers how to set up the web app and gives an overview of what the repo contains.
0
0
59
Open comments for this post

11h 46m 38s logged

Devlog #10

The last three days were pretty frustrating.
In the last devlog I mentioned building a website with Next.js. But I soon realized a hero section wasn’t enough. I also needed documentation. So I set out to embed Markdown (Nextra). It was tedious work, and it took me over five hours to get it running (the /docs route just refused to render for the longest time).
With that working, I started writing some basic docs. A few minutes in, a question hit me: “How is the user actually going to flash the board themselves?”
For that I turned to ESP Web Tools, a neat library that lets you flash an ESP directly from the browser. I ran into plenty of problems, but the biggest one was my own browser. It worked fine on my second PC, yet failed on my main one. The reason? An outdated Chromium version. I spent six-plus hours tracking that down.
But it’s all working now and everyone can flash the board with my firmware! Amazing

0
0
22
Open comments for this post

6h 49m 1s logged

Devlog #9

Things have been busy with school over the last two weeks, but I managed to make some solid progress on CtrlPad:

  • Website Launched: Built the landing page using Next.js and published it live at ctrlpad.xyz
  • Hosting: Configured my local home server to host the site directly.
  • CI/CD Pipeline: Set up an automated CI/CD pipeline so future commits deploy automatically.
  • Source Code: The website repository is open source on GitHub.

Stay tuned!

0
0
7
Open comments for this post

8h 38m 25s logged

Devlog #8

Over the past day, I built the CtrlPad daemon using Golang. This background service listens for commands sent from the CtrlPad via BLE (Bluetooth Low Energy).
In the example below, you can see the daemon logs in action as it successfully receives and executes commands for “Spotify” and “Proton VPN”.
To make things even smoother, I also wrote a dedicated installation script for the daemon to streamline the setup process.

0
0
8
Open comments for this post

1h 7m 5s logged

Devlog #7

Today, I ventured into Inkscape to design an icon. I usually dread the intricacies of SVG creation, but, to my surprise, everything came together quite smoothly. With the design finalized, I generated the necessary icon variations and implemented them into the Tauri project. The icon is designed to be a clean, minimalist recreation of the CtrlPad.

2
0
36
Open comments for this post

7h 50m 4s logged

Devlog #6

In the last day, I was really busy and didn’t have much time to code, but I managed to accomplish some amazing things:

  • CI/CD Pipeline: Created a pipeline to build the application automatically
  • Tooling Integration: Added git-cliff for automated changelogs, alongside Prettier, ESLint, and commitlint for code quality
  • Bug Fixes: Successfully found and resolved several existing bugs
  • I also implemented real configuration uploads to the ctrlPad instead of using an example JSON string
0
0
13
Open comments for this post

10h 26m 6s logged

Devlog #5

This update was all about tackling the tough stuff.
First, I had to figure out how to scan and display every installed application on your system, a feature that turned out to be incredibly tricky to implement.
After that, I spent a lot of time wrestling with the drag-and-drop system for the ctrlPad actions. It took a while, but it was worth it. To wrap things up, I also built a solid README to guide you through the development setup and other project essentials.

0
0
52
Open comments for this post
Reposted by @brainlesslukas

3h 27m 59s logged

This is my first Devlog. Mover is an App to see the Departures of Public Transit Stops on your WearOS Watch. It uses Transitous as it’s API and (currently) does not require a Companion App. You are already able to see the Departures but the Stops are still hardcoded. This is my next Goal: Have a Searchbar for Stops.

1
2
217
Open comments for this post

4h 18m 1s logged

Devlog #3

These past few days were intense, packed with non-stop coding. Listing every single detail would take forever, so let’s skip straight to the highlights!

Right now, the main focus is building the ctrlPad Desktop App. The central hub for configuring button layouts, custom actions, and more.
The biggest decision? Tauri vs. Electron. The winner: Tauri. Because let’s be honest: Rust is king.

Here is the quick breakdown of what went down:

  • Firmware Repo: Added a brand-new, foolproof “Development Setup” section to the README.md.
  • App Architecture: Kicked off the Tauri application and integrated TanStack Router for seamless navigation.
  • UI/UX: Designed the very first frontend layout, complete with a sleek sidebar and the core button layout on the dashboard.

The foundation is laid. Stay tuned!

0
0
77
Open comments for this post

5h 32m 38s logged

Devlog #1

I started making my own DIY Stream Deck! It runs on an ESP32 (CYD) and I named it ctrlPad.
It features six buttons, each of which can be dynamically customized with different programs, actions, and macros. Just like the official Elgato software, the layout will be configured using an external desktop application.
To keep it completely wireless, the configuration is sent via Bluetooth (BLE). Soon I build a custom driver then handles executing the programs or triggering actions (like muting the microphone). Thanks to all the customization options, every single ctrlPad will be completely unique!

5
2
745

Followers

Loading…