The original PiKVM Hat uses the RJ45 to transceive only the ATX signals. If we want to switch the ATX signals, we will need an 8-channel 1:2 multiplexer chipset even though the ATX signals are only 4-channel. This's because the ATX signals from the RJ45 connector are isolated by the optical coupler. We will need + and - for one ATX signal as the below picture shows.
But if we put the optical coupler on the ATX board instead of the Hat. We only need a 4-channels 1:2 multiplexer chipset. Guess what? The USB 3.0 1:2 multiplexer can multiplex 6 channels. After taking 2 channels for the USB 2.0 signals there are still 4 left, we can use them for the ATX signals. So just one chip for both USB 2.0 and ATX, it makes the BOM list simple.
I decided to go further by using the RJ45 to transceive both the ATX and USB signals as the schematic shows below.
This change will make cable management simplify. We now only need two cables an HDMI cable and an RJ45 ethernet cable instead of three cables (HDMI, RJ45, and USB).
The disadvantage of this change is that you can't use the original ATX control board from PiKVM Hat with this KVM switch. But since I've made my own ATX control board this wouldn't be a big deal.
Demo video for Jan 1st update:
What had been done:
- HDMI signal switching works.
- USB signal switch works.
- ATX signal switch works.
- USB hub works.
- Add MCU so that can be controlled by one Raspberry Pi GPIO pulse to switch the PC sources instead of using the GPIO H/L status.
- Add a manual switch button.
- Add active PC led indicators.
- Add active PC status pins so that the PiKVM can read which PC is activated.
- Design an adapter to mount on the Raspberry Pi 40 pins header.