Skip to content

Commit

Permalink
Update list of tags and move to enum (#87)
Browse files Browse the repository at this point in the history
* Update RSCP tags and move to enum
* Add script to automatically generate RscpTag Enum
* RscpType, RscpError, PowermeterType as Enum
  • Loading branch information
eikowagenknecht authored Oct 11, 2023
1 parent 09f215a commit fd7bd95
Show file tree
Hide file tree
Showing 7 changed files with 4,502 additions and 2,620 deletions.
54 changes: 29 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,14 @@ Python API for querying an [E3/DC](https://e3dc.de/) systems
This is supported either directly via RSCP connection or through the manufacturer's portal. The RSCP implementation has currently the most capabilities.

In order to use it you need:

- Your user name
- Your password
- The IP address of the E3/DC system
- The RSCP Password (encryption key), as set on the device under Main Page -> Personalize -> User profile -> RSCP password

Alternatively, for a web connection, you need:

- Your user name
- Your password
- The serial number of the system, which can be found when logging into the E3/DC webpage.
Expand All @@ -37,7 +39,7 @@ This library assumes, that there is one inverter installed and the root power me

For any other configurations, there is an optional `configuration` object that can be used to alter the defaults:

```
```python
{
"pvis": [
{
Expand Down Expand Up @@ -86,6 +88,7 @@ print(e3dc.get_pvi_data())
### poll() return values

Poll returns a dictionary like the following:

```python
{
'autarky': 100,
Expand All @@ -107,23 +110,23 @@ Poll returns a dictionary like the following:

### Available methods

* `poll()`
* `get_system_info()`
* `get_system_status()`
* `poll_switches()`
* `get_idle_periods()`
* `set_idle_periods()`
* `get_db_data()`
* `get_battery_data()`
* `get_batteries_data()`
* `get_pvi_data()`
* `get_pvis_data()`
* `get_powermeter_data()`
* `get_powermeters_data()`
* `get_power_settings()`
* `set_power_limits()`
* `set_powersave()`
* `set_weather_regulated_charge()`
- `poll()`
- `get_system_info()`
- `get_system_status()`
- `poll_switches()`
- `get_idle_periods()`
- `set_idle_periods()`
- `get_db_data()`
- `get_battery_data()`
- `get_batteries_data()`
- `get_pvi_data()`
- `get_pvis_data()`
- `get_powermeter_data()`
- `get_powermeters_data()`
- `get_power_settings()`
- `set_power_limits()`
- `set_powersave()`
- `set_weather_regulated_charge()`

See the full documentation on [ReadTheDocs](https://python-e3dc.readthedocs.io/en/latest/)

Expand Down Expand Up @@ -162,13 +165,14 @@ One limitation of the package concerns the implemented RSCP methods. This projec

## Projects using this library

* [e3dc-rest](https://github.com/vchrisb/e3dc-rest): a simple REST API to access an E3/DC system
* [e3dc-to-mqtt](https://github.com/mdhom/e3dc-to-mqtt): publish E3/DC data via MQTT
* [weewx-photovoltaics](https://github.com/roe-dl/weewx-photovoltaics): Extension to WeeWX for processing data of the photovoltaics system E3/DC
- [e3dc-rest](https://github.com/vchrisb/e3dc-rest): a simple REST API to access an E3/DC system
- [e3dc-to-mqtt](https://github.com/mdhom/e3dc-to-mqtt): publish E3/DC data via MQTT
- [weewx-photovoltaics](https://github.com/roe-dl/weewx-photovoltaics): Extension to WeeWX for processing data of the photovoltaics system E3/DC

## Contribution

* open an issue before making a pull request
* note the E3/DC system you tested with and implementation details
* pull request checks will enforce code styling (black, flake8, isort)
* consider adding yourself to `AUTHORS`
- Open an issue before making a pull request
- Note the E3/DC system you tested with and implementation details
- Pull request checks will enforce code styling (black, flake8, flake8-docstrings, isort)
- Make sure to support Python versions >= 3.7
- Consider adding yourself to `AUTHORS`
Loading

0 comments on commit fd7bd95

Please sign in to comment.