I wanted to share a little project I’ve been working on for the Local Deck that has really helped me overcome some persistent issues. I had been struggling with the official firmware, particularly with the configuration not persisting as it should. Although it seems like this issue has been addressed in newer releases, I still encountered problems with some of my lights not working properly.

I spent a fair amount of time trying to debug these issues using ESPHome, but I found it overwhelming due to the sheer amount of logs. I eventually realised that I might be able to create something more focused and efficient for my specific needs.

So, I decided to write an alternative firmware specifically for managing lights and switches. The goal was to ensure that it could toggle devices and display their status reliably. I’m happy to report that this new firmware has proven to be much more stable than my experiences with ESPHome.

One of the best parts is that this solution requires minimal setup. You only need to create a long-lived Home Assistant API key to be used over WebSocket. No extra configuration is needed on the Home Assistant side—just flash the firmware with the correct settings, and you’re good to go!

This firmware has truly brought my Local Deck back to life, and if anyone is interested in contributing, I’d love to hear your feature requests. I’m currently considering mapping two buttons to control brightness (up and down), with the idea that holding any light button could adjust brightness dynamically. I’m still thinking about what to do with the long press function—right now, it just logs to serial—but I’d appreciate any suggestions you all might have.

For those who were also frustrated with the official firmware, I hope this alternative solution can be as useful to you as it has been for me.

Feel free to check it out and contribute if you’re interested: GitHub Link

Looking forward to your thoughts!

Github Link

Sounds interesting. I think the LocalDeck has a lot of potential. I will setup PlatformIO again and give it a spin at the weekend.

I’ve been toying with making it MQTT based, like a thin client. Each button press or hold sends an MQTT message and all the LEDs etc are MQTT devices. Could even use Home Assistant MQTT Discovery. I can probably do it with ESPHome but I’d like to try Micropython on the device at some point

I’m super stoked to see this custom firmware

Ultimately, we’re always looking to improve the stock/configurator firmware, but I take my hat off to you for pulling together a more bespoke solution that works for you!

Good job

8 days later

Credits actually go to Claude 3.5 sonnet 🙂 for making this not so challenging!

I think i finally have some idea why the espHome firmware didn’t work for me even when testing with just simple light entities, my guess is that my lights had a lot of data causing memory issues since the simple lights with no effects or colors always worked, but the complex WLED lights or NanoLeaf light panels didn’t work well (too much data in Home assistant state for these lights)

I also managed to add some cool animations to show you the light brightness when trying to control light brightness. May look into adding AC temp control and some other features, but for now it seems to be working pretty well for me.