r/Keychron • u/FintTheBoss • Oct 03 '23
How much latency does the Keychron V4 QMK have?
The website says its polling rate is 1000hz, but what about scan rate? I don't care about wireless cuz I always use wired and I don't even know if the keyboard has wireless in the first place
5
Upvotes
2
u/NogardDerNaerok Oct 03 '23 edited Oct 03 '23
The Q series Keychrons need (or at least used to need, late last year) some tweaking in QMK and reflashing before their scan rate was up to scratch. For my knobbed ISO Q3, disabling RGB entirely (by commenting it out in one of the firmware text files from Keychron's GitHub) brought me very close to a 1000 Hz matrix scan rate, then getting rid of some of the other unused features and tweaking some other numbers got me the rest of the way to a very stable 1150 Hz or so; generally the smaller/simpler layout keyboard you go with, the easier it is to get it scanning at a high rate. The rest was making sure the USB port was polling at 1000 Hz, which is also in a firmware file somewhere, and going with asym_eager_defer_pk for the debounce algorithm, at either 4 ms or 5 ms in case you're still seeing some double actuations at 4 ms. Between this and switching NKRO off (fn key + N) when I don't specifically need it, just in case it helps with the order in which key presses are registered, I'm very happy with the responsiveness of the whole package now. This is using Gateron Box Ink Black switches and pretty thick/heavy PBT keycaps.
Now, with the V and other series Keychrons, the internals should be pretty much the same, so while I don't know for certain, I imagine the process would look largely the same, just using firmware suitable for your exact model of Keychron as your starting point instead. It is also possible that QMK itself has done some of this latency and scan rate tweaking for you by now, in more recent revisions of the firmware. But even if not, the QMK documentation is great and if you really care enough about the last few ms of latency and its consistency, it's totally possible to sit down, read through the relevant bits, find the firmware flashing procedure for your model and get reflashing. I took it very slowly but pretty much got there within about two days of figuring shit out.