* The total cable length is important, both between the host / KVM and the KVM / monitor, as well as any daisy chained displays you have. I had to use certified cables to get everything working reliably with my setup.
* There's a weird interaction with BIOS power on. The boot display drivers I have freak out if they aren't the active display and fail. I solve this by switching the KVM before I turn the computer on. After everything is booted into an OS, it works fine to switch.
* Power supply quality is important. I had some issues before I made sure the power supply was reliable.
KVM switches are just inherently difficult little devices. I haven't had issues since I got it working though.
Do you have an AMD GPU by any chance? I have the level1tech 2-head DP 1.4 KVM, with an AMD RX 560 on a Linux host, and after updating to kernel 6.4 recently my computer now boots fine without a monitor attached.
I had a similar issue where a display had to be _on_ and _connected_ (i.e: active on the KVM) at boot time, or the GPU wouldn't work at all. I could get in via SSH, so I tried various amdgpu recovery options, poking the device to reset it, reloading the kernel modules, etc., and never had any luck. I just lived with the quirk. It was problematic because if you left home with the KVM selected on the Windows guest, and needed to reboot the Linux host remotely, you'd come home to a non-functional Linux desktop.
I ended up ditching it on eBay at a significant loss for a $30 usb switch and just switch monitor inputs manually. Far cheaper solution and way less fussy.
Bonus for adding 'glide and switch' functionality, so you can move the mouse to the edge of the screen and it would jump the input to the next display in your layout. It's like a hardware version of Synergy.
Very finicky device, but if you don't touch it - and you don't use any of the shortcuts - it works.
Synergy made me manually configure my monitors by dragging little boxes around in a window, would frequently refuse to connect, would spontaneously disconnect, and repeatedly mangled my config such that I had to keep manually configuring it over again.
With ShareMouse, it was "open a copy of it on each machine, slide mouse in direction of next machine, then optionally enable encryption (to prevent other users' instances of ShareMouse from being able to attach)".