In short:
I often have multiple long-running compiles or test suites and I want to know immediately if they succeed or fail.
I wanted a dedicated display not on a monitor.
I had an AdaFruit board with 32 RGB LEDs, but wasn’t sure how to display the status of each process on the board in such a way that I knew which process had succeeded or failed.
I chose to use a combination of the current directory and the command as input for a bloom filter, and the RGB LEDs as the output. That means running the same command again will light up the same LEDs, since a hash gives you the same output every time. Voila! Now I have a deterministic display and I don’t have to worry about calculating layout on the display.
When a command is in-progress, the output LEDs are set to Yellow, while Green is success and Red is failure.
You can look at this visualization and maybe see how that would map onto 32 bits?
As someone that’s been involved in the keyboardio project since the original model 01 kickstarter, all the references to “figuring out” and “hacking together” aspects of the firmware are a little confusing to me. All the source is available on github and folks like algernon are extremely helpful to anyone trying to work on kaleidoscope.
(Not to denigrate or disparage the authors - I’m glad they’re having fun with (the sequel to) my favourite keyboard - it just is genuinely kind of confusing to me and doesn’t comport with my experience with the project)
Yeah, I was going to recommend the Keyboardio Discourse, but then I saw you’d already asked a question there 😬
I’d found people responded well on the Discourse and on Github issues, but it’s been a while since I was asking questions - these days, I’ve got my firmware where I want it and don’t tinker as much anymore.
I should say that I’m sorry to see that it was hard for you to get help: @algernon and obra really helped me out “back in the day”, but I think they’re both quite swamped these days.
What is meant by “Bloom Filter Keyboard”? I don’t see the connection between the image and the algorithm.
The previous post might help.
In short: I often have multiple long-running compiles or test suites and I want to know immediately if they succeed or fail.
I wanted a dedicated display not on a monitor.
I had an AdaFruit board with 32 RGB LEDs, but wasn’t sure how to display the status of each process on the board in such a way that I knew which process had succeeded or failed.
I chose to use a combination of the current directory and the command as input for a bloom filter, and the RGB LEDs as the output. That means running the same command again will light up the same LEDs, since a hash gives you the same output every time. Voila! Now I have a deterministic display and I don’t have to worry about calculating layout on the display.
When a command is in-progress, the output LEDs are set to Yellow, while Green is success and Red is failure.
You can look at this visualization and maybe see how that would map onto 32 bits?
As someone that’s been involved in the keyboardio project since the original model 01 kickstarter, all the references to “figuring out” and “hacking together” aspects of the firmware are a little confusing to me. All the source is available on github and folks like algernon are extremely helpful to anyone trying to work on kaleidoscope.
(Not to denigrate or disparage the authors - I’m glad they’re having fun with (the sequel to) my favourite keyboard - it just is genuinely kind of confusing to me and doesn’t comport with my experience with the project)
I asked on the forum but did not get a response.
Is there a better place to ask questions about the Kaleidoscope firmware?
The source is available, and I have experience with Arduino and C++; I’d still rather read documentation and forum threads instead of source code.
I’m loving the Model 100, mechanically it’s the nicest keyboard in my large collection.
Yeah, I was going to recommend the Keyboardio Discourse, but then I saw you’d already asked a question there 😬
I’d found people responded well on the Discourse and on Github issues, but it’s been a while since I was asking questions - these days, I’ve got my firmware where I want it and don’t tinker as much anymore.
I should say that I’m sorry to see that it was hard for you to get help: @algernon and obra really helped me out “back in the day”, but I think they’re both quite swamped these days.