← Back to Settings

Hydros Cloud Sensor Setup Beta

ReefMind integrates Hydros (CoralVue) as a read-only shared tank source. Customers share their tank/controller with reefmind@reefmind.ai; ReefMind verifies delegated access and pulls supported live readings without asking for the customer’s Hydros password.

Customer setup steps

  1. Open the Hydros/CoralVue app and select the tank/controller to connect.
  2. Open that tank’s sharing/users area.
  3. Invite reefmind@reefmind.ai with view/read-only access.
  4. In ReefMind, choose Hydros during onboarding, or open Settings → My Tanks → Hydros beta.
  5. Enter the Hydros account email that owns the shared tank. This is a non-secret lookup key so ReefMind can pick the correct shared controller from reefmind@reefmind.ai.
  6. Select the matching ReefMind tank and click Verify Hydros Share.
  7. If multiple Hydros controllers are shared, use the advanced Grant ID / Thing Name fields only when provided by support.

If verification succeeds, Dashboard vitals and history show new readings using source/provenance hydros.

What ReefMind uses

Read-only boundary: the adapter fetches and normalizes Hydros live status/readings only. There are no Hydros write/control routes.

Sensor mapping behavior

Hydros can return generic channels and output states. ReefMind handles this conservatively:

Troubleshooting

Share not found / no devices visible

Confirm the tank/controller was shared with exactly reefmind@reefmind.ai, then tap Verify Hydros Share again. If more than one controller is shared, support may provide a Grant ID or Thing Name.

401 / 403 Unauthorized

The delegated ReefMind Hydros credential may need refresh, or the share was revoked.

Channel appears raw/unmapped

The Hydros payload did not include a recognized kind/unit. Keep it visible as unknown until a device-confirmed mapping is added.

Operational notes

{
  "provider": "hydros",
  "enabled": true,
  "state": "active",
  "delegatedShare": true,
  "credentialRef": "gcp-secret:reefmind-hydros-delegated-creds",
  "externalDeviceId": "thingName"
}