Precise position moves, continuous rotation, and a live position readout — the browser as a motor controller.
Drive a stepper motor from the browser with Pardalote. Demonstrates
accel-limited position moves, continuous rotation, live position readout,
and the done completion event.
attach4wire below)Wiring for a STEP/DIR driver:
| Driver pin | Arduino |
|---|---|
| STEP | pin 2 (default — change it in the page's Wiring row) |
| DIR | pin 3 (default) |
| EN | pin 4 (default) — optional, active-LOW on most drivers; −1 = none |
| GND | shared ground with the Arduino |
Set microstepping with the driver's MS pins as usual, then tell the JS side
how many steps that makes per revolution with setStepsPerRev().
Install the AccelStepper library (Arduino IDE → Manage Libraries), then upload File → Examples → Pardalote → stepper-motor. Note the IP address the board reports (LED matrix on UNO R4, Serial Monitor on ESP32).
This is a tool — it works out of the box, no code editing:
index.html in a browser.The browser remembers your IP, wiring, and motion profile, so next visit it reconnects with one click. Every stepper feature has a control row — position and timed moves, continuous spin, torque on/off, soft limits, limit switches, and the homing routine — with a live dial and a call log underneath.
setLimits(-6400, 6400)) are enforced on the Arduino — the
board clamps every target, so the browser (or an LLM driving it) can't send
the motor past the set range.done fires when a position move completes. await arduino.x.moveTo(n).whenDone()
resolves at the same moment — handy for sequencing moves.