Help

Support

Real answers from the people who built it. Most problems are one of the eight below, and you can fix those yourself in a minute — but if you would rather just ask, ask.

  • Turnaround We reply within 1–2 business days, and often the same day.
  • Email only We are a small team, so there is no phone queue and no live chat. That is also why the answer you get is written by someone who can read the code.
  • Nothing is lost meanwhile A sensor that has stopped reporting is not losing data it already sent: everything already stored stays yours and stays exportable.

Before you write

Send these three things and we can usually answer in one reply

  1. 01 Identity

    The device code

    mml_ plus 12 characters, e.g. mml_b65f9e60a0ed. Find it under the sensor's name in the first column of Devices, or on the sensor's own page under Connection detailsDevice code (click it to copy). It is also printed on the hardware label, which is what to use if you cannot log in at all.

  2. 02 Radio

    The connection type

    Wi-Fi/HTTPS, MQTT or LoRaWAN. It is the Connection column on Devices, and it is repeated in the grey line under the sensor's name on its own page.

  3. 03 Timing

    The last-seen time

    The Last seen column on Devices (“32 min ago”, “1 hr ago”), also in that same grey line on the sensor's page. Knowing whether it stopped an hour ago or last Tuesday changes the answer completely.

And never these

Never send us your API secret, device signing key, claim secret or password. We do not need them, we only ever store their hashes, and no support request requires one.

Self-serve

Try this first

01My sensor shows offline, or “Last seen” is stuck

We raise a Sensor offline alert once a device has not reported for longer than your offline window — 3 hours by default. Check, in this order:

  1. Power. Open the sensor on your dashboard and look at the Battery tile. We raise a Low sensor battery warning below 3.3 V (it clears again at 3.5 V). Check this first — a fading pack tends to produce ragged gaps rather than a clean stop, which is easy to misread.
  2. Radio. Wi-Fi sensors need the 2.4 GHz band and a router that has not changed its password; LoRaWAN sensors need a gateway still in range on The Things Network.
  3. Clock. A sensor whose clock has drifted more than 5 minutes from real UTC is rejected on every upload, forever, until it re-syncs time (NTP). This is the single most common cause of “it was working, now nothing”.

If the sensor is powered, in range and time-synced but nothing arrives, work through “Readings stopped arriving” next.

02Readings stopped arriving (but the sensor is online)

Our ingest endpoint refuses a reading rather than storing something wrong. It answers with a specific code, and if you can see your sensor's serial log the code tells you the fix:

  • 401 — wrong API key, wrong HMAC signature, or a timestamp outside the 5-minute window. Re-sync the clock first; if that is fine, rotate the key (below) and re-flash.
  • 402 — the account has no active subscription, so devices are not entitled to report. A freshly claimed sensor sits at pending until you subscribe. Fix it in Billing.
  • 429 — more than 30 readings per minute from one sensor. Lengthen the reporting interval; once every 5–15 minutes is plenty for lawn soil.
  • 422 — every metric in the payload was outside its plausible range, usually a wiring or unit mix-up (millivolts sent as volts, °F sent as °C).

To rotate the signing key: open the sensor from Devices, scroll to Connection details, and use Rotate device key. The new key and secret are shown once, and the sensor stays silent until you re-flash it with them — so have the device in front of you first.

03My device code or claim secret was rejected

Both values are printed on the sensor label (and on the box). They are two different strings — the device code looks like mml_ followed by 12 characters, and the claim secret is the separate code printed next to it. Copy each one exactly, including the mml_ prefix, with no trailing space.

  • “Could not claim this device” — we have no sensor with that device code. Almost always a mistyped character (0/O, 1/l) or a missing prefix.
  • “This device has already been claimed” — it is bound to an account already. Check Devices first; it may be on your account under a different name. If you bought it second-hand, the previous owner has to deactivate it and ask us to release it — we will not move a sensor off somebody's account just because a stranger asks, which is the same rule that stops someone doing it to you.
  • LoRaWAN: “TTN device ID already in use” — another sensor on our side already claims that The Things Network device ID. Pick the ID we show you on the setup screen; that is the exact value we match uplinks against.

The full three-step walkthrough is on How it works.

04Billing, invoices and receipts

Everything money-related lives in the secure Stripe portal: BillingOpen billing portal. From there you can download every invoice and receipt, update the card, switch between monthly and annual, or cancel.

Billing is per active sensor — $4.99 per device per month or $49 per device per year. Your subscription quantity tracks the number of active sensors automatically: adding one is prorated, deactivating one drops your next invoice. Hardware is a separate one-time charge and is never part of the subscription. See Pricing for the full breakdown and Terms §3–4 for billing and refunds.

If an invoice looks wrong, send us the invoice number from the portal — that is the fastest thing for us to reconcile.

05How do I cancel?
  • One sensor. DevicesDeactivate on that row (or Deactivate this sensor on the sensor's own page). Billing for it stops from your next invoice and it stops reporting. Its history stays exportable.
  • The whole subscription. BillingOpen billing portal → cancel. You keep access until the end of the period you have already paid for.
  • The whole account. AccountData & privacyDelete account. It asks for your password, cancels the subscription, and erases your data. This cannot be undone — export first if you want your readings. What survives, and for how long, is spelled out in Privacy.

You do not need to email us to cancel anything. Turning a deactivated sensor back on is the one thing that does need us.

06I can't log in
  • Forgot your password. Use Reset your password. The link we email is single-use and expires.
  • Never got the verification email. Check spam for a message from no-reply@monitormylawn.com, then request a fresh one from the verification screen. Our mail is transactional only — it is never a reply address, so writing back to it reaches nobody.
  • Lost your two-factor authenticator. There are no printed recovery codes yet, so this one needs us. Email system@monitormylawn.com from the address on the account; we verify ownership before we change anything about a login.

We will never email or call you to ask for your password, your 2FA code, or a device signing key. We could not use them anyway — we store only hashes, which is why a rotated key is shown exactly once and never again.

07I want my data out
  • One sensor's raw readings, as CSV. Open the sensor from DevicesConnection detailsDownload readings (CSV). Up to 730 days and 400,000 rows per download, in your own units, and roughly 10 seconds between downloads. If you hit the row cap the file says so on its last line — narrow the window with &from=YYYY-MM-DD&to=YYYY-MM-DD and pull it in slices. Deactivated sensors are still exportable.
  • The whole account, as JSON. AccountData & privacyExport my data — profile, devices, subscription, monthly usage and recent device events. Secrets are never included.
08Is it you, or is it me?

Our public health probe answers in one line: /api/health.php. {"status":"ok"} means the site and its database are up, so a sensor that has gone quiet is almost certainly something between your sensor and us — start with “My sensor shows offline”. "degraded", a 503, or no answer at all means it is on us; give it a few minutes and try again.

Still stuck?

Write to us with those three things.

Include the device code, the connection type and the last-seen time, and the reply comes back from someone who can read the code — normally in one message, not a thread.

  • Prefer a form?Contact reaches the same inbox and asks for the device ID up front.
  • Is it us?The health probe answers in one line, before you write anything.
  • CancellingYou never need us for that — it is one button in Billing.
  • Your dataCSV per sensor, JSON for the whole account, both self-serve from Account.