hallo askie,
nachdem ich mich nun doch mal rangetraut habe und einfach mal mit copy&paste deinen code erweitert habe, konnte ich alle benötigten werte ermitteln.
hier meine änderungen, sie beginnen da, wo die trennlienien mit "fju" markiert sind. war einfacher, als ich dachte.
#***************************************************************************************************************
if($e_[0] eq "I")
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_I",($e_[1] )); # aktueller Strom in mA
}
readingsBulkUpdate($hash,"Batteriestrom in A",sprintf("%.2f",$e_[1] / 1000)); # aktueller Strom in A
$Power = ($Power * $e_[1]) / 1000; #für Leistungsberechnung als Reading
}
#***************************************************************************************************************
#*************** fju ******************************************************************************************
if($e_[0] eq "VPV") # mV Panelspannung in mV
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_VPV",($e_[1] ));
}
readingsBulkUpdate($hash,"Panelspannung",sprintf("%.2f",$e_[1] / 1000));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "PPV") # Panelleistung in W
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_PPV",($e_[1] ));
}
readingsBulkUpdate($hash,"Panelleistung",sprintf("%.2f",$e_[1]));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "IL") # Laststrom in A
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_IL",($e_[1] ));
}
readingsBulkUpdate($hash,"Laststrom in A",sprintf("%.2f",$e_[1] / 1000));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "H19") # Gesamtertrag in 0.01kWh (1/10Wh)
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_H19",($e_[1] ));
}
readingsBulkUpdate($hash,"Gesamtertrag in Wh",sprintf("%.2f",$e_[1] * 10));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "H20") # Tagesertrag in 0.01kWh (1/10Wh)
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_H20",($e_[1] ));
}
readingsBulkUpdate($hash,"Tagesertrag in Wh",sprintf("%.2f",$e_[1] * 10));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "H21") # Max. TagesPVleistung in W
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_H21",($e_[1] ));
}
readingsBulkUpdate($hash,"Max. TagesPVleistung in W",sprintf("%.2f",$e_[1] ));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "H22") # Ertrag gestern in 0.01kWh
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_H22",($e_[1] ));
}
readingsBulkUpdate($hash,"Ertrag gestern in Wh",sprintf("%.2f",$e_[1] * 10));
}
#*************** fju ******************************************************************************************
if($e_[0] eq "H23") # Max. PVleistung gestern
{
if ($RawReading eq "On")
{
readingsBulkUpdate($hash,"_H23",($e_[1] ));
}
readingsBulkUpdate($hash,"Max. TagesPVleistung gestern in W",sprintf("%.2f",$e_[1] ));
}
#***************************************************************************************************************
grüße,
frank