From fe577ef1720b7c1d62b1842c81f9e529e9bde460 Mon Sep 17 00:00:00 2001 From: miniconfig Date: Fri, 3 Feb 2017 02:05:33 -0500 Subject: [PATCH] Added Documentation for OpenEVSE sensor. (#1947) * Added Documentation for OpenEVSE sensor. * Added ha_release. --- source/_components/sensor.openevse.markdown | 40 ++++++++++++++++++++ source/images/supported_brands/openevse.png | Bin 0 -> 12257 bytes 2 files changed, 40 insertions(+) create mode 100644 source/_components/sensor.openevse.markdown create mode 100644 source/images/supported_brands/openevse.png diff --git a/source/_components/sensor.openevse.markdown b/source/_components/sensor.openevse.markdown new file mode 100644 index 00000000000..5325eb0da1b --- /dev/null +++ b/source/_components/sensor.openevse.markdown @@ -0,0 +1,40 @@ +--- +layout: page +title: "OpenEVSE Sensor" +description: "Instructions how to integrate a WiFi-equipped OpenEVSE Charging station with Home Assistant" +date: 2017-02-02 22:09 +sidebar: true +comments: false +sharing: true +footer: true +logo: openevse.png +ha_category: Sensor +ha_release: "0.38" +--- + + +This `openevse` sensor platform pulls data from an [OpenEVSE](https://www.openevse.com/) Charging station equipped with an ESP8266-based wifi connection. + +To enable this sensor in your installation, add the following to your `configuration.yaml` file: + +```yaml +# Example configuration.yml entry +sensor: + - platform: openevse + host: IP_ADDRESS + monitored_variables: + - status +``` + +Configuration variables: + +- **api_key** (*Required*): Your Sonarr API key, found in Settings > General in the Sonarr Web UI. +- **host** (*Required*): The IP address or hostname of your charger +- **monitored_variables** array (*Required*): Conditions to display on the frontend. + - **status**: The status of the charger (i.e., "Connected", "Charging", etc.) + - **charge_time**: The number of minutes the charging has been charging, or 0 if it is not charging. + - **rtc_temp**: The temperature reported by the real time clock sensor, or 0 if the sensor is not installed. + - **ir_temp**: The temperature reported by the IR remote sensor, or 0 if the sensor is not installed. + - **ambient_temp**: The temperature reported by the ambient sensor, or 0 if the sensor is not installed. + - **usage_session**: The energy usage for the current charging session. + - **usage_total**: The total energy usage for the device. diff --git a/source/images/supported_brands/openevse.png b/source/images/supported_brands/openevse.png new file mode 100644 index 0000000000000000000000000000000000000000..0c3eb00f5d3dbc33f67abc947b657132383a8a94 GIT binary patch literal 12257 zcmV<7FCNf|P)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00006 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 literal 0 HcmV?d00001