Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 54 additions & 12 deletions source/_integrations/emoncms.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,49 @@ sensor:
id: 1
```

As of Feb 2020, the integration will discover all sensors from Emoncms and will use the unit of measurement specified in the Feed from Emoncms, in preference to the one set in the configuration. Tested with [Emoncms](https://github.com/emoncms/emoncms) V10.1.13 - `unit` was added to the API around version V9.9.1.

## Configuration variables
Comment thread
klaasnicolaas marked this conversation as resolved.

- `api_key` (*Required*): The read API key for your Emoncms user.
- `url` (*Required*): The base URL of Emoncms, use <https://emoncms.org> for the cloud based version.
- `id` (*Required*): Positive integer identifier for the sensor. Must be unique if you specify multiple Emoncms sensors.
- `include_only_feed_id` (*Optional*): Positive integer list of Emoncms feed IDs. Only the feeds with feed IDs specified here will be displayed. Can not be specified if `exclude_feed_id` is specified.
- `exclude_feed_id` (*Optional*): Positive integer list of Emoncms feed IDs. All the feeds will be displayed as sensors except the ones listed here. Can not be specified if `include_only_feed_id` is specified.
- `sensor_names` (*Optional*): Dictionary of names for the sensors created that are created based on feed ID. The dictionary consists of `feedid: name` pairs. Sensors for feeds with their feed ID mentioned here will get the chosen name instead of the default name
- `value_template` (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to alter the feed value.
- `scan_interval` (*Optional*): Defines the update interval of the sensor in seconds.
- `unit_of_measurement` (*Optional*): Defines the unit of measurement of for all the sensors. default is "W".
{% configuration %}
api_key:
description: The read API key for your Emoncms user.
required: true
type: string
url:
description: "The base URL of Emoncms, use <https://emoncms.org> for the cloud-based version. For self-hosted Emoncms or EmonPi you may need a URL of `http://x.x.x.x/emoncms`."
required: true
type: string
id:
description: Positive integer identifier for the sensor. Must be unique if you specify multiple Emoncms sensors.
required: true
type: integer
include_only_feed_id:
description: Positive integer list of Emoncms feed IDs. Only the feeds with feed IDs specified here will be displayed. Can not be specified if `exclude_feed_id` is specified.
required: false
type: list
exclude_feed_id:
description: Positive integer list of Emoncms feed IDs. All the feeds will be displayed as sensors except the ones listed here. Can not be specified if `include_only_feed_id` is specified.
required: false
type: list
sensor_names:
description: "Dictionary of names for the sensors created that are created based on feed ID. The dictionary consists of `feedid: name` pairs. Sensors for feeds with their feed ID mentioned here will get the chosen name instead of the default name."
required: false
type: [integer, list]
value_template:
description: Defines a [template](/docs/configuration/templating/#processing-incoming-data) to alter the feed value.
required: false
type: template
scan_interval:
description: Defines the update interval of the sensor in seconds.
required: false
type: integer
unit_of_measurement:
description: Defines the unit of measurement to be used for any sensor where the unit is *not* set in Emoncms. If no unit is set in Emoncms or in the configuration, the default (W) will be used.
required: false
default: W
type: string
{% endconfiguration %}

## Default naming scheme

Expand All @@ -45,6 +77,16 @@ If `sensor_names` is used, any feeds with defined names will get those names exa

In this section you find some more examples of how this sensor can be used.

Minimal configuration. All Feeds are added as sensors with the unit of measurement being set by the Emoncms Feed or the default unit.

```yaml
sensor:
platform: emoncms
api_key: API_KEY
url: https://emoncms.org
id: 1
```

Display only feeds with their feed IDs specified in `include_only_feed_id`.

```yaml
Expand All @@ -69,7 +111,7 @@ sensor:
api_key: API_KEY
url: https://emoncms.org
id: 1
unit_of_measurement: "KWH"
unit_of_measurement: "kWh"
exclude_feed_id:
- 107
- 105
Expand All @@ -84,7 +126,7 @@ sensor:
api_key: API_KEY
url: https://emoncms.org
id: 1
unit_of_measurement: "KW"
unit_of_measurement: "kW"
include_only_feed_id:
- 5
- 120
Expand Down Expand Up @@ -126,7 +168,7 @@ sensor:
- 107
- 106
- platform: emoncms
api_key: put your emoncms read api key here
api_key: API_KEY
url: https://emoncms.org
id: 2
scan_interval: 60
Expand Down