In the past year of working from home I grew tired of a ritual that I have to do every morning and every afternoon, the usb peripheral change.
I have tried different solutions multiple keyboards/mices/webcams but its a waste, keyboards and mouses that connect to different devices but this normally are good for work however not so good for my hobbies.
So I decided to look out for a usb switch that would meet my necessities, however I didn't found it or maybe I'm just searching for the wrong thing.
I grew to the conclusion then to search if it would be possible to make my own device with my requirements and who knows maybe help others out there that want to get rid of the extra peripherals and extra cables laying on top of their desks.
So I want to create a USB switch that enables 3 computers to share USB devices, such as keyboard, mouse, camera and other peripherals.
- The switch will have 3 USB "output" ports that will be used to connect to 3 computers.
- The switch will have 4 USB ports that will be shared by the 3 computers connected to the switch.
- The switch will share by the 3 computers the information that the device X is connected, however only I push the button to switch the usb source to that output is when the computer will receive instructions from that device. The idea here is if I connect a mouse to the switch all 3 computers will know that a mouse is connect and ready to use however only the chosen computer will actually receive the data send by the mouse, avoiding this way extra awaiting time when switching a device between computers. This could be also done in another way where all usb are shared by the computers and I choose if some computer should not receive info from usb source port X.
- The higher the usb specification the better, 3.1 would be ideal.
- Dedicated power source.
- Low latency,
< 1ms.
The best scenario would be to create something that anyone at home with little knowledge could assemble in their homes, by using certain parts from user friendly providers such as arduino/adafruit.
Would be possible to put together something like this?
Edit:
Regarding the usb3.1 is not something that I'm looking forward to, just wanted to see if possible then other users that might be in need could use the knowledge I have gathered.
Kvm's seems like a possibility however they seem to introduce latency, it could work between computers where latency is not a problem, however I want to have the less delays possible between my personal computer.
Emulation is a field to discover, the reason I want all connected computers to have the a "ghost" from the connected device is because sometimes work computers have software where when you plug in any usb/hid device you have to go and accept it as a trusted device for the session, so every time I switched a device I would have to still do a lot of actions to make the device working on that pc. I assume that if the computer thought the device was always connected this will be a lot less hassle.
Thanks for your time reading this.
Best,