This Quickapp retrieves energy consumption, energy production, gas and water usage from the (P1 Monitor) energy, gas and water meter.
Child Devices for Consumption (Watt), Production (Watt), Todays Consumption (kWh), Todays Production (kWh), Gross Consumption (Watt), Device Consumption (Watt), Waterflow (Liter), Consumption High (kWh), Consumption Low (kWh), Production High (kWh), Production Low (kWh), Consumption L1 L2 L3 (Watt), Production L1 L2 and L3 (Watt), Ampere L1 L2 L3 (Amp), Voltage L1 L2 L3 (Volt), Total Gas (m³) and Total Waterflow (m³).
Energy consumption and energy production is added to the (new) HC3 energy panel.
All power consumption of all HomeCenter devices is summarized. The difference between the total power consumption and the power consumption of the HomeCenter devices is put in a unused device (unless the powerID = 0 or empty).
The Child device Todays Consumption can be selected in the Generals Settings as "Main energy meter". Doing so, the summary consumption will be from this device. If not, the consumption will come from the Child device Consumption High, the Child device Consumption Low and all your energy registering Z-wave devices and there values will be counted twice unless you change the Energy panel setting of each energy registering Z-wave device.
It is now possible to process messages from the smart meter every second. Of course, this is only possible if the smart meter actually sends a message every second. This can be turned on via the ztatz software P1 port configuration page via the "maximum processing speed" option. Note that this gives a high(er) load on the Rpi. It has been tested on the Rpi3/Rpi4 and works well on it. Older or other RPIs have not been tested.
BTW The P1 Monitor QuickApp uses 2 API calls each cycle, and if you also use Waterflow, 3 API calls each cycle. With an interval setting of 10 seconds there is an API call every 5 seconds (and with Waterflow enabled, every 3.33 seconds). So the fastest interval setting will probably be 3 seconds with Waterflow and 2 seconds without Waterflow.
Version 1.6 (8th January 2022)
- Changed the waterflow algoritme to show more stable and more acurate measurements
- Small change in the code for checking existance of waterflow sensor
- Changed the Waterflow unit from Liter to L/min
- Added experimental net consumption to power
- Added Lasthour gas to labels
- Changed the API request for status to json output
- P1 Monitor version: 20210909 V1.4.0 (see: https://www.ztatz.nl)
- Raspberry Pi model: Raspberry Pi 4 Model B Rev 1.1
- Python versie: 3.7.3
I use a Smart Meter Cable Starter Kit:
- Raspberry Pi 4 Model B Rev 1.1 2GB
- 8GB Micro SDHC
- Original Raspberry Pi 4B Enclosure
- Original Raspberry Pi USB-C 3A power supply
- Smart Meter cable
- P1 Monitor software from: https://www.ztatz.nl
- Water Flow Sensor (M18 8mm sensing DC 5V NPN NO LJ18A3-8-Z/BX-5V cylinder inductive proximity sensor switch work voltage 5VDC special for MCU)
QuickApp variables (mandatory, they will be automatically added with the default values):
- IPaddress = IP address of your P1 monitor
- Interval = Number in seconds, the P1 Monitor normally is updated every 10 seconds
- powerID = ID of the device where you want to capture the 'delta' power, use 0 if you don't want to store the energy consumption
- debugLevel = Number (1=some, 2=few, 3=all) (default = 1)
- waterMeter = Existance of watermeter true or false (default = false)
How to install:
- Open the Configuration Interface
- Go to Settings > Devices
- Click +
- Choose Other Device
- Choose Upload File
- Choose file from your computer with .fqa