---
title: PiKVM V4 Mini & Plus quickstart guide
description: Getting started with PiKVM V4 Mini & Plus
---

# PiKVM V4 Mini & Plus quickstart guide

![PiKVM V4 Mini & Plus](overview.jpg "PiKVM V4 Mini (left) & Plus (right)"){ width="450" }

PiKVM is a feature-rich, production-grade, open-source, Raspberry Pi based KVM-over-IP device. It allows you to turn your computer on or off, restart it, configure the UEFI/BIOS, and even reinstall the OS using the Virtual CD-ROM or flash drive.

PiKVM uses your remote keyboard and mouse to simulate a local keyboard, mouse, and monitor, which are then presented in a web browser as if you were working on a remote system directly.

**Datasheets**:

[PiKVM V4 Mini](v4mini_datasheet.pdf){ .md-button } [PiKVM V4 Plus](v4plus_datasheet.pdf){ .md-button }


-----
## What's in the box

- PiKVM V4 Mini or Plus device
- Micro SD card with pre-imaged PiKVM software
- ATX control board
- ATX connection cables
- ATX installation brackets
- 1 x Ethernet cable
- 1 x ATX cable
- 1 x USB C to USB A cable
- 12V 2A Power Supply (international adapters)


-----
## Interface

=== "Front view"

    ![V4 front view](v4-front-view-numbered.svg){ height="250" }

    1. Power LED (Green)
    2. Power Input 5.1V 3A
    3. Activity LED (Red)
    4. Micro SD card slot
    5. USB 2.0 Serial console port
    6. Serial console active LED / Beacon LED (Green)
    7. RJ45 1Gb Ethernet port
    8. RJ45 Serial console port **(V4 Plus only)**
    9. USB 3.0 port 1 **(V4 Plus only)**
    10. Power Input 12V 2A **(V4 Plus only)**


=== "Rear view"

    ![V4 rear view](v4-rear-view-numbered.svg){ height="250" }

    1. RJ45 ATX control port
    2. USB 2.0 OTG connector
    3. Beacon LED
    4. Video source ready status LED
    5. HDMI video input port
    6. Video capture ready status LED
    7. Optional antenna mounting hole **(only one in V4 Mini)**
    8. HDMI video output port 2 **(V4 Plus only)**
    9. HDMI video output port 1 **(V4 Plus only)**
    10. USB 3.0 port 2 **(V4 Plus only)**
    11. Optional antenna mounting hole **(only one in V4 Mini)**

=== "Right view"

    ![V4 right view](v4-right-view-numbered.svg){ height="250" }

    1. Service switches
    2. Kensington Security Slot

=== "Top view"

    ![V4 top view](v4-top-view-numbered.svg){ height="250" }

    1. Display

-----
## Flashing the OS

Most of the time, this step is not necessary. However, if there is a possibility that your device had a previous owner (e.g. "Used - Like New" on Amazon), we recommend reflashing the OS to ensure a clean start. Please follow [this guide](flashing_os.md).

-----
## Wiring

Let's connect all the wires before you power up the device.

### Network

![Ethernet wiring](v4-ethernet-wiring.svg)

Connect **Ethernet** (**bottom right** on the **front** side) to the network using the cable from the kit. The kit includes two Ethernet cables of different colors: one for the network, the second for ATX. Use whichever one you like best.

### HDMI and USB-C

![HDMI and USB-C wiring](v4-hdmi-usb-wiring.svg)

**HDMI input** (the **bottom right** on the **rear** side) and **OTG** port (USB emulation) should be connected to the computer.

Optionally, the **[ATX port](atx_board.md)** can be connected to control the power. There should be no USB hub between PiKVM and the computer, as some UEFI/BIOS cannot detect them at the boot stage.


-----
## Power up

![Power supply wiring](v4-power-supply-wiring.svg)

V4 Mini and V4 Plus have different power supplies:

- The Mini comes with USB-C 5V power supply
- The Plus comes with with Barrel 12V

