Frage zu Skript und Cutter

Hallo,
meine aktive Programmierzeit liegt schon Jahrzente zurück, daher ist das evtl. ne einfache Frage/Problem.
Habe ein Raspi3+ mit IPS drauf (Demolizenz),
ein Weidmann USB Lesekopf liest den PV Ertragszähler aus,
Cutter Debug (li.Trennzeichen 0101010101 re.Trennzeichen 1B1B1B1B) zeigt die korrekten Daten:


das Skript:
<?php
//PV282
SetValueFloat(19467, (hexdec(substr($_IPS[‚VALUE‘],225,4))));
SetValueString(13288,substr($_IPS[‚VALUE‘],225,4));
SetValue(32563, strlen($_IPS[‚VALUE‘]));
?>
zeigt die korrekte ausgeschnittene Länge von 300 Zeichen an
Aber der ausgeschnittene String (Test2) und des Umwandlung (PV282) zeigen nur Murks an:

Kann mir jemand weiter helfen?
Vielen Dank im Voraus!

Hallo
Frage : warum liest du aus dem String 4 zeichen wenn du doch nur 2 brauchst ( substring ) ?
So auf die Schnelle wuerde ich es so machen. MIt IPS_Logmessage bekommst du auch
eine Ausgabe im Logfenster , damit du auch die richtigen Bytes hast.

$teilstring = substr($_IPS['VALUE'],225,2);
	$x1 = ord($teilstring[0]);
	$x2 = ord($teilstring[1]);	
	IPS_Logmessage(__FILE__, dechex($x1) . " - " . dechex($x2));
	$x= ($x1*256) + $x2;
	IPS_Logmessage(__FILE__,"Ergebniss:". $x);

Hallo 1007,

4 weil bei 2 garnix angezeigt wurde :o)
Aber ok, klappt sehr gut mit Deinem Beispiel und letztens fehlte mir die richtige Konvertierung.
Ergebnis im Meldungsfenster ist
„58 - d7
Ergebniss:22743“
was genau dem Zählerstand entspricht.
Kannst Du auch noch aus dem Ärmel schütteln, wie ich die 22743 nun in meinen Float PV282 bekomme, um dann eine Grafik damit zu speisen?
Wobei ich ja eigentlich gar keinen Float brauche, da ich ja in ganzen kwh arbeite. Reicht da nicht auch ein Integer?

Hallo
Ganz einfach so

SetValueFloat(19467,$x);

Eigentlich braucht es ja kein Float da die Zahl immer eine Integer sein wird.

tausend Dank!!!