Skip to content

tiny-pilot/tinypilot

Folders and files

NameName
Last commit message
Last commit date
Jun 16, 2023
Jan 13, 2021
Jun 15, 2023
Sep 20, 2022
Jun 21, 2023
Jun 15, 2023
Jun 13, 2023
Jun 23, 2023
Jun 14, 2023
Jun 16, 2023
Jun 16, 2023
May 9, 2023
Mar 23, 2023
Jun 23, 2023
Jun 2, 2023
May 17, 2023
Jun 16, 2023
Jun 2, 2023
Jun 16, 2023
Oct 14, 2022
Mar 12, 2021
May 24, 2021
May 24, 2021
Feb 3, 2023
Jun 16, 2023
May 19, 2023
May 18, 2022
Jul 30, 2020
Apr 18, 2023
May 17, 2020
Nov 18, 2022
Oct 24, 2022
Jun 23, 2023
May 15, 2023
Jun 16, 2023
Jun 16, 2023
Aug 23, 2022
Oct 6, 2022
Jun 8, 2021

Repository files navigation

TinyPilot

License Contributors CircleCI Reddit Twitter

Overview

Turn your Raspberry Pi into a browser-based KVM.

TinyPilot demo

https://tinypilotkvm.com

Features

  • Video capture (HDMI/DVI/VGA)
  • Keyboard forwarding
  • Mouse forwarding
  • Fullscreen mode
  • Paste text from clipboard

Official builds

TinyPilot official hardware packages give you everything you need to run TinyPilot and allows you to fund TinyPilot's development for future improvements.

Photo of TinyPilot Voyager 2a

Voyager 2a is TinyPilot's professional-grade KVM over IP device. Its quiet, compact design makes it a great fit for professional environments such as offices, data centers, and server rooms.

Build your own

See "TinyPilot: Build a KVM Over IP for Under $100" for a more detailed tutorial on how to assemble these parts to create a TinyPilot.

Pre-requisites

  • Raspberry Pi OS Bullseye (32-bit)
  • python3-venv

Simple installation

You can install TinyPilot on a compatible Raspberry Pi in just two commands.

curl \
  --silent \
  --show-error \
  https://raw.githubusercontent.com/tiny-pilot/tinypilot/master/get-tinypilot.sh | \
    bash - && \
  sudo reboot

The installation process:

  • Creates a service account for TinyPilot with limited priviliges.
  • Installs TinyPilot as a systemd service so it runs automatically on every boot.
  • Installs and configures TinyPilot's dependencies:
    • nginx, which listens on 0.0.0.0:80
    • uStreamer, which listens on 127.0.0.1:8001
  • Installs TinyPilot to the /opt/tinypilot directory.

When your Pi reboots, you should be able to access TinyPilot by visiting your Pi hostname in the browser. For example, if your device is named raspberrypi:

Developer installation

See the CONTRIBUTING file.

Other installation options

Updates

To update to the latest version of TinyPilot, run the update script:

/opt/tinypilot/scripts/upgrade && sudo reboot

Diagnostics

If you're having trouble with TinyPilot, you can retrive logs from the web dashboard by clicking "Logs" in the bottom of the main dashboard.

If you can't access the web dashboard, you can retrieve the logs by SSHing into the device and running the following command:

sudo /opt/tinypilot-privileged/scripts/collect-debug-logs

This log is useful if you file a bug report.

You can read more details about the logs in the wiki.

Security considerations

TinyPilot does not support authentication or transport-level encryption. You should only use TinyPilot on networks that you trust. Anyone who accesses the TinyPilot URL can shutdown or restart your Pi and type arbitrary commands into the device to which your Pi is connected.

To use TinyPilot on untrusted networks, you can upgrade to TinyPilot Pro, which adds password-based authentication and TLS for end-to-end encryption.

As a free alternative, you can adjust your Nginx configuration (included by default with the installation) to require HTTP Basic Authentication and add a self-signed TLS certificate.

Detailed project updates

If you're interested in seeing what's happening with the project at a granular level, weekly updates appear every Friday on What Got Done:

See also

Acknowledgments

TinyPilot would not be possible without the excellent and generous work from many open source projects, the most notable of which are listed below:

Mailing list

For news about major TinyPilot releases and other updates about the project, sign up for the TinyPilot mailing list:

Upgrade to Pro

TinyPilot Pro includes additional features for professional users, including:

Support the project and upgrade to Pro at https://tinypilotkvm.com/product/tinypilot-pro.