Viewer
We provide multiple options for the viewer.
Desktop¶
We offer standalone apps for Windows and Linux, you can download them from the releases.
Installation¶
Windows¶
Download the .exe from the latest release and run it.
Linux (Flatpak)¶
Download the .flatpak file from the latest release and install it:
Then run it:
Note
You need Flatpak installed on your system. Most distributions include it by default. If not, see flatpak.org/setup for instructions.
Usage¶
Press Esc at any time to toggle the menu.
Settings will be applied after you hit the "Save" button and click "Back".
Recording¶
You can start and stop recording from the viewer menu: open the menu with Esc, switch to the "Streamer" tab, and click "Start Recording" or "Stop Recording".
You can also toggle recording with the R hotkey.
A recording indicator will appear in the OSD when recording is active, whether triggered from the viewer or via auto-recording on the streamer. See Streamer - Recording for auto-recording setup and storage details.
Hotkeys¶
| Key | Action |
|---|---|
| Esc | Toggle menu |
| F11 | Toggle fullscreen |
| R | Toggle recording |
| W / S | Throttle forward / reverse |
| A / D | Steer left / right |
| Left / Right | Trim steering |
OSD (On-Screen Display)¶
The viewer shows an on-screen display with real-time telemetry. You can toggle individual OSD elements in the menu under the "OSD" tab.
Available widgets:
| Widget | Description |
|---|---|
| Clock | Real-time clock, useful for latency measurement |
| FPS | Current framerate |
| Battery | Battery voltage, average voltage, percentage, and current draw from INA sensor |
| Signal Quality | Modem signal strength and active band |
| Recording | Recording indicator (visible when recording is active) |
| Steering | Steering input indicator |
| Throttle | Throttle input indicator |
| GPS | Fix type, satellite count, and speed |
| Debug | Latency breakdown, data rates, and diagnostic info |
| Cell ID | Cell tower ID (disabled by default for privacy) |
Widget positions can be customized by editing
settings.tomldirectly. See Editing settings for the file location.
Debug output¶
For troubleshooting, you can run the GUI with debug logging enabled:
By default, only ERROR level messages and above are shown. The debug log includes:
- UI state changes
- Incoming/outgoing control messages
- Errors and exceptions
Logs are printed directly to the terminal where the GUI was started.
Editing settings¶
On first start, a settings.toml file is generated with all available configuration values.
-
Not all settings are exposed in the GUI. You can manually edit settings.toml to access additional options. Here you can find the path to your config file.
-
Example use case: Moving or resizing OSD elements by adjusting their coordinates in the config file.
After manual edits, restart the GUI to apply changes.
Mobile¶
We offer an APK for Android. It is currently not available through Google Play, but you can download it from the releases.
Installation¶
Download the APK from the latest release and sideload it onto your Android device. You may need to enable "Install from unknown sources" in your device settings.
Connection¶
The Android viewer only supports connection via the relay, so you will need a valid session ID. You can obtain one by joining our Discord.
Both UDP and TCP transport are supported. If your carrier blocks UDP, switch to TCP in the connection settings. See Connection Types - Transport for details.
Features¶
- Hardware-accelerated H.264 video decoding
- Touch controls for steering and throttle
- Motion controls (tilt device to steer)
- Gamepad support via Bluetooth or USB
- Picture-in-Picture mode
- OSD with battery, signal quality, cell info, and latency
- Start/stop video and recording from portrait mode
- Inverted controls support
- Spectator mode
Performance¶
30 FPS works on essentially any Android phone -- all devices from the last 5+ years have hardware-accelerated H.264 decoding.
60 FPS works on high-end and most mid-tier phones. If you experience frame drops at 60 FPS, try enabling your device's gaming/performance mode. This prevents the OS from throttling CPU and GPU clocks and prioritizes the app's resource usage.
| Brand | Feature | Where to find it |
|---|---|---|
| Samsung | Game Booster | Settings > Advanced features > Game Launcher |
| Xiaomi/Redmi | Game Turbo | Settings > Special features > Game Turbo |
| OnePlus | Game Mode | Settings > Utilities > Game Mode |
| Stock Android / Nothing | Game Dashboard | Settings > Apps > Game Settings (swipe from left edge in-game) |
| Google Pixel | Game Dashboard | Settings > Apps > Game Settings |
| OPPO/Realme | Game Space | Settings > Special Features > Game Space |
| Vivo/iQOO | Ultra Game Mode | Settings > Ultra Game Mode |
| Huawei/HarmonyOS | GameCenter | Separate app from AppGallery |
Known limitations¶
- Relay connection only (no direct mode)
- Control inputs may arrive with a slight delay in poor reception conditions
- Some carriers (e.g., Google Fi, VIVO) block UDP. Use TCP transport as a workaround.