1 / 5
PiKVM 10 inch rack mount — image 1
1 / 5

PiKVM 10 inch rack mount

Order a print of this model

We calculate the final price from your selected file. You review and accept it before payment.

Saved on this device.

PiKVM setup with a Raspberry Pi in conjunction with a 4-port HDMI USB KVM switch to connect to your uSFF PCs

Rating
0 / 5
Likes
46
Downloads
106
Makes
0
Views
5,377
Reviews
0

Updated at source:

Model information

Category
Electronics
License
GNU General Public License v3.0

The PiKVM is a popular device for remote KVM (Keyboard, Video, Mouse) access using a Raspberry Pi. It allows you to control a computer or server remotely as if you were physically present.

This design I wanted to have the ability to remotely access all four uSFF PCs on my homelab rack. The XH-HK4401 4-port HDMI USB KVM Switch assisted with this requirement as I can switch each port from the UART of the RPi. I had a spare PoE HAT laying around, so I included this to power the whole rack from the network switch.

BOM:

1 x XH-HK4401 4-port HDMI USB KVM Switch

1 x C790 HDMI CSI 

1 x Raspberry Pi 4

1 x Waveshare Power over Ethernet HAT (E)

1 x 4010 5v fan

1 x SSD1306 OLED 1.3 inch screen

4 x BHCS M3 8mm screws 

4 x M2.5 heatset (M2.5x3.5x4)

4 x M3 heatset (M3x5x4)

4 x SHCS M3 8mm

4 x SHCS M2.5 16mm screws

Printing:

The mount will need supports where the KVM switch is. I used support blockers for the other areas that didn't need support when printing. I have included a photo as an example for when I printed the rack. 

Installation:

When installing the XH-HK4401 4-port HDMI USB KVM switch, I removed the countersunk screws and used the BHCS M3 8mm screws to mount on the bracket. 

I then inserted the headsets and mounted the SSD1306 screen and used my soldering iron to melt the plastic tabs to hold the screen in place. 

Mount the PoE HAT and heatsink (if using) and install with the RPi bracket and SHCS M2.5 16mm screws. Install the 5v 40mm fan and use SHCS M3 8mm to secure the fan.

I followed this guide to connect the serial UART to the KVM switch.

Using with direct UART connection:

  1. Remount the filesystem in read-write mode using the rw command
  2. Remove the console=serial0,115200 parameter from /boot/cmdline.txt
  3. Append the following lines to /etc/kvmd/override.yaml:
kvmd:
gpio:

    drivers:

        hk:

            type: xh_hk4401

            protocol: 2

            device: /dev/ttyAMA0

    scheme:

        ch0_led:

            driver: hk

            pin: 0

            mode: input

        ch1_led:

            driver: hk

            pin: 1

            mode: input

        ch2_led:

            driver: hk

            pin: 2

            mode: input

        ch3_led:

            driver: hk

            pin: 3

            mode: input

        ch0_button:

            driver: hk

            pin: 0

            mode: output

            switch: false

        ch1_button:

            driver: hk

            pin: 1

            mode: output

            switch: false

        ch2_button:

            driver: hk

            pin: 2

            mode: output

            switch: false

        ch3_button:

            driver: hk

            pin: 3

            mode: output

            switch: false

    view:

        table:

            - ["#Input 1", ch0_led, ch0_button]

            - ["#Input 2", ch1_led, ch1_button]

            - ["#Input 3", ch2_led, ch2_button]

            - ["#Input 4", ch3_led, ch3_button]</code></pre><ol><li>Reboot</li><li>Connect wires:</li></ol><ul><li>GPIO pin 6 to USB GND (and shield, if present on cable)</li><li>GPIO pin 8 to USB D- (white)</li><li>GPIO pin 10 to USB D+ (green)</li></ul><p>&nbsp;</p><p>Hope you enjoy this project as much as I have. Feel free to provide comment/feedback as required.</p>

Tags