EmonCMS
Generated from rPDU2MQTT --emit-schema. Keys are case-insensitive. [] marks a list item and <name> a map key of your choosing. A blank default means none is declared.
EmonCMS exporter
| Setting | Type | Default | Description |
|---|---|---|---|
EmonCMS |
object | EmonCMS exporter | |
EmonCMS.Enabled |
bool | false |
Push measurements to an EmonCMS server. |
EmonCMS.Transport |
one of Http, Mqtt |
Http |
How to deliver measurements: Http (input/post API) or Mqtt (publish to EmonCMS's MQTT input on the same broker). |
EmonCMS.Url |
string | Base URL of the EmonCMS server, e.g. http://emoncms.example.com. (Http transport.) | |
EmonCMS.ApiKey |
string (secret) | EmonCMS write API key (or set RPDU2MQTT_EMONCMS_APIKEY). (Http transport.) | |
EmonCMS.Node |
string | rpdu2mqtt |
EmonCMS input node name. |
EmonCMS.Path |
string | input/post |
API path (relative to Url) that measurements are posted to. (Http transport.) |
EmonCMS.InputNameTemplate |
string | {device}_{source}_{type} |
Template for EmonCMS input keys. Placeholders: , (object-id form), (formatted display name), (outlet number), , . e.g. '' -> rack_pdu_1_dell_md1200_realpower. Leave blank to use the full raw identifier. |
EmonCMS.ExportFlowNodes |
bool | true |
Also send each energy-flow node (panels, inverters, batteries, the grid) as its own input, not just the PDU measurements. This is what gives those nodes history to read back. |
EmonCMS.NodeTags |
object | Limit the exported energy-flow nodes to particular tags. Empty sends every node. Filtering changes only what is sent — never a value, and never any other destination. | |
EmonCMS.NodeTags.Include |
list | Only send nodes carrying at least one of these tags. Empty sends every node. | |
EmonCMS.NodeTags.Exclude |
list | Never send nodes carrying any of these tags. Takes precedence over Include. | |
EmonCMS.FlowInputNameTemplate |
string | {node}_{metric} |
Template for an energy-flow node's EmonCMS input key. Placeholders: (its id), , , , . e.g. '_' -> solar_realpower. The history reader looks feeds up by this name. |
EmonCMS.MqttBaseTopic |
string | emon |
Base MQTT topic for EmonCMS's MQTT input (the placeholder of MqttTopicTemplate). (Mqtt transport.) |
EmonCMS.MqttTopicTemplate |
string | {base}/{node} |
Template for the EmonCMS MQTT topic each JSON payload is published to. Placeholders: (MqttBaseTopic), , (the PDU's name). Including splits the export so each PDU publishes to its own topic instead of one combined payload, e.g. '//'. (Mqtt transport.) |
EmonCMS.Feeds |
object | Automatically create and maintain EmonCMS feeds from the exported inputs. (Http transport; needs a read/write API key.) | |
EmonCMS.Feeds.AutoConfigure |
bool | false |
Create and maintain EmonCMS feeds from the exported inputs (takes effect without a restart). |
EmonCMS.Feeds.Types |
list | The supported measurement types. Each says whether it gets a feed, how that feed is named and stored, and whether EmonCMS derives it. | |
EmonCMS.Feeds.Types[].Type |
one of realpower, energy, energy_d, apparentpower, current, voltage, frequency, powerfactor |
The measurement type this applies to. | |
EmonCMS.Feeds.Types[].Enabled |
bool | true |
Build and maintain a feed for this type. |
EmonCMS.Feeds.Types[].Calculation |
one of PreferLocal, ForceLocal, ForceEmonCms |
PreferLocal |
Where this type's value comes from. |
EmonCMS.Feeds.Types[].Prefix |
string | Text placed before the feed name. Blank by default. Placeholders: , , , , , . | |
EmonCMS.Feeds.Types[].Suffix |
string | Text placed after the feed name, which is where the type appears. Placeholders: , , , , , . | |
EmonCMS.Feeds.Types[].Units |
string | The unit this feed is stored in. | |
EmonCMS.Feeds.Types[].Engine |
one of MySQL, PHPTimeSeries, PHPFina, VirtualFeed |
Feed storage engine for this type. Blank inherits Feeds.Engine. PHPFina = fixed-interval, PHPTimeSeries = variable, MySQL = MySQL storage. | |
EmonCMS.Feeds.Types[].IntervalSeconds |
int | 10 |
Sample interval in seconds for this type's feed. Range 1–86400. |
EmonCMS.Feeds.Engine |
one of MySQL, PHPTimeSeries, PHPFina, VirtualFeed |
PHPFina |
Default feed storage engine, for types that don't set their own. PHPFina = fixed-interval time series, PHPTimeSeries = variable interval, MySQL = MySQL storage (no phpfina files). |
EmonCMS.Feeds.IntervalSeconds |
int | 10 |
Default sample interval in seconds for a fixed-interval feed, for types that don't set their own. Range 1–86400. |
EmonCMS.Feeds.Tag |
string | The EmonCMS tag (group) new feeds are filed under. Blank uses the input node name. | |
EmonCMS.Feeds.StorageNameTemplate |
string | {device}_{source} |
Template for the storage-feed name, without the type — each type appends its own suffix. Use only stable placeholders (, , ) so the name never changes on a rename. Placeholders: , , , , . |
EmonCMS.Feeds.Virtual |
object | Optionally create friendly-named virtual feeds that source from the stable storage feeds — so dashboards get nice names while the underlying feeds stay idempotent. | |
EmonCMS.Feeds.Virtual.Enabled |
bool | false |
Create a friendly-named virtual feed for each storage feed, sourced from it (source_feed process). |
EmonCMS.Feeds.Virtual.NameTemplate |
string | {name} {type} |
Template for the friendly virtual-feed name. is the source's display name, so these can change freely without touching the stable storage feeds. Placeholders: , , , , , . |
EmonCMS.Feeds.Virtual.Tag |
string | The EmonCMS tag (group/node) virtual feeds are filed under — set this to keep the friendly virtual feeds separate from the storage feeds. Blank uses the main Feeds tag. | |
EmonCMS.Source |
object | Read EmonCMS feeds back as live values for energy-flow nodes (bind a node's source with Type 'emoncms'). | |
EmonCMS.Source.PollIntervalSeconds |
int | 30 |
How often to read the bound feeds' current values, in seconds. One request per poll however many feeds are bound. Range 5–3600. |