Field recovery playbook
This is the print-it-and-keep-it-with-the-drive page. A tech holding a USB recovery drive at a venue should be able to follow this without prior DisplaySync context and end up with a working kiosk.
If you're the tech on call: you do not need to read Building the drive or Setup script reference. Just follow the steps below.
When to reach for the recovery drive
The drive is the last resort, used when faster fixes haven't worked.
Try first, in order:
- Refresh from the dashboard (Remote control) — fixes content blips
- Reboot app from the dashboard — fixes most kiosk app issues
- Reboot device from the dashboard — fixes most Windows-level issues
If after all three the kiosk still isn't working, then reach for the recovery drive. It's destructive (wipes the kiosk's local DisplaySync state), so it's not the first move.
Common reasons the recovery drive is the right answer:
- The kiosk won't boot far enough for remote commands to reach it
- The kiosk shows the QR screen but never reconnects to the backend
- An update went bad and the watchdog can't recover
- The hardware is from a different fleet and needs to be brought into yours
- A clone collision is producing duplicate sign IDs
Before you wipe — capture diagnostics
If the kiosk is still booting and you can keyboard into it, grab the logs first. The recovery drive will wipe state, including the in-memory clues that explain why this kiosk was misbehaving. Knowing why means you can prevent it on the next 50 kiosks.
Press Ctrl + Shift + S for the on-kiosk Status Dashboard. Take a phone photo of:
- Connection Status, Sign ID, Backend URL
- Cache status
- Recent error counts
Then if you can:
# Plug a USB into the kiosk (any USB, doesn't have to be the recovery one)
$out = "E:\sign-logs-$(Get-Date -Format 'yyyyMMdd-HHmm').zip"
Compress-Archive -Path "C:\ProgramData\DisplaySync\logs\*" `
-DestinationPath $out
Send the photo and the .zip to whoever runs follow-up.
If the kiosk won't boot far enough for any of this, skip to the recovery steps — it's not worth a half-hour of revival attempts.
The recovery procedure
What you need:
- The misbehaving kiosk
- A keyboard (you'll need it briefly)
- The DisplaySync USB recovery drive
- The kiosk user password (or another local admin's password)
Estimated time: 5-10 minutes end to end.
Step 1 — Get to the desktop
If the kiosk is showing content, press Ctrl + Shift + Q to put it in maintenance mode. The sign app exits cleanly and the watchdog won't relaunch it.
If the kiosk is at the QR screen or showing an error, press Ctrl + Shift + Q anyway — the same shortcut works. If nothing happens (the app isn't responding), reboot the kiosk and let it auto-login as DisplaySync. Then immediately press Ctrl + Shift + Q to enter maintenance mode before the watchdog gets in your way.
You should now see the Windows desktop. If not, see Kiosk won't start.
Step 2 — Plug in the USB drive
Plug the USB recovery drive into any port. Wait for Windows to mount it.
Open File Explorer and navigate to the drive — you should see at least 6 files at the root:
setup.batsetup.ps1config.jsonREADME.txttailscale-setup.exeDisplaySync-Sign-<version>-x64.exe
If files are missing, the drive is incomplete — you'll need a working drive before you can recover this kiosk.
Step 3 — Reinstall DisplaySync
Double-click DisplaySync-Sign-<version>-x64.exe.
The installer is silent — you'll see a brief progress dialog, then nothing. Wait ~30 seconds for it to finish.
If a UAC prompt appears, click Yes.
Step 4 — Run the recovery script
Double-click setup.bat on the USB drive.
A PowerShell window opens. If a UAC prompt appears, click Yes — the script needs admin to register the watchdog and configure Tailscale.
Watch the output:
- You'll see a series of
[PASS]lines as each step succeeds. - If you see a
[FAIL], stop and read the message. Common fails are listed below. - After ~1-2 minutes, you'll see
=== Setup complete ===.
The script also writes a setup.log file next to itself on the USB drive. If anything fails or the support team needs to investigate later, that log is the artifact.
Step 5 — Verify
After setup.bat finishes, the DisplaySync sign app should launch within a few seconds.
You should see the QR claim screen on the kiosk display. Press Ctrl + Shift + S to confirm:
- Connection Status: Connected — kiosk reaches backend
- Tailscale IP: 100.x.y.z — kiosk is on the tailnet
- Sign ID: <a fresh UUID> — identity regenerated
If all three are populated, you're done. Re-claim the sign from the mobile app or the dashboard (Claiming signs).
Step 6 — Reboot to leave maintenance mode
Reboot the kiosk. Auto-login resumes the kiosk user, and the watchdog (now installed) takes over.
The kiosk is back in service.
When something goes wrong
[FAIL] DisplaySync is not installed
Step 3 didn't complete. Re-run the installer from the USB drive, wait until it finishes, then re-run setup.bat.
[FAIL] tailscale-setup.exe not found
The USB drive is missing the Tailscale installer. You can't recover from this kiosk with this drive — get a complete drive.
[FAIL] tailscaleAuthKey is still the placeholder
The drive wasn't fully prepared. The config.json on the drive needs to have a real auth key, not tskey-auth-REPLACE_ME. Get a properly-configured drive.
[FAIL] tailscale up: auth key expired
The drive's auth key has expired. Get a refreshed drive (mint a new auth key, update config.json).
Setup completes but no QR screen appears
DisplaySync may have launched in the background. Press Alt+Tab — if you see "DisplaySync Sign" in the open windows, click it.
If still nothing, reboot. Auto-login should bring DisplaySync up via the scheduled task.
Tailscale IP not showing in the dashboard
Wait 30-60 seconds. The kiosk reports its Tailscale IP on each heartbeat (every 5s); the dashboard updates as soon as the heartbeat arrives.
If after 2 minutes it's still blank, check tailscale status from a kiosk PowerShell. If the device is logged in but the IP is blank, restart the Tailscale service: Restart-Service Tailscale.
Sign won't claim after recovery
See Sign won't claim.
After the event
Recovery drives often leave the office and come back to the office over the course of an event. After the event:
- Wipe the drive or at minimum delete
config.json. The auth key on the drive is a credential. - Rotate the Tailscale auth key in the admin console. Mint a new one for the next event.
- Update the drive for next time — refreshed auth key, latest DisplaySync installer.
See Post-event teardown → Rotate Tailscale auth keys.
See also
- Building the drive — how the drive gets prepared in the first place
- Setup script reference — what the script actually does
- Troubleshooting — symptom-indexed guides for fixes that don't require recovery