red-contrib-discovergy-meter

Allows to work with a Discovergy Smart Meter (Electricity only) within Node RED flows. If you do not have a Discovergy Meter you might get it here from STROMDAO.

Usage no npm install needed!

<script type="module">
  import redContribDiscovergyMeter from 'https://cdn.skypack.dev/red-contrib-discovergy-meter';
</script>

README

node-red-contrib-discovergy-meter

Allows to work with a Discovergy Smart Meter (Electricity only) within Node RED flows. If you do not have a Discovergy Meter you might get it here from STROMDAO.

npm Build Status Code Quality chat

Installation

Node-RED (Node) via Shell

cd ~/.node-red/
npm install --save node-red-contrib-discovergy-meter

Node-RED (Node) via Editor

Install node-red-contrib-discovergy-meter as NODE package.

Usage

First time usage

On first time adding a Discovery Meter to a flow the list of available meters will be empty.

  • Add Discovergy login information to configuration node
  • Deploy changes to flow
  • Re-Open Configuration of Discovergy Meter

Modify time and reading of installation (optional)

You might overwrite time and value of first reading from the node configuration.

Output (standard)

If triggered (maybe periodic via an inject) this node provides a json Object as msg.payload.

msg.payload =  {
  time: <TIME>, // time of reading per Discovergy API
  latest: {
    power: <POWERVALUE>, // Power in Watt * 10^-3
    power1: <POWERVALUE>,// Power in Watt * 10^-3 of Phase 1
    power2: <POWERVALUE>,// Power in Watt * 10^-3 of Phase 2
    power3: <POWERVALUE>,// Power in Watt * 10^-3 of Phase 3
    energy: <ENERGYVALUE>,// Actual Meter Reading in Watthours * 10^-7 (consumption . OBIS Code 1.8.0)
    energyOut: <ENERGYVALUE>,// Actual Meter Reading in Watthours * 10^-7 (production . OBIS Code 2.8.0)
    baseCosts: <EUROVALUE>, // Accumulated base fee (Grundgebühr) since first measument time (eq. installation - might be overwritten)
    energyCost: <EUROVALUE>, // Accumulated energy costs (Arbeitspreis) since first measument time (eq. installation - might be overwritten)
    energyRevenue: <EUROVALUE>, // Revenue from feeding Energy into the grid
    incomeSaldo: <EUROVALUE> // Pre Calculated : energyRevenue - (baseCosts + energyCost)
  }
}

Output with statistics (advanced)

If msg.topic is set to statistics additional statistic information will be provided. Beside of power,power1,power2,power3 the object gets formated same as in msg.payload.latest above.

*NOTE: Retrieving statistics requires a significant higher amount of API calls. Consider to use it less than once per minute. *

msg.payload =  {
  time: <TIME>// time of reading per Discovergy API
  latest: { ... }, // latest values
  last24h: { ... }, // From latest reading 24 hours backward
  today: { ... }, // Values from today
  yesterday: { ... }, // Values from yesterday
  monthToDay: { ... }, // Values from this month
  lastMonth: { ... }, // Values from last month
  yearToDay: { ... }, // Values from this year
  last365d: { ... } // Values from last 365 days
}

Output with aggregation (advanced)

You might add multiple Discovergy Meters in sequence. In this case a property aggregation will contain aggregated values of all meters.

msg.payload =  {
  time: <TIME>// time of reading per Discovergy API
  latest: { ... }, // latest values  
  aggregation: { ... } // Aggregated values of all meters in sequence
}

Funding

This module is part of the Corrently Ecosystem which looks for funding in Germany: https://www.stromdao.de/crowdfunding/info STROMDAO - Corrently Crowdfunding

Maintainer / Imprint

This module is not an official contribution by Discovergy GmbH.

STROMDAO GmbH
Gerhard Weiser Ring 29
69256 Mauer
Germany

+49 6226 968 009 0

kontakt@stromdao.com

Handelsregister: HRB 728691 (Amtsgericht Mannheim)

LICENSE

Apache-2.0