Widgets / directory

Step

STEP

Increment and decrement control with fixed step size and optional send-delta mode.

At a glance

Default3 x 2
Minimum3 x 2
Resizeboth
Pinrequired
Interactiveyes

Behavior

  • The app keeps a local preview value to avoid jumpy repeats.
  • Useful for setpoints, motor speed trim and indexing values.
  • Can loop or clamp depending on min/max settings.

Firmware contract

Read either the absolute value or the delta depending on widget config.

On the app side this widget snaps to the 8-column square grid and uses both resizing. Its raw type is STEP and the matching icon token in the app is plus.forwardslash.minus.

Pin support: Typically virtual pins, but the app forwards the configured pinType as virtual/digital/analog.

Transmission: Single scalar payload. When isSendStep is enabled the widget sends the step delta instead of the absolute resulting value.

Canvas preview

docs.widget.preview
42
Step
stable
STATUS

Widget contract

PropertyValue
Raw typeSTEP
Default size3 x 2
Minimum size3 x 2
Resize modeboth
Pin requirementrequired
Pin supportTypically virtual pins, but the app forwards the configured pinType as virtual/digital/analog.
Interactiveyes
TransmissionSingle scalar payload. When isSendStep is enabled the widget sends the step delta instead of the absolute resulting value.

Allowed pin families

Typically virtual pins, but the app forwards the configured pinType as virtual/digital/analog.

Transport path

Single scalar payload. When isSendStep is enabled the widget sends the step delta instead of the absolute resulting value.

Operational limits

The current app implementation clamps to min/max before sending

Configuration surface

  • step sets increment size
  • isArrowsOn controls arrow visibility for the chrome
  • showValueOn enables the central readout
  • isLoopOn is stored by the model even if the current app still clamps in the main interaction path

Limits and caveats

  • The current app implementation clamps to min/max before sending
  • Small step sizes still get rounded when serialized to integer strings

Protocol and implementation notes

  • When send-step mode is on, firmware receives the delta, not the resulting absolute value.
  • Small fractional steps still collapse to integer-oriented serialization in the current app flow.

Firmware example

A minimal pattern that matches how this widget usually talks to the board.

step.ino
BLYNK_WRITE(V7) {  int target = param.asInt();  setPoint = constrain(target, 0, 100);}

Layout notes

Canvas footprint

3 x 2

Default footprint in the Plynx canvas before user resizing.

Resize floor

3 x 2

The minimum size accepted by the app during drag-resize.

Interaction model

Live input

Whether the user edits state directly or only reads it.

Related widgets