Skip to content

Web UI Reference

Daniel Frenkel edited this page Jul 24, 2026 · 1 revision

Web UI Reference

What every control in the built-in web panel (and in Home Assistant) does, with safe values. This documents the generic board firmware (valar-core); product firmwares like the Ropener add their own groups (e.g. a cover and a Schedule group) on top of these.

Control

Entity Meaning
Button 1 / Button 2 / Button 3 Live state of the three physical buttons. In the generic build they only report presses — behaviour (open/close/reset gestures) is added by product firmware such as the Ropener.

Setup

Entity Meaning
Motor Direction Normal / Reversed — flips which way the motor turns for positive moves. Persisted immediately, survives power loss. Use this instead of re-wiring the motor.

Motion Tuning

Entity Default Meaning
Speed 1500 Target velocity in microsteps/second. The firmware runs 8× microstepping (interpolated), so a standard 200-step motor is 1600 microsteps per revolution: 1600 ≈ 1 rev/s ≈ 60 RPM, the default 1500 ≈ 56 RPM.
Acceleration 1500 Ramp rate in microsteps/s². Lower = gentler starts/stops; higher = snappier but more likely to stall or skip under load.

StallGuard

Entity Default Meaning
IRUN (motor current) 25 Run current, 1–31. RMS current ≈ (IRUN+1)/32 × 1.92 A on the VAL boards' 100 mΩ sense resistors — the default 25 ≈ 1.56 A RMS. Start low (e.g. 8–12 for small motors) and raise it until you have the torque you need; more current = more heat (see Power Requirements). Hold current is zero — the motor freewheels at standstill.
SGTHRS (stall threshold) 100 0–255. Higher = more sensitive (stalls trigger earlier). See StallGuard Tuning for how to pick a value.
TCOOLTHRS 100 Speed gate for StallGuard: stall detection is only active when the motor is running faster than this threshold (TSTEP below this value). Prevents false stalls at very low speeds.

When a stall triggers, the generic firmware stops the motor and zeroes the position counter — the same mechanism products use for homing against a hard stop.

Diagnostics

Entity Meaning
SG_RESULT Live StallGuard load reading — lower = closer to stalling. Watch this while tuning; see StallGuard Tuning.
TSTEP Time between microsteps (lower = faster motion). Compare against TCOOLTHRS when tuning.
Firmware Version / Board What's flashed and which board it thinks it's on.
IP Address / Connected SSID / MAC Address / WiFi Signal Network diagnostics. The IP is handy when .local doesn't resolve.
Uptime / ESP Internal Temperature General health.
Update Firmware (GitHub) Pulls the newest released firmware for this build straight from GitHub and flashes it over the air. See OTA Updates.
Restart Reboots the board (does not lose settings).

Schedule (products with the scheduling mixin — e.g. Ropener)

Product builds that include the scheduling mixin get a Schedule group:

Entity Meaning
Schedule Enabled Master switch — OFF means nothing ever moves unattended.
Sun Schedule OFF = use the fixed Open/Close times; ON = follow sunrise/sunset instead.
Open Time / Close Time Daily fixed times (used when Sun Schedule is off).
Sun Open/Close Offset Minutes relative to sunrise/sunset (negative = before).
Latitude / Longitude Device location for the sun calculation.
Timezone POSIX TZ string, e.g. PST8PDT,M3.2.0,M11.1.0 or CET-1CEST,M3.5.0,M10.5.0/3.

Persistence

Speed, acceleration, IRUN, SGTHRS, TCOOLTHRS, motor direction, and all schedule settings are saved on the board and survive power loss and firmware updates.

Clone this wiki locally