Open App

Device Emulator

Preview and test your funscripts with the ScriptCompiler Device Emulator, featuring physics-based device simulation and real-time playback.

Overview

Device Emulator

The Device Emulator shows a visual simulation of how your script will perform on a physical device. It uses physics-based calculations to accurately represent device behavior, including acceleration and velocity limits.

Use the emulator to preview your scripts without needing actual hardware.

Execution Modes

The execution mode selector in the timeline header controls how your script is executed during playback. There are four modes:

Mode Behavior
Off No script execution. Playback runs without sending commands to any device or emulator.
Emulator Execute on the Device Emulator only. The emulator panel appears and simulates device movement.
Device Execute on a connected device only. Requires a device to be paired and connected.
Both Execute on both the emulator and the connected device simultaneously. Useful for comparing simulated and real behavior.

Your selected execution mode is saved and restored between sessions. Modes that require a device or emulator are disabled when those are not available.

Opening the Emulator

The Device Emulator is accessed from the Tools Panel or the left side of the editor:

  1. Click the Device Emulator button in the Tools Panel
  2. The emulator appears in the main content area
  3. Start playback to see the simulation

Device Profiles

The emulator includes profiles for different devices:

Device Stroke Speed Range Acceleration
Handy 96mm 32-350 mm/s 2000 mm/s squared
Keon 75mm 20-200 mm/s 1500 mm/s squared

Select the profile matching your target device for accurate simulation.

OSR / SR6 (Multi-Axis)

The OSR / SR6 profile previews multi-axis scripts in a 3D view, playing the positional axes (stroke, surge, sway, twist, roll, and pitch) together. The Handy and Kiiroo KEON profiles preview the stroke axis only. Hiding an axis in the timeline's Axes panel mutes it on the emulator, so you can preview one axis at a time without removing the others. See Multi-Axis Scripts for details.

Physics Simulation

The emulator simulates real device physics:

  • Acceleration limits - Devices cannot instantly change direction; they must accelerate and decelerate
  • Velocity limits - Maximum speed the device can achieve
  • Position interpolation - Smooth movement between points
Instant Mode
Toggle physics off to see "ideal" positioning without device limits. This helps identify where your script may exceed device capabilities.

Understanding the Display

The emulator visual shows:

  • Position indicator - Current simulated position (0-100)
  • Motion bar - Visual representation of the stroker position
  • Velocity display - Current speed in mm/s

Tips

Compare with Physics On/Off

Toggle physics to see the difference between your intended script and what the device can actually achieve. Large differences indicate sections that may not play back accurately.

Watch for Red in Overview

Red sections in the Script Overview often correlate with movements the emulator struggles to follow. Use both tools together.

Test at Different Speeds

Play at different speeds to see how the physics simulation responds. Slower playback may reveal issues not visible at normal speed.