Skip to content
QPCrummer edited this page Jul 20, 2024 · 1 revision

open_lights

Welcome to the OpenLightsCore wiki!

About this project

Open Lights was a hobby project started by myself over 4 years ago. Originally it was called Christmas Jukebox and was located in this repository. Christmas Jukebox was a music and lighting controller software designed in Java utilizing ImGui-Java, a GUI library using Java Native Interface (JNI). This project was developed for 3 years before finally becoming "stable" in 2023. The program had many issues however. Concurrency was the main and most pressing issue. While the constant locking and stalling of threads was no noticeable on a desktop computer, on a weaker computers such as the Raspberry Pi 4 that it was designed to run on, it would consistently freeze on many songs. While the problem itself was a simple to understand, it would've required an entire rewrite of the software, and I was not ready to undo my 3 years of hard work, so I gave up on the project and let it sit stale. Fast-forward to 2024. It's been a year since I even touched GPIO or anything related to a Raspberry Pi, but someone close to me has inspired me to fix my program and put on the best light show yet. However there is one slight problem: the Java code is an absolute mess and not really repairable. Only a few weeks prior I had learned Rust, a very difficult language in my opinion. But nevertheless, I grab my mouse, keyboard, and favorite crab-based coding language and start working. Introducing a new age of lighting for "dumb" lights: Open Lights!

Credits

  • QPCrummer (Main developer)
  • Undisclosed friend (Inspiration giver)
  • HackOS (Code reviewer)

Clone this wiki locally