The topic https://forum.uhk.io/t/led-display-how-to-have-layer-info-but-not-key-layout/ inspired me to open this one.
Currently on the UHK 80 OLED we have three rows to display:
- Status symbols
- Layout
- Connection
It would be awesome if 2 and 3 would be programmable. Currently they are “fixed” in the firmware, as far as I can tell. My ideas would be:
-
- row could dynamically update (remember rolling credits for songs on auto radios? I want that with my Spotify on my keyboard to show the currently played song!
-
- row could dynamically switch akin to the UHK 60 so that the current layer is displayed
But generically it would be nice if we would have “programmability” for the display, even if it’s just reading a text file from the computer or something like this.
Also, extended font support would be awesome (although I don’t know whether that’s a hardware restriction on the display itself, that anything apart from ASCII is replaced by *).
Would there be interest for this? Should I open a GitHub issue?
They already are programmable. Or more precisely, they can be set to whatever you want. Layout is fixed however.
For reference, see firmware/doc-dev/reference-manual.md at master · UltimateHackingKeyboard/firmware · GitHub
You can also execute these macro commands via usb (see firmware/doc-dev/user-guide.md at master · UltimateHackingKeyboard/firmware · GitHub )
Restrictions are that any font files need to be compiled into a lvgl font code files which then need to fit into the 512kb code memory, then someone would have to extend the code with stuff like font macro control.
I am open to PRs, but I do not intend to invest time into it myself.
2 Likes
Also there is this PR which exposes full fontrol of the display to the host: Led commands2 by kareltucek · Pull Request #1443 · UltimateHackingKeyboard/firmware · GitHub
Iirc it waits for Agent code that would expose it as a js library.
3 Likes
Oh wow, these infos make the whole game different!
Actually, a new font would not be really needed, just some characters (like Latin-2), but even that could easily stretch over 512kB so probably not worth it to investigate.
However, with the second option, the full control of the display, that’s… that opens doors. Because then we don’t need to store anything on the keyboard any more but we can dynamically control with a script the display from the host. That’s awesome! Will keep an eye out on the PR, thanks kareltucek!
2 Likes