Hello everyone! I designed and built my own keyboard - Quark - about a year ago now. After receiving the pcbs, assembling all of the components, and 3d printing my own case I turned to the firmware section of my build. I chose to work with zmk and sort of hobbled together some code that seems to have done the trick. I recently decided it would be cool to make the keyboard work better for me and part of that mission is getting ZMK Studio to function and smooth out the messy code that I jumbled together. I decided to first tackle ZMK Studio and then clean up my code. However, despite my best attempts I have been thwarted by ZMK Studio, always getting errors every time I push my code to github. Any thoughts as to why my code is not giving errors? Here is a link to my github repo: https://github.com/A-R-R-O-W-s-1/Quark
#Trouble with ZMK Studio
1 messages · Page 1 of 1 (latest)
move your build.yaml back out to the location of the original
so back out to the root?
yep
ok let me try that
thats good to know
ok that makes sense
Alight nevermind I take back my previous statement. If you need to change the configuration, why does it matter if you do it in the kconfig.defconfig or the .conf file? You have to make another commit anyways right? (Sorry I am new to this and perhaps am overlooking something major haha)
If you use boards/shields/SHIELDNAME.conf, those settings can't be overridden easily.
If you're the only one who's ever going to use this keyboard, this doesn't matter as much.
If anyone else might, they're in for a crappy, confusing time when the settings they want don't work. [I just talked to somebody who got bit by this earlier this week](#boards-shields message).
Again, using config/SHIELDNAME.conf is fine.
I should also point out that in your case, since you have a split...boards/shields/SHIELDNAME.conf doesn't even work.
Ah wait so when other people develop keyboards they probably never give others access to the .conf file? So moving the .conf file up a directory gives others access?
If anyone else gets your PCB and wants to re-use the work you've done for firmware, they're going to reference your repository as a module in their config/west.yaml.
You got it but I was already most of the way through typing so I might as well finish
You can see an example here: https://github.com/sadekbaroudi/zmk-config-fp-example
There are basically no files under boards/shields.
The keyboard definitions live over here in a different repo
Oh this makes so much sense now. I was looking at other peoples repos to see how they configured studio and there were way less files under boards/shields so that connects some dots. Thanks for that bit of info!
@plucky surge Alright so I moved the build.yaml file out to the root directory and pushed the changes. I got a weird error about how a default transform is required, but I thought that it is explicitly stated to not include one for zmk studio. https://zmk.dev/docs/features/studio
https://github.com/A-R-R-O-W-s-1/Quark/actions/runs/16380524540/job/46290864368
ZMK Studio provides runtime update functionality to ZMK powered devices, allowing users to change their keymap layers without flashing new firmware to their keyboards.
ZMK support for Quark keyboard. Contribute to A-R-R-O-W-s-1/Quark development by creating an account on GitHub.
'transform' is marked as required in 'properties:' in /tmp/zmk-config/zmk/app/dts/bindings/zmk,physical-layout.yaml
You still need to define at least one matrix transform, but it's used byphysical-layouthttps://zmk.dev/docs/development/hardware-integration/physical-layouts
A physical layout is a devicetree entity that aggregates all details about a certain possible keyboard layout.
Not in the chosen node