tech ·
Funscript Sync 101: The Handy, Keon, OSR2 and the Free Software Stack
Script sync is the part of VR sex-tech that delivers today, with hardware from $250 and a software stack that is entirely free. Here is how the pieces fit.
The stack, bottom to top
- Funscript — a plain-text time-code file (
0:01 stroke to 80%, …) generated per video. Script sites and AI-script generators cover most popular VR content. - Player — MultiFunPlayer (Windows, free) loads scripts and drives hardware; alternatives: ScriptPlayer, XToys (browser).
- Connectivity hub — Intiface Central (Buttplug.io) speaks to nearly every BLE toy; MultiFunPlayer talks to OSR platforms natively and bridges via Intiface for the rest.
- Hardware — see below.
Hardware tiers
| Tier | Hardware | Cost | Notes |
|---|---|---|---|
| Plug & play | The Handy | ~$250 | The default. Script support is first-class, firmware updates frequent |
| Plug & play (alt) | Kiiroo Keon | ~$249 | Robust build; script support via converters/Feel Connect |
| Enthusiast | OSR2 (2-axis) / SR6 (6-axis) | DIY $200–500 | Open source, dramatically better motion, requires assembly & tuning |
| Around it | Lovense ecosystem toys, bHaptics vest | varies | Secondary channels; all Intiface-compatible |
The doll's role
The stroker handles sync; the doll handles everything else. The common enthusiast arrangement: VR video with script-synced Handy on the desk side, doll positioned for the tactile majority of the session, MR overlay tying the visuals together. The script sync covers penetration scenes; the doll covers the rest — which is why the combination outperforms either alone.
Getting started in 30 minutes
- Install Intiface Central + MultiFunPlayer.
- Pair your device (BLE) in Intiface; select it in MFP.
- Download a funscript for a video you own; drag both into MFP; press play.
- Tune speed/limit in the device app — start at 50% and calibrate.
Common failures
- Script drift → your video is a different edit than the script's source; re-download matching script.
- Bluetooth dropouts → USB-BLE interference; use the official dongle, front USB port, away from USB 3.0.
- OSR "jitter" → underpowered PSU; the SR6 wants a dedicated 12V supply.