Type: | Package |
Title: | Collect your Microinverter Data |
Version: | 0.4.0 |
Description: | Collect and normalize local microinverter energy and power production data through off-cloud API requests. Currently supports 'APSystems', 'Enphase', and 'Fronius' microinverters. |
License: | MIT + file LICENSE |
BugReports: | https://github.com/CamembR/microinverterdata/issues |
URL: | https://camembr.github.io/microinverterdata/, https://github.com/CamembR/microinverterdata |
Encoding: | UTF-8 |
Depends: | R (≥ 4.1.0) |
Imports: | cli, dplyr, glue, httr2 (≥ 1.0.0), purrr, rlang, tidyr, units |
RoxygenNote: | 7.3.2 |
Suggests: | httptest2, knitr, lubridate, pins, rmarkdown, tibble, tsibble, imputeTS, testthat (≥ 3.0.0) |
Config/testthat/edition: | 3 |
VignetteBuilder: | knitr |
NeedsCompilation: | no |
Packaged: | 2025-05-22 10:38:51 UTC; creg |
Author: | Christophe Regouby [aut, cre, cph] |
Maintainer: | Christophe Regouby <christophe.regouby@free.fr> |
Repository: | CRAN |
Date/Publication: | 2025-05-22 10:50:02 UTC |
Get inverter device alarms
Description
Get inverter device alarms
Usage
get_alarm(device_ip, model = "APSystems")
Arguments
device_ip |
list or vector of devices IP address |
model |
the inverter device model. Currently only "APSystems" is supported. |
Value
a dataframe with one row of device information per 'device_id' answering the query.
Examples
## Not run:
get_alarm(c("192.168.0.12", "192.168.0.230"))
## End(Not run)
Get inverter device information
Description
Get inverter device information
Usage
get_device_info(device_ip, model = "APSystems")
Arguments
device_ip |
list or vector of devices IP address |
model |
the inverter device model. Currently only "APSystems" is supported. |
Value
a data-frame with one row of device information per 'device_id' answering the query.
Examples
## Not run:
get_device_info(c("192.168.0.12", "192.168.0.230"))
## End(Not run)
Get inverter output data
Description
Get inverter output data
Usage
get_output_data(device_ip, model = "APSystems", ...)
Arguments
device_ip |
list or vector of devices IP address |
model |
the inverter device model. Currently only "APSystems" "Enphase-Envoy", "Enphase-Energy" and "Fronius" are supported. |
... |
additional parameters passed to the inverter if needed. |
Value
a dataframe with one row of device output power and energy per 'device_id' / 'inverter' combination.
Examples
## Not run:
get_output_data(c("192.168.0.12", "192.168.0.230"))
## End(Not run)
AP System single device query
Description
AP System single device query
Usage
query_ap_device(device_ip, query)
Arguments
device_ip |
IP address or name of the device |
query |
the API query string |
Value
a data-frame with a 'device_id' column and the '$data' turned into as many columns as expected
See Also
Other device queries:
query_ap_devices()
,
query_enphaseenergy_device()
,
query_enphaseenvoy_device()
,
query_fronius_device()
,
query_fronius_devices()
Examples
## Not run:
query_ap_device(device_ip = "192.168.0.234", query = "getDeviceInfo")
## End(Not run)
AP System multi-device query
Description
AP System multi-device query
Usage
query_ap_devices(device_ip, query)
Arguments
device_ip |
list or vector of each device IP address or name |
query |
the API query string |
Value
a data-frame with a 'device_id' column and the '$Body$Data' turned into as many columns as expected
See Also
Other device queries:
query_ap_device()
,
query_enphaseenergy_device()
,
query_enphaseenvoy_device()
,
query_fronius_device()
,
query_fronius_devices()
Examples
## Not run:
query_ap_devices(device_ip = c("192.168.0.234", "192.168.0.235"),
query = "getDeviceInfo"
)
## End(Not run)
Enphase Energy single device query
Description
as a port of https://github.com/sarnau/EnphaseEnergy/blob/main/enphaseStreamMeter.py
Usage
query_enphaseenergy_device(
device_ip = "enphase.local",
query,
username = Sys.getenv("ENPHASE_USERNAME"),
password = Sys.getenv("ENPHASE_PASSWORD")
)
Arguments
device_ip |
IP address or name of the device |
query |
the API query string |
username |
the username needed to authenticate to the inverter. Defaults to the 'ENPHASE_USERNAME' environment variable. |
password |
the password needed to authenticate to the inverter. Defaults to the 'ENPHASE_PASSWORD' environment variable. |
Value
a data-frame with a 'device_id' column and the '$Body$Data' turned into as many columns as expected
See Also
Other device queries:
query_ap_device()
,
query_ap_devices()
,
query_enphaseenvoy_device()
,
query_fronius_device()
,
query_fronius_devices()
Examples
## Not run:
query_enphaseenergy_device(query = "stream/meter")
## End(Not run)
Enphase Envoy single device query
Description
as a port of https://github.com/Matthew1471/Enphase-API/blob/main/Documentation/IQ Gateway API/IVP/Meters/Reports/Production.adoc
Usage
query_enphaseenvoy_device(
device_ip = "enphase.local",
query,
username = Sys.getenv("ENPHASE_USERNAME"),
password = Sys.getenv("ENPHASE_PASSWORD")
)
Arguments
device_ip |
IP address or name of the device |
query |
the API query string |
username |
the username needed to authenticate to the inverter. Defaults to the 'ENPHASE_USERNAME' environment variable. |
password |
the password needed to authenticate to the inverter. Defaults to the 'ENPHASE_PASSWORD' environment variable. |
Value
a data-frame with a 'device_id' column and the '$Body$Data' turned into as many columns as expected
See Also
Other device queries:
query_ap_device()
,
query_ap_devices()
,
query_enphaseenergy_device()
,
query_fronius_device()
,
query_fronius_devices()
Examples
## Not run:
query_enphaseenvoy_device(query = "reports/production")
## End(Not run)
Fronius single device query
Description
as a port of https://github.com/friissoren/pyfronius
Usage
query_fronius_device(
device_ip = "fronius.local",
query,
username = Sys.getenv("FRONIUS_USERNAME"),
password = Sys.getenv("FRONIUS_PASSWORD")
)
Arguments
device_ip |
IP address or name of the device |
query |
the API query string |
username |
the username needed to authenticate to the inverter. Defaults to the 'FRONIUS_USERNAME' environment variable. |
password |
the password needed to authenticate to the inverter. Defaults to the 'FRONIUS_PASSWORD' environment variable. |
Value
a data-frame with a 'device_id' column and the '$Body$Data' turned into as many columns as expected
See Also
Other device queries:
query_ap_device()
,
query_ap_devices()
,
query_enphaseenergy_device()
,
query_enphaseenvoy_device()
,
query_fronius_devices()
Examples
## Not run:
query_fronius_device(query = "GetInverterRealtimeData.cgi?Scope=System")
## End(Not run)
Fronius multi-device query
Description
as a port of https://github.com/friissoren/pyfronius
Usage
query_fronius_devices(
device_ip = c("fronius.local"),
query,
username = Sys.getenv("FRONIUS_USERNAME"),
password = Sys.getenv("FRONIUS_PASSWORD")
)
Arguments
device_ip |
list or vector of each device IP address or name |
query |
the API query string |
username |
the username needed to authenticate to the inverter. Defaults to the 'FRONIUS_USERNAME' environment variable. |
password |
the password needed to authenticate to the inverter. Defaults to the 'FRONIUS_PASSWORD' environment variable. |
Value
a data-frame with a 'device_id' column and the '$Body$Data' turned into as many columns as expected
See Also
Other device queries:
query_ap_device()
,
query_ap_devices()
,
query_enphaseenergy_device()
,
query_enphaseenvoy_device()
,
query_fronius_device()
Examples
## Not run:
query_fronius_device(query = "GetInverterRealtimeData.cgi?Scope=System")
## End(Not run)