Showing posts with label rfxmeter. Show all posts
Showing posts with label rfxmeter. Show all posts

December 2, 2016

Wireless Pulse Counter 3 (WPC3)

I have updated the firmware to support the Telldus products.
For Telldus products it is needed to convert the received data into Energy and Power consumption.
An example how this is done can be seen in the file wpc-calc.c here.

Another update is the 1-wire support. Now the WPC can communicate to the same 1-wire-devices as the WMS mk3.
  • DS18B20
  • DS18S20
  • DS1820
  • DS18B22
  • DS2450
  • MAX31850K
Of course is the DHT22 also supported.

The new Wireless Pulse Counter 3 (WPC3) is available now in the foogadgets store.

May 3, 2015

How to make the WPC work in Domoticz


Updated 2016-12-04: Updated to reflect Mattias new lua-script.


Here are some short steps to get the WPC working in Domoticz.

1. Enable the X10 protocol.
In Domoticz: Click Setup and then Hardware. Click Set Mode for the RFXtrx433(E). Check the X10 checkbox if not already checked.
The WPC should after this, be shown as a RFXMeter
(In Domoticz you can fully ignore the other type of protocol the WPC transmits. i.e. Temperature/Humidity sensor with ID 4600)

2. Turn on and find the WPC in Domoticz.
In this step, the WPC does not need to be mounted to your electrical meter or Gas meter or whatever you like to count. It just need to be powered on and within range of the RFXtrx433(E)
Click Setup then Devices. Click the button All Devices and locate the RFXMeter sensor in the list. The WPC transmits a signal immediately at power on, and the once every 60 seconds, so it should be found in the list.

3. Add the RFXMeter to your list of Used sensors.
Click the green circle with white arrow pointing to the right, on the right most side of the page.
If it is a blue circle, it is already added to your list of Used sensors.

4. Name your RFXMeter sensor.
Click on the tab Utility in the top. Locate the RFXMeter, and click Edit and give it a name of your choice. This name will be used further down in this list. Also choose Type Energy in the dropdown list (if that is what you like to measure).

5. Add device that show Power consumption [W].
To be able to not only see Energy [Wh] but also see the Power usage [W], please download this excellent lua-script from one of my customers (credit to Mattias Hedström), https://github.com/mrhedstrom/domoticz/blob/master/scripts/lua/script_device_ActualEnergy.lua
To make it work, you need to follow step 5.1 to 5.3 below.

5.1 Create an Electric virtual sensor.
Click Setup and then Hardware. As Type, choose Dummy... Add a name and click Add.
From the newly created Dummy-device, click Create Virtual Sensors. In the drop-down list choose Electric...
Click Setup and then Devices. Click All devices. You should be able to find your newly created Electric virtual sensor. Make note of its idx for later use.

5.2 Modify the script to fit your local settings.
energyCounter: This should be the same string as the name you gave to the RFXMeter in step 4 above.
dummyEnergyMeter: This should be the same string as the name you gave to the Electric Virtual Sensor created in step 5.1
dummyEnergyMeterid: Use the idx integer of the Electric Virtual Sensor created in step 5.1 above.
Now all the software is in place and you should get reports once every minute from the WPC to Domoticz.

5.3 Place the updated script in the Domoticz subfolder <path-to-domoticz>/scripts/lua/

6. Mount your WPC in a secure and light tight fashion onto your Energy meter and enjoy your graphs in Domoticz.


Credit to Mattias Hedström and Patrik Nordelind for helping out making this list.

April 28, 2015

Tellstick DUO firmware with support for the WPC

Yesterday I sent a pull request to Telldus asking to include my code that adds native support for the Wireless Pulse Counter for the Tellstick DUO.
The update contains two parts, The patched firmware for the Tellstick DUO, and the patched telldus-core that runs on the computer where the Tellstick DUO is connected. The Firmware I provide compiled and it is ready for download, whereas the telldus-core software you need to compile yourself.

Of course, despite this code update, you will still need to do at least some calculations on the receiving side.

Firmware

The firmware adds support for the RFXCOM-protocol that is used by the WPC (Protocol description...kind of).
The effect of using this firmware is that the WPC will no longer show up as a thermometer but instead as a RFXmeter device which is made for presenting number of pulses, and not temperature, humidity, wind speed etc. The earlier calculations below will no longer be needed,

 if ( !signbit(temperature) ) {
  i_counts = humidity*4096 + (int)(10.0*temperature);
 } else {
  i_counts = humidity*4096 - (int)(10.0*temperature) + 2048;
 }

The maximum number of counts is also increased from 413,696 to 2^24 (16,777,216).

NOTE! I have only tested this firmware on my own Tellstick DUO.
The same code have been provided to Telldus so that they can include it in the next release of the firmware.
It is also likely to be released in the Tellstick NET firmware as well since the same code can be used. Link to the Telldus ticket.

The already compiled firmware can be downloaded here,
UPDATED: 2015-04-30: I added another check to make sure it is a RFXCOM package and also fixed so that the checksum is kept through the Tellstick.

Software

The telldus-core software also need to be updated. This is the software that interpret the new raw data that comes from the Tellstick DUO when it receives data from a WPC. The Pull request for this can be downloaded here, telldus-core patch.

Calculations

First get to know your energy meter recalculation factor. Find the [imp/kWh] marking on your energy meter. Then divide 1,000 with the number you find.

  Example 1. If it is marked with 10,000imp/kWh the recalculation factor is 1,000/10,000 = 1/10
  Example 2. If it is marked with 500imp/kWh the recalculation factor is 1,000/500 = 2

Once you have the recalculation factor you can use that to calculate the consumed Energy and present Power usage.

Energy [kWh], multiply your received number with the recalculation factor for your energy meter. You will likely want it in [kWh], thus the dividend 1,000.

          Energy = count • (recalculation factor) / 1,000

Power usage [kW] you need to divide the difference in detected pulses with the elapsed time [s].

          Power = ∆ count • (recalculation factor) • 60 • 60 / ∆ t / 1,000

∆ t is given in seconds [s]. Usually the WPC transmit approximately every 60 second, but if one transmission is lost, the ∆ t will be around 120 seconds etc.
The dividend 1,000 is there to get the result in [kW]