Hmm, I have a mouse and trackballs from ploopy, they run QMK, so why was a new project needed? What is the added value?
To me, the missing feature in the QMK ecosystem is a devices too device communication channel. For now there is only caps lock & others: it would be nice to activate a mouse layer (for instance: increase DPI) to a keyboard key.
It is probably solvable if a heavyweight was to push for new HID descriptors or something similar.
I almost wrote the same comment — the first part, anyways.
In theory, it should be feasible to provide a "shim" to bridge the API gap between Linux and Windows internal APIs. The catch here is that Linux is a moving target.
AMDGPU (the Linux kernel module) has its roots in a shared Linux/Windows codebase from AMD, so hopefully it didn't get _too_ tightly integrated (I know some parts got integrated, IIRC it used to ship its own i2c driver).
One very nice use case that I haven't seen anyone else talk about is touchscreens.
I have assigned my touchscreen to be in a separate seat. This allows me to interact with apps without moving my cursor or changing my window focus.
For instance: web browser on the left, with a document. Text editor on the right. I am writing some notes with my keyboard, scrolling the document with my touchscreen. The editor stays focused, no back-and-forth with the mouse. It feels very natural this way, instead of having your cursor jump where you touched the screen and change your M/K focus.
It's possible with wayland seats, if the compositor supports it. I've used sway this way. Assign M+K A to seat A and M+K B to seat B. I only wish I could change the focused window decoration depending on the seat (say: one blue seat and one yellow seat).
Regional keyboards are a mess for coding. I'm much happier with a qmk-enabled keyboard where I remap keys in hardware. For instance, on a French keyboard:
- easy: " ' , : * ! - _ = ( )
- harder (shift): numbers . µ ? / ℅ +
- hardest (Alt Gr): []{}€~|`^\@#
This is not exhaustive, but some of the most common symbols are quite hard to type: not surprising as most language designers use US keyboards. Still, I think everyone would benefit from a "symbols" layer on their keyboards.
Interesting project! I am relatively skilled at FPS with a mouse, but would like to improve with my trackball (so that I don't have to change my setup when playing an FPS). This could cone in handy, though I imagine that there aren't multiple "mouse profiles" built-in? It could be useful for players to understand how much of a difference different mice make.
Hi, thanks for the feedback! Multiple mouse profiles isn't something I considered, but I'll definitely look into it.
I know a lot of FPS gamers are super particular and switch between mice/mousepads/skates constantly, so it would probably help to provide a semi objective measurement of what setup they're doing best on as well
I don't have the time to provide such a detailed answer, but there are a few options.
At least on Sway (and I imagine other wlroots-based compositors) it's very easy to do: create a virtual output and start a VNC server attached to it. Start your vnc client on windows. A comment I posted 5 years ago: https://news.ycombinator.com/item?id=25892128
The comment linked above is on the topic of Deskreen, which is a tool that does that.
Funilly, I also commented something similar there: https://news.ycombinator.com/item?id=34010970 the article explains how to do it on a lower level (pretending a display is connected to the GPU), works under X11 too.
A few days ago, an update locked me out of my server. I used a cheap USB HDMI capture card to use my laptop as a screen, which worked very well: that could be another option.
Then I guess that there is this option, which is new to me. It feels like this could be a toogle in sunshine, somehow :)
I still use my Samsung n130, though I went with Alpine after Arch dropped support for 32 bit (there were a few pain points with Arch 32 in the early days, I tried guix but it was too slow and guix uses a lot of RAM during updates).
It works decently, is sufficient for ssh-ing into other hosts. Though web browsing is a pain. I used to mostly use Dillo and elinks, MPV+yt-dlp for videos.
Unfortunately I left it sit for a bit too long and the battery is dead now. I'm thinking of fixing it and upgrading the power port to USB-C.
Sometimes I also think about building a compute module-based motherboard for it.
There were interesting bits in the setup (blacklisting defective RAM addresses for instance), maybe I should make a short writeup :)
I am very attached to my n130 and still use it daily. I'm still running Debian 12 because they dropped 32bit support for 13. Coupled with i3 window manager and i get by with it. If you do attempt a USB-C mod let me know how it goes! It's something I've also considered.
I actually created an account just to reply to your comment because I was so excited to see another N130 user. I'll be sure to fill out my profile at some point
To me, the missing feature in the QMK ecosystem is a devices too device communication channel. For now there is only caps lock & others: it would be nice to activate a mouse layer (for instance: increase DPI) to a keyboard key.
It is probably solvable if a heavyweight was to push for new HID descriptors or something similar.
reply