Authenticate to an OpenSprinkler controller with its MD5-hashed device password and read controller status

domain: opensprinkler.github.io · 5 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Compute the lowercase MD5 hash of the controller's plaintext device password (factory default is "opendoor"); every API call authenticates via this hash in the pw query parameter — there is no token or OAuth.
  2. Call GET http://<os-ip>/jc?pw=<md5> to read controller variables: en (enabled), sbits (per-zone on/off bitfield), rd/rdst (rain delay state), sn1/sn2 (sensor states), and ps (per-station program status).
  3. Call GET http://<os-ip>/jn?pw=<md5> for station names/attributes, and GET /js?pw=<md5> for a simple sn[] on/off array plus nstations.
  4. Get everything in one round trip with GET /ja?pw=<md5>, which combines /jc, /jo, /jn, /js, and /jp.
  5. To rotate the device password, send GET /sp?pw=<old_md5>&npw=<new_md5>&cpw=<new_md5>; npw and cpw must match exactly or the controller returns error code 3 (Mismatch).

Known gotchas

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans