Skip to content

Instantly share code, notes, and snippets.

@fizzyade
Last active May 19, 2021 11:26
Show Gist options
  • Save fizzyade/8a8cedb9efc4f7cf2677667189b62fc4 to your computer and use it in GitHub Desktop.
Save fizzyade/8a8cedb9efc4f7cf2677667189b62fc4 to your computer and use it in GitHub Desktop.

Pi-KVM Bus Powered

You can use Pi-KVM bus powered, this reduces the need for splitters and/or other "hacks" to make it work, the following instructions will allow you to achieve this.

Note as the pi is bus powered, it cannot control the PC or show the output until the Raspberry Pi 4 has booted, I would recommend that you at the minimum ensure that your host machine is configured to boot up when power is restored. A self powered Pi-KVM would still have the same issue after power is restored, but have more flexibility as it is independant of the host system.

I have tested this on a 2016 MacBook Pro and an M1 Mac Mini and haven't seem any issues with either Mac not being able to source enough current to power the Raspberry Pi 4.

The instructions for early & later revisions vary.

Early Model Pi 4 (earlier than V1.2)

The early revision Raspberry Pi 4 boards have a faulty implementation of USB-C, therefore you need to take an additional step to make this work. You will need a suitable USB-OTG adaptor, this is the adaptor I used.

https://www.amazon.co.uk/gp/product/B081S27N43/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1

The adaptor MUST be plugged into the host you're intending to control. (The USB ID pin is open drain in normal operation, a device can pull this signal which will tell the other end whether it should be in host or device mode)

USB C Host

Use a USB-A to USB-C cable to connect from the OTG adaptor plugged to the Raspberry Pi.

https://www.amazon.co.uk/UGREEN-Charging-Samsung-Nintendo-Braided/dp/B07PPY9N62/

USB A Host

Use an USB-A to USB-A cable to connect to the host.

https://www.amazon.co.uk/Rankie-Type-Male-Cable-Black/dp/B01KRO8D20

Later Revision Raspberry Pi 4 (V1.2 or later)

The later Raspberry Pi 4 revision fixed the out of specification implementation of USB-C, which removes the need for the OTG adaptor.

USB C Host

Use a plain old USB-C to USB-C cable.

https://www.amazon.co.uk/Type-C-Cable-BENFEI-USB-C-Delivery/dp/B07RMXTT3Z

USB A Host

Use the instructoins above for the early revision Raspberry Pi 4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment