[HN Gopher] Show HN: Multi-monitor KVM using just a USB switch
___________________________________________________________________
Show HN: Multi-monitor KVM using just a USB switch
Simple KVM lets you control multiple PCs from one mouse, keyboard
and monitor(s). It is similar to Haimgel's display-switch
(https://news.ycombinator.com/item?id=29608967), but it provides a
GUI which hopefully makes it a bit easier to set up. It also
supports hotkeys which effectively lets you alt+tab between
computers. I was surprised by the star-to-download ratio (55:400)
on GitHub, so I thought I'd post it here as it might be useful to
someone. Feedback welcome! Thanks, Fidel
Author : fiddyschmitt
Score : 290 points
Date : 2024-02-11 07:56 UTC (15 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| iLoveOncall wrote:
| Any advantage over Synergy?
| skykooler wrote:
| All computers use the same monitor. This may be an advantage or
| disadvantage depending on your setup.
| fiddyschmitt wrote:
| Synergy is awesome, but unfortunately I can't install it on my
| work computer due to policy & VPN.
|
| The benefit of SimpleKVM is that I just have to run it on my
| home PC, and I can switch between work and home.
| rafamvc wrote:
| I use barrier and it is a lot better than synergy.
| abraae wrote:
| To clarify (the first thing I wondered) each computer needs its
| own HDMI cable plugged into its own input on the monitor. So not
| true KVM as many people would think of it, but this saves you
| from having to use the monitor's input selector.
|
| At least one of the computers must be on and running Windows, but
| maybe only one?
| mkl wrote:
| ddcutil can do input switching on Linux, so it would be easy to
| do something similar there. I already do a similar thing with
| xrandr for monitor rotation, running a script when I press a
| hotkey.
| fiddyschmitt wrote:
| Yes only one computer needs to have Windows and run the
| program.
|
| If it detects the USB device being inserted, it changes monitor
| inputs to the Windows computer. If it detects the USB device
| being removed, it changes monitor inputs to the Linux computer.
| daveidol wrote:
| Would you consider making a macOS port?
| fiddyschmitt wrote:
| For sure :)
| layer8 wrote:
| This doesn't seem to work on all setups, see
| https://news.ycombinator.com/item?id=39333869.
| cactusplant7374 wrote:
| This is nice. I know some digital nomads are using KVM to evade
| detection by their employers.
| Kluggy wrote:
| detection of what exactly?
| joking wrote:
| Overemployment probably
| pmontra wrote:
| Or also doing their own personal activities.
| ndsipa_pomu wrote:
| How do they do that? Is it the case that their boss walks by
| them and can see what's on their screen so they're switching
| away from minesweeper?
| karolist wrote:
| digital nomad sorta implies remote, non-office work, I fail to
| understand how KVM is helping simulate work as you imply? It
| just makes switching computers easier, nothing more. You can
| switch manually or you can just use separate work and personal
| machines as well.
| bitcharmer wrote:
| What does remote work have to do with "evading detection" via
| KVM? This makes zero sense.
| vidarh wrote:
| I'm guessing avoiding non-work activities on their work
| machine.
| popcalc wrote:
| They have multiple full time jobs. My friend knows a
| Hungarian guy who had 5 full-time remote US tech jobs during
| COVID. You can only really do this with American employers
| since they don't see your other jobs.
| bitcharmer wrote:
| It still doesn't make much sense to me. Ok, so he's working
| remotely doing 5 jobs. How does KVM help conceal this fact?
| y-c-o-m-b wrote:
| I'll explain. You can use a KVM like PiKVM to remotely log in
| from another location. For example if your employer requires
| that you work within the US, you can have a PiKVM device
| installed locally at a family or friend's home in the country
| and connect to it from outside the US and it would appear as if
| you're doing your work domestically.
|
| It's basically a hardware remote-desktop at that point though,
| so the "KVM" part only applies to the KVM device being
| connected to another physical device on location.
|
| EDIT: To clarify further, the advantage of this is PiKVM is
| undetectable by work laptops. Nothing is installed on the work
| laptop, it's strictly HDMI + USB cables going to the KVM. I
| know this because I use one for my FAANG job.
| karolist wrote:
| Before settling back to one computer, I've done the cable replug
| thing manually, then used the urgreen USB switch as in the README
| then settled to using a monitor with built-in KVM switch, and it
| was the best. The problem is when you want one monitor for work
| and gaming - 4K (and/or high-refresh) KVM switches are incredibly
| expensive and tend to be unreliable, so what you usually do is
| use USB switches and switch input source on the monitor manually,
| the software here saves you clicking the "change input source"
| button, but seems to be Windows only, so unless both machines run
| Windows it'll be a one way switch and you'll have to resort to
| manual switch back.
|
| The monitor that is suitable for gaming and has high DPI high
| refresh and built-in KVM switch is Gigabyte M28U, clicking one
| button switches input source and USB peripherials, works quite
| nicely, there's also M32U but with less DPI.
| Kluggy wrote:
| Do the other computers detect the lack of a display when
| they're switched on the monitor?
| karolist wrote:
| The monitor remains connected to the machine, the machine is
| unaware monitor is no longer using it as input source, but I
| assume this part, maybe there's some CEC notification firing.
| vladvasiliu wrote:
| In my experience, this seems to depend on the monitor. On my
| LG, the computers think the monitor is still connected.
| fiddyschmitt wrote:
| Nice one. Yes built-in KVMs are great. Btw - if you only have
| two computers, you can get away with running SimpleKVM on just
| one of them. Because it can detect a USB device being removed
| (ie. gone to the other computer) and inserted (arrived at this
| computer).
| klohto wrote:
| the gigabyte m27u is even better panel and looks great with
| macOS due to high DPI
| karolist wrote:
| Ah, good to know, I think it was not available when I bought
| mine. I would have preferred 27" to 28" due to DPI.
| tjoff wrote:
| One thing to note here with these kind of tools, on displayport
| they typically only allow commands on the active input. Once you
| switch to another you can't switch back (unless you do it from
| the other computer). Which is kind of a hassle.
|
| HDMI on the other hand typically allows the ddc-commands even on
| ports that are not the active input.
|
| Not sure if the above must be the case but it has been the case
| for all displays I've used.
| MichaelMug wrote:
| After researching KVMs I also came to the same conclusion that
| ddc is the solution.
|
| My use case is a bit different. I have two Windows machines and a
| dual monitor setup. I use NirSoft ControlMyMonitor which has a
| CLI and a Elgato Stream Deck.
|
| In a normal KVM approach both monitors are showing only one
| computer. My use case is a bit odd- I want one computer on
| monitor A and the other on monitor B. I may also want to flip
| that. I use a portrait and landscape setup. Then I want to be
| able to switch mouse/keyboard independently of monitor
| configuration.
|
| Each computer runs the Stream Deck software and the Stream Deck
| is connected to the USB switch.
| fiddyschmitt wrote:
| Cool setup. Is it all working nicely with the Stream Deck &
| associated bindings?
| MichaelMug wrote:
| Yes it works well.
|
| The only issue I found was random disconnects when using a
| backlit LED keyboard and the stream deck on the same non-
| powered USB switch. I switched to a powered USB switch and
| that issue is gone.
|
| The switch I'm using is IOgear 2x4 with a USB 5v 2a power
| brick. https://www.iogear.com/product/GUS402/
| webdevver wrote:
| what does ddc stand for?
| argsnd wrote:
| Display data channel
| fiddyschmitt wrote:
| Display Data Channel... it's the signal that your video card
| uses to communicate with yours monitors to do things like
| adjust brightness.
|
| https://en.wikipedia.org/wiki/Display_Data_Channel
| Aardwolf wrote:
| Does there exist any hardware knob that you can put between
| display and displayport cable to adjust brightness? I hate
| the fiddly menus in monitors and in linux no ddc utils work
| for me (some "leds" that should include monitor brightness
| only has keyboard leds)
| MichaelMug wrote:
| Apologies. I hate when people do that as well.
|
| In addition to the other links posted, ddcutil.org has some
| more good info: https://www.ddcutil.com/#introduction
| kthxb wrote:
| I found even these simple USB Switchers to be quite expensive,
| and sometimes they require drivers that don't work on Linux. I
| quickly sketched a simple circuit board with USB hubs and a
| switch and ordered them assembled (!) from one of those DIY-fabs
| (JLCPCB or PCBWay). They cost 25EUR for 5 pcs, each with one
| 2-to-1 switch. I don't have any experience in circuit design and
| didn't have to solder anything, and they work perfectly.
|
| These would go pretty well with this software, maybe I'll give it
| a try.
| azalemeth wrote:
| That sounds awesome -- Please post the designs somewhere
| accessible! My experience of kvms is that they're either cheap
| and don't work in weird ways or expensive and do work, but with
| quirks. I think no small part of it is earthing and the
| avoidance of ground loops at different potentials.
| SOLAR_FIELDS wrote:
| After doing a bunch of research I eventually bought a monitor
| with a KVM built in and I've had almost no issues with it. It
| does imply if you go this route that you are stuck with a
| single monitor setup, but if that is how you work anyway it's
| totally fine and great.
|
| Otherwise some KVM that is decent is as you imply not going
| to be cheap. The one that I have seen recommended on here
| before is
| https://www.store.level1techs.com/products/p/14-kvm-
| switch-d...
|
| The manufacturer themselves even outright says it's not
| perfect, but from what I can tell it's probably the best one
| on the market right now
| MayeulC wrote:
| > It does imply if you go this route that you are stuck
| with a single monitor setup
|
| Not if you use DP-MST (DisplayPort Multi-Stream Transport,
| to "daisy-chain" monitors).
| fiddyschmitt wrote:
| That is so cool!!
|
| Yes I noticed prices had increased a bit over the last couple
| of years. Perhaps there's a market for yours.
|
| Interesting to hear that some USB switchers don't quite work in
| Linux. I had assumed they were just very basic USB hubs so no
| special drivers required. I know some USB switches have fancier
| things like inter-PC file transfer or mouse sharing like this
| one (https://www.aliexpress.com/item/1005006202631772.html),
| and that often requires special software and drivers.
| thefz wrote:
| They don't require software as everything happens physically.
| And they go for around 20EUR on Amazon, I'd say less expensive
| than having a custom one made.
| HumblyTossed wrote:
| TA linked to a few that are quite reasonable in price. I've
| owned a couple while searching for a similar set up and not a
| single one that I researched or bought required drivers.
| wslh wrote:
| Just in time project! Do you know if it is possible to just
| switch a Thunderbolt dock? I mean: you have, fir example, four
| computers all supporting Thunderbolt and you just switch a USB-C
| between those comouters?
|
| I have not tried because I am concern with affecting the
| hardware. Based on your inspiration I just found Thunderbolt KVMs
| such as [1] and [2].
|
| [1] https://sabrent.com/products/sb-tb4k
|
| [2]
| https://www.reddit.com/r/Thunderbolt/comments/11gos6n/kvm_sw...
| fiddyschmitt wrote:
| oooh, not sure. I suspect Thunderbolt has very specific
| requirements, and switches would be consequently expensive.
| MezzoDelCammin wrote:
| Wouldn't count on that. Thunderbolt is USB-C just visually.
| It's probably better to think of it as PCIe that coincidentally
| has the shape of a USB connector.
| serf wrote:
| I would suspect problems, all of my thunderbolt docks seem to
| have a 'boot-up' period when powered-on and switched to.
|
| It would probably work if you were okay with the delays.
| PikachuEXE wrote:
| For software KVM you can use https://github.com/debauchee/barrier
|
| I use it between a Windows PC & a Macbookpro (Linux version
| available but I don't have Linux)
| fiddyschmitt wrote:
| Love it.
|
| Unfortunately I can't install it on my work computer due to
| policy & VPN.
|
| The benefit of SimpleKVM is that I just have to run it on my
| home PC, and I can switch between work and home.
| DeathArrow wrote:
| How would this work if your monitor uses HDMI?
| fiddyschmitt wrote:
| Yep HDMI works well. It also works on DisplayPort, DisplayPort
| Mini, VGA and DVI.
| maCDzP wrote:
| I have a Mac and Windows hooked up the same monitor and
| keyboard/mouse. I used a USB-switch and connected the monitors
| separately with USB-C and VGA. Then I don't have to route the
| video though the USB-switch.
| poisonborz wrote:
| Haha, just writing a "me too here", I just came to the same
| conclusion, but I think my setup is better and cheaper, if a tiny
| bit more complex. For example, the above would need to install to
| all computers which is a no go for me. Also this is dependent on
| the USB switching, cannot be triggered fully remotely.
|
| - DDC commands for monitor input switching
|
| - USB KVM that has only one button to switch - mine was 25$,
| there are plenty of models out there
|
| - Stream deck or prebuilt macropads are super expensive (80$+)
| for what they are - a few buttons. Get a cheap AliExpress
| macropad, they go for 5-10-15$ and have all kinds of layouts.
| They are also much smaller, you can get just one, or 2-3-4
| buttons. Don't use the crappy software they ship with, there are
| github projects to program them.
| https://github.com/rOzzy1987/MacroPad
|
| - FingerBot 16$ (if you already have HomeAssistant, Zigbee+BT
| it's faster) or Switchbot 28$ (bluetooth, has a bit more delay)
| to press the USB KVM button.
|
| - Then an AHK switch to watch for keyboard shortcuts, and trigger
| both the DDC commands and the USB switch button.
|
| It has a few seconds delay, but it's controlled from one source
| only, and can be also fully triggered remotely.
| fiddyschmitt wrote:
| Nice one!
| sesm wrote:
| I'm sure your setup has extra advantages over regular KVM
| switch and was an enjoyable hacking project for you. But from a
| price perspective, it's possible to buy a 4-way 4K HDMI KVM
| switch with a control pad on AliExpress for 29.25$. I don't
| know how much shipping to US will cost though, shipping to
| Europe was 15$.
| poisonborz wrote:
| I researched a lot for KVMs before. The problem is the video
| output is hard to get right. What about 120hz+, multi-
| monitor, how stable the thing is long term. I also thought
| this is a long solved problem but it isn't. Looking at Ali
| there isn't a model with too many reviews that can do the
| above.
|
| At the end of the day this is what I would recommend, it is
| pricey but everyone swears to it:
| https://www.store.level1techs.com/products/p/14-kvm-
| switch-d...
| layer8 wrote:
| > the above would need to install to all computers which is a
| no go for me.
|
| With your solution, one needs to install the AHK script on all
| computers though?
| poisonborz wrote:
| No. The macropad would be connected to one PC which would be
| the controller, so you press that regardless which output is
| selected, maybe this wasn't clear. But this is only needed to
| trigger - theorietically it could be triggered by a third
| device (eg RasPi connected to the display(s) via HDMI).
|
| Maybe to add, this is also better than a KVM because it
| supports any number of display outputs which you can connect
| between the two devices. It's more practical to use a USB-C
| dock though.
| legojoey17 wrote:
| Seems like we all have! I ran into quite a few hiccups when I
| tried to automate this with a Windows and MacOS machine with
| just a USB switch (bad DDC values, detecting device events,
| etc). https://nokappa.notion.site/Making-a-software-KVM-using-
| only...
|
| I ended up mostly giving up because it was a bit janky and I
| always had something else in more disarray.
|
| Sweet idea on the macropad! I haven't used them before and
| placement of the USB switch is always a pain.
| alanbernstein wrote:
| I want something like this, but my monitor doesn't support
| enough DDC commands for it. Any monitor suggestions?
| poisonborz wrote:
| You only need input source set. I think most mainstream
| brands support it - you don't need DDC directly, the easiest
| way is using the included driver which usually provides a
| utility console commands. Most common suggestion is something
| from Dell (with its Dell Display Manager).
| m463 wrote:
| I have always found that KVM switches have side effects on USB
| devices.
|
| So I use mechanical USB switches.
|
| for keyboard and mouse, I use two of these:
|
| https://www.amazon.com/dp/B01I0Y3GEE/
|
| They have no extra keyboard/mouse latency, and no weird side
| effects like boot keys that don't work or modifier keys that are
| in the wrong state.
|
| Issues I've had before with mouse/keyboard:
|
| - hotkey conflicts
|
| - mac boot keys break (hold down <key> for <some boot function>)
|
| - modifiers stick in wrong state
|
| - weird delays
|
| - combinations with mouse+keyboard break
| fiddyschmitt wrote:
| Yes I know exactly what you mean - I've experienced the same. I
| haven't tried a mechanical one before. I'll have to try it out
| avodonosov wrote:
| Why is it callled a "KVM"? What does it stand for?
| cloogshicer wrote:
| Keyboard-Video-Mouse Switch:
|
| https://en.wikipedia.org/wiki/KVM_switch
| avodonosov wrote:
| Thanks. I was confused because the only KVM I heard of is
| https://en.m.wikipedia.org/wiki/Kernel-based_Virtual_Machine
| sokoloff wrote:
| It's amusing to see the mirror comment of this one on a
| "that other kvm" thread a few days ago:
| https://news.ycombinator.com/item?id=39300551
| em3rgent0rdr wrote:
| Same here. This is why it is important to define an
| abbreviation when it is first used in a document.
| Secretmapper wrote:
| Keyboard Video and Mouse
| franky47 wrote:
| Keyboard, Video and Mouse. Usually you would switch both the
| input devices (keyboard and mouse) and the output (display),
| allowing to use a single set of peripherals to control and
| monitor multiple computers.
|
| TIL KVMs existed before the mouse, which explains the odd
| order.
| moystard wrote:
| After trying many hardware and software solutions for easily
| switching between my rigs, I settled on something much simpler: a
| monitor with a KVM built-in. It does not have to cost you an
| absolute fortune. I personally chose the Gigabyte 34" M34WQ; it's
| probably one of the very best purchases I made in the past two
| years, and it simplified moving between my work and personal rigs
| an absolute breeze.
| dizhn wrote:
| There's a blog post about a similar thing but without any extra
| hardware. It uses barrier and a few simple scripts. (monitor does
| have to support switching via dcc).
|
| It's not perfect especially since the input switching for the
| display is quite slow but there's leg in hardware kvms too.
|
| https://xpufx.com/posts/hundred-percent-software-kvm-switch/
| fiddyschmitt wrote:
| Yes Barrier is very nice. I would use it except for the fact
| that my work laptop is VPN'd and therefore on a different
| network to my home LAN.
| 0lde wrote:
| Barrier uses all IPs, so I use it with my VPN active but via
| my cross over cable at the library. If my USB WLAN devices
| supported ad Hoc mode, it would be over a permanent wireless
| link between the thinkpads.
| fud101 wrote:
| I'm using this solution atm. Works quite well except the
| barrier server on Linux is buggy and I need to frequently
| restart it.
| bitcoinmoney wrote:
| I use dell display manager with dell monitors and one of the
| switches in the article.
| mandeepj wrote:
| This is great, but currently very limited; partial support for
| Windows. Seems inclined more towards Apple.
|
| https://github.com/feschber/lan-mouse
| fiddyschmitt wrote:
| If you only have two PCs, you only need to run the program on one
| of them.
|
| When it detects a USB device being plugged in, it changes the
| monitor input to this computer. When a USB device is removed, it
| changes the monitor input to the other computer.
| layer8 wrote:
| Doesn't necessarily work, see
| https://news.ycombinator.com/item?id=39333869.
| joantune wrote:
| Would a USB bluetooth adapter to connect to wireless keyboards
| and mouses work with this??
| fiddyschmitt wrote:
| I think it should. When you do the setup it asks you to unplug
| and replug the device, and choose it out of the list. So it
| should trigger the change.
| gizmo wrote:
| Good KVMs, specifically the ones from Level1Tech[1], are smart
| enough to keep all monitors connected virtually so all your
| windows stay in place when you switch back and forth between
| machines. There is no delay of plugging devices in because from
| the perspective of the client PCs the USB/display port devices
| were never gone. Of course you can connect a bunch of peripherals
| to a dock and switch the upstream thunderbolt connection, but
| that doesn't work correctly.
|
| Crappy KVM solutions are easy. Good ones are hard.
|
| [1] https://www.store.level1techs.com/products/hardware (no
| affiliation)
| rjzzleep wrote:
| Does that impact the time how long the monitor takes from
| switching between display off and showing something on the
| screen?
| gizmo wrote:
| You still have to do a handshake (determine resolution,
| refresh rate, etc) before you get a picture, and that takes
| maybe 3 seconds. Some monitors can handshake a bit faster,
| but not by much.
| Tyr42 wrote:
| Still faster than my monitor. It can take long enough to
| turn on that my laptop goes to sleep (from the password
| entry screen). And since I'm using the monitor as the KVM,
| I can't even mash the keyboard to keep it awake, I got to
| reach over and keep touching the laptop.
| kirubakaran wrote:
| Couldn't you increase the time your laptop waits before
| going to sleep?
|
| - https://askubuntu.com/questions/1042641/how-to-set-
| custom-lo...
|
| - https://support.apple.com/guide/mac-help/set-sleep-and-
| wake-...
|
| etc
| Hamuko wrote:
| I really want one but I just can't justify paying like
| 800-900EUR for a dual-monitor four-computer one when I have a
| USB switcher and can just switch inputs on my monitors.
| Bagged2347 wrote:
| I came to this conclusion myself recently. I have the Cable
| Matters 4 port USB switch and it works just fine for my
| purposes.
|
| https://www.amazon.com/dp/B083JKDNRJ
|
| I was hopeful and tried using this Monoprice KVM switch
| (linked below), but it just wasn't worth it in my experience.
| Despite supporting Display Port 1.4, I could not use my
| monitor to its full ability with my PC (3440x1400 @165Hz w/
| 10 bit color). Dropping the connection when switching inputs
| was also incredibly annoying; every time I switched away from
| my Macbook it would go to sleep.
|
| https://www.amazon.com/dp/B093N1DR8Y
|
| I'm happy to switch inputs on both the USB switch and my
| monitor separately because it's not actually too large of a
| hassle, and the monitor doesn't "disconnect" when switching
| video inputs on my monitor so my Macbook doesn't immediately
| go to sleep.
|
| If anyone is in the market for a KVM switch, consider a USB
| hub first. You might find yourself satisfied. They're much
| less of a hassle and cost very little in comparison to a full
| featured KVM switch.
| jetster735180 wrote:
| I bought the Level1Tech KVM and they do no support EDID
| emulation. I switch between a Mac and a Linux box (Gnome):
|
| - Mac goes to sleep
|
| - Gnome will default back the default monitor configuration and
| move the windows around
|
| They do have a 1.2 DP KVM with EDID emulation, but you loose
| all the benefits of the 1.4 DP.
|
| Its all on their FAQ forums
|
| https://forum.level1techs.com/t/official-l1techs-kvm-faq-ult...
| drakenot wrote:
| Do you know of any solid KVMs with EDID emulation and 1.4 DP?
| whompyjaw wrote:
| Replying to follow (idk if there is a way to follow a
| thread). I have an Apple Display and would need 1.4 DP
| dfc wrote:
| You can "favorite" a comment and then access your
| favorite comments from your profile. Replying to a
| comment with a noop just to "follow" it lowers the snr
| for everyone else.
|
| To favorite the comment click on the time the comment was
| posted and then on the following page click favorite.
| oooyay wrote:
| Yeap! This is my setup for MacOS and Linux with display
| port: KVM Switch Dual Monitor DisplayPort 1.4 8K@30Hz
| 4K@144Hz 2 in 2 Out,DP1.4 KVM Switch and 4 USB3.0 for 2
| Computers,Backnward Compatible DP1.2 with DP+UBS Cables and
| Wired Controller https://a.co/d/5A3IG5P
| sinfulprogeny wrote:
| Under the Extend mode, it says it requires dual-graphics
| card. What does that mean? Guessing it's an odd
| translation.
| breather wrote:
| I think it just means if you want to kvm with two
| monitors over DP you need two DP ports on each computer.
| jpk wrote:
| The only ones I know of are the ConnectPRO ones. I have a
| UDP2-14AP, but it's really finicky. It works great with
| some systems and monitors, even at high resolutions and
| refresh rates. But other systems (for me, my MacBook)
| involve several blank-and-move-all-your-windows-around
| cycles before it settles and becomes usable after switching
| to it. I suspect this might be a monitor compatibility
| thing with the Mac, but I'm not sure.
|
| Anyway, it's pricey and picky about compatibility, so it's
| hard to recommend, but I'm not aware of anything comparable
| in terms EDID emulation and support for high res/refresh
| modes.
|
| Edit: Based on a sibling comment, the situation may have
| changed and there may be comparable ones around!
| indrora wrote:
| Rextron (the OEM behind Level1Techs' kVMs) has a version with
| EDID emulation, but it only supports usb1.1, not 3.0 or
| above. I sent a casual question to their contact to see what
| getting a branded one looks like and the Level1Techs ones are
| not sold at a huge markup, only about 20% or so.
|
| EDID emulation done right is expensive.
| simfoo wrote:
| Also got the Level1Tech one last year, very expensive but worth
| it imho. I use it to switch between my work and home PC many
| times a day, and it has worked flawlessly so far with two
| monitors (4k60hz+2k144hz) using Linux on both machines. USB
| audio, mic, 4k camera, printer and keyboard+mouse peripherals
| whompyjaw wrote:
| How is the latency with these devices? I produce music as a
| hobby and have many connections to deal with and as low
| latency as possible is ideal. I am looking for something I
| can switch between 3 different devices basically. Work
| laptop, MacBook Pro, and custom Linux PC. The 2 latter ones I
| produce on. Would this device work for that?
| simfoo wrote:
| I haven't noticed any additional latency, but my workload
| isn't particularly latency critical (I do sometimes game in
| the 144hz display and it's as smooth as it was before I got
| the KVM). They don't have a 3-computer version afaik so
| you'd need to go with this one probably:
| https://www.store.level1techs.com/products/p/14-display-
| port...
| sunshowers wrote:
| The added latency, if any, is not noticeable on 120-160Hz
| monitors. The KVM isn't doing any processing.
| bmitc wrote:
| Most newer Dell monitors have built -in KVMs and hubs. It's
| nice, becuase with wireless peripherals that USB receivers,
| it's a cableless setup. With a laptop, it's just a single cable
| to hookup everything.
| Neikius wrote:
| Bought one such monitor.
|
| 2 years later switched from m1 to m2 and it no longer works
| well enough (may also be the Sonoma upgrade stil gotta verify
| that). The devices get disconnected and glitch etc.
|
| Went to check with dell and monitor is "not supported" on
| macos.
|
| I am at a loss for words.
| loloquwowndueo wrote:
| How about "apple get your act together with those m2s"? :)
|
| Disclaimer: meant to be humorous.
| pxc wrote:
| macOS has either always lacked (like Display port MST) or
| later broken/crippled (like DisplayLink support) some
| important features for multi-monitor setups. I wonder if
| those things or similar things are somehow implicated in
| these KVM-enabled monitors.
| bmitc wrote:
| I also had hell even with an Intel Macbook Pro. This whole
| just works thing Apple has been able to project is
| unfortunate. I have refused using Apple products from work
| because of how poorly their products integrate. It's not
| Dell. It's Apple. Any other monitor manufacturer will have
| the same issues.
|
| Apple also refuses to implement a protocol that allows
| controlling the brightness and volume of a non-Apple
| monitor from the keyboard or even macOS itself. It's
| infuriating. The only monitors it works with are Apple's
| and the two overpriced Apple-sanctioned LG monitors sold in
| the Apple Store.
| phubbard wrote:
| I've had good luck with the Lunar app - it manages my
| Dell and LG monitors on an M2. (No affiliation)
| https://lunar.fyi
| a2tech wrote:
| This kind of whining is basically trolling. 'I've tried
| nothing and I'm angry it doesn't work!'
| bmitc wrote:
| A 16" Macbook Pro starts at $2,499. I do expect it to
| just work with basic peripherals and protocols for them.
|
| I'm just explaining how it doesn't just work, and that
| I'm perfectly happy not using their products. My comment
| was also a correction that it's on Apple, and not Dell,
| as to why Apple products don't work well with non-Apple
| devices. This is a tactic that Apple uses to try and
| denigrate non-Apple products and get people to come back
| to Apple's "premium" versions of those products.
|
| There are clear and easy steps Apple could take, but they
| won't.
| mjcohen wrote:
| I use an app called MonitorControl on a M1 16" MBP
| running Sonoma that adjusts both the MBP screen and
| external HP 25f monitor. It adjusts the brightness and
| contrast of whichever screen the cursor is in.
| bmitc wrote:
| Right, but that's part of the point. Apple should just
| have this inside macOS.
|
| From MonitorControl's GitHub README, emphasis mine:
|
| > Most modern LCD displays from all major manufacturers
| supported implemented _DDC /CI protocol_ via USB-C,
| DisplayPort, HDMI, DVI or VGA to allow for hardware
| backlight and volume control.
|
| And a blog entry by the author of Lunar, an app mentioned
| elsewhere for this problem:
| https://alinpanaitiu.com/blog/journey-to-ddc-on-m1-macs/
|
| These are not examples of "just works". Apple
| intentionally does these things to cripple integration
| into non-Apple products.
| kanisae wrote:
| I have an Intel Macbook 2019 for work. I've tried a couple
| different kvm solutions but they all had issues, always on
| the Mac side. The best I got was <1 sec switching from Mac
| to Linux and 10-15 seconds switching from Linux to Mac for
| everything to stabilize.
|
| I ended up going with the nuclear option of an IP KVM
| https://www.raritan.com/support/product/dominion-kx-iv-101
| that will do all the resolutions I want at 60hz. It was
| very expensive, but on the bright side it lets me keep work
| laptops completely unmodified and easily swappable.
| 12345hn6789 wrote:
| Big+1 to the level 1 techs kvm. Ive had a little over a year
| and it's flawless.
|
| 2 2.5k/1440p monitors both 144hz and it switches every time.
| Highly recommend. Albeit a bit pricey.
| theideaofcoffee wrote:
| I have had great success with a generic KVM I found on amzn
| [0], but it now appears to be unavailable, which is a shame
| because I wanted to buy another. Perhaps I can find it
| somewhere else. It has never failed to switch between sources
| and the only delay, as some others are pointing out, is the
| HDMI handshake process inherent to the monitors themselves.
|
| I did have a considerably more expensive TESmart [1] but
| couldn't use it because it had some weird incompatibility
| between it, thunderbolt docking station [2] I used with it
| (which also work flawlessly), and the MBPs connected to it. I
| could never figure out why, even raising the issue to support
| with no luck.
|
| My two cents.
|
| [0] https://www.amazon.com/gp/product/B088WGKFZH
|
| [1] https://www.amazon.com/gp/product/B08N494N7X
|
| [2] https://www.amazon.com/gp/product/B08HR3T837
| kevin_thibedeau wrote:
| For HDMI you have lots of options that provide EDID
| emulation. For DP there's only one game in town and it costs
| more than most computers.
| mostlysimilar wrote:
| You don't feel skeptical of products from a company called
| "GREATHTEK-More Convenient"? I am far too paranoid to plug
| random technology like that into my computers. It makes
| shopping for such things on Amazon nearly impossible.
| Beijinger wrote:
| PWAY Brand. Seems to be available on Aliexpress. just FYI
| RVuRnvbM2e wrote:
| The windows not staying in place bug only occurs with crappy
| window managers. Decent ones are smart enough to put the
| windows back where they were when the monitors come back.
| Aardwolf wrote:
| > Crappy KVM solutions are easy. Good ones are hard.
|
| In this case what's crappy is those desktops rearranging
| windows when you turn off a monitor. I'd rather have my PC not
| know whether a monitor is connected or not, like used to be
| with vga.
| toast0 wrote:
| VGA always had means for detecting a monitor. Originally, a
| vga monitor would pull down at least one of the id pins, and
| edid replaced that.
|
| A lot of software didn't really care and just sent signals
| into the void, but it's possible to do that with DVI or DP,
| too.
| oldgradstudent wrote:
| There are pretty reasonable 4-port KVM switches on Aliexpress
| that support 60Hz 4K and USB-3 for $55 or even less.
|
| I got this https://www.aliexpress.com/item/1005002941646654.html
| a year ago. It has some minor compatibility problems with my
| Macbook Pro (or Apples' multiport adapter) which require me to
| remove and reinsert the USB-C cable from the Macbook once in a
| while, but it otherwise works very well.
|
| A year later, there are multiple such devices starting from $30,
| or even less.
| anotheryou wrote:
| wow, great! (in theory, sadly my monitors suck. Dell one refuses
| to see dp and the cheap one does not react to hdmi when set
| through the tool... I got one specific setup with normal kvm that
| mostly works, all others don't...)
| zadwang wrote:
| I use DDC and synergy. So no hardware. It is mostly working OK.
| freewizard wrote:
| Nice project.
|
| I wrote sth similar for myself, without requirement of USB switch
| or other hardware. it sends DDC command to HDMI/USB-C monitor and
| HID++ byte code to Logi MX keyboard and mouse.
|
| Code is too messy to share but here's snippet if anyone want to
| write their own: hid_devices = [ {
| 'name': 'Logi Bolt Receiver', 'receivers':
| hid.enumerate(0x046D, 0xC548), 'command': [ # MX
| Keys Mini as first device on the receiver
| bytes([0x11, 0x01, 0x09, 0x1A, 0x00] + [0] * 15), # change host
| to 1 bytes([0x11, 0x01, 0x09, 0x1F, 0x01] +
| [0] * 15), # change host to 2 bytes([0x11,
| 0x01, 0x09, 0x1D, 0x02] + [0] * 15)] # change host to 3
| }, { 'name': 'Logitech Unified Receiver',
| 'receivers': hid.enumerate(0x046D, 0xC52B),
| 'command': [ # MX Anywhere 3 as first device on the receiver
| bytes([0x11, 0x01, 0x0A, 0x1A, 0x00] + [0] * 15), # change host
| to 1 bytes([0x11, 0x01, 0x0A, 0x1E, 0x01] +
| [0] * 15), # change host to 2 bytes([0x11,
| 0x01, 0x0A, 0x19, 0x02] + [0] * 15)] # change host to 3
| }, { 'name': 'MX Keys Mini Bluetooth',
| 'receivers': hid.enumerate(0x046D, 0xB36E),
| 'command': [ bytes([0x11, 0xFF, 0x09, 0x1E,
| 0x00] + [0] * 15), # change host to 1
| bytes([0x11, 0x01, 0x09, 0x1F, 0x01] + [0] * 15), # change host
| to 2 bytes([0x11, 0xFF, 0x09, 0x1D, 0x02] +
| [0] * 15)] # change host to 3 }, {
| 'name': 'MX Anywhere 3 Bluetooth', 'receivers':
| hid.enumerate(0x046D, 0xB025), 'command': [
| bytes([0x11, 0xFF, 0x0A, 0x1A, 0x00] + [0] * 15), # change host
| to 1 bytes([0x11, 0x01, 0x0A, 0x1E, 0x01] +
| [0] * 15), # change host to 2 bytes([0x11,
| 0xFF, 0x0A, 0x19, 0x02] + [0] * 15)] # change host to 3
| } ]
| HankB99 wrote:
| Where could I explore this further? Are these sequences
| specific to the device?
|
| My current setup includes two Dell monitors (U2415 with 2x HDMI
| "MHL" inputs and built in USB-3 hubs.) I'm using these with a
| Linux X86_64 desktop. I also use Logi vertical mouse and ATK
| (A.JAZZ) keyboard, both on Bluetooth and both also have
| dongles.
|
| I would dearly love to use the keyboard/monitor/mouse on a
| Raspberry Pi 5 (BT and two micro-HDMI ports) with a pure S/W
| based solution rather than spending $$$ for a H/W KVM switch.
|
| Thanks!
|
| Edit: WRT messy code - no judgement, no shaming here. BTDT.
| fiddyschmitt wrote:
| Nice!!
| atomize wrote:
| My mid-range LG monitor has a built in KVM as well as PBP
| (picture by picture??) --- Whatever it stands for, I am able to
| split my 34 inch wide screen between my work Macbook and my
| personal computer (Linux) - I use an app that I've had forever
| called Synergy to share my mouse and keyboard between them
| seamlessly. You can even copy/paste across machines. I personally
| am hooked on my PBP widescreen+Synergy combo.
| starkparker wrote:
| Yeah, PBP was a gamechanger. I got a Samsung with it without
| realizing and now use it almost exclusively.
| jwells89 wrote:
| What I ended up doing is making sure all my computers support
| Thunderbolt 3/4 (or USB 4 at minimum), getting a single good
| Thunderbolt dock (CalDigit TS4+) and just swap out which
| computer's TB cable is plugged into the dock. To ease this I have
| a little magnetic pad stuck to my desk next to the dock which
| holds each computer's cable when not in use.
|
| It works great for my needs. Perfectly for switching between Macs
| or PCs with Intel iGPUs. It _almost_ works perfectly with my
| gaming PC (which sometimes does double duty as a Windows /Linux
| workstation) but its Nvidia GPU can get cranky when used with
| Thunderbolt GPU passthrough for some reason under both operating
| systems. I think the issue is actually in drivers, but good luck
| getting Nvidia to care about this use case. I'm considering
| putting an old AMD GPU in the second slot on the PC and using
| that for passthrough duty.
| synergy20 wrote:
| I have a posix script does the same thing but after a few months
| the screen was dead, somehow I feel manual switch screen input is
| safer.
| g1sm wrote:
| I've been using display-switch[0] for this for a while now. No
| problems whatsoever. Works on windows/mac/linux.
|
| [0] https://github.com/haimgel/display-switch
| jglamine wrote:
| Same! The fact that it's cross platform helps a lot to ensure
| commands aren't missed. If I'm switching while one computer is
| off, the other can still send the command.
| segasuperstar wrote:
| This is genius
| dukoid wrote:
| I have been doing this for years without any additional software:
| just make sure your monitor goes to blank when locking the
| screen:
|
| 1. lock screen
|
| 2. Switch USB switch to the other source
|
| 3. Press space to activate the other PC
|
| 4. Monitor should automatically sitch to the "new" active source.
| alanbernstein wrote:
| What monitors have worked for this for you? My Samsung monitor
| seems to have a hard time finding the source I want.
| starkparker wrote:
| BenQs have it (look for "Input Auto Switch").
| dukoid wrote:
| Philips Briliance BDM4350UC
| thefz wrote:
| Cool project!
| nemetroid wrote:
| I use udev for this purpose (send a DDC command when the USB
| switch appears): ACTION=="add", SUBSYSTEM=="usb",
| ENV{ID_VENDOR_ID}=="1a40", ENV{ID_MODEL_ID}=="0101",
| RUN+="/usr/bin/ddcutil --sn ABCDEFGHI setvcp 60 0x0f"
| chrsig wrote:
| I've been pretty happy with a monitor acting as a kvm, where the
| usb output (usb-c or usb-3) can be mapped to a display output.
|
| It's nice for a wfh setup where I have a personal desktop and a
| work laptop, and I can quickly switch between them just by
| changing the display output.
| peter_d_sherman wrote:
| I haven't reviewed the code for this -- but I like this idea a
| lot!
|
| I would love to see a future piece of software, one that could
| use any number of USB KVM's like this software does -- but could
| also serve as the main GUI for any number of local VM's and/or
| remote VM's -- connected over USB or Ethernet or software-
| controllable "smart" hardware KVM switch or some other
| intermediary layer.
|
| In other words, _abstract_ :
|
| a) VM GUI;
|
| b) Connection medium to that VM (USB, Ethernet, Smart Hardware
| KVM Switch, Firewire, ?, ???)
|
| c) How/where the a given VM GUI is displayed on the local
| monitoring computer, i.e., be able to shrink screen, display on a
| multi-row, multi-column display (like a Zoom meeting!), group
| various related VM GUI's, have a local directory and search for
| VM (for example, if I've got a software development environment
| of various x86 Windows VM's and various ARM Android VM's -- then
| I might want to group by CPU or Operating System or software
| stack version, etc., etc.)
|
| Now, probably all of this software infrastructure exists in one
| form or another.
|
| For example, in QEMU, local or remote VM's can be created and
| then they can be connected to via TCP/IP...
|
| But, to centrally manage all of those QEMU VM's and non-QEMU ones
| as well, as well as regular PC's running _any_ OS on "bare
| metal" over any connection medium (a heterogenous network of
| computing machines) -- that would be the goal of this software!
|
| VNC, or something like it, could be used on the client-side of
| bare-metal PC's, but wouldn't be necessary for VM's...
|
| Anyway, KVM over USB (the original article), is a great idea!
| nottorp wrote:
| Looks pretty useful if you don't want to spend more on your KVM
| switch than you spent on your monitors combined!
|
| Well not for me because my boxes run multiple operating systems,
| but for someone with just multiple windows computers it would be
| great.
| craigkilgo wrote:
| Does this work? This would be amazing.
| tim-- wrote:
| With my COVID obsession of live streaming while writing code, I
| ended up building something a little more elaborate.
| https://github.com/timgws/kvm-switch
|
| It doesn't use DDC commands direct to the monitor(s), instead
| swapping it for a HDMI matrix combined with a traditional KVM for
| swapping around inputs smoothly when you roll your mouse over the
| edge of different operating systems.
|
| The switching client runs on Windows, MacOS and Linux (if you use
| X).
___________________________________________________________________
(page generated 2024-02-11 23:00 UTC)