I’ve been trying to swap escape and caps lock on my keyboard. I followed This guide with the only difference that I used git checkout v0.3.1 as it is the most up to date release. Whenever I flash the firmware it works completely fine but then when I run fwupdmgr update it reports the keyboard firmware has been downgraded to 0.29 and prompts me to update. When I update the firmware it erases my key changes. I’d be fine with this except the BIOS flags it as out of date and my laptop doesn’t boot without the update. I found This Github issue that says the same. I have also followed this guide updating my udev rules, which made no difference. The website doesn’t work with my browser and I prefer editing the local files anyway.
I am running Arch Linux, I have a Ryzen AI 300 series Framework 16 and I am flashing an english iso keyboard. I couldn’t find any fixes to this on the github issues or here, sorry if I missed something.
There is a GitHub Framework page for BIOS issues and there may be an issue already started for this. If not a new issue could be made and information given for the dev team to address the mismatch in what is available in fwupmgr vs. the BIOS requirement.
There is a github issue for this in the framework qmk repository, I linked to it. It has all the same information I have, but has been dead for a little bit so I thought I’d ask here. I’m primarily posting it here to try and get more interest in it, and maybe someone knows how to fix it. There are absolutely ways to solve my problem (keyd, installing chromium and using the website) but I would like to be able to properly experiment with QMK like I thought I would be able to.
I have found a problem with my product, and while it is far from a dealbreaker or even an urgent issue that needs fixing, it is an issue that bothers me and I wanted to see if anyone had found a proper solution yet.
Have you tried copying over the 0.29 version number and any identifiers into your custom build? Not ideal, certainly, but if fwupdmgr want’s a particular version and is being so stubborn about, let it have it, as a workaround for the time being.
Or alternatively, to get fwupdmgr to stop touching your custom build, change the identifiers away from what framework is using. I would think changing the usb product ID would do it. If you’ve compiled your own build then you aren’t using FW released firmware, and changing identifiers so that fwupdmgr stops behaving as if you are, is appropriate. I have a Steel Series mouse that I modified to run qmk, I don’t use the original product ID because it’s not the same anymore.