The Plus can also work from 5V. In that case, avoid creating a significant power load on USB (external flash sticks, cameras, and so on).

Attach the appropriate connector on the **front** side. Do **not** block the ventilation holes on the sides of the device.

After turning on the power, PiKVM OS generates unique SSH keys and certificates and performs all necessary operations on the memory card. It takes a few minutes. Do **not** turn off the device until it's fully booted for the first time. Once it's done, the PiKVM will show a greeting on the built-in display.


-----
## Connect and set up

### Configure the display

The operating system on your remote computer will treat PiKVM as an additional display and use it in the Extend mode by default. That's why you will see an empty desktop when you first connect.

To avoid that, go to the display settings in your remote computer's operating system and enable the mirror mode for the external screen that your operating system identifies as PiKVM. Refer to your operating system's documentation on that.

### Access PiKVM

By default, PiKVM receives a dynamic IP address via DHCP and shows it in the top row of the OLED display:

```console
192.168.0.26
(|) iface: eth0
cpu: 1% mem: 13%
```

Let's assume that PiKVM has received the address `192.168.0.26` and has also been assigned a hostname `pikvm`.

Type the URL in the browser's address bar and press **Enter**: https://192.168.0.26/ or https://pikvm/.

![Login screen](login-prompt.png){ width="450" }

Submit the default credentials and click **Login**:

- Username: `admin`
- Password: `admin`
- 2FA Code: disabled by default, skip this field

You will see the initial dashboard screen of the PiKVM, where you can access the remote host, connect to the PiKVM command line, or log out:

![Initial UI](initial-ui.png){ width="450" }

### Change the default passwords

For security's sake, it's best to change the default passwords immediately after running PiKVM for the first time. 

!!! danger "Passwords are important!"
    Please ensure that you change **both** passwords: for Web UI access and for the Linux superuser (root).

To do that:

1. On the initial dashboard screen, click the **Terminal** button to open the web terminal. You will see this command line interface:

    ![MISSING SCREENSHOT](pikvm-web-terminal-start.png){ width="450" }

2. Gain superuser privileges:

    ```console
    $ su -
    ```

    When prompted for a password, use `root`.

3. Run `rw` to change the access to the SD card to the write mode:

    ```console
    [root@pikvm ~]# rw
    ```

4. Change the password for the superuser:

    ```console
    [root@pikvm ~]# passwd root
    ```

    Submit the new password, retype it the second time to confirm, press **Enter**, and you should see this:

    ```console
    passwd: password updated successfully
    ```

5. Change the password for web access:

    ```console
    [root@pikvm ~]# kvmd-htpasswd set admin
    ```

    Submit the new password, retype it the second time to confirm, and press **Enter**.

6. Run `ro` to change the access to the SD card back to the read-only mode:

    ```console
    [root@pikvm ~]# ro
    ```

7. Press **Ctrl+D** or type "exit" and press **Enter** to drop the root privileges.

8. Go back one page in the browser. You should be back to the initial dashboard screen.

### Access the remote system

1. On the initial dashboard screen, click the **KVM** button to access the remote host.

2. You should now see the host system's display and interact with it remotely using a keyboard and a mouse.

    ![Work remotely](remote-screen.png){ width="450" }


-----
## Important next steps

- **We strongly recommend updating the PiKVM OS** after the first launch:

    {!_update_os.md!}

- Learn the basics of **PiKVM OS Configuration**: where to find configs, how to edit the, etc.

    {!_config.md!}

- **Get to know PiKVM Web UI**: read [this help section](webui.md) to better understand all the possibilities of the web user interface.

- **Configure the magic key**: define which key to use to start [sending shortcuts](shortcuts.md) to the target host system.

- **Set up an [ATX connection](atx_board.md)** if you need to control the power of the remote system.


-----
## Further recommendations

