{"id":15672179,"url":"https://github.com/dacarson/pentair-exporter","last_synced_at":"2025-10-19T01:41:54.369Z","repository":{"id":153993376,"uuid":"631348409","full_name":"dacarson/pentair-exporter","owner":"dacarson","description":"Export Pentair pool status to Influx DB so that it can be graphed with Grafana","archived":false,"fork":false,"pushed_at":"2023-10-05T22:51:04.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T10:28:58.316Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/dacarson.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2023-04-22T18:31:42.000Z","updated_at":"2023-04-22T18:49:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"67489874-5226-4d82-9ae3-f19eaf4be237","html_url":"https://github.com/dacarson/pentair-exporter","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/dacarson/pentair-exporter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacarson%2Fpentair-exporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacarson%2Fpentair-exporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacarson%2Fpentair-exporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacarson%2Fpentair-exporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dacarson","download_url":"https://codeload.github.com/dacarson/pentair-exporter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacarson%2Fpentair-exporter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261480321,"owners_count":23164887,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-10-03T15:22:18.037Z","updated_at":"2025-10-19T01:41:54.279Z","avatar_url":"https://github.com/dacarson.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n![Github License](https://img.shields.io/github/license/dacarson/WeatherFlowApi) \n\n# pentair-exporter\n\n## Description\nExport Pentair pool status to Influx DB so that it can be graphed with Grafana. To be run as a cron job.\n\nUses [screenlogicpy](https://github.com/dieselrabbit/screenlogicpy) python script to access the Pentair pool data.\n\nAs `screenlogicpy` creates deeply nested JSON objects and Influx DB only handles single depth Json objects, the objects that I am interested in are flattened in the function `publish_pentair_data`.\nThe following objects are created:\n* Object for each **body** of water, eg Pool and Spa. The body objects contain Last_Temperature, Heat_Mode, Heat, Heat_Set_Point and Cool_Set_Point. For Heat_Mode, see enums defined in `screenlogicpy`\n* Object for each **pump**. The pump object contains GPM_Now, RPM_Now and Watts_Now\n* **Sensors** object, which contains each sensor and value\n* **Circuits** object, which contains each configured circuit and value\n\n## Usage\n```\nusage: pentair-exporter.py [-h] [-r] [--influxdb] [--influxdb_host INFLUXDB_HOST] [--influxdb_port INFLUXDB_PORT] \n                        [--influxdb_user INFLUXDB_USER] [--influxdb_pass INFLUXDB_PASS] [--influxdb_db INFLUXDB_DB] \n                        [-v]\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -r, --raw             print json data to stddout\n  --influxdb            publish to influxdb\n  --influxdb_host INFLUXDB_HOST\n                        hostname of InfluxDB HTTP API (default: localhost)\n  --influxdb_port INFLUXDB_PORT\n                        port of InfluxDB HTTP API (default: 8086)\n  --influxdb_user INFLUXDB_USER\n                        InfluxDB username\n  --influxdb_pass INFLUXDB_PASS\n                        InfluxDB password\n  --influxdb_db INFLUXDB_DB\n                        InfluxDB database name (default: pentair)\n  -v, --verbose         verbose mode - show threads\n  ````\n\nTo configure as a cron job, `crontab -e`.\n\nRecommend to run every 1 minutes, to not overload the controller.\n\n `* * * * * /usr/bin/python3 /home/pi/pentair-exporter/pentair-exporter.py  --influxdb --influxdb_user logger --influxdb_pass pass`\n  \n  ## License\n\nThis content is licensed under [MIT License](https://opensource.org/license/mit/)\n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdacarson%2Fpentair-exporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdacarson%2Fpentair-exporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdacarson%2Fpentair-exporter/lists"}