With the Tiny series, OBSBOT offers an affordable PTZ camera option for everyone. The OBSBOT Center provides a way to fully control these devices: https://www.obsbot.com/de/download/obsbot-tiny-2
As of September 2025, however, this software is only available for users on Windows and macOS. According to the latest Steam Hardware Survey, Linux users account for 2.68%, which is actually more than macOS users. Especially within the tech community, many users (rightly so :P) rely on Linux as their operating system. Unfortunately, they currently miss out on the configuration options offered by the OBSBOT Center.
To partially address this issue, OBSBOT now provides an SDK, which allows developers to replicate certain functionalities. However, the availability of the SDK is still limited. Fortunately, the community has since managed to implement several solutions on its own through reverse engineering and a lot of dedication.
This project provides a graphical interface for some basic features. However, to make full use of all functions, a configuration must first be performed in the OBSBOT Center using one of the supported operating systems. A guide on how to do this quickly and easily on Linux can be found below.
This repository is a fork of Constantine Evans's "Tiny2", which itself is substantially based on samliddicott's meet4k package.
- Toggle for Sleep/Wake
- Controls for the tracking speed
- Controls for preset positions
- Updated Dependencies
- UI-Upgrade (WIP)
- Tests & Codecov check
To run the GUI, you have to build the project and then run the binary:
cargo run --package tiny4linux --bin obsbot-gui
With Jetbrains RustRover, you can directly execute the corresponding Run Configuration.
From my experience, it’s a good idea to have a Windows VM ready to run on Linux. While Wine can easily run the OBSBOT Center itself, it’s unable to pass through the camera’s USB signal. Therefore, using a VM — for example, via VirtualBox — can provide a practical workaround.
Once you’ve set the color values, gesture settings, and preset camera positions once, there’s no need to start the VM regularly anymore. The rest is what this program is meant to handle ;)