1. **Customize the system**:

    - [Harden the remote access](auth.md) by enabling 2FA.
    - Configure access to PiKVM from the Internet using [port forwarding](port_forwarding.md) or [Tailscale VPN](tailscale.md).
    - Enable a microphone for [two-way audio](audio.md).
    - Enable [HDMI pass-through](pass.md) and [USB passthrough](usb_pass.md).
    - [Learn](config.md) how configuration files are structured.
    - Read how PiKVM is [identified](id.md) on the target host.

2. **Configure hardware**:

    - Install and set up the Wi-Fi antenna:
    
        ??? note "Quick WiFi antenna how-to"
        
            The PiKVM V4 has a robust metal case that protects your device from physical damage and electromagnetic interference. This also means that an external antenna must be used for Wi-Fi. We recommend the official Antenna Kit for Raspberry Pi.
            
            To install the antenna, fix it in the round hole in the back side of the PiKVM, and connect the wire to the connector on the Compute Module 4, as described in the instructions.
            
            Next, to activate the antenna, add line `dtparam=ant2` to the `/boot/config.txt` file on PiKVM.
            
            Here is a video:
            
            ![type:video](https://www.youtube.com/embed/WyHBWEbtxB4)
            
            Follow [this guide](wifi.md) to configure Wi-Fi in PiKVM OS.
    
    - Install and set up [LTE/5G modem](modem.md) (**only for PiKVM V4 Plus**).

    - Set up internal USB port for USB 3.0 (**only for PiKVM V4 Plus**):

        ??? note "Enable USB 3.0 on the internal port"

            PiKVM V4 Plus has an internal USB port. It supports USB 3.0, but only works with USB 2.0 devices by default to minimize the power consumption. You need to flash the USB controller to enable USB 3.0. To do so, follow these steps:

            1. Open a terminal window and log into the PiKVM via SSH:

                ```console
                $ ssh user@host
                ```

            2. Flash the USB controller using the built-in `flashrom` utility. Choose `usb3` for USB 3.0 support:

                ```console
                [root@pikvm ~]# flashrom-vl805 usb3
                ```

                If you need to disable USB 3.0 support at any time later, run the same command, but use `default` instead:

                ```console
                [root@pikvm ~]# flashrom-vl805 default
                ```

            3. Perform the soft reboot:

                ```console
                [root@pikvm ~]# reboot
                ```

            4. After the soft reboot, perform the **reboot by power**: unplug and plug again the power cable.

    - Learn about DIP switches:

        ??? note "DIP switches purpose"

            The left switch **[1]**:
            : When pulled down (**ON** state), the advanced backpower protection is used. On the default state is **OFF** (up), "diode protection" is used. This is required for debugging at the request of technical support. Under normal conditions, it is not necessary to change the mode.

            The right switch **[2]**:
            : When pulled down (**ON** state), the Power Delivery chip is activated on the USB OTG port. The default state is **OFF** (up).

            To change the position of switches:

            1. Turn the PiKVM off.
            2. Change the position of the switched.
            3. Turn the PiKVM on.

            !!! warning
                Do not do that change the state of the DIP switched while the device is turned on. **This may cause irreparable damage.**

    - Choose Fahrenheit over Celsius to display on the OLED:

        {!_fahrenheit.md!}


-----
## Known issues and limitations

* There may be compatibility issues with certain motherboards, such as **HP** or **DELL**. If there is no image from the BIOS, you can fine-tune the HDMI settings, but it is possible that mass storage devices may not be available in the BIOS. In the latter case, [USB dynamic configuration](usb.md) will solve the problem.

* While the V4 Plus features a Mini-PCIe slot, it was only designed for LTE modems. An NVME card will not work.


-----
## Basic troubleshooting

* Ensure that you are using the right [OS image](flashing_os.md) for your platform
    by running the following command: `pacman -Q | grep kvmd-platform`.

* If you are not getting a display, run the two following commands:

    * `dmesg | egrep 'tc35|1-1.4|uvc'`
    * `systemctl status kvmd-tc358743`


-----
## Getting user support

If something doesn't work, check out our [FAQ](faq.md). Otherwise, head straight to our [Support](https://pikvm.org/support/).