Introduction
Welcome to the EKM METERING API!
We at EKM see easy access to your data, and the scalable systems behind the EKM Push, as crucial to moving our products into the future. To that end, we do what is unheard of in our industry, we give you your data for FREE.
The EKM API is organized around Representational State Transfer, or REST. You can use our Application Programming Interface, or API, to access EKM API endpoints, which can get you information on various EKM Push meter/ioStack data and utilize it in your own application, database, billing system, or building automation system.
We have language bindings in Shell (cURL), Ruby, Python, PHP, Perl, Java, Javascript and Nodejs! You can view code examples in the dark area to the right, and you can switch the programming language of the examples with the tabs in the top right.
Our API is designed to have predictable, resource-oriented URLs and to use HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which can be understood by off-the-shelf HTTP clients, and we support cross-origin resource sharing to allow you to interact securely with our API from a client-side web application (though you should remember that you should never expose your secret EKM Push API key in any public website’s client-side code). JSON will be returned in all responses from the API, including errors (though if you’re using API bindings, we will convert the response to the appropriate language-specific object).
Authentication
To authorize, make sure to use your personal EKM Push account key.
The examples in this API documentation use the demo key of MTAxMDoyMDIw. Please make sure you remove this key and place your personal key in the https address if you are trying to access the meters in your account.
With shell, you can just pass the correct address with each request
curl -s "URL Here"
Authorization: "EKM Push Key"
# Ruby Version: 3.1.2
# Load required modules
require 'net/http'
require 'json'
require 'uri'
# Call the call_api method to create a usable
# object named api_object from the API request URI
# Put the API request URI in the call
def call_api(api_path)
uri = URI.parse("URL Here#{api_path}")
response = Net::HTTP.get_response(uri)
puts response.uri
JSON.parse(response.body)
end
# Call the call_api method to create a usable
# object named api_object from the API request URI
# Put the API request URI in the call
# URI only NOT URL - Do not include for example https://summary.ekmpush.com
api_object = call_api('URI Here')
# This just displays the object but you can use what ever
# code you would like to work with the object here
require 'pp'
pp api_object
'''
Python version: 3.9.12
'''
# Required Python Modules
import urllib.request
import urllib.error
import urllib.parse
import json
import pprint
# This function accesses the api_request URL and converts
# the contents to a usable Python object and returns it
def call_api ( api_request ):
'''
Make http request
'''
response = urllib.request.urlopen(api_request)
response = response.read()
json_object = json.loads(response.decode())
return json_object
# Call the call_api function to create a usable
# object named api_object from the API request URL.
# Put the API request URL in the call
api_object = call_api("URL Here")
# This just displays the object but you can use what ever
# code you would like to work with the object here
pprint.pprint(api_object)
<?php
// PHP 8.0.17 (cli)
// Call the callApi function to create a usable
// object named $apiObject from the API request URL.
// Put the API request URL in the call
$apiObject=callApi('URL Here');
// This just displays the object but you can use what ever
// code you would like to work with the object here
var_dump($apiObject);
// This function accesses the apiRequest URL and converts
// the contents to a usable PHP object and returns it
function callApi ($apiRequest='') {
$json=@file_get_contents($apiRequest);
$jsonObject=json_decode($json);
return ($jsonObject);
}
?>
#!/usr/bin/perl
# Perl version: v5.34
# CPAN.pm version 2.2
# Perl Modules Version:
# JSON: 4.05
# LWP::Protocol::https: 6.10
# LWP::Simple: 6.62
#
# OS Prerequisites
# UBUNTU
# apt install cpanminus
#
# Install Perl Modules
# cpan LWP::Simple
# cpan LWP::Protocol::https
# cpan JSON
# Required Perl Modules
use strict;
use warnings;
use LWP::Simple;
use JSON;
use Data::Dumper;
# This function accesses the api_request URL and converts
# the contents to a usable Perl object and returns it
sub call_api {
my $api_request = shift;
my $json_text = get($api_request);
my $json_object = JSON->new->utf8->decode($json_text);
return $json_object;
}
# Call the call_api function to create a usable
# object named api_object from the API request URL.
# Put the API request URL in the call
my $api_object = call_api('URL Here');
# This just displays the object but you can use what ever
# code you would like to work with the object here
print Dumper($api_object); ## no critic (InputOutput::RequireCheckedSyscalls)
/*
openjdk version "17.0.2" 2022-01-18
Download the correct org.json jar version for your
needs from: https://mvnrepository.com/artifact/org.json/json
This example uses version 20220320 accessible here:
https://repo1.maven.org/maven2/org/json/json/20220320/json-20220320.jar
Instructions to run this program
1. Put this code in a file named EKM.java
2. Copy the downloaded org.json jar and EKM.java to the same directory
3. Compile
javac -cp .:./json-20220320.jar ./EKM.java
4. Run
java -cp .:./json-20220320.jar EKM
*/
//Import required classes
import java.net.*;
import java.io.*;
import org.json.*;
@java.lang.SuppressWarnings({"java:S106", "java:S112", "java:S125"})
public class EKM {
public static JSONObject callApi(String apiRequest) throws Exception {
// This code accesses the apiRequest URL and converts
// the contents to a usable JSON object
URL url = new URL(apiRequest);
URLConnection connection = url.openConnection();
BufferedReader in = new BufferedReader(
new InputStreamReader(
connection.getInputStream()));
StringBuilder response = new StringBuilder();
String inputLine;
while ((inputLine = in.readLine()) != null)
response.append(inputLine);
in.close();
return new JSONObject(response.toString());
}
public static void main(String[] args) throws Exception {
/*
Call callApi to create a usable
object named apiObject from the API request URL.
Put the API request URL in the call
*/
JSONObject apiObject = EKM.callApi("URL Here");
/*
You can access any part of the apiObject using code like this:
JSONArray readData = apiObject.getJSONObject("readmeter").getJSONArray("ReadSet").
getJSONObject(0).getJSONArray("ReadData");
*/
// This just outputs the whole apiObject
System.out.println(apiObject.toString(4));
}
}
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
// The example function is called from the
// body tag when the page loads
function example(){
// Call the callApi function to create a usable
// object named apiObject from the API request URL.
// Put the API request URL in the call
callApi('URL Here',function(apiObject){
// This just displays the object in the result div
// you can use what ever code you would like to work
// with the object here
document.getElementById("result").innerHTML = "<pre>"+JSON.stringify(apiObject, null, 4)+"</pre>";
});
};
// This code accesses the apiRequest URL and converts
// the contents to a usable JSON object named apiObject
function callApi(apiRequest,callback) {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
var jsonObject = JSON.parse(xhttp.responseText);
callback(jsonObject);
}
};
xhttp.open("GET", apiRequest, true);
xhttp.send();
}
</script>
</head>
<body onload="example()">
<div id="result"/>
</body>
</html>
/*
* Requirements
* NodeJS: v16.14.2
* Axios: 0.27.2
*/
// Load modules
const axios = require('axios');
const apiClient = axios.create({
baseURL: 'URL Here',
timeout: 1000 * 15,
})
// This code accesses the apiRequest query and
// logs the response data or the error
;(async () => {
try {
const res = await apiClient.get('URI Here');
const apiResData = res.data;
console.log(JSON.stringify(apiResData, null, 2));
} catch (error) {
console.error(error.message);
}
})();
Make sure to replace the sample key: MTAxMDoyMDIw, with your API key in the https address.
EKM uses API keys to allow access to the API. You authenticate to the EKM API by providing one of your unique API keys in each request. Each Push account holder is provided with an EKM Push User Key, which provides access to all meters in their account. This key carries lots of privileges so we encourage you to keep it secret. In addition to this master key, additional keys are also provided to give access to each meter/ioStack individually, and keys can be created to provide access to sub groups of meters/ioStacks upon request. These secondary keys can be used to share single meters/ioStacks, or a subset of meters/ioStacks, without sharing access to all meters/ioStacks in an account. For example, if you are a landlord with multiple rentals and meters/ioStacks, you could share specific meter/ioStack keys with each of your tenants, so that they could have access to only the data that pertains to their usage.
Authentication to the API occurs via HTTP Basic Auth. Provide your API key as the basic authorized username. You do not need to provide a password. You must authenticate for all requests.
The EKM Push API expects the API key to be included in all requests to the server. The key is included in the URL in the following way:
Authorization: key=MTAxMDoyMDIw
Realtime API
Click here to go to Realtime Documentation
If you are developing your own app, cloud-to-cloud solution, billing system, or other SAS solution, our Real-Time API allows you to easily access your EKM Push data in any format that you need. Below you will find descriptions regarding how to access the data, and about the filters you can apply so the data comes to you in a format that is easily digested and inserted into your software solution.
The real-time API provides the 1,000 latest meter readings for each of your meters/IOStack devices. If your device is being read once per minute, the data will be made available once per minute, per device. Whether you have one device or 10,000 devices, this is the easiest and most scalable way to access your data.
The EKM Dash, EKM Widget, encompass.io, wattvision.com, pvoutput.org, the other solutions in our Push App Store, as well as other customers that have their own custom solutions, all use this API to access their data. We use the same API as you and do not give ourselves any special permissions, we see what you see, which forces us to make the API as great as possible for everyone. We have even given you code examples that can be copy and pasted into your own software language to make the data access that much easier.
Use the API definition, metered values definition, code snippet suggestion, and guide to get you on your way to developing your next killer app. If you create something great, let us know; we’re open to adding all useful apps into the Push App Store.
We also have a Realtime API Request Builder Tool found here:
Account API
Click here to go to Account API Documentation
This API provides information for accounts and devices owned by the account.
Get information for the specified target, which can be account, gateway, meter or ioStack.
You could make API request with the EKM Push Key that is your own Authorization Key that you received for your Push Account, or instead the EKM Push Key you could use Gateway Key for more restricted access. Be aware that if you use the Gateway Key, you will only receive information regards to that gateway.
Gateway Settings API
Click here to go to Gateway Settings API Documentation
This API is used to send commands and settings to devices connected to a Push3 gateway as well as the gateway device itself.
Trigger API
Click here to go to Trigger API Documentation
A REST API to lookup/create/update/delete triggers.
EKM Push3 gateway triggers are among the most powerful tools that EKM offers. You can automate how and when the EKM Push system reacts to metered values. For example, you can have the Push gateway send you an email, send a webhook to your server, or control a relay to turn on/off a switch or close a valve based on the metered data. Push3 gateways can trigger specific actions based on conditions you set up. These triggers reside on the Push3 gateways, allowing them to function even without an internet connection. Triggers can control the relays on v.4 Omnimeters to turn devices on or off, send webhooks to alert your software system, or email you notifications. You can set up new triggers in the Account Portal or via web APIs.
Please note: v.3 Omnimeters do not have controllable relays, so relay triggers will not work, but email triggers will.
Summary API [LEGACY]
Click here to go to Summary Documentation
Our Summary API takes every Real-Time read, over 15 minute time periods, and summarizes them into single 15 minute summaries. We store this data forever to provide a long term historical dataset for each meter. Our system can then combine these summaries together to summarize hours, days, weeks, and months. This dataset is often the best way to get historical values like kWh, pulse counts, etc. It also provides averages, min. and max. values, difference, and more. We make this data available to you via our Summary API in a very similar way to our Real-Time API.
You can use the Summary API definition to access the data you need, from 15 minutes to years of data. We have gone to great lengths to provide this data for free in order to add value to our metering systems. The Summary API, the Real-Time API, great affordable hardware, and scalable access to your data are all components of the most powerful, and highest value metering system available in the world.
We also have a Summary API Request Builder Tool found here: Summary API Builder
Summary V2 API
Click here to go to Summary V2 Documentation
Summary V2 API is a new set of summary features, such as First/Last to get the first and/or last reported date for the given meter(s)/ioStack(s), GStat for getting the status of one or more gateways, IOStack for getting information from new sensors, and more.
The API V2 summary and documentation are currently in beta, signifying that they are subject to changes and updates. It’s important to note that the API V2 calls and specifications provided in this documentation may undergo modifications as the beta phase progresses. Users should stay informed and regularly check for updates to ensure compatibility and adherence to the latest specifications
MQTT Messaging
Click here to go to MQTT Documentation
MQTT (Message Queuing Telemetry Transport) is a lightweight messaging protocol designed for low-bandwidth, high-latency, or unreliable networks, often used in Internet of Things (IoT) applications. It follows a publish-subscribe model, where devices (clients) can publish messages to topics or subscribe to topics to receive messages.
MQTT will only work with Push3 Gateways. It is more efficient than making hundreds of API calls because it does not impose rate limits (you can stream 24/7), allowing continuous realtime or summary data streaming. However, it lacks message history, meaning that if you need past data, you will have to make an API request to retrieve realtime or summary information as far back as necessary, and then resume streaming via MQTT. If the connection is lost, you will need to request realtime or summary data again to fill in any gaps before continuing with the MQTT stream. This combination of API and MQTT helps ensure a smooth data flow while compensating for potential disruptions.
RS-485 Communications
Click here to go to RS-485 Documentation
This section is for developers, or individuals, that want to communicate with their EKM Meters directly using their own software or embedded solution.
The code examples found in this section are in the simplest possible method to get you started. You are welcome to make them more robust.
First we start you out just connecting to the meter. You will find there is a very simple command line process to help you get started.
After that we cover the CRC method required for most communication to the meter.
Then we put it all together, in a simple test script that will show reads, and also open and close the relays.
Last we cover how to convert the 255 character strings that the meter responds with to a usable array containing field names and their values. It is our hope that after you go through these steps you will have all the information you need, to build whatever tools you like to access the meter.
Our meters use an IEC 62056-21 communication standard that has been optimized for our own needs. We are more than happy to share this with you. With this you can write your own software or embedded solution to access your meter data.
IEC 62056 is a set of standards for Electricity metering data exchange by International Electrotechnical Commission.
To learn more about the IEC 62056 standard click the button below to visit the WikiPedia website.
Additional PDF docs are available:
v.4/v.5 Meter Settings Protocol
v.4/v.5 Meter Alternate Modbus Protocol
If you are coding in Python you can also make use of our ekmmeters.py API.
Status Codes
EKM uses conventional HTTP response codes in addition to our API Status Codes to indicate the success or failure of an API request. In general, codes in the 2xx range indicate success, codes in the 4xx range indicate an error that failed given the information provided, and codes in the 5xx range indicate an error with EKM’s servers (these are rare).
The EKM API uses the following API specific Status codes:
API Status Code | Meaning |
---|---|
1000 | There is not data for: {meters} |
1001 | There is not data for: {meters} between ${startDate} and ${endDate} |
1002 | There is not data for: {meters} This meter first reported on: |
1003 | There is not data for: {meters} This meter last reported on: |
1004 | Timezone is not supported for this date range request |
1100 | All invalid query requests |
1101 | Invalid format |
1102 | Invalid value |
1103 | Invalid parameter |
1200 | Found invalid meter: {meter} for key: MTAxMDoyMDIw |
1300 | Oops! It looks like there was an unexpected error. Try checking your query for issues or hold tight while we see what we can do. This error has been reported. |
The EKM API also uses the following HTTP Status codes:
HTTP Status Code | Meaning |
---|---|
200 | OK – The request succeeded. |
400 | Bad Request – The server could not understand the request due to invalid syntax. |
401 | Unauthorized – Although the HTTP standard specifies “unauthorized”, semantically this response means “unauthenticated”. That is, the client must authenticate itself to get the requested response. |
403 | Forbidden – The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401 Unauthorized, the client’s identity is known to the server. |
404 | Not Found – The server can not find the requested resource. In the browser, this means the URL is not recognized. In an API, this can also mean that the endpoint is valid but the resource itself does not exist. Servers may also send this response instead of 403 Forbidden to hide the existence of a resource from an unauthorized client. This response code is probably the most well known due to its frequent occurrence on the web. |
429 | Too Many Requests – The user has sent too many requests in a given amount of time (“rate limiting”). |
500 | Internal Server Error – The server has encountered a situation it does not know how to handle. |
501 | Not Implemented – The Vertical Bar otherwise known as “pipe” request method is not supported by the server and cannot be handled. The only methods that servers are required to support (and therefore that must not return this code) are GET and HEAD. |
502 | Bad Gateway – This error response means that the server, while working as a gateway to get a response needed to handle the request, got an invalid response. |
503 | Service Unavailable – The server is not ready to handle the request. Common causes are a server that is down for maintenance or that is overloaded. Note that together with this response, a user-friendly page explaining the problem should be sent. This response should be used for temporary conditions and the Retry-After HTTP header should, if possible, contain the estimated time before the recovery of the service. The webmaster must also take care about the caching-related headers that are sent along with this response, as these temporary condition responses should usually not be cached. |
504 | Gateway Timeout – This error response is given when the server is acting as a gateway and cannot get a response in time. |
505 | HTTP Version Not Supported – The HTTP version used in the request is not supported by the server. |
506 | Variant Also Negotiates – The server has an internal configuration error: the chosen variant resource is configured to engage in transparent content negotiation itself, and is therefore not a proper end point in the negotiation process. |
510 | Not Extended – Further extensions to the request are required for the server to fulfill it. |
511 | Network Authentication Required – Indicates that the client needs to authenticate to gain network access. |
Widget Documentation
Access free web-based real-time and historical graphs showcasing your EKM Push data, covering all your devices including meters and ioStacks. It is quick, easy, and does not require a login.
The EKM Widget offers a convenient means to gain visual insights into your systems’ performance. We utilize it to monitor our office’s current consumption and solar power generation in real-time. Additionally, the historical chart helps us track the impact of efficiency upgrades on our usage and monitor the energy consumption of our electric car over time.
With the release of Widget v6.0, we have introduced a new feature where the URL parameters are compressed. This change was necessary due to the growing number of parameters, especially with the addition of ioStack that is our new hub for counting pulses, reading analog and digital sensors, and for control.
If you are already using a Widget URL, rest assured that it will continue to work seamlessly with our latest update. The widget will automatically compress your URL if the URL length exceeds 512 characters, you will notice this compression in the URL after the ‘q’ (query) parameter. If you want to add new parameter(s), you can do so at the end of the URL. For example, if you want to manually update the 'reads’ parameter to 500, you need to add it: https://widget.ekmmetering.com/widget/?q=COMPRESSED_STRING&reads=500
Of course, you can use any parameter you want. Please check the documentation to ensure you are using the correct name for the parameter(s).
Required Parameters
Following, we will explain the basic parameters that should be included at the beginning of any request to the widget URL. The first fundamental parameters are:
key
EKM Push Key that is your own Authorization Key that you received for your Push Account. For example: key=MTAxMDoyMDIw
deviceType
Select between “meter” or “iostack”, that are the devices we offer and have real-time and historical data. For example: deviceType=meter
deviceAddress
Exact meter/ioStack number to call. For example: deviceAddress=300004127
Widget Basic Request
Below is an example of what a typical Widget https address will look like:
https://widget.ekmmetering.com/widget/?key=MTAxMDoyMDIw&deviceType=meter&deviceAddress=300004127
An example of the information typically included in an HTTPS call is as follows:
https Address | Description |
---|---|
https://widget.ekmmetering.com/widget/? | Start of the https address for widget request. |
key | Parameter for calling the key. |
MTAxMDoyMDIw | EKM Push authorization key. |
deviceType | Parameter to select a device type, such as “meter” or “ioStack”. |
iostack | This will select a meter device. |
deviceAddress | Parameter for making a call to a specific ioStack. |
300004127 | Meter address to call. |
When you make a request and the URL length exceeds 512 characters, you will notice that the URL is updated to: https://widget.ekmmetering.com/widget/?q=H4sIAAAAAAAACm2SQYvCMBSEf03K7oKQvKi3HARZWFhv3h-xfWowTUqTdu3F374UWo1tc5r5wgxzeDfq1OG4ux_2vjvsf_6yglqT07GrSBkfos5vA9oVRU0hqE3_MuPRGkd4qXV1xbMhWwSlnbb-gsaheOTetVRHKjChfSzqk6WlxEtDomWi148QdSQ0rmpiGIxv4qNqbCDMXUSRaEi0TPQ60XV4z_QeJl5O_Ji_eltgGZ750cPEy4l_5g1WNbVvFS8EcyTnaOyyftaVIJgjOUfJruijthgoT5e9ICxBuQSTffPONwhLUC7BdTachECnS1JH7W4M-C-1ZMevsj8pteX8CfQdhRIbzrNALvgaS1-QxdCVJ29RKAab7OzrsrE6PVn10WrbEAO-YsC3nH8y4Ay-GfCPvm01oC8GXHD-D1xFyaxQAwAA
This is the compression version of your original URL explained:
https Address | Description |
---|---|
https://widget.ekmmetering.com/widget/? | Start of the https address for widget request. |
q | Parameter for compressed values |
H4sIAAAAAAAACm2SQYvCMB… | Compressed values |
Realtime Parameters
Following, you will find real-time parameters that you could use to add them to build your widget URL.
Reads
You can choose between 100, 500, or 1000 for the latest reads.
You can specify this in the URL as follows: reads=100
for the latest 100 reads.
Layout
You can display multiple options on the graph, such as the Reads table, Range table, or a table with the raw data. You can show multiple tables or simply hide all buttons on the graph.
show_legend
: Show reads values.show_range
: Show a table with the minimum and maximum data for the selected range of reads.show_table
: Show a table with the raw data from the API.show_buttons
: Hide all elements on the graph, but shows the buttons below the graph.hide_all
: Hides all elements on the graph.
To add one element to your graph, you have to set: layout=show_table
to show the table with the raw data. But if you want to display more than one box on the graph, you can set them using ~ between each element: layout=show_legend~show_table
. This will show the reads values and the table with the raw data.
History Graph Parameters
Below, you will find parameters for creating historical graph that you can use to add to your widget URL.
Scale
By combining reads and scale parameters, you can retrieve historical data for your device.
Here are the options:
- For data every 15 minutes (scale=15) with reads:
- 48 - Last 12 hours.
- 96 - Last day.
- 192 - Last 2 days.
- For hourly data (scale=hr) with reads:
- 48 - Last 2 days
- 120 - Last 5 days
- 168 - Last week
- For daily data (scale=dy) with reads:
- 7 - Last week
- 14 - Last two weeks
- 30 - Last month
- For weekly data (scale=wk) with reads:
- 13 - Last 3 months
- 26 - Last 6 months
- 52 - Last year
- For monthly data (scale=mo) with reads:
- 6 - Last 6 months
- 12 - Last year
- 24 - Last two years
You can specify these parameters in the URL like this: scale=dy&reads=7
to retrieve historical data every day for the last week.
Setting Parameters
Below, you will find various options to configure different values for display on the graph.
kWh
Specifically for meters, you can configure the kWh to be displayed in the Total Bar below the graph or when Total kWh is selected for display on the graph.
Here are the options you can configure for this setting:
kwh_tot_yname
: The name for the converted kWh data. For example,kwh_tot_yname=Specific Name
.kwh_tot_cost
: The cost of kWh to be converted and displayed. For example,kwh_tot_cost=2
.kwh_currency
: Sets the currency for displaying the kWh values. Available currency codes are listed in the table at the bottom. (Check our list for Available Currency Codes). For example,kwh_currency=USD
.
So, with these configured values, your kWh will have the name ‘Specific Name’ and the cost of 2 USD (United States Dollar) for each 1 kWh.
Pulse
If you want to personalize your Pulse values to display them on the graph, you can set the following parameters:
For Meters
You can set 'Pulse 1’, 'Pulse 2’, and 'Pulse 3’.
pc_[1-3]_name
: Pulse Name for one of the Pulses. For example,pc_1_name=Specific Name
.pc_[1-3]_value
: The Pulse value that converts the given pulse to the desired value. For example,pc_1_value=1
.pc_[1-3]_value_select
: To represent the pulse value according to the desired measurement, such as liters or US gallons. (Check our list for Available Measurements Codes). For example,pc_1_value_select=gl
.pc[1-3]_cost
: The cost of each value. For example,pc1_cost=2
.pc[1-3]_currency
: Sets the currency for displaying the Pulse values. Available currency codes are listed in the table at the bottom. (Check our list for Available Currency Codes). For example,pc1_currency=USD
.
With these configured values, your Pulse 1 will have the name 'Specific Name’, and each pulse reported will represent 1 gallon with a cost of 2 USD (United States Dollar) per gallon.
For ioStack
You can set 'Pulse 1’, 'Pulse 2’, 'Pulse 3’, and 'Pulse 4’ like you do for meters, but adding 'io_’ to the beginning.
io_pc_[1-4]_name
: Pulse Name for one of the Pulses. For example,io_pc_2_name=Specific Name
.io_pc_[1-4]_value
: The Pulse value that converts the given pulse to the desired value. For example,io_pc_2_value=1
.io_pc_[1-4]_value_select
: To represent the pulse value according to the desired measurement, such as liters or US gallons. (Check our list for Available Measurements Codes). For example,io_pc_2_value_select=gl
.io_pc[1-4]_cost
: The cost of each value. For example,io_pc2_cost=2
.io_pc[1-4]_currency
: Sets the currency for displaying the Pulse values. Available currency codes are listed in the table at the bottom. (Check our list for Available Currency Codes). For example,io_pc2_currency=USD
.
With these configured values, your Pulse 2 will have the name 'Specific Name’, and each pulse reported will represent 1 gallon with a cost of 2 USD (United States Dollar) per gallon.
Analog Sensor
The Analog Sensor can be used for lux, voltage, pressure sensors, and many others.
analog_[1-4]_name
: Analog sensor name for one of the sensors. For example,analog_1_name=Tank Level
.analog_min_[1-4]
: The minimum value. For example:analog_min_1=600
.analog_max_[1-4]
: The maximum value. For example:analog_max_1=1185
.formula_analog_in_[1-4]
: The formula to convert the given value. For example:formula_analog_in_1=(value-600) / (1185-600) * 100
.sensor_model_symbol_[1-4]
: The symbol that represents the converted value (Max. 3 characters). For example:sensor_model_symbol_1=%
.
In this example, we use a tank level sensor. Analog Sensor 1 will have the name 'Tank Level’. The minimum value that represents an empty tank is 600, and the maximum value representing a full tank is 1185. The formula to convert these values to percent is (value-600) / (1185-600) * 100
. Finally, we set a symbol to represent the converted value: ’%’. The values shown on the graph will display the percent value instead of the raw value.
1 Wire
Our ioStack device allows you to connect 1-Wire sensors, such as our 1-Wire Temperature Sensor - Waterproof, Stainless Steel - DS18B20, as well as other 1-Wire sensors for humidity and Lux measurements. You can set the following parameters:
name_[SENSOR_KEY]
: You can set a name for your 1 Wire Sensor. For example,name_ow_1_1_degc=Home Temp
.formula_[SENSOR_KEY]
: You can apply a formula to convert the given values. For example, our DS18B20 sensor reads data in Celsius. If you want to convert it to Fahrenheit:formula_ow_1_1_degc=value * 9/5 + 32
.symbol_[SENSOR_KEY]
: You can add a symbol for your converted data (Max. 3 characters). For example,symbol_ow_1_1_degc=°F
.
In the examples given before, you are working with your sensor ow_1_1_degc. The name you set was: 'Home Temp’. You are converting the data given in Celsius to Fahrenheit: value * 9/5 + 32
, and the symbol for this converted data is: '°F’.
Next, you can find a table with the required [SENSOR_KEY].
Sensor Key | Name |
---|---|
ow_1_1_degc | 1-Wire 1_1 Degree C |
ow_1_2_degc | 1-Wire 1_2 Degree C |
ow_1_3_degc | 1-Wire 1_3 Degree C |
ow_1_4_degc | 1-Wire 1_4 Degree C |
ow_2_1_degc | 1-Wire 2_1 Degree C |
ow_2_2_degc | 1-Wire 2_2 Degree C |
ow_2_3_degc | 1-Wire 2_3 Degree C |
ow_2_4_degc | 1-Wire 2_4 Degree C |
ow_3_1_degc | 1-Wire 3_1 Degree C |
ow_3_2_degc | 1-Wire 3_2 Degree C |
ow_3_3_degc | 1-Wire 3_3 Degree C |
ow_3_4_degc | 1-Wire 3_4 Degree C |
ow_4_1_degc | 1-Wire 4_1 Degree C |
ow_4_2_degc | 1-Wire 4_2 Degree C |
ow_4_3_degc | 1-Wire 4_3 Degree C |
ow_4_4_degc | 1-Wire 4_4 Degree C |
ow_1_1_humidity | 1-Wire 1_1 Humidity |
ow_1_2_humidity | 1-Wire 1_2 Humidity |
ow_1_3_humidity | 1-Wire 1_3 Humidity |
ow_1_4_humidity | 1-Wire 1_4 Humidity |
ow_2_1_humidity | 1-Wire 2_1 Humidity |
ow_2_2_humidity | 1-Wire 2_2 Humidity |
ow_2_3_humidity | 1-Wire 2_3 Humidity |
ow_2_4_humidity | 1-Wire 2_4 Humidity |
ow_3_1_humidity | 1-Wire 3_1 humidity |
ow_3_2_humidity | 1-Wire 3_2 Humidity |
ow_3_3_humidity | 1-Wire 3_3 Humidity |
ow_3_4_humidity | 1-Wire 3_4 Humidity |
ow_4_1_humidity | 1-Wire 4_1 Humidity |
ow_4_2_humidity | 1-Wire 4_2 Humidity |
ow_4_3_humidity | 1-Wire 4_3 Humidity |
ow_4_4_humidity | 1-Wire 4_4 Humidity |
ow_1_1_lux | 1-Wire 1_1 Lux |
ow_1_2_lux | 1-Wire 1_2 Lux |
ow_1_3_lux | 1-Wire 1_3 Lux |
ow_1_4_lux | 1-Wire 1_4 Lux |
ow_2_1_lux | 1-Wire 2_1 Lux |
ow_2_2_lux | 1-Wire 2_2 Lux |
ow_2_3_lux | 1-Wire 2_3 Lux |
ow_2_4_lux | 1-Wire 2_4 Lux |
ow_3_1_lux | 1-Wire 3_1 Lux |
ow_3_2_lux | 1-Wire 3_2 Lux |
ow_3_3_lux | 1-Wire 3_3 Lux |
ow_3_4_lux | 1-Wire 3_4 Lux |
ow_4_1_lux | 1-Wire 4_1 Lux |
ow_4_2_lux | 1-Wire 4_2 Lux |
ow_4_3_lux | 1-Wire 4_3 Lux |
ow_4_4_lux | 1-Wire 4_4 Lux |
Layout/Fields
Total Field
Below the Graph, you will find a bar that shows the Total. You can set it following the next instructions.
For meters
By default, Widget uses kwh_tot
for meters, but you can select a total field from the Key column:
Key | Name |
---|---|
kwh_tot | Total kWh |
kwh_tariff_1 | kWh Tariff 1 |
kwh_tariff_2 | kWh Tariff 2 |
kwh_tariff_3 | kWh Tariff 3 |
kwh_tariff_4 | kWh Tariff 4 |
rev_kwh_tot | Reverse kWh |
rev_kwh_tariff_1 | Reverse kWh Tariff 1 |
rev_kwh_tariff_2 | Reverse kWh Tariff 2 |
rev_kwh_tariff_3 | Reverse kWh Tariff 3 |
rev_kwh_tariff_4 | Reverse kWh Tariff 4 |
fwd_kwh_tot | Forward kWh |
fwd_kwh_tariff_1 | Forward kWh Tariff 1 |
fwd_kwh_tariff_2 | Forward kWh Tariff 2 |
fwd_kwh_tariff_3 | Forward kWh Tariff 3 |
fwd_kwh_tariff_4 | Forward kWh Tariff 4 |
net_kwh_tot | Net kWh |
net_kwh_tariff_1 | Net kWh Tariff 1 |
net_kwh_tariff_2 | Net kWh Tariff 2 |
net_kwh_tariff_3 | Net kWh Tariff 3 |
net_kwh_tariff_4 | Net kWh Tariff 4 |
pc_raw_1 | Pulse Count 1 |
pc_raw_2 | Pulse Count 2 |
pc_raw_3 | Pulse Count 3 |
pulse_cnt_1 | PC 1 Value |
pulse_cnt_2 | PC 2 Value |
pulse_cnt_3 | PC 3 Value |
converted_pulse_cnt_1 | PC 1 Value Converted |
converted_pulse_cnt_2 | PC 2 Value Converted |
converted_pulse_cnt_3 | PC 3 Value Converted |
For example, to show net_kwh_tot
in the total field, you need to set in the URL: total_field=net_kwh_tot
.
For ioStacks
By default Widget uses pulse_cnt_1
for ioStacks, but you can select a total field from the Key column:
Key | Name |
---|---|
pulse_cnt_1 | Pulse Count 1 |
pulse_cnt_2 | Pulse Count 2 |
pulse_cnt_3 | Pulse Count 3 |
pulse_cnt_4 | Pulse Count 4 |
converted_io_pulse_cnt_1 | PC 1 Converted |
converted_io_pulse_cnt_2 | PC 2 Converted |
converted_io_pulse_cnt_3 | PC 3 Converted |
converted_io_pulse_cnt_4 | PC 4 Converted |
For example, to show converted_io_pulse_cnt_1
in the total field you need to set in the URL: io_total_field=converted_io_pulse_cnt_1
.
Line Graph Fields
You can set up to 4 lines on the real-time graph.
For meters
By default, the widget shows rms_watts_tot
, amps_ln_1
, rms_volts_ln_1
, power_factor_ln_1
for meters. You can set your own values to display on the real-time graph, ranging from 1 to 4 values. If you want to set more than one value, you will need to separate each parameter with a ~.
For example, you can display on the Line Graph:
- kWh Tariff 1
- Reverse kWh
- Watts Line 1
- Total kWh
So you can set them in the following way: line_graph_fields=kwh_tariff_1~rev_kwh_tot~rms_watts_ln_1~kwh_tot
You can find the Line Graph values in the Line Graph Key column:
Line Graph Key | Description |
---|---|
kwh_tot | Total kWh |
kwh_tariff_1 | kWh Tariff 1 |
kwh_tariff_2 | kWh Tariff 2 |
kwh_tariff_3 | kWh Tariff 3 |
kwh_tariff_4 | kWh Tariff 4 |
rev_kwh_tot | Reverse kWh |
rev_kwh_tariff_1 | Reverse kWh Tariff 1 |
rev_kwh_tariff_2 | Reverse kWh Tariff 2 |
rev_kwh_tariff_3 | Reverse kWh Tariff 3 |
rev_kwh_tariff_4 | Reverse kWh Tariff 4 |
fwd_kwh_tot | Forward kWh |
fwd_kwh_tariff_1 | Forward kWh Tariff 1 |
fwd_kwh_tariff_2 | Forward kWh Tariff 2 |
fwd_kwh_tariff_3 | Forward kWh Tariff 3 |
fwd_kwh_tariff_4 | Forward kWh Tariff 4 |
net_kwh_tot | Net kWh |
net_kwh_tariff_1 | Net kWh Tariff 1 |
net_kwh_tariff_2 | Net kWh Tariff 2 |
net_kwh_tariff_3 | Net kWh Tariff 3 |
net_kwh_tariff_4 | Net kWh Tariff 4 |
rms_volts_ln_1 | Volts Line 1 |
rms_volts_ln_2 | Volts Line 2 |
rms_volts_ln_3 | Volts Line 3 |
amps_ln_1 | Amps Line 1 |
amps_ln_2 | Amps Line 2 |
amps_ln_3 | Amps Line 3 |
rms_watts_ln_1 | Watts Line 1 |
rms_watts_ln_2 | Watts Line 2 |
rms_watts_ln_3 | Watts Line 3 |
rms_watts_tot | Total RMS Watts |
power_factor_ln_1 | Power Factor Line 1 |
power_factor_ln_2 | Power Factor Line 2 |
power_factor_ln_3 | Power Factor Line 3 |
rms_watts_max_demand | RMS Watts Max Demand |
max_demand_period | Max Demand Period |
ct_ratio | CT Ratio |
pc_raw_1 | Pulse Count 1 |
pc_raw_2 | Pulse Count 2 |
pc_raw_3 | Pulse Count 3 |
pulse_cnt_1 | PC 1 Value |
pulse_cnt_2 | PC 2 Value |
pulse_cnt_3 | PC 3 Value |
converted_pulse_cnt_1 | PC 1 Value Converted |
converted_pulse_cnt_2 | PC 2 Value Converted |
converted_pulse_cnt_3 | PC 3 Value Converted |
pulse_ratio_1 | Pulse Ratio 1 |
pulse_ratio_2 | Pulse Ratio 2 |
pulse_ratio_3 | Pulse Ratio 3 |
state_inputs | Pulse Input State |
reactive_energy_tot | Total Reactive Energy |
kwh_rst | kWh Rst |
rev_kwh_rst | Rev kWh Rst |
reactive_pwr_ln_1 | Reactive Power Line 1 |
reactive_pwr_ln_2 | Reactive Power Line 2 |
reactive_pwr_ln_3 | Reactive Power Line 3 |
reactive_pwr_tot | Total Reactive Power |
kwh_scale | kWh Scale |
line_freq | Line Freq |
state_watts_dir | State Watts Dir |
state_out | State Out |
kwh_ln_1 | kWh Line 1 |
kwh_ln_2 | kWh Line 2 |
kwh_ln_3 | kWh Line 3 |
rev_kwh_ln_1 | Rev kWh Line 1 |
rev_kwh_ln_2 | Rev kWh Line 2 |
rev_kwh_ln_3 | Rev kWh Line 3 |
max_demand_rst | Max Demand Rst |
cf_ratio | CF Ratio |
meter_status_code | Meter Status Code |
net_calc_watts_ln_1 | Net Watts Line 1 |
net_calc_watts_ln_2 | Net Watts Line 2 |
net_calc_watts_ln_3 | Net Watts Line 3 |
net_calc_watts_tot | Net Watts Total |
For ioStacks
By default, the widget shows analog_in_1
, analog_in_2
, analog_in_3
, analog_in_4
for ioStacks. You can set your own values to display on the real-time graph, ranging from 1 to 4 values. If you want to set more than one value, you will need to separate each parameter with a ~.
For example, you can display on the Line Graph:
- Analog Input 1
- Converted AI 1
- 1-Wire 1_1 Degree C
- Converted 1-Wire 1_1 Degree C
So you can set them in the following way: io_line_graph_fields=analog_in_1~converted_analog_in_1~ow_1_1_degc~converted_ow_1_1_degc
You can find the Line Graph values in the Line Graph Key column:
Line Graph Key | Description |
---|---|
analog_in_1 | Analog Input 1 |
analog_in_2 | Analog Input 2 |
analog_in_3 | Analog Input 3 |
analog_in_4 | Analog Input 4 |
converted_analog_in_1 | Converted AI 1 |
converted_analog_in_2 | Converted AI 2 |
converted_analog_in_3 | Converted AI 3 |
converted_analog_in_4 | Converted AI 4 |
state_inputs | Pulse Input State |
state_out | Control Output State |
pulse_cnt_1 | Pulse Count 1 |
pulse_cnt_2 | Pulse Count 2 |
pulse_cnt_3 | Pulse Count 3 |
pulse_cnt_4 | Pulse Count 4 |
converted_io_pulse_cnt_1 | PC 1 Converted |
converted_io_pulse_cnt_2 | PC 2 Converted |
converted_io_pulse_cnt_3 | PC 3 Converted |
converted_io_pulse_cnt_4 | PC 4 Converted |
pulse_cnt_rst_1 | Resettable Pulse Count 1 |
pulse_cnt_rst_2 | Resettable Pulse Count 2 |
pulse_cnt_rst_3 | Resettable Pulse Count 3 |
pulse_cnt_rst_4 | Resettable Pulse Count 4 |
pulse_hold_ms_1 | Pulse Hold (ms) 1 |
pulse_hold_ms_2 | Pulse Hold (ms) 2 |
pulse_hold_ms_3 | Pulse Hold (ms) 3 |
pulse_hold_ms_4 | Pulse Hold (ms) 4 |
pulse_hi_prev_ms_1 | Pulse High Previous (ms) 1 |
pulse_hi_prev_ms_2 | Pulse High Previous (ms) 2 |
pulse_hi_prev_ms_3 | Pulse High Previous (ms) 3 |
pulse_hi_prev_ms_4 | Pulse High Previous (ms) 4 |
pulse_lo_prev_ms_1 | Pulse Low Previous (ms) 1 |
pulse_lo_prev_ms_2 | Pulse Low Previous (ms) 2 |
pulse_lo_prev_ms_3 | Pulse Low Previous (ms) 3 |
pulse_lo_prev_ms_4 | Pulse Low Previous (ms) 4 |
pulse_hi_total_sec_1 | Pulse High Total (sec) 1 |
pulse_hi_total_sec_2 | Pulse High Total (sec) 2 |
pulse_hi_total_sec_3 | Pulse High Total (sec) 3 |
pulse_hi_total_sec_4 | Pulse High Total (sec) 4 |
pulse_lo_total_sec_1 | Pulse Low Total (sec) 1 |
pulse_lo_total_sec_2 | Pulse Low Total (sec) 2 |
pulse_lo_total_sec_3 | Pulse Low Total (sec) 3 |
pulse_lo_total_sec_4 | Pulse Low Total (sec) 4 |
ow_1_1_degc | 1-Wire 1_1 Degree C |
ow_1_2_degc | 1-Wire 1_2 Degree C |
ow_1_3_degc | 1-Wire 1_3 Degree C |
ow_1_4_degc | 1-Wire 1_4 Degree C |
ow_2_1_degc | 1-Wire 2_1 Degree C |
ow_2_2_degc | 1-Wire 2_2 Degree C |
ow_2_3_degc | 1-Wire 2_3 Degree C |
ow_2_4_degc | 1-Wire 2_4 Degree C |
ow_3_1_degc | 1-Wire 3_1 Degree C |
ow_3_2_degc | 1-Wire 3_2 Degree C |
ow_3_3_degc | 1-Wire 3_3 Degree C |
ow_3_4_degc | 1-Wire 3_4 Degree C |
ow_4_1_degc | 1-Wire 4_1 Degree C |
ow_4_2_degc | 1-Wire 4_2 Degree C |
ow_4_3_degc | 1-Wire 4_3 Degree C |
ow_4_4_degc | 1-Wire 4_4 Degree C |
ow_1_1_humidity | 1-Wire 1_1 Humidity |
ow_1_2_humidity | 1-Wire 1_2 Humidity |
ow_1_3_humidity | 1-Wire 1_3 Humidity |
ow_1_4_humidity | 1-Wire 1_4 Humidity |
ow_2_1_humidity | 1-Wire 2_1 Humidity |
ow_2_2_humidity | 1-Wire 2_2 Humidity |
ow_2_3_humidity | 1-Wire 2_3 Humidity |
ow_2_4_humidity | 1-Wire 2_4 Humidity |
ow_3_1_humidity | 1-Wire 3_1 Humidity |
ow_3_2_humidity | 1-Wire 3_2 Humidity |
ow_3_3_humidity | 1-Wire 3_3 Humidity |
ow_3_4_humidity | 1-Wire 3_4 Humidity |
ow_4_1_humidity | 1-Wire 4_1 Humidity |
ow_4_2_humidity | 1-Wire 4_2 Humidity |
ow_4_3_humidity | 1-Wire 4_3 Humidity |
ow_4_4_humidity | 1-Wire 4_4 Humidity |
ow_1_1_lux | 1-Wire 1_1 Lux |
ow_1_2_lux | 1-Wire 1_2 Lux |
ow_1_3_lux | 1-Wire 1_3 Lux |
ow_1_4_lux | 1-Wire 1_4 Lux |
ow_2_1_lux | 1-Wire 2_1 Lux |
ow_2_2_lux | 1-Wire 2_2 Lux |
ow_2_3_lux | 1-Wire 2_3 Lux |
ow_2_4_lux | 1-Wire 2_4 Lux |
ow_3_1_lux | 1-Wire 3_1 Lux |
ow_3_2_lux | 1-Wire 3_2 Lux |
ow_3_3_lux | 1-Wire 3_3 Lux |
ow_3_4_lux | 1-Wire 3_4 Lux |
ow_4_1_lux | 1-Wire 4_1 Lux |
ow_4_2_lux | 1-Wire 4_2 Lux |
ow_4_3_lux | 1-Wire 4_3 Lux |
ow_4_4_lux | 1-Wire 4_4 Lux |
converted_ow_1_1_degc | Converted 1-Wire 1_1 Degree C |
converted_ow_1_2_degc | Converted 1-Wire 1_2 Degree C |
converted_ow_1_3_degc | Converted 1-Wire 1_3 Degree C |
converted_ow_1_4_degc | Converted 1-Wire 1_4 Degree C |
converted_ow_2_1_degc | Converted 1-Wire 2_1 Degree C |
converted_ow_2_2_degc | Converted 1-Wire 2_2 Degree C |
converted_ow_2_3_degc | Converted 1-Wire 2_3 Degree C |
converted_ow_2_4_degc | Converted 1-Wire 2_4 Degree C |
converted_ow_3_1_degc | Converted 1-Wire 3_1 Degree C |
converted_ow_3_2_degc | Converted 1-Wire 3_2 Degree C |
converted_ow_3_3_degc | Converted 1-Wire 3_3 Degree C |
converted_ow_3_4_degc | Converted 1-Wire 3_4 Degree C |
converted_ow_4_1_degc | Converted 1-Wire 4_1 Degree C |
converted_ow_4_2_degc | Converted 1-Wire 4_2 Degree C |
converted_ow_4_3_degc | Converted 1-Wire 4_3 Degree C |
converted_ow_4_4_degc | Converted 1-Wire 4_4 Degree C |
converted_ow_1_1_humidity | Converted 1-Wire 1_1 Humidity |
converted_ow_1_2_humidity | Converted 1-Wire 1_2 Humidity |
converted_ow_1_3_humidity | Converted 1-Wire 1_3 Humidity |
converted_ow_1_4_humidity | Converted 1-Wire 1_4 Humidity |
converted_ow_2_1_humidity | Converted 1-Wire 2_1 Humidity |
converted_ow_2_2_humidity | Converted 1-Wire 2_2 Humidity |
converted_ow_2_3_humidity | Converted 1-Wire 2_3 Humidity |
converted_ow_2_4_humidity | Converted 1-Wire 2_4 Humidity |
converted_ow_3_1_humidity | Converted 1-Wire 3_1 Humidity |
converted_ow_3_2_humidity | Converted 1-Wire 3_2 Humidity |
converted_ow_3_3_humidity | Converted 1-Wire 3_3 Humidity |
converted_ow_3_4_humidity | Converted 1-Wire 3_4 Humidity |
converted_ow_4_1_humidity | Converted 1-Wire 4_1 Humidity |
converted_ow_4_2_humidity | Converted 1-Wire 4_2 Humidity |
converted_ow_4_3_humidity | Converted 1-Wire 4_3 Humidity |
converted_ow_4_4_humidity | Converted 1-Wire 4_4 Humidity |
converted_ow_1_1_lux | Converted 1-Wire 1_1 Lux |
converted_ow_1_2_lux | Converted 1-Wire 1_2 Lux |
converted_ow_1_3_lux | Converted 1-Wire 1_3 Lux |
converted_ow_1_4_lux | Converted 1-Wire 1_4 Lux |
converted_ow_2_1_lux | Converted 1-Wire 2_1 Lux |
converted_ow_2_2_lux | Converted 1-Wire 2_2 Lux |
converted_ow_2_3_lux | Converted 1-Wire 2_3 Lux |
converted_ow_2_4_lux | Converted 1-Wire 2_4 Lux |
converted_ow_3_1_lux | Converted 1-Wire 3_1 Lux |
converted_ow_3_2_lux | Converted 1-Wire 3_2 Lux |
converted_ow_3_3_lux | Converted 1-Wire 3_3 Lux |
converted_ow_3_4_lux | Converted 1-Wire 3_4 Lux |
converted_ow_4_1_lux | Converted 1-Wire 4_1 Lux |
converted_ow_4_2_lux | Converted 1-Wire 4_2 Lux |
converted_ow_4_3_lux | Converted 1-Wire 4_3 Lux |
converted_ow_4_4_lux | Converted 1-Wire 4_4 Lux |
Bar Graph Field
If you want to change the graph from real-time to History, to see your historical data saved, you can set the next parameters.
For meters
By default, the Widget uses kwh_tot
for meters. If you want to change it and show for example, net_kwh_tot you can set: bar_graph_field=net_kwh_tot
. You can set bar_graph_field
taken the value from the *Bar Graph Key *column.
Bar Graph Key | Description |
---|---|
kwh_tot | Total kWh |
kwh_tariff_1 | kWh Tariff 1 |
kwh_tariff_2 | kWh Tariff 2 |
kwh_tariff_3 | kWh Tariff 3 |
kwh_tariff_4 | kWh Tariff 4 |
rev_kwh_tot | Reverse kWh |
rev_kwh_tariff_1 | Reverse kWh Tariff 1 |
rev_kwh_tariff_2 | Reverse kWh Tariff 2 |
rev_kwh_tariff_3 | Reverse kWh Tariff 3 |
rev_kwh_tariff_4 | Reverse kWh Tariff 4 |
fwd_kwh_tot | Forward kWh |
fwd_kwh_tariff_1 | Forward kWh Tariff 1 |
fwd_kwh_tariff_2 | Forward kWh Tariff 2 |
fwd_kwh_tariff_3 | Forward kWh Tariff 3 |
fwd_kwh_tariff_4 | Forward kWh Tariff 4 |
net_kwh_tot | Net kWh |
net_kwh_tariff_1 | Net kWh Tariff 1 |
net_kwh_tariff_2 | Net kWh Tariff 2 |
net_kwh_tariff_3 | Net kWh Tariff 3 |
net_kwh_tariff_4 | Net kWh Tariff 4 |
pc_raw_1 | Pulse Count 1 |
pc_raw_2 | Pulse Count 2 |
pc_raw_3 | Pulse Count 3 |
pulse_cnt_1 | PC 1 Value |
pulse_cnt_2 | PC 2 Value |
pulse_cnt_3 | PC 3 Value |
converted_pulse_cnt_1 | PC 1 Value Converted |
converted_pulse_cnt_2 | PC 2 Value Converted |
converted_pulse_cnt_3 | PC 3 Value Converted |
kwh_ln_1 | kWh Line 1 |
kwh_ln_2 | kWh Line 2 |
kwh_ln_3 | kWh Line 3 |
Rev_kWh_Ln_1 | Reverse kWh Line 1 |
Rev_kWh_Ln_2 | Reverse kWh Line 2 |
Rev_kWh_Ln_3 | Reverse kWh Line 3 |
————– | ————– |
rms_volts_ln_1_average | RMS Volts Line 1 Average |
rms_volts_ln_1_min | RMS Volts Line 1 Min |
rms_volts_ln_1_max | RMS Volts Line 1 Max |
rms_volts_ln_2_average | RMS Volts Line 2 Average |
rms_volts_ln_2_min | RMS Volts Line 2 Min |
rms_volts_ln_2_max | RMS Volts Line 2 Max |
rms_volts_ln_3_average | RMS Volts Line 3 Average |
rms_volts_ln_3_min | RMS Volts Line 3 Min |
rms_volts_ln_3_max | RMS Volts Line 3 Max |
amps_ln_1_average | Amps Line 1 Average |
amps_ln_1_min | Amps Line 1 Min |
amps_ln_1_max | Amps Line 1 Max |
amps_ln_2_average | Amps Line 2 Average |
amps_ln_2_min | Amps Line 2 Min |
amps_ln_2_max | Amps Line 2 Max |
amps_ln_3_average | Amps Line 3 Average |
amps_ln_3_min | Amps Line 3 Min |
amps_ln_3_max | Amps Line 3 Max |
rms_watts_ln_1_average | RMS Watts Line 1 Average |
rms_watts_ln_1_min | RMS Watts Line 1 Min |
rms_watts_ln_1_max | RMS Watts Line 1 Max |
rms_watts_ln_2_average | RMS Watts Line 2 Average |
rms_watts_ln_2_min | RMS Watts Line 2 Min |
rms_watts_ln_2_max | RMS Watts Line 2 Max |
rms_watts_ln_3_average | RMS Watts Line 3 Average |
rms_watts_ln_3_min | RMS Watts Line 3 Min |
rms_watts_ln_3_max | RMS Watts Line 3 Max |
rms_watts_tot_average | RMS Watts Total Average |
rms_watts_tot_min | RMS Watts Total Min |
rms_watts_tot_max | RMS Watts Total Max |
rms_watts_max_demand_min | RMS Watts Max Demand Min |
rms_watts_max_demand_max | RMS Watts Max Demand Max |
power_factor_ln_1_average | Power Factor Line 1 Average |
power_factor_ln_2_average | Power Factor Line 2 Average |
power_factor_ln_3_average | Power Factor Line 3 Average |
reactive_energy_tot_diff | Reactive Energy Total |
reactive_pwr_ln_1_average | Reactive Power Line 1 Average |
reactive_pwr_ln_1_max | Reactive Power Line 1 Max |
reactive_pwr_ln_2_average | Reactive Power Line 2 Average |
reactive_pwr_ln_2_max | Reactive Power Line 2 Max |
reactive_pwr_ln_3_average | Reactive Power Line 3 Average |
reactive_pwr_ln_3_max | Reactive Power Line 3 Max |
reactive_pwr_tot_average | Reactive Power Total Average |
reactive_pwr_tot_max | Reactive Power Total Max |
line_freq_average | Line Freq Average |
line_freq_max | Line Freq Max |
kwh_ln_1_diff | kWh Line 1 |
kwh_ln_2_diff | kWh Line 2 |
kwh_ln_3_diff | kWh Line 3 |
rev_kwh_ln_1_diff | Rev kWh Line 1 |
rev_kwh_ln_2_diff | Rev kWh Line 2 |
rev_kwh_ln_3_diff | Rev kWh Line 3 |
For ioStacks
By default, the Widget uses pulse_cnt_1
for ioStacks. If you want to change it and show for example, analog_in_1_average
you can set: io_bar_graph_field=analog_in_1_average
. You can set io_bar_graph_field
taken the value from the Bar Graph Key column.
Bar Graph Key | Description |
---|---|
pulse_cnt_1 | Pulse Count 1 |
pulse_cnt_2 | Pulse Count 2 |
pulse_cnt_3 | Pulse Count 3 |
pulse_cnt_4 | Pulse Count 4 |
converted_io_pulse_cnt_1 | PC 1 Converted |
converted_io_pulse_cnt_2 | PC 2 Converted |
converted_io_pulse_cnt_3 | PC 3 Converted |
converted_io_pulse_cnt_4 | PC 4 Converted |
————– | ————– |
analog_in_1_average | Analog Input 1 Avg |
analog_in_1_min | Analog Input 1 Min |
analog_in_1_max | Analog Input 1 Max |
analog_in_2_average | Analog Input 2 Avg |
analog_in_2_min | Analog Input 2 Min |
analog_in_2_max | Analog Input 2 Max |
analog_in_3_average | Analog Input 3 Avg |
analog_in_3_min | Analog Input 3 Min |
analog_in_3_max | Analog Input 3 Max |
analog_in_4_average | Analog Input 4 Avg |
analog_in_4_min | Analog Input 4 Min |
analog_in_4_max | Analog Input 4 Max |
converted_analog_in_1_average | Converted AI 1 Avg |
converted_analog_in_1_min | Converted AI 1 Min |
converted_analog_in_1_max | Converted AI 1 Max |
converted_analog_in_2_average | Converted AI 2 Avg |
converted_analog_in_2_min | Converted AI 2 Min |
converted_analog_in_2_max | Converted AI 2 Max |
converted_analog_in_3_average | Converted AI 3 Avg |
converted_analog_in_3_min | Converted AI 3 Min |
converted_analog_in_3_max | Converted AI 3 Max |
converted_analog_in_4_average | Converted AI 4 Avg |
converted_analog_in_4_min | Converted AI 4 Min |
converted_analog_in_4_max | Converted AI 4 Max |
pulse_hold_ms_1_average | Pulse Hold (ms) 1 Avg |
pulse_hold_ms_1_min | Pulse Hold (ms) 1 Min |
pulse_hold_ms_1_max | Pulse Hold (ms) 1 Max |
pulse_hold_ms_2_average | Pulse Hold (ms) 2 Avg |
pulse_hold_ms_2_min | Pulse Hold (ms) 2 Min |
pulse_hold_ms_2_max | Pulse Hold (ms) 2 Max |
pulse_hold_ms_3_average | Pulse Hold (ms) 3 Avg |
pulse_hold_ms_3_min | Pulse Hold (ms) 3 Min |
pulse_hold_ms_3_max | Pulse Hold (ms) 3 Max |
pulse_hold_ms_4_average | Pulse Hold (ms) 4 Avg |
pulse_hold_ms_4_min | Pulse Hold (ms) 4 Min |
pulse_hold_ms_4_max | Pulse Hold (ms) 4 Max |
pulse_hi_prev_ms_1_average | Pulse High Previous (ms) 1 Avg |
pulse_hi_prev_ms_1_min | Pulse High Previous (ms) 1 Min |
pulse_hi_prev_ms_1_max | Pulse High Previous (ms) 1 Max |
pulse_hi_prev_ms_2_average | Pulse High Previous (ms) 2 Avg |
pulse_hi_prev_ms_2_min | Pulse High Previous (ms) 2 Min |
pulse_hi_prev_ms_2_max | Pulse High Previous (ms) 2 Max |
pulse_hi_prev_ms_3_average | Pulse High Previous (ms) 3 Avg |
pulse_hi_prev_ms_3_min | Pulse High Previous (ms) 3 Min |
pulse_hi_prev_ms_3_max | Pulse High Previous (ms) 3 Max |
pulse_hi_prev_ms_4_average | Pulse High Previous (ms) 4 Avg |
pulse_hi_prev_ms_4_min | Pulse High Previous (ms) 4 Min |
pulse_hi_prev_ms_4_max | Pulse High Previous (ms) 4 Max |
pulse_lo_prev_ms_1_average | Pulse Low Previous (ms) 1 Avg |
pulse_lo_prev_ms_1_min | Pulse Low Previous (ms) 1 Min |
pulse_lo_prev_ms_1_max | Pulse Low Previous (ms) 1 Max |
pulse_lo_prev_ms_2_average | Pulse Low Previous (ms) 2 Avg |
pulse_lo_prev_ms_2_min | Pulse Low Previous (ms) 2 Min |
pulse_lo_prev_ms_2_max | Pulse Low Previous (ms) 2 Max |
pulse_lo_prev_ms_3_average | Pulse Low Previous (ms) 3 Avg |
pulse_lo_prev_ms_3_min | Pulse Low Previous (ms) 3 Min |
pulse_lo_prev_ms_3_max | Pulse Low Previous (ms) 3 Max |
pulse_lo_prev_ms_4_average | Pulse Low Previous (ms) 4 Avg |
pulse_lo_prev_ms_4_min | Pulse Low Previous (ms) 4 Min |
pulse_lo_prev_ms_4_max | Pulse Low Previous (ms) 4 Max |
pulse_hi_total_sec_1_average | Pulse High Total (sec) 1 Avg |
pulse_hi_total_sec_1_min | Pulse High Total (sec) 1 Min |
pulse_hi_total_sec_1_max | Pulse High Total (sec) 1 Max |
pulse_hi_total_sec_2_average | Pulse High Total (sec) 2 Avg |
pulse_hi_total_sec_2_min | Pulse High Total (sec) 2 Min |
pulse_hi_total_sec_2_max | Pulse High Total (sec) 2 Max |
pulse_hi_total_sec_3_average | Pulse High Total (sec) 3 Avg |
pulse_hi_total_sec_3_min | Pulse High Total (sec) 3 Min |
pulse_hi_total_sec_3_max | Pulse High Total (sec) 3 Max |
pulse_hi_total_sec_4_average | Pulse High Total (sec) 4 Avg |
pulse_hi_total_sec_4_min | Pulse High Total (sec) 4 Min |
pulse_hi_total_sec_4_max | Pulse High Total (sec) 4 Max |
pulse_lo_total_sec_1_average | Pulse Low Total (sec) 1 Avg |
pulse_lo_total_sec_1_min | Pulse Low Total (sec) 1 Min |
pulse_lo_total_sec_1_max | Pulse Low Total (sec) 1 Max |
pulse_lo_total_sec_2_average | Pulse Low Total (sec) 2 Avg |
pulse_lo_total_sec_2_min | Pulse Low Total (sec) 2 Min |
pulse_lo_total_sec_2_max | Pulse Low Total (sec) 2 Max |
pulse_lo_total_sec_3_average | Pulse Low Total (sec) 3 Avg |
pulse_lo_total_sec_3_min | Pulse Low Total (sec) 3 Min |
pulse_lo_total_sec_3_max | Pulse Low Total (sec) 3 Max |
pulse_lo_total_sec_4_average | Pulse Low Total (sec) 4 Avg |
pulse_lo_total_sec_4_min | Pulse Low Total (sec) 4 Min |
pulse_lo_total_sec_4_max | Pulse Low Total (sec) 4 Max |
ow_1_1_degc_average | 1-Wire 1_1 Degree C Avg |
ow_1_1_degc_min | 1-Wire 1_1 Degree C Min |
ow_1_1_degc_max | 1-Wire 1_1 Degree C Max |
ow_1_2_degc_average | 1-Wire 1_2 Degree C Avg |
ow_1_2_degc_min | 1-Wire 1_2 Degree C Min |
ow_1_2_degc_max | 1-Wire 1_2 Degree C Max |
ow_1_3_degc_average | 1-Wire 1_3 Degree C Avg |
ow_1_3_degc_min | 1-Wire 1_3 Degree C Min |
ow_1_3_degc_max | 1-Wire 1_3 Degree C Max |
ow_1_4_degc_average | 1-Wire 1_4 Degree C Avg |
ow_1_4_degc_min | 1-Wire 1_4 Degree C Min |
ow_1_4_degc_max | 1-Wire 1_4 Degree C Max |
ow_2_1_degc_average | 1-Wire 2_1 Degree C Avg |
ow_2_1_degc_min | 1-Wire 2_1 Degree C Min |
ow_2_1_degc_max | 1-Wire 2_1 Degree C Max |
ow_2_2_degc_average | 1-Wire 2_2 Degree C Avg |
ow_2_2_degc_min | 1-Wire 2_2 Degree C Min |
ow_2_2_degc_max | 1-Wire 2_2 Degree C Max |
ow_2_3_degc_average | 1-Wire 2_3 Degree C Avg |
ow_2_3_degc_min | 1-Wire 2_3 Degree C Min |
ow_2_3_degc_max | 1-Wire 2_3 Degree C Max |
ow_2_4_degc_average | 1-Wire 2_4 Degree C Avg |
ow_2_4_degc_min | 1-Wire 2_4 Degree C Min |
ow_2_4_degc_max | 1-Wire 2_4 Degree C Max |
ow_3_1_degc_average | 1-Wire 3_1 Degree C Avg |
ow_3_1_degc_min | 1-Wire 3_1 Degree C Min |
ow_3_1_degc_max | 1-Wire 3_1 Degree C Max |
ow_3_2_degc_average | 1-Wire 3_2 Degree C Avg |
ow_3_2_degc_min | 1-Wire 3_2 Degree C Min |
ow_3_2_degc_max | 1-Wire 3_2 Degree C Max |
ow_3_3_degc_average | 1-Wire 3_3 Degree C Avg |
ow_3_3_degc_min | 1-Wire 3_3 Degree C Min |
ow_3_3_degc_max | 1-Wire 3_3 Degree C Max |
ow_3_4_degc_average | 1-Wire 3_4 Degree C Avg |
ow_3_4_degc_min | 1-Wire 3_4 Degree C Min |
ow_3_4_degc_max | 1-Wire 3_4 Degree C Max |
ow_4_1_degc_average | 1-Wire 4_1 Degree C Avg |
ow_4_1_degc_min | 1-Wire 4_1 Degree C Min |
ow_4_1_degc_max | 1-Wire 4_1 Degree C Max |
ow_4_2_degc_average | 1-Wire 4_2 Degree C Avg |
ow_4_2_degc_min | 1-Wire 4_2 Degree C Min |
ow_4_2_degc_max | 1-Wire 4_2 Degree C Max |
ow_4_3_degc_average | 1-Wire 4_3 Degree C Avg |
ow_4_3_degc_min | 1-Wire 4_3 Degree C Min |
ow_4_3_degc_max | 1-Wire 4_3 Degree C Max |
ow_4_4_degc_average | 1-Wire 4_4 Degree C Avg |
ow_4_4_degc_min | 1-Wire 4_4 Degree C Min |
ow_4_4_degc_max | 1-Wire 4_4 Degree C Max |
ow_1_1_humidity_average | 1-Wire 1_1 Humidity Avg |
ow_1_1_humidity_min | 1-Wire 1_1 Humidity Min |
ow_1_1_humidity_max | 1-Wire 1_1 Humidity Max |
ow_1_2_humidity_average | 1-Wire 1_2 Humidity Avg |
ow_1_2_humidity_min | 1-Wire 1_2 Humidity Min |
ow_1_2_humidity_max | 1-Wire 1_2 Humidity Max |
ow_1_3_humidity_average | 1-Wire 1_3 Humidity Avg |
ow_1_3_humidity_min | 1-Wire 1_3 Humidity Min |
ow_1_3_humidity_max | 1-Wire 1_3 Humidity Max |
ow_1_4_humidity_average | 1-Wire 1_4 Humidity Avg |
ow_1_4_humidity_min | 1-Wire 1_4 Humidity Min |
ow_1_4_humidity_max | 1-Wire 1_4 Humidity Max |
ow_2_1_humidity_average | 1-Wire 2_1 Humidity Avg |
ow_2_1_humidity_min | 1-Wire 2_1 Humidity Min |
ow_2_1_humidity_max | 1-Wire 2_1 Humidity Max |
ow_2_2_humidity_average | 1-Wire 2_2 Humidity Avg |
ow_2_2_humidity_min | 1-Wire 2_2 Humidity Min |
ow_2_2_humidity_max | 1-Wire 2_2 Humidity Max |
ow_2_3_humidity_average | 1-Wire 2_3 Humidity Avg |
ow_2_3_humidity_min | 1-Wire 2_3 Humidity Min |
ow_2_3_humidity_max | 1-Wire 2_3 Humidity Max |
ow_2_4_humidity_average | 1-Wire 2_4 Humidity Avg |
ow_2_4_humidity_min | 1-Wire 2_4 Humidity Min |
ow_2_4_humidity_max | 1-Wire 2_4 Humidity Max |
ow_3_1_humidity_average | 1-Wire 3_1 Humidity Avg |
ow_3_1_humidity_min | 1-Wire 3_1 Humidity Min |
ow_3_1_humidity_max | 1-Wire 3_1 Humidity Max |
ow_3_2_humidity_average | 1-Wire 3_2 Humidity Avg |
ow_3_2_humidity_min | 1-Wire 3_2 Humidity Min |
ow_3_2_humidity_max | 1-Wire 3_2 Humidity Max |
ow_3_3_humidity_average | 1-Wire 3_3 Humidity Avg |
ow_3_3_humidity_min | 1-Wire 3_3 Humidity Min |
ow_3_3_humidity_max | 1-Wire 3_3 Humidity Max |
ow_3_4_humidity_average | 1-Wire 3_4 Humidity Avg |
ow_3_4_humidity_min | 1-Wire 3_4 Humidity Min |
ow_3_4_humidity_max | 1-Wire 3_4 Humidity Max |
ow_4_1_humidity_average | 1-Wire 4_1 Humidity Avg |
ow_4_1_humidity_min | 1-Wire 4_1 Humidity Min |
ow_4_1_humidity_max | 1-Wire 4_1 Humidity Max |
ow_4_2_humidity_average | 1-Wire 4_2 Humidity Avg |
ow_4_2_humidity_min | 1-Wire 4_2 Humidity Min |
ow_4_2_humidity_max | 1-Wire 4_2 Humidity Max |
ow_4_3_humidity_average | 1-Wire 4_3 Humidity Avg |
ow_4_3_humidity_min | 1-Wire 4_3 Humidity Min |
ow_4_4_humidity_max | 1-Wire 4_4 Humidity Max |
ow_1_1_lux_average | 1-Wire 1_1 Lux Avg |
ow_1_1_lux_min | 1-Wire 1_1 Lux Min |
ow_1_1_lux_max | 1-Wire 1_1 Lux Max |
ow_1_2_lux_average | 1-Wire 1_2 Lux Avg |
ow_1_2_lux_min | 1-Wire 1_2 Lux Min |
ow_1_2_lux_max | 1-Wire 1_2 Lux Max |
ow_1_3_lux_average | 1-Wire 1_3 Lux Avg |
ow_1_3_lux_min | 1-Wire 1_3 Lux Min |
ow_1_3_lux_max | 1-Wire 1_3 Lux Max |
ow_1_4_lux_average | 1-Wire 1_4 Lux Avg |
ow_1_4_lux_min | 1-Wire 1_4 Lux Min |
ow_1_4_lux_max | 1-Wire 1_4 Lux Max |
ow_2_1_lux_average | 1-Wire 2_1 Lux Avg |
ow_2_1_lux_min | 1-Wire 2_1 Lux Min |
ow_2_1_lux_max | 1-Wire 2_1 Lux Max |
ow_2_2_lux_average | 1-Wire 2_2 Lux Avg |
ow_2_2_lux_min | 1-Wire 2_2 Lux Min |
ow_2_2_lux_max | 1-Wire 2_2 Lux Max |
ow_2_3_lux_average | 1-Wire 2_3 Lux Avg |
ow_2_3_lux_min | 1-Wire 2_3 Lux Min |
ow_2_3_lux_max | 1-Wire 2_3 Lux Max |
ow_2_4_lux_average | 1-Wire 2_4 Lux Avg |
ow_2_4_lux_min | 1-Wire 2_4 Lux Min |
ow_2_4_lux_max | 1-Wire 2_4 Lux Max |
ow_3_1_lux_average | 1-Wire 3_1 Lux Avg |
ow_3_1_lux_min | 1-Wire 3_1 Lux Min |
ow_3_1_lux_max | 1-Wire 3_1 Lux Max |
ow_3_2_lux_average | 1-Wire 3_2 Lux Avg |
ow_3_2_lux_min | 1-Wire 3_2 Lux Min |
ow_3_2_lux_max | 1-Wire 3_2 Lux Max |
ow_3_3_lux_average | 1-Wire 3_3 Lux Avg |
ow_3_3_lux_min | 1-Wire 3_3 Lux Min |
ow_3_3_lux_max | 1-Wire 3_3 Lux Max |
ow_3_4_lux_average | 1-Wire 3_4 Lux Avg |
ow_3_4_lux_min | 1-Wire 3_4 Lux Min |
ow_3_4_lux_max | 1-Wire 3_4 Lux Max |
ow_4_1_lux_average | 1-Wire 4_1 Lux Avg |
ow_4_1_lux_min | 1-Wire 4_1 Lux Min |
ow_4_1_lux_max | 1-Wire 4_1 Lux Max |
ow_4_2_lux_average | 1-Wire 4_2 Lux Avg |
ow_4_2_lux_min | 1-Wire 4_2 Lux Min |
ow_4_2_lux_max | 1-Wire 4_2 Lux Max |
ow_4_3_lux_average | 1-Wire 4_3 Lux Avg |
ow_4_3_lux_min | 1-Wire 4_3 Lux Min |
ow_4_3_lux_max | 1-Wire 4_3 Lux Max |
ow_4_4_lux_average | 1-Wire 4_4 Lux Avg |
ow_4_4_lux_min | 1-Wire 4_4 Lux Min |
ow_4_4_lux_max | 1-Wire 4_4 Lux Max |
converted_ow_1_1_degc_average | Converted 1-Wire 1_1 Degree C Avg |
converted_ow_1_1_degc_min | Converted 1-Wire 1_1 Degree C Min |
converted_ow_1_1_degc_max | Converted 1-Wire 1_1 Degree C Max |
converted_ow_1_2_degc_average | Converted 1-Wire 1_2 Degree C Avg |
converted_ow_1_2_degc_min | Converted 1-Wire 1_2 Degree C Min |
converted_ow_1_2_degc_max | Converted 1-Wire 1_2 Degree C Max |
converted_ow_1_3_degc_average | Converted 1-Wire 1_3 Degree C Avg |
converted_ow_1_3_degc_min | Converted 1-Wire 1_3 Degree C Min |
converted_ow_1_3_degc_max | Converted 1-Wire 1_3 Degree C Max |
converted_ow_1_4_degc_average | Converted 1-Wire 1_4 Degree C Avg |
converted_ow_1_4_degc_min | Converted 1-Wire 1_4 Degree C Min |
converted_ow_1_4_degc_max | Converted 1-Wire 1_4 Degree C Max |
converted_ow_2_1_degc_average | Converted 1-Wire 2_1 Degree C Avg |
converted_ow_2_1_degc_min | Converted 1-Wire 2_1 Degree C Min |
converted_ow_2_1_degc_max | Converted 1-Wire 2_1 Degree C Max |
converted_ow_2_2_degc_average | Converted 1-Wire 2_2 Degree C Avg |
converted_ow_2_2_degc_min | Converted 1-Wire 2_2 Degree C Min |
converted_ow_2_2_degc_max | Converted 1-Wire 2_2 Degree C Max |
converted_ow_2_3_degc_average | Converted 1-Wire 2_3 Degree C Avg |
converted_ow_2_3_degc_min | Converted 1-Wire 2_3 Degree C Min |
converted_ow_2_3_degc_max | Converted 1-Wire 2_3 Degree C Max |
converted_ow_2_4_degc_average | Converted 1-Wire 2_4 Degree C Avg |
converted_ow_2_4_degc_min | Converted 1-Wire 2_4 Degree C Min |
converted_ow_2_4_degc_max | Converted 1-Wire 2_4 Degree C Max |
converted_ow_3_1_degc_average | Converted 1-Wire 3_1 Degree C Avg |
converted_ow_3_1_degc_min | Converted 1-Wire 3_1 Degree C Min |
converted_ow_3_1_degc_max | Converted 1-Wire 3_1 Degree C Max |
converted_ow_3_2_degc_average | Converted 1-Wire 3_2 Degree C Avg |
converted_ow_3_2_degc_min | Converted 1-Wire 3_2 Degree C Min |
converted_ow_3_2_degc_max | Converted 1-Wire 3_2 Degree C Max |
converted_ow_3_3_degc_average | Converted 1-Wire 3_3 Degree C Avg |
converted_ow_3_3_degc_min | Converted 1-Wire 3_3 Degree C Min |
converted_ow_3_3_degc_max | Converted 1-Wire 3_3 Degree C Max |
converted_ow_3_4_degc_average | Converted 1-Wire 3_4 Degree C Avg |
converted_ow_3_4_degc_min | Converted 1-Wire 3_4 Degree C Min |
converted_ow_3_4_degc_max | Converted 1-Wire 3_4 Degree C Max |
converted_ow_4_1_degc_average | Converted 1-Wire 4_1 Degree C Avg |
converted_ow_4_1_degc_min | Converted 1-Wire 4_1 Degree C Min |
converted_ow_4_1_degc_max | Converted 1-Wire 4_1 Degree C Max |
converted_ow_4_2_degc_average | Converted 1-Wire 4_2 Degree C Avg |
converted_ow_4_2_degc_min | Converted 1-Wire 4_2 Degree C Min |
converted_ow_4_2_degc_max | Converted 1-Wire 4_2 Degree C Max |
converted_ow_4_3_degc_average | Converted 1-Wire 4_3 Degree C Avg |
converted_ow_4_3_degc_min | Converted 1-Wire 4_3 Degree C Min |
converted_ow_4_3_degc_max | Converted 1-Wire 4_3 Degree C Max |
converted_ow_4_4_degc_average | Converted 1-Wire 4_4 Degree C Avg |
converted_ow_4_4_degc_min | Converted 1-Wire 4_4 Degree C Min |
converted_ow_4_4_degc_max | Converted 1-Wire 4_4 Degree C Max |
converted_ow_1_1_humidity_average | Converted 1-Wire 1_1 Humidity Avg |
converted_ow_1_1_humidity_min | Converted 1-Wire 1_1 Humidity Min |
converted_ow_1_1_humidity_max | Converted 1-Wire 1_1 Humidity Max |
converted_ow_1_2_humidity_average | Converted 1-Wire 1_2 Humidity Avg |
converted_ow_1_2_humidity_min | Converted 1-Wire 1_2 Humidity Min |
converted_ow_1_2_humidity_max | Converted 1-Wire 1_2 Humidity Max |
converted_ow_1_3_humidity_average | Converted 1-Wire 1_3 Humidity Avg |
converted_ow_1_3_humidity_min | Converted 1-Wire 1_3 Humidity Min |
converted_ow_1_3_humidity_max | Converted 1-Wire 1_3 Humidity Max |
converted_ow_1_4_humidity_average | Converted 1-Wire 1_4 Humidity Avg |
converted_ow_1_4_humidity_min | Converted 1-Wire 1_4 Humidity Min |
converted_ow_1_4_humidity_max | Converted 1-Wire 1_4 Humidity Max |
converted_ow_2_1_humidity_average | Converted 1-Wire 2_1 Humidity Avg |
converted_ow_2_1_humidity_min | Converted 1-Wire 2_1 Humidity Min |
converted_ow_2_1_humidity_max | Converted 1-Wire 2_1 Humidity Max |
converted_ow_2_2_humidity_average | Converted 1-Wire 2_2 Humidity Avg |
converted_ow_2_2_humidity_min | Converted 1-Wire 2_2 Humidity Min |
converted_ow_2_2_humidity_max | Converted 1-Wire 2_2 Humidity Max |
converted_ow_2_3_humidity_average | Converted 1-Wire 2_3 Humidity Avg |
converted_ow_2_3_humidity_min | Converted 1-Wire 2_3 Humidity Min |
converted_ow_2_3_humidity_max | Converted 1-Wire 2_3 Humidity Max |
converted_ow_2_4_humidity_average | Converted 1-Wire 2_4 Humidity Avg |
converted_ow_2_4_humidity_min | Converted 1-Wire 2_4 Humidity Min |
converted_ow_2_4_humidity_max | Converted 1-Wire 2_4 Humidity Max |
converted_ow_3_1_humidity_average | Converted 1-Wire 3_1 humidity Avg |
converted_ow_3_1_humidity_min | Converted 1-Wire 3_1 humidity Min |
converted_ow_3_1_humidity_max | Converted 1-Wire 3_1 humidity Max |
converted_ow_3_2_humidity_average | Converted 1-Wire 3_2 Humidity Avg |
converted_ow_3_2_humidity_min | Converted 1-Wire 3_2 Humidity Min |
converted_ow_3_2_humidity_max | Converted 1-Wire 3_2 Humidity Max |
converted_ow_3_3_humidity_average | Converted 1-Wire 3_3 Humidity Avg |
converted_ow_3_3_humidity_min | Converted 1-Wire 3_3 Humidity Min |
converted_ow_3_3_humidity_max | Converted 1-Wire 3_3 Humidity Max |
converted_ow_3_4_humidity_average | Converted 1-Wire 3_4 Humidity Avg |
converted_ow_3_4_humidity_min | Converted 1-Wire 3_4 Humidity Min |
converted_ow_3_4_humidity_max | Converted 1-Wire 3_4 Humidity Max |
converted_ow_4_1_humidity_average | Converted 1-Wire 4_1 Humidity Avg |
converted_ow_4_1_humidity_min | Converted 1-Wire 4_1 Humidity Min |
converted_ow_4_1_humidity_max | Converted 1-Wire 4_1 Humidity Max |
converted_ow_4_2_humidity_average | Converted 1-Wire 4_2 Humidity Avg |
converted_ow_4_2_humidity_min | Converted 1-Wire 4_2 Humidity Min |
converted_ow_4_2_humidity_max | Converted 1-Wire 4_2 Humidity Max |
converted_ow_4_3_humidity_average | Converted 1-Wire 4_3 Humidity Avg |
converted_ow_4_3_humidity_min | Converted 1-Wire 4_3 Humidity Min |
converted_ow_4_3_humidity_max | Converted 1-Wire 4_3 Humidity Max |
converted_ow_4_4_humidity_average | Converted 1-Wire 4_4 Humidity Avg |
converted_ow_4_4_humidity_min | Converted 1-Wire 4_4 Humidity Min |
converted_ow_4_4_humidity_max | Converted 1-Wire 4_4 Humidity Max |
converted_ow_1_1_lux_average | Converted 1-Wire 1_1 Lux Avg |
converted_ow_1_1_lux_min | Converted 1-Wire 1_1 Lux Min |
converted_ow_1_1_lux_max | Converted 1-Wire 1_1 Lux Max |
converted_ow_1_2_lux_average | Converted 1-Wire 1_2 Lux Avg |
converted_ow_1_2_lux_min | Converted 1-Wire 1_2 Lux Min |
converted_ow_1_2_lux_max | Converted 1-Wire 1_2 Lux Max |
converted_ow_1_3_lux_average | Converted 1-Wire 1_3 Lux Avg |
converted_ow_1_3_lux_min | Converted 1-Wire 1_3 Lux Min |
converted_ow_1_3_lux_max | Converted 1-Wire 1_3 Lux Max |
converted_ow_1_4_lux_average | Converted 1-Wire 1_4 Lux Avg |
converted_ow_1_4_lux_min | Converted 1-Wire 1_4 Lux Min |
converted_ow_1_4_lux_max | Converted 1-Wire 1_4 Lux Max |
converted_ow_2_1_lux_average | Converted 1-Wire 2_1 Lux Avg |
converted_ow_2_1_lux_min | Converted 1-Wire 2_1 Lux Min |
converted_ow_2_1_lux_max | Converted 1-Wire 2_1 Lux Max |
converted_ow_2_2_lux_average | Converted 1-Wire 2_2 Lux Avg |
converted_ow_2_2_lux_min | Converted 1-Wire 2_2 Lux Min |
converted_ow_2_2_lux_max | Converted 1-Wire 2_2 Lux Max |
converted_ow_2_3_lux_average | Converted 1-Wire 2_3 Lux Avg |
converted_ow_2_3_lux_min | Converted 1-Wire 2_3 Lux Min |
converted_ow_2_3_lux_max | Converted 1-Wire 2_3 Lux Max |
converted_ow_2_4_lux_average | Converted 1-Wire 2_4 Lux Avg |
converted_ow_2_4_lux_min | Converted 1-Wire 2_4 Lux Min |
converted_ow_2_4_lux_max | Converted 1-Wire 2_4 Lux Max |
converted_ow_3_1_lux_average | Converted 1-Wire 3_1 Lux Avg |
converted_ow_3_1_lux_min | Converted 1-Wire 3_1 Lux Min |
converted_ow_3_1_lux_max | Converted 1-Wire 3_1 Lux Max |
converted_ow_3_2_lux_average | Converted 1-Wire 3_2 Lux Avg |
converted_ow_3_2_lux_min | Converted 1-Wire 3_2 Lux Min |
converted_ow_3_2_lux_max | Converted 1-Wire 3_2 Lux Max |
converted_ow_3_3_lux_average | Converted 1-Wire 3_3 Lux Avg |
converted_ow_3_3_lux_min | Converted 1-Wire 3_3 Lux Min |
converted_ow_3_3_lux_max | Converted 1-Wire 3_3 Lux Max |
converted_ow_3_4_lux_average | Converted 1-Wire 3_4 Lux Avg |
converted_ow_3_4_lux_min | Converted 1-Wire 3_4 Lux Min |
converted_ow_3_4_lux_max | Converted 1-Wire 3_4 Lux Max |
converted_ow_4_1_lux_average | Converted 1-Wire 4_1 Lux Avg |
converted_ow_4_1_lux_min | Converted 1-Wire 4_1 Lux Min |
converted_ow_4_1_lux_max | Converted 1-Wire 4_1 Lux Max |
converted_ow_4_2_lux_average | Converted 1-Wire 4_2 Lux Avg |
converted_ow_4_2_lux_min | Converted 1-Wire 4_2 Lux Min |
converted_ow_4_2_lux_max | Converted 1-Wire 4_2 Lux Max |
converted_ow_4_3_lux_average | Converted 1-Wire 4_3 Lux Avg |
converted_ow_4_3_lux_min | Converted 1-Wire 4_3 Lux Min |
converted_ow_4_3_lux_max | Converted 1-Wire 4_3 Lux Max |
converted_ow_4_4_lux_average | Converted 1-Wire 4_4 Lux Avg |
converted_ow_4_4_lux_min | Converted 1-Wire 4_4 Lux Min |
converted_ow_4_4_lux_max | Converted 1-Wire 4_4 Lux Max |
Table Fields
In the real-time graph, you can show the raw data in a table. By default the Widget will show all the fields that have values.
For meters
If you want to display specific parameters for your meter reads, you can set them. For example, if you want to display 'amps_ln_1’, 'rms_watts_ln_1’, and 'kwh_ln_1’, you need to add them to the 'table_fields’ parameter in this format: table_fields=amps_ln_1~rms_watts_ln_1~kwh_ln_1
.
All available fields are listed in the table below:
Field | Description |
---|---|
kwh_tot | Total kWh |
kwh_tariff_1 | kWh Tariff 1 |
kwh_tariff_2 | kWh Tariff 2 |
kwh_tariff_3 | kWh Tariff 3 |
kwh_tariff_4 | kWh Tariff 4 |
rev_kwh_tot | Reverse kWh |
rev_kwh_tariff_1 | Reverse kWh Tariff 1 |
rev_kwh_tariff_2 | Reverse kWh Tariff 2 |
rev_kwh_tariff_3 | Reverse kWh Tariff 3 |
rev_kwh_tariff_4 | Reverse kWh Tariff 4 |
fwd_kwh_tot | Forward kWh |
fwd_kwh_tariff_1 | Forward kWh Tariff 1 |
fwd_kwh_tariff_2 | Forward kWh Tariff 2 |
fwd_kwh_tariff_3 | Forward kWh Tariff 3 |
fwd_kwh_tariff_4 | Forward kWh Tariff 4 |
net_kwh_tot | Net kWh |
net_kwh_tariff_1 | Net kWh Tariff 1 |
net_kwh_tariff_2 | Net kWh Tariff 2 |
net_kwh_tariff_3 | Net kWh Tariff 3 |
net_kwh_tariff_4 | Net kWh Tariff 4 |
rms_volts_ln_1 | Volts Line 1 |
rms_volts_ln_2 | Volts Line 2 |
rms_volts_ln_3 | Volts Line 3 |
amps_ln_1 | Amps Line 1 |
amps_ln_2 | Amps Line 2 |
amps_ln_3 | Amps Line 3 |
rms_watts_ln_1 | Watts Line 1 |
rms_watts_ln_2 | Watts Line 2 |
rms_watts_ln_3 | Watts Line 3 |
rms_watts_tot | Total RMS Watts |
power_factor_ln_1 | Power Factor Line 1 |
power_factor_ln_2 | Power Factor Line 2 |
power_factor_ln_3 | Power Factor Line 3 |
rms_watts_max_demand | RMS Watts Max Demand |
max_demand_period | Max Demand Period |
ct_ratio | CT Ratio |
pc_raw_1 | Pulse Count 1 |
pc_raw_2 | Pulse Count 2 |
pc_raw_3 | Pulse Count 3 |
pulse_cnt_1 | PC 1 Value |
pulse_cnt_2 | PC 2 Value |
pulse_cnt_3 | PC 3 Value |
converted_pulse_cnt_1 | PC 1 Value Converted |
converted_pulse_cnt_2 | PC 2 Value Converted |
converted_pulse_cnt_3 | PC 3 Value Converted |
pulse_ratio_1 | Pulse Ratio 1 |
pulse_ratio_2 | Pulse Ratio 2 |
pulse_ratio_3 | Pulse Ratio 3 |
state_inputs | Pulse Input State |
reactive_energy_tot | Total Reactive Energy |
kwh_rst | kWh Rst |
rev_kwh_rst | Rev kWh Rst |
reactive_pwr_ln_1 | Reactive Power Line 1 |
reactive_pwr_ln_2 | Reactive Power Line 2 |
reactive_pwr_ln_3 | Reactive Power Line 3 |
reactive_pwr_tot | Total Reactive Power |
kwh_scale | kWh Scale |
line_freq | Line Freq |
state_watts_dir | State Watts Dir |
state_out | State Out |
kwh_ln_1 | kWh Line 1 |
kwh_ln_2 | kWh Line 2 |
kwh_ln_3 | kWh Line 3 |
rev_kwh_ln_1 | Rev kWh Line 1 |
rev_kwh_ln_2 | Rev kWh Line 2 |
rev_kwh_ln_3 | Rev kWh Line 3 |
max_demand_rst | Max Demand Rst |
cf_ratio | CF Ratio |
meter_status_code | Meter Status Code |
net_calc_watts_ln_1 | Net Watts Line 1 |
net_calc_watts_ln_2 | Net Watts Line 2 |
net_calc_watts_ln_3 | Net Watts Line 3 |
net_calc_watts_tot | Net Watts Total |
For ioStacks
If you want to display specific parameters for your ioStack reads, you can set them. For example, if you just want to display 'analog_in_1’, 'analog_in_2’, and 'analog_in_3’, you need to add them to the 'table_fields’ parameter in this format: io_table_fields=analog_in_1~analog_in_2~analog_in_3
.
All available fields are listed in the table below:
Field | Description |
---|---|
analog_in_1 | Analog Input 1 |
analog_in_2 | Analog Input 2 |
analog_in_3 | Analog Input 3 |
analog_in_4 | Analog Input 4 |
state_inputs | Pulse Input State |
state_out | Control Output State |
pulse_cnt_1 | Pulse Count 1 |
pulse_cnt_2 | Pulse Count 2 |
pulse_cnt_3 | Pulse Count 3 |
pulse_cnt_4 | Pulse Count 4 |
pulse_cnt_rst_1 | Resettable Pulse Count 1 |
pulse_cnt_rst_2 | Resettable Pulse Count 2 |
pulse_cnt_rst_3 | Resettable Pulse Count 3 |
pulse_cnt_rst_4 | Resettable Pulse Count 4 |
pulse_hold_ms_1 | Pulse Hold (ms) 1 |
pulse_hold_ms_2 | Pulse Hold (ms) 2 |
pulse_hold_ms_3 | Pulse Hold (ms) 3 |
pulse_hold_ms_4 | Pulse Hold (ms) 4 |
pulse_hi_prev_ms_1 | Pulse High Previous (ms) 1 |
pulse_hi_prev_ms_2 | Pulse High Previous (ms) 2 |
pulse_hi_prev_ms_3 | Pulse High Previous (ms) 3 |
pulse_hi_prev_ms_4 | Pulse High Previous (ms) 4 |
pulse_lo_prev_ms_1 | Pulse Low Previous (ms) 1 |
pulse_lo_prev_ms_2 | Pulse Low Previous (ms) 2 |
pulse_lo_prev_ms_3 | Pulse Low Previous (ms) 3 |
pulse_lo_prev_ms_4 | Pulse Low Previous (ms) 4 |
pulse_hi_total_sec_1 | Pulse High Total (sec) 1 |
pulse_hi_total_sec_2 | Pulse High Total (sec) 2 |
pulse_hi_total_sec_3 | Pulse High Total (sec) 3 |
pulse_hi_total_sec_4 | Pulse High Total (sec) 4 |
pulse_lo_total_sec_1 | Pulse Low Total (sec) 1 |
pulse_lo_total_sec_2 | Pulse Low Total (sec) 2 |
pulse_lo_total_sec_3 | Pulse Low Total (sec) 3 |
pulse_lo_total_sec_4 | Pulse Low Total (sec) 4 |
ow_1_1_degc | 1-Wire 1_1 Degree C |
ow_1_2_degc | 1-Wire 1_2 Degree C |
ow_1_3_degc | 1-Wire 1_3 Degree C |
ow_1_4_degc | 1-Wire 1_4 Degree C |
ow_2_1_degc | 1-Wire 2_1 Degree C |
ow_2_2_degc | 1-Wire 2_2 Degree C |
ow_2_3_degc | 1-Wire 2_3 Degree C |
ow_2_4_degc | 1-Wire 2_4 Degree C |
ow_3_1_degc | 1-Wire 3_1 Degree C |
ow_3_2_degc | 1-Wire 3_2 Degree C |
ow_3_3_degc | 1-Wire 3_3 Degree C |
ow_3_4_degc | 1-Wire 3_4 Degree C |
ow_4_1_degc | 1-Wire 4_1 Degree C |
ow_4_2_degc | 1-Wire 4_2 Degree C |
ow_4_3_degc | 1-Wire 4_3 Degree C |
ow_4_4_degc | 1-Wire 4_4 Degree C |
ow_1_1_humidity | 1-Wire 1_1 Humidity |
ow_1_2_humidity | 1-Wire 1_2 Humidity |
ow_1_3_humidity | 1-Wire 1_3 Humidity |
ow_1_4_humidity | 1-Wire 1_4 Humidity |
ow_2_1_humidity | 1-Wire 2_1 Humidity |
ow_2_2_humidity | 1-Wire 2_2 Humidity |
ow_2_3_humidity | 1-Wire 2_3 Humidity |
ow_2_4_humidity | 1-Wire 2_4 Humidity |
ow_3_1_humidity | 1-Wire 2_1 Humidity |
ow_3_2_humidity | 1-Wire 3_2 Humidity |
ow_3_3_humidity | 1-Wire 3_3 Humidity |
ow_3_4_humidity | 1-Wire 3_4 Humidity |
ow_4_1_humidity | 1-Wire 4_1 Humidity |
ow_4_2_humidity | 1-Wire 4_2 Humidity |
ow_4_3_humidity | 1-Wire 4_3 Humidity |
ow_4_4_humidity | 1-Wire 4_4 Humidity |
ow_1_1_lux | 1-Wire 1_1 Lux |
ow_1_2_lux | 1-Wire 1_2 Lux |
ow_1_3_lux | 1-Wire 1_3 Lux |
ow_1_4_lux | 1-Wire 1_4 Lux |
ow_2_1_lux | 1-Wire 2_1 Lux |
ow_2_2_lux | 1-Wire 2_2 Lux |
ow_2_3_lux | 1-Wire 2_3 Lux |
ow_2_4_lux | 1-Wire 2_4 Lux |
ow_3_1_lux | 1-Wire 3_1 Lux |
ow_3_2_lux | 1-Wire 3_2 Lux |
ow_3_3_lux | 1-Wire 3_3 Lux |
ow_3_4_lux | 1-Wire 3_4 Lux |
ow_4_1_lux | 1-Wire 4_1 Lux |
ow_4_2_lux | 1-Wire 4_2 Lux |
ow_4_3_lux | 1-Wire 4_3 Lux |
ow_4_4_lux | 1-Wire 4_4 Lux |
Relative View
You can set the minimum and maximum values to define the range of your data displayed on the graph. The minimum value determines where the graph starts at the bottom, while the maximum value determines where the graph ends at the top.
For meters
To activate the relative view, you need to set compare=1
, and to set the minimum, use compare_min_y=100
, and compare_max_y=200
for the maximum
For ioStacks
To activate the relative view, you need to set io_compare=1
, and to set the minimum, use io_compare_min_y=100
, and io_compare_max_y=200
for the maximum
Bar Graph Color
For your historical graph, you can select the color of the bars displayed. Set it using: historical=Orange
.
You can choose from the following list of colors:
- Green
- Orange
- Purple
- Blue
Layout
You can display multiple options on the graph, such as the Reads table, Range table, or a table with the raw data. You can show multiple tables or simply hide all buttons on the graph.
show_legend
: Show reads values.show_range
: Show a table with the minimum and maximum data for the selected range of reads.show_table
: Show a table with the raw data from the API.show_buttons
: Hide all elements on the graph, but shows the buttons below the graph.hide_all
: Hides all elements on the graph.
To add one element to your graph, you have to set: layout=show_table
to show the table with the raw data. But if you want to display more than one box on the graph, you can set them using ~ between each element: layout=show_legend~show_table
. This will show the reads values and the table with the raw data.
Available Measurements
Key | Value |
---|---|
gl | US Gallon |
qt | US Quart |
pt | US Pint |
l | Liter |
ml | Milliliter |
m3 | Cubic Meter |
ft3 | Cubic Foot |
in3 | Cubic Inch |
CCF | CCF |
kWh | Kilowatt Hour (kWh) |
Available Currency Codes
Currency | Country Name |
---|---|
USD | United States Dollar |
ALL | Albania Lek |
AFN | Afghanistan Afghani |
ARS | Argentina Peso |
AWG | Aruba Guilder |
AUD | Australia Dollar |
AZN | Azerbaijan New Manat |
BSD | Bahamas Dollar |
BBD | Barbados Dollar |
BYR | Belarus Ruble |
BZD | Belize Dollar |
BMD | Bermuda Dollar |
BOB | Bolivia Boliviano |
BAM | Bosnia and Herzegovina Convertible Marka |
BWP | Botswana Pula |
BGN | Bulgaria Lev |
BRL | Brazil Real |
BND | Brunei Darussalam Dollar |
KHR | Cambodia Riel |
CAD | Canada Dollar |
KYD | Cayman Islands Dollar |
CLP | Chile Peso |
CNY | China Yuan Renminbi |
COP | Colombia Peso |
CRC | Costa Rica Colon |
HRK | Croatia Kuna |
CUP | Cuba Peso |
CZK | Czech Republic Koruna |
DKK | Denmark Krone |
DOP | Dominican Republic Peso |
XCD | East Caribbean Dollar |
EGP | Egypt Pound |
SVC | El Salvador Colon |
EEK | Estonia Kroon |
EUR | Euro Member Countries |
FKP | Falkland Islands (Malvinas) Pound |
FJD | Fiji Dollar |
GHC | Ghana Cedi |
GIP | Gibraltar Pound |
GTQ | Guatemala Quetzal |
GGP | Guernsey Pound |
GYD | Guyana Dollar |
HNL | Honduras Lempira |
HKD | Hong Kong Dollar |
HUF | Hungary Forint |
ISK | Iceland Krona |
INR | India Rupee |
IDR | Indonesia Rupiah |
IRR | Iran Rial |
IMP | Isle of Man Pound |
ILS | Israel Shekel |
JMD | Jamaica Dollar |
JPY | Japan Yen |
JEP | Jersey Pound |
KZT | Kazakhstan Tenge |
KPW | Korea (North) Won |
KRW | Korea (South) Won |
KGS | Kyrgyzstan Som |
LAK | Laos Kip |
LVL | Latvia Lat |
LBP | Lebanon Pound |
LRD | Liberia Dollar |
LTL | Lithuania Litas |
MKD | Macedonia Denar |
MYR | Malaysia Ringgit |
MUR | Mauritius Rupee |
MXN | Mexico Peso |
MNT | Mongolia Tughrik |
MZN | Mozambique Metical |
NAD | Namibia Dollar |
NPR | Nepal Rupee |
ANG | Netherlands Antilles Guilder |
NZD | New Zealand Dollar |
NIO | Nicaragua Cordoba |
NGN | Nigeria Naira |
KPW | Korea (North) Won |
NOK | Norway Krone |
OMR | Oman Rial |
PKR | Pakistan Rupee |
PAB | Panama Balboa |
PYG | Paraguay Guarani |
PEN | Peru Nuevo Sol |
PHP | Philippines Peso |
PLN | Poland Zloty |
QAR | Qatar Riyal |
RON | Romania New Leu |
RUB | Russia Ruble |
SHP | Saint Helena Pound |
SAR | Saudi Arabia Riyal |
RSD | Serbia Dinar |
SCR | Seychelles Rupee |
SGD | Singapore Dollar |
SBD | Solomon Islands Dollar |
SOS | Somalia Shilling |
ZAR | South Africa Rand |
KRW | Korea (South) Won |
LKR | Sri Lanka Rupee |
SEK | Sweden Krona |
CHF | Switzerland Franc |
SRD | Suriname Dollar |
SYP | Syria Pound |
TWD | Taiwan New Dollar |
THB | Thailand Baht |
TTD | Trinidad and Tobago Dollar |
TRL | Turkey Lira |
TVD | Tuvalu Dollar |
UAH | Ukraine Hryvnia |
GBP | United Kingdom Pound |
UYU | Uruguay Peso |
UZS | Uzbekistan Som |
VEF | Venezuela Bolivar |
VND | Viet Nam Dong |
YER | Yemen Rial |
ZWD | Zimbabwe Dollar |