---
title: "Z_Wave_Vera_EnergyMeter"
canonical: "https://docs.cuesystem.com/space/CVCDD/607715737/Z_Wave_Vera_EnergyMeter"
format: markdown
---
> Macro (toc)

---

The definition of **EnergyMetering1** device is defined as EnergyMetering1 UPnP device type.

Note that some products of SwitchPower1 type are combining SwitchPower1 with EnergyMetering1 device type(both sharing the same device “ID”). If such a product is to be used in the CVC project and functionality of both types are to be used, then there is necessary to put both these devices into CVC configuration and set their property “ID” to the same value as assigned in the Vera project.

# Properties

|  |  |  |  |
| --- | --- | --- | --- |
| Property name | Data type | Default value | Description |
| Device |
| ID | Byte | 0 | ID of this device - see [https://cue.atlassian.net/wiki/spaces/CVCDD/pages/619446713](https://cue.atlassian.net/wiki/spaces/CVCDD/pages/619446713). |
| Pooling |
| Period | Time | :1 | Time period in which the driver is pooling the actual device to check its current status to recognize its status changes to generate event. |
| Event OnStatusChange |
| Enable | Boolean | No | Yes/No enables/disables generation of event when device status change was detected |
| Debug |
| Debug print | Boolean | No | Yes/No enables/disables the debug prints report from the driver. |

# Events

## OnStatusChange

This event is generated whenever the driver recognizes the change in the Energy mettering value. Note that event must be enabled by appropriate property (see above). The current status of the device is pooled in time period also set by the driver property (see above)

#### Syntax

```visualbasic
Event OnStatusChange As Process(newwatts As Double)
```

#### Parameters

newwatts

Double - new energy value in Watts

#### Example

```visualbasic
Process Z_Wave_EnergyMetering1_OnStatusChange(iWatts As Double) Link Z_Wave_EnergyMetering1.OnStatusChange
  DebugPrintFormat ( " NEW CONSUMPTION {n} Watts",iWatts)
End Process
```

# Commands

## GetMyID

This command retuns current value of this device property “ID”

#### Syntax

```visualbasic
Function GetMyId() As Byte
```

#### Return value

Byte - ID in range 3-255

#### Example

```visualbasic
Id := Z_Wave_EnergyMetering1.GetMyId()
//reads ID of this EnergyMetering1 device
```

## GetWatts

This command reads current power level value in Watts  from Z_Wave device of type EnergyMetering1

#### Syntax

```visualbasic
Function GetWatts() As Double
```

#### Return value

Double - energy in Watts

#### Example

```visualbasic
iPower := Z_Wave_EnergyMetering1.GetWatts()
//reads status of this EnergyMetering1 device
```