{"id":13719313,"url":"https://github.com/wildmountainfarms/solarthing","last_synced_at":"2025-05-08T23:48:46.886Z","repository":{"id":39757735,"uuid":"195026020","full_name":"wildmountainfarms/solarthing","owner":"wildmountainfarms","description":"Monitors an Outback MATE, Renogy Rover - MPPT Charge Controller and EPEver Tracer. Integrates with Grafana, PVOutput and more!","archived":false,"fork":false,"pushed_at":"2024-12-22T23:14:22.000Z","size":15292,"stargazers_count":138,"open_issues_count":21,"forks_count":29,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-10T06:05:26.918Z","etag":null,"topics":["couchdb","crne-solar","dashboard","energy-monitor","modbus","outback-mate","packets","pvoutput","raspberry-pi","renogy","renogy-rover","slack","slack-bot","solar","solar-energy","solarthing","solcast"],"latest_commit_sha":null,"homepage":"https://solarthing.readthedocs.io","language":"Java","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/wildmountainfarms.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":"retrodaredevil"}},"created_at":"2019-07-03T09:49:26.000Z","updated_at":"2025-04-09T04:29:04.000Z","dependencies_parsed_at":"2023-12-18T02:01:30.246Z","dependency_job_id":"3e152977-df23-4dcf-873d-4e6f1807f9ae","html_url":"https://github.com/wildmountainfarms/solarthing","commit_stats":{"total_commits":1091,"total_committers":6,"mean_commits":"181.83333333333334","dds":0.06141154903758017,"last_synced_commit":"0abd8282fd1fe526c57501091ba18af7ef859fe9"},"previous_names":[],"tags_count":66,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wildmountainfarms%2Fsolarthing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wildmountainfarms%2Fsolarthing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wildmountainfarms%2Fsolarthing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wildmountainfarms%2Fsolarthing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wildmountainfarms","download_url":"https://codeload.github.com/wildmountainfarms/solarthing/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248357396,"owners_count":21090396,"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":["couchdb","crne-solar","dashboard","energy-monitor","modbus","outback-mate","packets","pvoutput","raspberry-pi","renogy","renogy-rover","slack","slack-bot","solar","solar-energy","solarthing","solcast"],"created_at":"2024-08-03T01:00:46.268Z","updated_at":"2025-05-08T23:48:46.868Z","avatar_url":"https://github.com/wildmountainfarms.png","language":"Java","funding_links":["https://github.com/sponsors/retrodaredevil"],"categories":["Renewable Energy"],"sub_categories":["Photovoltaics and Solar Energy"],"readme":"# SolarThing\n![SolarThing](other/docs/solarthing_logo.png \"SolarThing\")\n\n[![](https://img.shields.io/github/last-commit/wildmountainfarms/solarthing.svg)](https://github.com/wildmountainfarms/solarthing/commits/master)\n[![](https://img.shields.io/github/stars/wildmountainfarms/solarthing.svg?style=social)](https://github.com/wildmountainfarms/solarthing/stargazers)\n[![](https://img.shields.io/github/v/release/wildmountainfarms/solarthing.svg)](https://github.com/wildmountainfarms/solarthing/releases)\n[![](https://img.shields.io/github/release-date/wildmountainfarms/solarthing.svg)](https://github.com/wildmountainfarms/solarthing/releases)\n\nStores solar data in a database to view on Android, Grafana, or PVOutput\n\nView full documentation at https://solarthing.readthedocs.io/\n\nContents\n\n* [Supported Products](#supported-products)\n* [Features](#features)\n* [Viewing Your Data](#viewing-your-data)\n* [Supported Databases](#supported-databases)\n* [Screenshots and Examples](#screenshots-and-examples)\n\n## Supported Products\n* **Outback MATEs** (FX Inverter, MX/FM Charge Controller)\n* **Renogy Rover** (And other Renogy products) over modbus serial.\n  * Includes Rover, Rover Elite, Wanderer, Adventurer, Dual Input DCDC Charger, Rover Boost and possibly others\n  * Compatible with all [SRNE Solar](https://www.srnesolar.com) Charge Controllers (And rebranded products)\n  * Compatible with **Zenith Grape** Solar Charge Controller, **PowMr** MPPT Charge Controller, **RICH** SOLAR MPPT, **WindyNations TrakMax** MPPT\n* **EPEver Tracer**\n  * Includes the AN series and the TRIRON N series\n  * Possibly includes the BN series (untested)\n* DS18B20 Temperature Sensors and PZEM-003 and PZEM-017 Shunts\n\n## Quickstart\nReady to install? Use the [Quickstart](https://solarthing.readthedocs.io/en/latest/quickstart/install/index.html)!\n\n\n## Features\n* Supports **multiple types of solar products**.\n* Runs reliably **24-7**. Recovers from connection errors and has verbose logging features.\n* Fully customizable through JSON (**No programming experience required**).\n* Supports CouchDB, InfluxDB, local JSON file, and PVOutput exporting.\n  * Multiple databases can even be used at the same time!\n  * Packets are uploaded in parallel to multiple databases at the same time\n* Can [report CPU temperature](https://solarthing.readthedocs.io/en/latest/config/file/base-json/request/cpu-temperature.html).\n* Runs inside a Docker container\n\n\n## Viewing Your Data\n\n* Grafana (recommended)\n  * Use SolarThing Server (with CouchDB) alongside [Wild GraphQL Data Source](https://grafana.com/grafana/plugins/retrodaredevil-wildgraphql-datasource/)\n    * Documentation: https://solarthing.readthedocs.io/en/latest/quickstart/data/solarthing-server/index.html\n  * Alternatively, configure SolarThing to upload to InfluxDB for viewing of statistics in Grafana\n* [SolarThing Android](https://play.google.com/store/apps/details?id=me.retrodaredevil.solarthing.android)\n  * SolarThing Android connects directly to CouchDB to display data in a persistent notification\n* [PVOutput.org](https://pvoutput.org)\n  * Upload your data to CouchDB, then let SolarThing upload the data inside your database to PVOutput!\n\nIf you are wondering how to set up SolarThing to view your data, you can head here: https://solarthing.readthedocs.io/en/latest/quickstart/data/index.html\n\n## Supported Databases\n\n* CouchDB\n  * **Recommended** database and best supported database for SolarThing\n  * Used with [Wild GraphQL Data Source](https://grafana.com/grafana/plugins/retrodaredevil-wildgraphql-datasource/) to view data in Grafana\n  * Used with SolarThing Android to view data in the Android app\n  * Used as intermediate storage before data is aggregated and uploaded to PVOutput\n* InfluxDB\n  * Upload statistics to InfluxDB and view them in your visualization tool of choice (Grafana is an option)\n* REST API\n  * With the \"post\" database, all packets can be posted to a URL endpoint, useful for REST APIs\n\n\n## Screenshots and Examples\n\nYou can get data in [Grafana](https://github.com/grafana/grafana) via **CouchDB+SolarThing Server** or via InfluxDB (InfluxDB not recommended).\n\nGrafana is customizable. Rearrange graphs and make it how you want!\nPre-made Grafana dashboards are coming soon.\n\n![alt text](other/docs/grafana-screenshot-2024-04-21.png \"SolarThing with Grafana\")\n\n---\n\nPVOutput Wild Mountain Farms: [PVOutput System](https://pvoutput.org/intraday.jsp?sid=72206) and\n[PVOutput SolarThing Teams](https://pvoutput.org/listteam.jsp?tid=1528)\n\n---\n\nSolarThing Android: [GitHub](https://github.com/wildmountainfarms/solarthing-android)\n|\n[Google Play](https://play.google.com/store/apps/details?id=me.retrodaredevil.solarthing.android)\n\nSolarThing Android displays data in a persistent notification that updates at a configurable rate\n![alt text](other/docs/solarthing-android-notification-screenshot-1.jpg \"SolarThing Android Notification\")\n\u003chr/\u003e\n\n\n## Suggestions?\nIf you have suggestions on how to improve the documentation or have a feature request, I'd love to\nhear from you! \n[SolarThing Issues](https://github.com/wildmountainfarms/solarthing/issues)\nor\n[SolarThing Discussions](https://github.com/wildmountainfarms/solarthing/discussions)\n\nAny confusion you get while setting up SolarThing is something that can be improved upon.\nIf you need help, ask for help!\nThat way we can make the documentation clearer for everyone!\n\n---\n\n[![](https://img.shields.io/badge/author-Lavender%20Shannon-brightgreen.svg)](https://github.com/retrodaredevil)\n[![](https://img.shields.io/github/repo-size/wildmountainfarms/solarthing.svg)](#)\n[![](https://img.shields.io/github/languages/code-size/wildmountainfarms/solarthing.svg)](#)\n[![](https://img.shields.io/librariesio/github/wildmountainfarms/solarthing.svg)](https://libraries.io/github/wildmountainfarms/solarthing)\n[![](https://img.shields.io/github/commit-activity/m/wildmountainfarms/solarthing.svg)](#)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwildmountainfarms%2Fsolarthing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwildmountainfarms%2Fsolarthing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwildmountainfarms%2Fsolarthing/lists"}