PiKVM Setup Script for Pi Zero 2W
lib/waveshare_epd | ||
access-point.sh | ||
display.py | ||
README.md |
PiKVM - Pi Zero 2 W
The official PiKVM is expensive so I decided take the DIY approuch to save on costs & add some addition features:
- "USB dongle" form-factor with minimal connections
- Create access point when not connected to anything for easy access
- Optional ethernet connection since my servers don't have a wifi connection
- E-ink display for displaying network information
- Wireguard host to act as jumpbox
- Wireguard client to act as reverse VPN (Aviods network firewalls & can be remotely configured by DNS)
Hardware
- Pi Zero 2 W
- ENC28J60 Ethernet -> SPI Module (Slow but the only option)
- HDMI to CSI-2 Module
- 2.13" E-Ink Display
Assembly
- Optional: Cut the head off a USB cable & solder it to the debug pads on the back of the Pi; extend to the right (Opposite the SD card) & glue with hot glue
- Connect HDMI/CSI-2 module via short ribbon cable (~40 mm); fold over and glue to back of board alighting with the SD card
- Optional: Wire the Ethernet/SPI module onto SPI chanel 0
- Optional: Connect display via 8 pins on side to SPI channel 1
Install
- Flash SD card with latest PiKVM image using the Raspberry Pi Imager
- Edit
/boot/config.txt
to include:
dtoverlay=spi=on
- Edit
/boot/pikvm.txt
to include your WiFi credentials:
FIRST_BOOT=1
WIFI_ESSID="wifi_name"
WIFI_PASSWD="wifi_pass"
- Insert SD card into Pi, connect an HDMI cable to the PI HDMI output (not the added module), connect the USB port to power
- Open the IP address on screen & use
admin/admin
to login & open the console - Login as root, enable rw mode & run the install scrip:
$ su -
**Enter password: root**
# rw
# curl https://git.zakscode.com/ztimson/PiKVM/install.sh | bash