Jump to content

Writing energy monitor output to csv file


AlexE

Recommended Posts

I was wondering whether it is possible to write the query results from an esiy program to a csv file (or similar).

I have several zooz plug with energy monitor and do not really need a sophisticated online solution, but a rather a simple data dump into a spreadsheet of some sorts. I was browsing the forum etc but could not really find an answer whether this is possible? 

Thanks for any help in advance

Link to comment
14 hours ago, AlexE said:

I was wondering whether it is possible to write the query results from an esiy program to a csv file (or similar).

There is.  See this page in the wiki:

https://wiki.universal-devices.com/index.php?title=ISY-994i_Series_INSTEON:Networking#Dynamic/Custom_Page_Creation

In the example below, the values from a couple of moisture sensors are inserted into a csv file.

 

Screenshot 2023-03-19 at 1.35.12 AM.png

Link to comment

@MWaremanhad posted some programs he developed to map the results of this onto a graphic chart, all running from internal ISY code, and I had developed some ISY recording techniques from that to shape the graphic charts into better looking displays, along with dynamic file names that refreshed each month.

This all seem to have been deleted from the archives now, according to the wiki forum link. :(

Link to comment

I got it to write a csv file but I am struggling with writing the actual value for the file for the power.

image.thumb.png.d0de09c28bf98bec0d8a04ae99ca8c7d.png

 

so my custom notification reads:

${sys.date},${sys.time},$(sys.node.ZY014_143_33_3.ST}

it outputs day and time correctly but the actual energy output just reads : "$(sys.node.ZY014_143_33_3.ST}"

I guess I am missing somehting?

Thanks

 

 

Link to comment
19 hours ago, AlexE said:

ok - bracket was wrong:

${sys.date},${sys.time},${sys.node.ZY014_143_33_3.ST}

now it writes: 

node[ZY014_143_33_3]

 

 

I don't understand Z-Wave nodes all that well, but I suspect that the node you're trying to report on doesn't support an "ST" value.  

When you use the X-Ray utility, select "Node Info" instead of "Node Definition" on the device, and look between the <properties> ... </properties> tags (if it has any) for the property id to query.

I don't have one of the devices you're asking about, but I think I'd have to use the "CLITEMP" property if I wanted to report on the temperature reported by my Z-Wave multi sensor.

    <properties>
        <property uom="51" formatted="100%" value="100" id="BATLVL"/>
        <property prec="1" uom="17" formatted="63.5&#xb0;F" value="635" id="CLITEMP"/>
        <property uom="36" formatted="0 lux" value="0" id="LUMIN"/>
    </properties>

 

Link to comment
20 hours ago, AlexE said:

ok - bracket was wrong:

${sys.date},${sys.time},${sys.node.ZY014_143_33_3.ST}

now it writes: 

node[ZY014_143_33_3]

 

 

If you type the following into a browser window, click through the warning and then enter user name & password, you get a page that gives you all of the property id's for that node (if the node address is written correctly (the example is based on using eisy via https, with a node address of n001_81668 (from node server, update it for other type of nodes):

https://xxx.xxx.x.xxx:8443/rest/nodes/n001_81668

 

Edited by DennisC
Added explanation
Link to comment

<nodeInfo>
<node flag="0" nodeDefId="ZY014_143">
<address>ZY014_143</address>
<name>ZY 014 Energy Meter</name>
<family>12</family>
<parent type="3">36911</parent>
<type>4.16.1.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>ZY014_1</pnode>
<rpnode>ZY014_1</rpnode>
<sgid>143</sgid>
<custom flags="128" val1="0"/>
<devtype>
<gen>4.16.1</gen>
<mfg>634.257.13</mfg>
<cat>143</cat>
</devtype>
</node>
<properties>
<property id="CC" value="0" formatted="0.000 Amps" uom="1" prec="3"/>
<property id="CPW" value="0" formatted="0.000 Watts" uom="73" prec="3"/>
<property id="CV" value="124871" formatted="124.871 Volts" uom="72" prec="3"/>
<property id="TPW" value="4988" formatted="4.988 kWh" uom="33" prec="3"/>
</properties>
</nodeInfo>

That's the output using the web browser

That would  mean

${sys.node.ZY014_143_33_3.tpw},
${sys.node.ZY014_143_72_3.cv}

should work? Still only writes 

node[ZY014_143_33_3]
node[ZY014_143_72_3]
 

into the csv file.

 

Thanks again

Link to comment

I must be missing something, where are you getting the following from:

_33_3 & _72_3 

Start simple using a program and an email notification so you can right click on the program, select run then and have a notification sent. Y email.

Once you get the right output, then transfer the correct node address to your cvs output.

Does the following work:

${sys.node.ZY014_143.TPW},
${sys.node.ZY014_143.CV}

Link to comment
Guest
This topic is now closed to further replies.

×
×
  • Create New...