{"id":45768133,"url":"https://github.com/funkadelic/ha-acwd","last_synced_at":"2026-04-02T15:39:14.537Z","repository":{"id":328059548,"uuid":"1110354997","full_name":"funkadelic/ha-acwd","owner":"funkadelic","description":"A Home Assistant HACS integration that provides Alameda County Water District (https://www.acwd.org/) water usage data to the Home Assistant Energy Dashboard","archived":false,"fork":false,"pushed_at":"2026-03-03T09:17:47.000Z","size":192,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-03T11:22:16.443Z","etag":null,"topics":["hacs","hacs-integration","home-assistant","iot"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/funkadelic.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-05T04:30:27.000Z","updated_at":"2026-03-03T07:49:46.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/funkadelic/ha-acwd","commit_stats":null,"previous_names":["funkadelic/ha-acwd"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/funkadelic/ha-acwd","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkadelic%2Fha-acwd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkadelic%2Fha-acwd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkadelic%2Fha-acwd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkadelic%2Fha-acwd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/funkadelic","download_url":"https://codeload.github.com/funkadelic/ha-acwd/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkadelic%2Fha-acwd/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30204113,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T19:07:06.838Z","status":"ssl_error","status_checked_at":"2026-03-06T18:57:34.882Z","response_time":250,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacs","hacs-integration","home-assistant","iot"],"created_at":"2026-02-26T03:23:09.380Z","updated_at":"2026-04-02T15:39:14.513Z","avatar_url":"https://github.com/funkadelic.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build][build-badge]][build-link]\n[![Codecov][coverage-badge]][coverage-link]\n[![Release][release-badge]][release-link]\n[![HACS][hacs-badge]][hacs-link]\n[![Home Assistant][ha-badge]][ha-link]\n\n# ha-acwd\nACWD Water Usage Integration for Home Assistant\n\n**ha-acwd** is an open-source Python integration that imports water usage data from Alameda County Water District into Home Assistant for use in automation and monitoring.\n\nIt is distributed as a HACS-compatible custom integration and supports the Home Assistant Energy Dashboard.\n\n[![Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=funkadelic\u0026repository=ha-acwd\u0026category=integration)\n\n## How it works\n\nThe integration periodically fetches and normalizes usage data from the ACWD portal, exposing it as Home Assistant entities for automation and monitoring.\n  \n## Background\n\nAfter ACWD deployed [AMI (Advanced Metering Infrastructure) smart meters](https://en.wikipedia.org/wiki/Smart_meter#Advanced_metering_infrastructure), third-party solutions like Flume Water lost direct access to real-time water usage data. This integration bridges that gap by importing hourly water usage directly from the ACWD portal into Home Assistant.\n\n**What you get:**\n\n- ✅ Hourly water usage data in the Energy Dashboard\n- ✅ Regular updates throughout the day (ACWD updates in batches 4x daily)\n- ✅ Historical statistics and long-term tracking\n- ⚠️ Not real-time like Flume (data reflects ACWD portal batch update schedule)\n\n![Energy Dashboard Water Consumption](images/ha_energy_dashboard_water_consumption_graph.png)\n\n## Quick Start\n\n1. **Install via HACS** (see [INSTALLATION.md](INSTALLATION.md) for detailed instructions)\n2. **Add Integration** in Settings → Devices \u0026 Services\n3. **Enter your ACWD portal credentials** (stored securely in Home Assistant's encrypted credential storage)\n4. **Add to Energy Dashboard** - Use the \"ACWD Water Hourly Usage - Meter xxxxxxxxx\" statistic\n\n## Available Entities\n\n| Entity | Description | Unit |\n|--------|-------------|------|\n| Current Cycle Usage | Water used in current billing cycle | Gallons |\n| Current Cycle Projected | Projected total for current billing cycle | Gallons |\n| Last Billing Cycle | Previous billing cycle usage | Gallons |\n| Average Usage | Historical average per billing cycle | Gallons |\n| Highest Usage Ever | Peak usage record | Gallons |\n\nThe integration updates **every hour** and automatically imports **hourly water usage data**, providing water usage breakdown in the Energy Dashboard.\n\n## Installation\n\nSee [INSTALLATION.md](INSTALLATION.md) for complete setup instructions including:\n\n- HACS installation (recommended)\n- Manual installation\n- Energy Dashboard configuration\n- Hourly data import (automatic \u0026 manual)\n- Troubleshooting\n\n## Key Features\n\n- **Automatic Batch Import**: Integration polls hourly and imports data as ACWD releases it in 4 daily batches (7-8 AM, 12-1 PM, 5-6 PM, 8-9 PM)\n- **Yesterday's Data by Morning**: Complete 24-hour usage for yesterday typically available by 8 AM daily (based on ACWD's batch schedule)\n- **Automatic Initial Import**: On first installation, imports yesterday's complete hourly data for immediate feedback\n- **Manual Import Services**: Import historical data for any date range via Home Assistant services\n- **Energy Dashboard Integration**: Full compatibility with Home Assistant's Energy Dashboard\n- **Long-term Statistics**: Data stored in HA's statistics database for historical analysis\n- **15-Minute Interval Support**: Optional 15-minute data available via manual service (note: Energy Dashboard displays hourly granularity; 15-min data useful for custom cards, automations, and advanced analysis)\n- **Smart Duplicate Handling**: Statistics system automatically handles re-imports by replacing existing timestamps\n\n## Data Availability\n\n⚠️ **ACWD updates water usage data in batches throughout the day**, not continuously:\n\n**ACWD Portal Update Schedule:**\n\nACWD releases data in 4 batches per day (times are consistent within 1-hour windows):\n\n- **7:00-8:00 AM** - Yesterday's final 3 hours (9 PM - midnight) + Today's first 8 hours (midnight - 7 AM)\n- **12:00-1:00 PM** - Today's next 5 hours (8 AM - 12 PM)\n- **5:00-6:00 PM** - Today's next 5 hours (1 PM - 5 PM)\n- **8:00-9:00 PM** - Today's next 3 hours (6 PM - 8 PM)\n\n**What this means:**\n\n- Each day's data arrives in 4 batches totaling 21 hours (midnight - 8 PM)\n- The final 3 hours (9 PM - midnight) appear the next morning at 7-8 AM\n- Yesterday's complete 24-hour usage typically available by 8 AM daily (based on ACWD's schedule)\n- The integration checks hourly and automatically imports new data as ACWD releases it\n- Example: At 3 PM Tuesday, you'll see Monday's complete 24 hours + Tuesday's first 13 hours (midnight - noon)\n\n## Contributing\n\nFound a bug or want to add a feature? Pull requests welcome!\n\n## Disclaimer\n\nThis is an unofficial tool and is not affiliated with or endorsed by ACWD. Use at your own risk.\n\n[build-badge]: https://github.com/funkadelic/ha-acwd/actions/workflows/tests.yml/badge.svg\n[coverage-badge]: https://img.shields.io/codecov/c/github/funkadelic/ha-acwd?logo=codecov\n[release-badge]: https://img.shields.io/github/v/release/funkadelic/ha-acwd\n[hacs-badge]: https://img.shields.io/badge/HACS-Custom-orange\n[ha-badge]: https://img.shields.io/badge/Home%20Assistant-2024.2+-blue\n\n[build-link]: https://github.com/funkadelic/ha-acwd/actions/workflows/tests.yml\n[coverage-link]: https://codecov.io/gh/funkadelic/ha-acwd\n[release-link]: https://github.com/funkadelic/ha-acwd/releases\n[hacs-link]: https://hacs.xyz\n[ha-link]: https://www.home-assistant.io\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkadelic%2Fha-acwd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffunkadelic%2Fha-acwd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkadelic%2Fha-acwd/lists"}