[APP][Pro] StecaGrid - Get your data from your inverter right into Homey

Here is my Solar Frontier Turbo 1P (xml)

<root>
<Device Name="Turbo 1P" Type="Inverter" Serial="754415AF005664xxxx" BusAddress="1" NetBiosName="INV005664000021" IpAddress="192.168.1.104" DateTime="2023-12-29T12:57:57">
<Measurements>
<Measurement Value="239.098" Unit="V" Type="AC_Voltage"/>
<Measurement Value="1.526" Unit="A" Type="AC_Current"/>
<Measurement Value="347.530" Unit="W" Type="AC_Power"/>
<Measurement Value="49.996" Unit="Hz" Type="AC_Frequency"/>
<Measurement Value="575.640" Unit="V" Type="DC_Voltage"/>
<Measurement Value="0.614" Unit="A" Type="DC_Current"/>
<Measurement Value="354.020" Unit="W" Type="DC_Power"/>
<Measurement Value="30.000" Unit="°C" Type="Temp"/>
</Measurements>
</Device>
</root>

Here is the gen.measurements.js:

document.write("<table class='invisible'><tr class='invisible'><th class='invisible'><h3>Inverter</h3></th><th class='invisible'><h3></h3></th></tr><tr class='invisible'><td class='invisible' valign='top' align='center'><table><tr><th>Name</th><th>Value</th><th>Unit</th></tr><tr><td>P DC</td><td align='right'> 381.01</td><td>W</td></tr><tr><td>U DC</td><td align='right'> 581.04</td><td>V</td></tr><tr><td>I DC</td><td align='right'>   0.65</td><td>A</td></tr><tr><td>U AC</td><td align='right'> 240.21</td><td>V</td></tr><tr><td>I AC</td><td align='right'>   1.63</td><td>A</td></tr><tr><td>F AC</td><td align='right'>  50.01</td><td>Hz</td></tr><tr><td>P AC</td><td align='right'> 375.00</td><td>W</td></tr></table></td><td class='invisible' valign='top' align='center'></table></td></tr></table>");

Another good one is this gen.yield.day.chart.js

See line for overall day generation kWh->

document.getElementById("labelValueId").innerHTML = "   1.325kWh 29.12.2023";

Full

var chartData =
{
"labels":
[
"00:00", "", "", "", "", "",
"01:00", "", "", "", "", "",
"02:00", "", "", "", "", "",
"03:00", "", "", "", "", "",
"04:00", "", "", "", "", "",
"05:00", "", "", "", "", "",
"06:00", "", "", "", "", "",
"07:00", "", "", "", "", "",
"08:00", "", "", "", "", "",
"09:00", "", "", "", "", "",
"10:00", "", "", "", "", "",
"11:00", "", "", "", "", "",
"12:00", "", "", "", "", "",
"13:00", "", "", "", "", "",
"14:00", "", "", "", "", "",
"15:00", "", "", "", "", "",
"16:00", "", "", "", "", "",
"17:00", "", "", "", "", "",
"18:00", "", "", "", "", "",
"19:00", "", "", "", "", "",
"20:00", "", "", "", "", "",
"21:00", "", "", "", "", "",
"22:00", "", "", "", "", "",
"23:00", "", "", "", "", ""
],
"datasets":
[
{
"strokeColor":" rgba(64,178,83,1.0)",
"data": [
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,6,0,18,60,
60,84,108,168,138,150,228,330,222,480,540,378,330,414,528,
528,402,360,378,624,480,444,408,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0]
}
]
}
var max = 4000;
var steps = 16;
var input = document.getElementById("inputId");
input.setAttribute("min",   "2023-11-29");
input.setAttribute("max",   "2023-12-29");
input.setAttribute("value", "2023-12-29");
document.getElementById("labelValueId").innerHTML = "   1.325kWh 29.12.2023";
document.getElementById("buttonPrevId").disabled  = false;
document.getElementById("buttonNextId").disabled  = true;
var myLine = new Chart(document.getElementById("canvasId")
.getContext("2d"))
.Line(chartData,
{
"pointDot": false,
"datasetFill": false,
"scaleOverride": true,
"scaleLabel": "<%=value%> W",
"scaleSteps": steps,
"scaleStartValue": 0,
"scaleStepWidth": Math.ceil(max / steps),
"scaleLineColor":" rgba(170,170,170,1.0)",
"scaleFontColor":" rgba(170,170,170,1.0)",
"scaleGridLineColor":" rgba(68,68,68,1.0)"});

Also found http://x.x.x.x/all.xml which is a combo of measurements, events and some software and module information from the invertor

1 Like