Skip to main content
The visual modality is the default and most familiar form of bilateral stimulation. Rivet’s Workspace renders the visual stimulus directly on the client’s device — not screen-shared from yours. That matters: sharing a 60-fps animation through a 15–30 fps video stream produces the well-known “lightbar tear” artifact every paid EMDR platform avoids by rendering on the client side. Your client sees smooth motion at their device’s native frame rate.
The visual speed is hard-capped at 2.0 Hz in three places — your device, the client’s device, and Rivet’s server. The cap cannot be raised. See Photosensitive epilepsy safety.

Stimulus shapes

Five shapes, all drawn natively on the canvas — no external SVG or PNG assets, no network fetch at runtime.
ShapeDefault forNotes
DotClassic modeA solid filled circle. Maximum clinical familiarity — the Shapiro standard stimulus.
ButterflyEMDR 2.0 modeA symmetric two-wing silhouette. Recognizable to EMDR-trained therapists as the butterfly-hug-adjacent shape (Artigas & Jarero 2014).
FlameA soft tapered shape with a candle-flame outline. Useful for clients who report the dot feels too clinical.
StarA five-point star with sharper edges and more visual texture.
SquareA clean geometric for clients who prefer neutral and non-symbolic shapes.
All shapes render at the same configured pixel size and color regardless of which one you choose. The shape is a stylistic preference, not a clinical parameter.

Motion paths

Six paths control the trajectory of the stimulus across the canvas.
  • Horizontal — left to right oscillation. The default and most clinically familiar pattern. Matches the eye movement Shapiro’s original protocol used.
  • Vertical — top to bottom oscillation. Useful for clients who report visual fatigue on horizontal or who track vertical more comfortably.
  • Diagonal ↗ — bottom-left to top-right.
  • Diagonal ↘ — top-left to bottom-right.
  • Circular — continuous circular orbit around the center of the canvas.
  • Figure 8 — figure-eight loop.
The diagonals, circular, and figure-8 paths are options for clients who report habituation on a single axis. Clinical norm is horizontal; the others are tools to keep in your back pocket.

Speed

The rate slider runs from 0.3 Hz to 2.0 Hz. The values you’ll reach for most often:
RateUse case
0.3 – 0.7 HzInitial Phase 2 testing; clients reporting visual overwhelm at higher rates
1.0 HzClassic EMDR (Shapiro standard) baseline
1.2 – 1.8 HzEMDR 2.0 working range (de Jongh / Matthijssen published range)
1.5 HzEMDR 2.0 default
2.0 HzUpper edge of clinical norm and the hard safety cap
The 2.0 Hz cap is enforced because sustained visual flicker above ~3 Hz can trigger photosensitive seizures in susceptible individuals (WCAG flicker guideline). 2.0 Hz sits comfortably below that threshold and also stays within EMDR clinical practice norms — every published EMDR and EMDR 2.0 protocol stays at or below 2 Hz.

Size

The stim-size slider runs from 16 to 48 px. Default is 32 px. This is the pixel size of the stimulus on the client’s canvas, independent of their screen size. The canvas itself scales to fill the client’s viewport, so a 32-px butterfly looks the same physical size on a phone, a tablet, and a laptop relative to the viewport edge — not relative to the absolute screen. Larger sizes (40–48 px) read well on phones; smaller sizes (16–24 px) suit desktop screens at typical viewing distance.

Color

The default stimulus color is Rivet’s punch indigo (#5263E5) on a dark backdrop, which gives high contrast and reads well across screen calibrations. The color is held as a hex value in the BLS configuration and applies to whichever stimulus shape you’ve chosen.

Auto-vary

A toggle in the Configure modal. When on, the renderer applies small modulations over the duration of a set:
  • Speed varies by ±10% on a 4-second sine LFO
  • Size varies by ±15% on a 3-second sine LFO
  • Brightness varies by ±10% on a 5-second sine LFO
All modulations stay strictly inside the clinical bounds — auto-vary cannot push the speed above 2.0 Hz, the size above 48 px, or the color outside its defined range. Rationale: monotonous stimulation lets working memory habituate. Mild variation keeps the dual-task engaging. Grounded in Engelhard / Littel working-memory taxation research. Default is off in both modes. Turn it on for sets where you want a less predictable visual envelope.

What runs where

The visual stimulus runs on the client’s device, driven by a small configuration Rivet sends over the same connection as the call. When you change the rate, the path, or the shape, the new configuration arrives and the renderer picks it up on the next frame — no restart, no reload. If the connection drops mid-set, BLS pauses automatically on the client. BLS never auto-resumes when the connection recovers — you have to explicitly restart. This is deliberate, so the client is never left with unobserved stimulation during a reconnection.

Auditory bilateral stimulation

The audio modality — eight sound presets, L↔R panning, frequency, and volume.

Backgrounds and scenes

Eight gradient scenes and eight photo backdrops to settle the visual field behind the stimulus.

Photosensitive epilepsy safety

The 2.0 Hz hard cap, the first-use warning modal, what to screen for.