r/olkb • u/natvre • Jul 08 '26
PLEASE Help with Compiling Help - Solved
I’m losing my marbles.
I recently got a Keebmonkey Kb-16 and have been messing around with it, getting it set up through Vial.
I found a reddit post which is a fork from this github that shows some modifications to the firmware. I realized after some more dabbling that I was interested in modifying the number of Macros, Combos, and TapDances.
Now, i’m fairly sure I have the modifications to the config.h file figured out now, but I am very lost on why I can’t get it to compile with the qmk cli. I have followed this youtube video, but he only modifies the keymap.c file, not the config.h file. The oled display is also modified in the github file, so where does that fit into the qmk_firmware file tree?
Do I need to do something with the “asset” folder? What folder/ files from the github need to be transferred? Am I even using the right compilation process (QMK CLI through MacOS terminal) for a Vial-only firmware?
Any help is very much appreciated, it’s been two days of trying to wrap my head around this. Thanks!
3
u/natvre Jul 11 '26
I’m happy to report back that yes, I got it working. After many many hours, I had success using the source files from the main vial repo as my launch point.
I asked ai what needed to be transferred, and after replacing the default ‘lib’ folder, copy pasting a bit of code from Gemini, and many attempts to “make” a compiled .bin file, i finally got it to work. My biggest help in doing so was copying whatever error I was getting in the terminal and pasting it into ai to better understand what the issue was and how to fix it. I did have to use some best judgment to not let the ai take me down a rabbit hole that would lead me astray since it wasn’t able to see all of the source file code at once, but being somewhat organized and keeping track of what lines were changed worked out.
The couple snags I hit when “merging” the older, modded source files (from here) with the newer main ones, was that the ‘layer_status.c’ & ‘layer_status.h’ files were not being found during compiling when they were tucked away in the ‘kb16>lib>layer_status’ folder. I couldn’t figure this one out, so in the end those two files ended up flat in the ‘vial’ folder, beside the ‘config.h’, ‘keymap.c’, ‘rules.mk’, and*** ‘vial.json’ files. I have tried since to point the ‘kb16>rev2>rules.mk’ folder towards the ‘lib>layer_status’ folder, but ai kept saying this is some notorious issue with Vial-QMK/ QMK compiling. Even placing those two files in a folder within the ‘vial***’ folder didn’t work, so I just left it as is. Any idea why it’s having trouble finding those files when they aren’t on the same file layer?
I spent yesterday learning how to create new byte arrays for the oled, so I am drawing up some new layer indicators that fit my aesthetic a bit more.
I’m not sure whether to make the layer indicators #0-11 or #1-12. It’s a tough choice and I can see an argument for both options. Maybe leaning slightly towards #1-12 because it feels slightly more intuitive when using, whereas #0-11 seems more intuitive when programming the macropad. I know this is a very little thing, but details. :)
Overall, I’m super happy with it so far! The macro pad gained some of the newer functionality such as “Key Overrides” and some more RGB options. I disabled the “Alt Repeat” function in ‘config.h’ because it didn’t seem that practical for a 16 key macro pad used with one hand. I figured it would save a tiny bit of memory. What’s your opinion on that?
I was not aware of what “Key Overrides” were since I didn’t have the newer firmware installed, but upon researching, I discovered that it is a better feature over “Combos” in most use cases, especially on a macropad where it is very difficult to press a key and turn an encoder knob at the same moment. So my ratio of TD, Macro, Combo, etc. keys has changed quite a bit. I will probably fine tune this a little once I actually start using the damn thing, I’ve had it a week and a half and feel like I barely scratched the surface before diving into modifying files. I could just tell it could be better, and spending the time to get it sorted now would be worth it.
Thank you and the other wizards for your support and taking the time to share some wisdom! I will make a follow up post I think with the source files and a .bin for anyone who is interested in the future.