@homoran
Danke! Das war der richtige Hinweis.
Mit maximal 7 Registern (Float) funktioniert es.
NEWS
Latest posts made by ck_coke
-
RE: IDM Luftwärmepumpe per Modbus anbinden klappt nicht :( Tipps?
-
RE: IDM Luftwärmepumpe per Modbus anbinden klappt nicht :( Tipps?
@homoran
Welche Infos werden denn benötigt?Die Debug Meldungen aus dem Adapter geben folgendes zurück:
modbus.54 2025-02-19 08:05:13.691 warn [DevID_1] Poll error count: 6 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"} modbus.54 2025-02-19 08:05:13.691 debug Received pdu describes an error. modbus.54 2025-02-19 08:05:13.689 debug [DevID_1/holdingRegs] Poll address 1000 - 10 registers modbus.54 2025-02-19 08:05:13.688 debug [DevID_1] Poll start ---------------------
-
RE: IDM Luftwärmepumpe per Modbus anbinden klappt nicht :( Tipps?
@Bluefox Irgendeine Idee woran das liegen kann?
-
RE: IDM Luftwärmepumpe per Modbus anbinden klappt nicht :( Tipps?
Beim Abfragen von Register 1008 (Wärmespeichertemperatur) bekomme ich immer den Fehler "ILLEGAL DATA ADDRESS".
Über Modbus Poll kann ich das Register jedoch ohne Probleme abfragen.
Scheint bei anderen Registern auch der Fall zu sein. Hatte das schon mal jemand? -
RE: Material Design Widgets: Progress Widget
Ist es möglich sich min und max aus einem Datenpunkt zu holen?
-
RE: Regex liefert falschen Wert
Kann es daran liegen das der Datenpunkt hinter switch:0, also eine Ebene tiefer liegt?
Zumindest habe ich das nach Internetrechersche in anderen Foren so gesehen.
-
RE: Regex liefert falschen Wert
Das ist wohl beim hier ins Forum kopieren passiert.
Die Zeile sieht so aus:
setState('0_userdata.0.Leistung-Entladen', obj.data.device_status.voltage, true);
-
RE: Regex liefert falschen Wert
Jetzt habe ich das Problem, dass es bei einem Gerät funktioniert und bei einem anderen
{"ack":true}
als Wert gesetzt wird.
So sieht das Skript aus:
schedule("*/10 * * * * *", function () { const server = 'https://shelly-89-eu.shelly.cloud'; const authKey = 'XjBjN2JjdWlkB12AE36D401E9C6EC6573933F664EA9B25923B90241D5720122CC428B82EF7477624E84B517133E2'; const deviceId = 'a0a3b3e7d67c'; httpPost(`${server}/device/status`, { id: deviceId, auth_key: authKey, }, (error, response) => { if (!error) { try { const obj = JSON.parse(response.data); // Daten extrahieren console.log(obj.data); setState('0_userdata.0.Leistung-Entladen', obj.data.device_status.voltage, true); } catch (e) { console.error(e); } } else { console.error(error); } } ); });
Folgendes bekomme ich im Log angezeigt:
javascript.0 2024-09-09 20:34:40.074 info script.js.common.Balkonkraftwerk.Skript_1: setForeignState(id=0_userdata.0.Leistung-Entladen, state={"val":{"ack":true},"ack":true,"ts":1725906880074,"q":0,"from":"system.adapter.javascript.0","lc":1725906880074,"c":"script.js.common.Balkonkraftwerk.Skript_1"}) javascript.0 2024-09-09 20:34:40.074 info script.js.common.Balkonkraftwerk.Skript_1: { online: true, device_status: { sys: { available_updates: [Object], mac: 'A0A3B3E7D67C', restart_required: false, time: '11:48', unixtime: 1725788939, uptime: 3, ram_size: 246876, ram_free: 134944, fs_size: 458752, fs_free: 122880, cfg_rev: 19, kvs_rev: 0, schedule_rev: 10, webhook_rev: 0, reset_reason: 1 }, ts: 1725906873.77, plugs_ui: {}, id: 'a0a3b3e7d67c', code: 'SNPL-00112EU', ws: { connected: false }, wifi: { sta_ip: '192.168.33.67', status: 'got ip', ssid: 'ShellyPlusPlugS-E465B8B3A57C', rssi: -29, ap_client_count: 0 }, mqtt: { connected: false }, serial: 3566, ffs: { ts: 0 }, 'switch:0': { id: 0, current: 0.021, source: 'SHC', output: true, apower: 0, voltage: 232.9, aenergy: [Object], temperature: [Object] }, cloud: { connected: true }, _updated: '2024-09-09 18:34:34', ble: {} } } javascript.0 2024-09-09 20:34:40.074 info script.js.common.Balkonkraftwerk.Skript_1: httpPost(url=https://shelly-89-eu.shelly.cloud/device/status, responseTime=66ms) javascript.0 2024-09-09 20:34:40.007 info script.js.common.Balkonkraftwerk.Skript_1: httpPost(config={"method":"post","url":"https://shelly-89-eu.shelly.cloud/device/status","responseType":"text","responseEncoding":"utf8","timeout":2000,"headers":{"User-Agent":"Mozilla/5.0 (X11; Linux i686; rv:109.0) Gecko/20100101 Firefox/121.0"},"data":{"id":"a0a3b3e7d67c","auth_key":"XjBjN2JjdWlkB12AE36D401E9C6EC6573933F664EA9B25923B90241D5720122CC428B82EF7477624E84B517133E2"}}, data=[object Object]) ```z
-
RE: Regex liefert falschen Wert
Vielen Dank! So ist es natürlich noch besser gelöst.
-
RE: Regex liefert falschen Wert
Error in callback: TypeError: m.split is not a function