I solved the multi-computer-to-multi-monitor problem with a Level1Techs KVM[1]. The price (~$500 for the variant I purchased) initially gave me pause, but the longer I've had it, the happier I am with my decision.

It handles all the switching at the hardware level and thus has no perceptible lag for video or anything else. I'm able to connect a single set of peripherals, in my case, two monitors, a keyboard, a trackball, and a USB audio interface, to both my Linux desktop and a CalDigit Thunderbolt dock connected to my laptop. The L1T KVM has hotkeys[2] that let me switch between systems, with only a 1–2 second delay.

The benefit, for me, of this extra box now mounted under my desk is that when I upgrade my monitor, I only care about how good a display it is, not whether there's some perfect confluence of KVM, refresh rate, aspect ratio, display technology, etc. I find the monitor I want and let a separate IO routing layer.

--

[1]: https://www.store.level1techs.com/products/p/14-kvm-switch-d...

[2]: https://forum.level1techs.com/t/official-l1techs-kvm-faq-ult...

I found KVMs to be annoying and settled on a USB switch and letting my monitor auto-switch inputs.

My mouse felt laggy under the KVM because of the high polling rate it wanted to use. Some key combinations also got added delay because of the way the KVM listened to shortcuts.

Instead of the $200 KVM a $20 alternative with a dedicated switching button did what I wanted in a much better way. Maybe if you need to switch back and forth more often a KVM would be alright? But at that point I guess dedicated monitors with the USB switch would still be better.

I went down a similar rabbit hole a while back and ended up building something that attacks the same problem from the opposite direction: instead of just a hardware box that switches everything (video + USB), I wrote Fence[1], a software layer that automates switching USB input devices when you glide the mouse to the edge of the screen.

The idea is basically "Synergy's convenience, but with real hardware switching." You run a tiny client on each machine. When your cursor hits the left edge of your desktop, Fence tells a USB and HDMI Switch to physically redirect your keyboard and mouse to the next PC.

The switching happens in hardware and you can design your layout per-direction and per-device.

Where the L1T KVM is the "one box handles video and IO beautifully" approach, Fence is more of an "IO routing layer" that lets you keep your existing monitors and their auto-input-switching (or a separate video path).

I built it specifically to be cross-platform. You don't pass clicks/keystrokes over the network, just a "switch to pc2 PC, left edge" message.

Not a replacement for the L1T if you want one-button video+peripheral switching, but if someone likes their monitor's own input handling and just wants the "mouse to edge" workflow it's a nice middle ground.

I like the fact that moving the mouse to different edges of the screen can show exactly the source to the sink that I want.

I originally built it for live streaming with OBS, but now, I miss it when I have more than one computer I need to deal with at a time.

[1] https://github.com/timgws/kvm-switch

kvm usb switching is always broken, sometimes subtly, sometimes obvious

I use mechanical USB switches to individually switch USB lines like this:

https://www.amazon.com/dp/B01I0Y3GEE

one for keyboard, one for mouse

Problems it avoids

- cable speed usb

- no extra latency

- using boot-up hold-key-down sequences on macos works fine

- keyboard doesn't get hung in weird states

- no hotkey conflicts

- no mouse gets in weird state on one system that persists to another

etc etc etc

I have a Dell 2208 monitor with 4 USB-2 ports. If I bought three of these switches, would I be able to share keyboard/mouse/monitor between two machines? My monitor does not have HDMI, just VGA.

I bought two 4x1 switches and stacked them on top of each other.

One was connected to my keyboard and (up to) 4 machines.

The other was connected to my mouse and (up to) 4 machines.

for each machine, I need 2 cables from 2 usb ports on the machine to the switches (one for keyboard, one for mouse)

there no multiplexing, there is no hub, there is just a dedicated cable for each device. It works well though it is a little clunky to throw the mechanical switches.

I don't use the usb ports on the monitor.

I’m looking for a setup like this. I currently have a simple usb-c splitter that I use to switch my keyboard between the two. I bought a similar one for display ports but it doesn’t work super well, so I ditched it and just manually move the display port from my desktop to my caldigit.

They were both $20. The keyboard one works fine. I’d love to have a kvm like this but the price certainly gets gives me pause when I got halfway there for basically $20-$40.

There is an actual KVM that does both (display and usb) for 25 eurobucks sold on the communist ecommerce website.

I wasted money on their KVM and it sucked for vfio stuff. Never again.

any details? considering this.

I would guess that there is an issue when the USB peripherals connect and disconnect as you switch inputs. I don't put USB drives in my KVM because it'll interrupt a transfer if switched.

[deleted]

I really wish some one made one of these as a DP 1.4 _matrix_ instead of a true KVM. 8in 8 out would be amazing

These exist, but are exceptionally niche, and very, extremely expensive.

[deleted]