Buttons Controller

A project log for Primary Buffer Panel v2

A glorified DIY joystick controller with an LCD (‘MFD’) and plenty of RGB.

beko-pharmBeko Pharm 09/17/2023 at 18:490 Comments

This Arduino Mega proved itself in version 1 already. I got it thinking I’d never run out of free pins on that. I was wrong. It’s also not a HID but a Serial device. I know that it’s bootloader can be replaced with the HoodLoader2 but I really don’t mind [any more]. There are probably cheaper clones as well but… would you just look at this beauty!

The communication is managed by a Rust daemon. I got the idea and the initial source code for this from by Gwilym Kuiper who describes the idea in great detail in his article about Virtual Joystick on Linux. I wrote about this in more detail on my blog as well.

Windows user may either use the mentioned HoodLoader2 or adapt and work with e.g. vJoySerialFeeder but that’s really out of the scope of this article.

My extended source allowing for more buttons and rotary encoders is available at The snapshot there may be not up-to-date though. I’m tweaking this a lot and didn’t push any change for a while.

Originally posted at