Topic: Concerning Keyboards
In the past, I have not given keyboards much thought, but recently I had one fail. That started me looking for a replacement, but then I realize there are many kinds of keyboards now days that differ at various levels in the hardware, firmware and software, not to mention cost. So looking for some advice and more experienced input on what is the good, bad and ugly in the keyboard arena. Especially in terms of hardware and software that respects the freedom and privacy of the user.
The keyboard that I am currently trying to replace is for a desktop, but I suppose the same questions may apply to laptop keyboards. The aspect that particularly concerns me, and which I think I lack some understanding is the difference between older systems that use PS2 and newer systems that use USB. Is there any kind of security risk with USB keyboards? How would I know if the firmware in such a keyboard is one that can be trusted? Is it better or safer to use a PS2 keyboard? Is there any difference between PS2 and USB in the operating system? I am guessing that in Hyperbola I am using only free drivers for a keyboard device, so does that make me safer against potentially getting exposed to a malicious firmware?
Also with many of the USB keyboards, especially the gaming keyboards, there appears to be a set of opensource tools for programming the keyboard firmware, I am not sure if these are totally freedom respecting. They refer to these as QMK and VIA. QMK (quantum mechanical keyboard) is a software project that allows users to build their own firmware and load them into the keyboard. VIA I think enables commands to be sent to the keyboard firmware, but what scares me with this is that it is meant to work through the web browser (Chrome mostly). Good or bad? What are the pros and cons of these tools?
In the end I like Hyperbola and the philosophy to keep the system simple to the degree where I can have understanding and control over what it does for me. For instance when using a USB memory device, I have come to like mounting it myself just using the 'doas mount' command, that way I only connect to a device I have some knowledge about where it comes from. I used to automount, but now I have concerns. Though I suppose USB memory and the firmware on USB devices is a related topic, usb hard drives too. And the firmware in any USB device I suppose could pretend to be a keyboard, so wondering a little how to gain control over preventing or minimizing those situations? Is there anything special I should be doing to secure the keyboard connection in configuration of Hyperbola?
Maybe I don't know all the right questions to ask here. Maybe also some questions are pretty basic and just lack of knowledge on my side, though I suspect others might have some gaps they would like filled in on too. So definetly would be interested to hear any insights on this from the community.