NEWS
[gelöst] 0xffff zu 65535
-
@mike1976 sagte:
Sie kommt ja per nod red als hex mit 0xffff an.
Und wie gelangt sie in den Datenpunkt 'javascript.0.Test.Temperatur_lesen' ?
@paul53
das war nur ein test ich habe sie unter objekte direkt beschrieben.Richtiger weise sind es druck werte.
Die lesen ich per nod red ein



so und da liegt ja jetzt das problem. dachte ich wandle den wert was als 0xffff ankommt einfach in eine zahl.
Habe ich leider falsch gedacht :-( -
@paul53
das war nur ein test ich habe sie unter objekte direkt beschrieben.Richtiger weise sind es druck werte.
Die lesen ich per nod red ein



so und da liegt ja jetzt das problem. dachte ich wandle den wert was als 0xffff ankommt einfach in eine zahl.
Habe ich leider falsch gedacht :-(@mike1976
Lösche bitte das Objekt "Druckschalter", denn ein Objekt vom Typ "number" ist unzulässig !Der Wert steht also im Datenpunkt (Objekt-Typ "state") "node-red.0.Druckschalter1" ? Dann lese den im Skript ein. Was zeigt dann das Log ?
//Variable zuweisen const lesen = 'node-red.0.Druckschalter1'; const schreiben = 'javascript.0.Test.Temperatur_schreiben'; const testhex = 0xffff; //log log(testhex); log(getState(lesen).val + ' Typ: ' + typeof getState(lesen).val); // Aktualisierung bei Wertänderung on(lesen, function(dp) { setState(schreiben, parseInt(dp.state.val, 16), true); }); -
@mike1976
Lösche bitte das Objekt "Druckschalter", denn ein Objekt vom Typ "number" ist unzulässig !Der Wert steht also im Datenpunkt (Objekt-Typ "state") "node-red.0.Druckschalter1" ? Dann lese den im Skript ein. Was zeigt dann das Log ?
//Variable zuweisen const lesen = 'node-red.0.Druckschalter1'; const schreiben = 'javascript.0.Test.Temperatur_schreiben'; const testhex = 0xffff; //log log(testhex); log(getState(lesen).val + ' Typ: ' + typeof getState(lesen).val); // Aktualisierung bei Wertänderung on(lesen, function(dp) { setState(schreiben, parseInt(dp.state.val, 16), true); });19.11.2019, 18:05:15.920 [info ]: javascript.0 Stop script script.js.Skript_3 19.11.2019, 18:05:15.967 [info ]: javascript.0 Start javascript script.js.Skript_3 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: 65535 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: 0xfeff Typ: string 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: registered 1 subscription and 0 schedules -
19.11.2019, 18:05:15.920 [info ]: javascript.0 Stop script script.js.Skript_3 19.11.2019, 18:05:15.967 [info ]: javascript.0 Start javascript script.js.Skript_3 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: 65535 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: 0xfeff Typ: string 19.11.2019, 18:05:15.968 [info ]: javascript.0 script.js.Skript_3: registered 1 subscription and 0 schedules -
@mike1976
Das sieht gut aus. Dann ändere das Log:log(testhex); log(parseInt(getState(lesen).val, 16));19.11.2019, 18:09:45.102 [info ]: javascript.0 Stop script script.js.Skript_3 19.11.2019, 18:09:45.144 [info ]: javascript.0 Start javascript script.js.Skript_3 19.11.2019, 18:09:45.145 [info ]: javascript.0 script.js.Skript_3: 65535 19.11.2019, 18:09:45.146 [info ]: javascript.0 script.js.Skript_3: 65279 19.11.2019, 18:09:45.146 [info ]: javascript.0 script.js.Skript_3: registered 1 subscription and 0 schedules -
19.11.2019, 18:09:45.102 [info ]: javascript.0 Stop script script.js.Skript_3 19.11.2019, 18:09:45.144 [info ]: javascript.0 Start javascript script.js.Skript_3 19.11.2019, 18:09:45.145 [info ]: javascript.0 script.js.Skript_3: 65535 19.11.2019, 18:09:45.146 [info ]: javascript.0 script.js.Skript_3: 65279 19.11.2019, 18:09:45.146 [info ]: javascript.0 script.js.Skript_3: registered 1 subscription and 0 schedules -
@paul53
hmmm aber imconst schreiben = 'javascript.0.Test.Temperatur_schreiben';kommt im object immer noch als 0xffff an

@mike1976 sagte in 0xffff zu 65535:
kommt im object immer noch als 0xffff an
// Aktualisierung bei Wertänderung on(lesen, function(dp) { setState(schreiben, parseInt(dp.state.val, 16), true); });Die Wertänderung musst du schon abwarten (oder provozieren), damit sich im Datenpunkt etwas ändert.
-
@mike1976 sagte in 0xffff zu 65535:
kommt im object immer noch als 0xffff an
// Aktualisierung bei Wertänderung on(lesen, function(dp) { setState(schreiben, parseInt(dp.state.val, 16), true); });Die Wertänderung musst du schon abwarten (oder provozieren), damit sich im Datenpunkt etwas ändert.
-
ach ja sorry, hatte ich total vergessen, man eh

grosser nachteil wenn man aus der sps welt kommt
Danke dir für deine gedult, hatte erst 5h verbracht damit :-)glg mike
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden