Skip to content
Test Station Setup

How to Set Up Kiosk Mode for Test Stations

Kiosk mode locks a test station to the operator UI. Learn how to configure Chrome kiosk mode, auto-start, and barcode scanner integration.

JJulien Buteau
intermediate6 min readMarch 14, 2026

How to Set Up Kiosk Mode for Test Stations

Kiosk mode locks a test station's display to the operator interface. The operator sees only the test UI. No address bar, no taskbar, no desktop, no way to accidentally close the browser or open other applications. This guide covers how to set up kiosk mode on Windows and Linux for manufacturing test stations.

Why Kiosk Mode

ProblemKiosk Mode Solves It
Operator closes the browserBrowser restarts automatically
Operator navigates away from the test UIAddress bar is hidden
Operator opens other applicationsTaskbar is hidden, Alt+Tab is disabled
Station boots to a desktopBrowser opens automatically on startup
Display is hard to read at arm's lengthBrowser zoom is preset to 150%

Kiosk mode turns a general-purpose PC into a dedicated test terminal.

Prerequisites

  • Chrome or Chromium installed on the station PC
  • TofuPilot streaming URL for the station
  • Admin access to the station PC

Step 1: Launch Chrome in Kiosk Mode

Windows

Create a shortcut or batch script that launches Chrome in kiosk mode pointing to the TofuPilot streaming URL.

start_operator_ui.bat
@echo off
REM Launch Chrome in kiosk mode for operator UI
start "" "C:\Program Files\Google\Chrome\Application\chrome.exe" ^
    --kiosk ^
    --disable-pinch ^
    --overscroll-history-navigation=0 ^
    --noerrdialogs ^
    --disable-translate ^
    --no-first-run ^
    --fast ^
    --fast-start ^
    --disable-features=TranslateUI ^
    --disk-cache-dir=nul ^
    "https://tofupilot.app/streaming/your-station-room-id"

Linux

Create a shell script for kiosk mode on Linux stations.

start_operator_ui.sh
#!/bin/bash
# Launch Chromium in kiosk mode for operator UI
chromium-browser \
    --kiosk \
    --disable-pinch \
    --overscroll-history-navigation=0 \
    --noerrdialogs \
    --disable-translate \
    --no-first-run \
    --disable-features=TranslateUI \
    "https://tofupilot.app/streaming/your-station-room-id"

Step 2: Auto-Start on Boot

Windows

Place the batch script in the Startup folder:

C:\Users\<operator>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\

Or create a scheduled task that runs the script at logon.

Linux (systemd)

Create a systemd service that starts the browser after the display server is ready.

/etc/systemd/system/operator-ui.service
[Unit]
Description=Operator UI Kiosk
After=graphical.target

[Service]
Type=simple
User=operator
Environment=DISPLAY=:0
ExecStart=/home/operator/start_operator_ui.sh
Restart=on-failure
RestartSec=5

[Install]
WantedBy=graphical.target

Enable the service:

terminal
sudo systemctl enable operator-ui.service

The Restart=on-failure setting means the browser relaunches automatically if it crashes or gets closed.

Step 3: Configure the Display

SettingValueHow
Browser zoom125-150%Set in Chrome settings or via --force-device-scale-factor=1.5 flag
Screen timeoutNeverDisable sleep/screensaver in OS power settings
Screen rotationLandscapeMatch the UI layout
ResolutionNativeDon't downscale, the UI is responsive

Step 4: Set Up Barcode Scanner

Most USB barcode scanners work as HID keyboard devices. When the operator scans a barcode, the characters are typed into the active input field.

SettingRecommendation
Scanner modeUSB HID Keyboard (default on most scanners)
SuffixConfigure the scanner to send Enter after each scan
PrefixNone (or configure to match your serial format)
FocusThe TofuPilot operator UI auto-focuses the serial input field

The workflow becomes: operator scans barcode, Enter is sent automatically, test starts. No clicking, no typing.

Step 5: Lock Down the Station

Disable Keyboard Shortcuts (Windows)

Use Group Policy or a third-party tool to disable:

ShortcutWhy
Alt+TabPrevents switching away from the operator UI
Alt+F4Prevents closing the browser
Ctrl+WPrevents closing the tab
Windows keyPrevents opening the Start menu

Disable Keyboard Shortcuts (Linux)

Configure the window manager to ignore these shortcuts, or run Chrome in a minimal window manager (like Openbox) that doesn't bind them.

Troubleshooting

IssueFix
Browser shows "No internet" on bootThe browser starts before the network is ready. Add a 10-second delay to the startup script, or use Restart=on-failure in systemd.
Screen goes black after inactivityDisable screen timeout in OS power settings and screensaver.
Scanner types into the wrong fieldThe TofuPilot UI auto-focuses the serial input. If focus is lost, clicking anywhere on the page restores it.
Browser updates break kiosk modePin the Chrome/Chromium version or disable auto-updates on station PCs.

More Guides

Put this guide into practice