Stimulus shapes
Five shapes, all drawn natively on the canvas — no external SVG or PNG assets, no network fetch at runtime.| Shape | Default for | Notes |
|---|---|---|
| Dot | Classic mode | A solid filled circle. Maximum clinical familiarity — the Shapiro standard stimulus. |
| Butterfly | EMDR 2.0 mode | A symmetric two-wing silhouette. Recognizable to EMDR-trained therapists as the butterfly-hug-adjacent shape (Artigas & Jarero 2014). |
| Flame | — | A soft tapered shape with a candle-flame outline. Useful for clients who report the dot feels too clinical. |
| Star | — | A five-point star with sharper edges and more visual texture. |
| Square | — | A clean geometric for clients who prefer neutral and non-symbolic shapes. |
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.
Speed
The rate slider runs from 0.3 Hz to 2.0 Hz. The values you’ll reach for most often:| Rate | Use case |
|---|---|
| 0.3 – 0.7 Hz | Initial Phase 2 testing; clients reporting visual overwhelm at higher rates |
| 1.0 Hz | Classic EMDR (Shapiro standard) baseline |
| 1.2 – 1.8 Hz | EMDR 2.0 working range (de Jongh / Matthijssen published range) |
| 1.5 Hz | EMDR 2.0 default |
| 2.0 Hz | Upper edge of clinical norm and the hard safety cap |
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
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.Related articles
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.
