NEWS
Maxcul ist komplett unbrauchbar (geloest mit 0.5.2)
-
ich kapiere es nicht … Ich hab nochmal Debug eingebaut. Bitte schick nochmal log.
Ansonsten muss ich wirklich auf serialport 3 zurück und verlieren damit halt node8 support ...
-
Ok, da geht mehr. Das hat es bisher noch nie getan. Hast Du ausser dem Debug noch was geaendert?
Ich bin erst morgen wieder zum Testen in der Lage, Du kannst noch ueberlegen
maxcul.0 2018-02-24 12:58:17.516 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":383,"ack":true,"ts":1519473497506,"q":0,"from":"system.adapter.maxcul.0","lc":1519473497506} maxcul.0 2018-02-24 12:58:12.494 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":378,"ack":true,"ts":1519473492488,"q":0,"from":"system.adapter.maxcul.0","lc":1519473492488} maxcul.0 2018-02-24 12:58:07.858 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":374,"ack":true,"ts":1519473487853,"q":0,"from":"system.adapter.maxcul.0","lc":1519473487853} maxcul.0 2018-02-24 12:58:07.840 debug got OK-ACK Packet from 16fb8f maxcul.0 2018-02-24 12:58:07.840 debug RSSI for Message: -40.5 maxcul.0 2018-02-24 12:58:07.839 debug decoding Message Z0E01020216FB8F123456000139643443 maxcul.0 2018-02-24 12:58:07.839 debug incoming raw data from CUL: Z0E01020216FB8F123456000139643443 maxcul.0 2018-02-24 12:58:06.739 debug serial port buffer have been drained maxcul.0 2018-02-24 12:58:06.723 debug Send Packet to CUL: 0b01004012345616fb8f0074, awaiting drain event maxcul.0 2018-02-24 12:58:06.701 debug sendTemperature(maxcul.0.NKF0003406, 26, 1) maxcul.0 2018-02-24 12:58:05.686 debug redis pmessage io.maxcul.0.* io.maxcul.0.NKF0003406.desiredTemperature {"val":26,"ack":false,"ts":1519473485684,"q":0,"from":"system.adapter.admin.0","lc":1519473485684} maxcul.0 2018-02-24 12:58:02.494 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":478,"ack":true,"ts":1519473482490,"q":0,"from":"system.adapter.maxcul.0","lc":1519473482490} maxcul.0 2018-02-24 12:57:57.507 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":473,"ack":true,"ts":1519473477499,"q":0,"from":"system.adapter.maxcul.0","lc":1519473477499} maxcul.0 2018-02-24 12:57:52.480 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":468,"ack":true,"ts":1519473472478,"q":0,"from":"system.adapter.maxcul.0","lc":1519473472478} maxcul.0 2018-02-24 12:57:47.478 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":463,"ack":true,"ts":1519473467475,"q":0,"from":"system.adapter.maxcul.0","lc":1519473467475} maxcul.0 2018-02-24 12:57:42.476 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":458,"ack":true,"ts":1519473462474,"q":0,"from":"system.adapter.maxcul.0","lc":1519473462474} maxcul.0 2018-02-24 12:57:38.502 debug Za drained maxcul.0 2018-02-24 12:57:38.496 debug Za written maxcul.0 2018-02-24 12:57:38.492 debug Zr drained maxcul.0 2018-02-24 12:57:38.488 debug Zr written maxcul.0 2018-02-24 12:57:38.485 debug X20 drained maxcul.0 2018-02-24 12:57:38.481 debug X20 written maxcul.0 2018-02-24 12:57:38.477 debug enable MAX! Mode of the CUL868 maxcul.0 2018-02-24 12:57:37.484 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":453,"ack":true,"ts":1519473457478,"q":0,"from":"system.adapter.maxcul.0","lc":1519473457478} maxcul.0 2018-02-24 12:57:37.482 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.limitOverflow {"val":false,"ack":true,"ts":1519473457475,"q":0,"from":"system.adapter.maxcul.0","lc":1519464560648} maxcul.0 2018-02-24 12:57:34.510 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.connection {"val":true,"ack":true,"ts":1519473454502,"q":0,"from":"system.adapter.maxcul.0","lc":1519473454502} maxcul.0 2018-02-24 12:57:34.508 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.version {"val":"V 1.67 nanoCUL868","ack":true,"ts":1519473454500,"q":0,"from":"system.adapter.maxcul.0","lc":1519041256179} maxcul.0 2018-02-24 12:57:34.492 info CUL FW Version: V 1.67 nanoCUL868 maxcul.0 2018-02-24 12:57:34.489 debug incoming raw data from CUL: V 1.67 nanoCUL868 maxcul.0 2018-02-24 12:57:34.473 debug Requested CUL Version... maxcul.0 2018-02-24 12:57:34.465 debug check CUL Firmware version maxcul.0 2018-02-24 12:57:32.470 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.connection {"val":false,"ack":true,"ts":1519473452466,"q":0,"from":"system.adapter.maxcul.0","lc":1519473339719} maxcul.0 2018-02-24 12:57:32.458 info serialPort /dev/ttyUSB0 is open! maxcul.0 2018-02-24 12:57:32.438 info using serial device /dev/ttyUSB0@38400 maxcul.0 2018-02-24 12:57:31.923 info starting. Version 0.5.0 in /opt/iobroker/node_modules/iobroker.maxcul, node: v6.12.0 maxcul.0 2018-02-24 12:57:31.862 info States connected to redis: 127.0.0.1:6379 maxcul.0 2018-02-24 12:57:31.850 debug statesDB connected maxcul.0 2018-02-24 12:57:31.796 debug objectDB connected
Nachtrag Thema Wandthermostat:
Abgesehen von dem Kommando 42 habe ich noch nicht verstanden wie man dieses Thermostat mit dem Broker pairt. Mir scheint naemlich diese Broadcasts an "000000" bringen die in der Naehe befindlichen Heizungsthermostate durcheinander, die versuchen dann dieser Anweisung zu folgen und nicht den Broker-Einstellungen…
geändert: Code in Code-Tags; Homoran (Mod)
-
Jetzt ist was passiert, das hatten wir noch nie:
host.ioBroker-Pi 2018-02-24 13:02:36.028 error instance system.adapter.maxcul.0 terminated with code 0 (OK) host.ioBroker-Pi 2018-02-24 13:02:36.028 error Caught by controller[0]: at FSReqWrap.wrapper [as oncomplete] (fs.js:683:17) host.ioBroker-Pi 2018-02-24 13:02:36.028 error Caught by controller[0]: at SerialPort. (/opt/iobroker/node_modules/serialport/lib/serialport.js:306:7) host.ioBroker-Pi 2018-02-24 13:02:36.027 error Caught by controller[0]: at SerialPort. (/opt/iobroker/node_modules/serialport/lib/serialport.js:293:14) host.ioBroker-Pi 2018-02-24 13:02:36.027 error Caught by controller[0]: at SerialPort._emitData (/opt/iobroker/node_modules/serialport/lib/serialport.js:313:18) host.ioBroker-Pi 2018-02-24 13:02:36.027 error Caught by controller[0]: at SerialPort. (/opt/iobroker/node_modules/serialport/lib/parsers.js:23:13) host.ioBroker-Pi 2018-02-24 13:02:36.026 error Caught by controller[0]: at Array.forEach (native) host.ioBroker-Pi 2018-02-24 13:02:36.025 error Caught by controller[0]: at /opt/iobroker/node_modules/serialport/lib/parsers.js:24:17 host.ioBroker-Pi 2018-02-24 13:02:36.025 error Caught by controller[0]: at SerialPort.emit (events.js:188:7) host.ioBroker-Pi 2018-02-24 13:02:36.025 error Caught by controller[0]: at emitOne (events.js:96:13) host.ioBroker-Pi 2018-02-24 13:02:36.025 error Caught by controller[0]: at SerialPort. (/opt/iobroker/node_modules/iobroker.maxcul/lib/communication-layer.js:93:42) host.ioBroker-Pi 2018-02-24 13:02:36.024 error Caught by controller[0]: at CommunicationServiceLayer.emit (events.js:188:7) host.ioBroker-Pi 2018-02-24 13:02:36.024 error Caught by controller[0]: at emitOne (events.js:96:13) host.ioBroker-Pi 2018-02-24 13:02:36.024 error Caught by controller[0]: at CommunicationServiceLayer. (/opt/iobroker/node_modules/iobroker.maxcul/lib/maxcul.js:46:34) host.ioBroker-Pi 2018-02-24 13:02:36.024 error Caught by controller[0]: at MaxDriver.handleIncommingMessage (/opt/iobroker/node_modules/iobroker.maxcul/lib/maxcul.js:151:57) host.ioBroker-Pi 2018-02-24 13:02:36.024 error Caught by controller[0]: at MaxDriver.ThermostatState (/opt/iobroker/node_modules/iobroker.maxcul/lib/maxcul.js:486:38) host.ioBroker-Pi 2018-02-24 13:02:36.023 error Caught by controller[0]: TypeError: rawBitData.getRange is not a function maxcul.0 2018-02-24 13:02:35.969 error TypeError: rawBitData.getRange is not a function at MaxDriver.ThermostatState (/opt/iobroker/node_modules/iobroker.maxcul/lib/maxcul.js:486:38) at MaxDriver.handleIncommingMessage (/opt/iobrok maxcul.0 2018-02-24 13:02:35.969 error uncaught exception: rawBitData.getRange is not a function maxcul.0 2018-02-24 13:02:35.968 debug got data from heatingelement 16fbae with payload 39002D00FB maxcul.0 2018-02-24 13:02:35.967 debug RSSI for Message: -80 maxcul.0 2018-02-24 13:02:35.967 debug decoding Message Z0F00046016FBAE0000000039002D00FBF4 maxcul.0 2018-02-24 13:02:35.966 debug incoming raw data from CUL: Z0F00046016FBAE0000000039002D00FBF4
geändert: Code in Code-Tags; Homoran (Mod)
-
Ok, da geht mehr. Das hat es bisher noch nie getan. Hast Du ausser dem Debug noch was geaendert?
Ich bin erst morgen wieder zum Testen in der Lage, Du kannst noch ueberlegen
`
Ja ich habe noch ein was geändert: Es wird jetzt bei der Initialisierung nach jedem senden einer Nachricht gewartet das die auch wirklich gesendet wurde (draining). Das war vorher nicht so. Da wurde einfach alles direkt nacheinander gesendet.
Jetzt ist was passiert, das hatten wir noch nie: `
Da ist scheinbar ein Bug im Code der eine Funktion aufruft die es nicht gibt. Habe bei der "Quelle" (ja habe inzwischen gefunden wo die Logik herkommt und könnte daher auch auf die aktuellste Version updaten) nachgesehen und fix ist auf Github.Bitte versuchen und mal laufen lassen. Wenn das erstmal wieder so tut wie in der 0.3.0 dann machen wir es erstmal so live.
Dann kann ich in einer 0.6 mal die Logik aktualisieren auf den aktuellen Stand (Kommunikation nicht anfassen) und wir sehen was da so geht
-
Hab die neue Version jetzt gerade installiert und laeuft. Auf die Schnelle kann ich keinen Absturz mehr produzieren wie beim letzten Mal. Ich lass es jetzt mal laufen, solange ich mich nicht melde kannst Du davon ausgehen dass es noch fehlerfrei laeuft…
-
Ok dann veröffentliche ich die 0.5.0 heute Abend um erstmal was funktionierendes live zu haben. Dann versuche ich die Tage mal eine 0.6 mit Logikaktualisierungen
-
Welchen?
-
Mindestens Unterstützung für die Message 42 von oben und anderem Kram.
-
Koennte es sein dass das sowas simples wie ein <cr><lf>Problem ist? (Also ein fehlendes <cr>oder andersherum)?
(Ich hab den betreffenden Code bis dato nicht gelesen…)
geändert: Code in Code-Tags; Homoran (Mod)</cr></lf></cr> `
Hallo,das befürchte Ich bei dem CUL-Adapter, der am naoCUL nicht initialisiert wird auch.
Das läßt sich mit mit Terminal PRG nur schwer debuggen.
Aber mal sehen was apolon77 da antwortet.
Gruß Mickbaer aus Berlin
-
Hab ich doch schon in dem cul Thread. Bitte auch da mal cul vom github testen.
-
Auch nach drei Tagen Laufzeit ist mir nichts ungewoehnliches mehr aufgefallen. Alles sieht gut aus.
-
Hier hab ich noch so ein Phaenomen, dass aber wahrscheinlich nicht mit neuer/alter Version zusammenhaengt.
Aus unbekannten Gruenden haengt sich der nanoCUL manchmal auf. Erkennbar ist das am schnellen Blinken der Uebertragungs-LED.
Adapter stoppen und wieder starten bringt:
maxcul.0 2018-03-02 23:24:00.535 info Timeout on CUL connect, cul is available but not responding
maxcul.0 2018-03-02 23:23:36.571 debug Za drained
maxcul.0 2018-03-02 23:23:36.566 debug Za written
maxcul.0 2018-03-02 23:23:36.560 debug Zr drained
maxcul.0 2018-03-02 23:23:36.554 debug Zr written
maxcul.0 2018-03-02 23:23:36.549 debug X20 drained
maxcul.0 2018-03-02 23:23:36.543 debug X20 written
maxcul.0 2018-03-02 23:23:36.536 debug enable MAX! Mode of the CUL868
maxcul.0 2018-03-02 23:23:32.533 debug Requested CUL Version…
maxcul.0 2018-03-02 23:23:32.529 debug check CUL Firmware version
maxcul.0 2018-03-02 23:23:29.919 info starting. Version 0.5.0 in /opt/iobroker/node_modules/iobroker.maxcul, node: v6.12.0
maxcul.0 2018-03-02 23:23:29.855 info States connected to redis: 127.0.0.1:6379
maxcul.0 2018-03-02 23:23:29.843 debug statesDB connected
maxcul.0 2018-03-02 23:23:29.790 debug objectDB connected
Das Ding haengt scheinbar einfach. Vielleicht koennen wir dafuer eine Loesung finden?
-
Wie resettet man "das Ding" denn wenn es sowwas tut?
-
Man stoppt den Adapter und steckt den nanoCUL vom USB ab und wieder an, dann startet man den Adapter wieder…
-
Aaaaaaaaaaahja
Keine Ahnung wie der Adapter das regeln soll …
-
Eigentlich waers ja besser festzustellen was da eigentlich abkackt. Ich hab jetzt mal debug eingeschaltet, vielleicht sieht man ja was wenn er wieder haengenbleiben wuerde.
Mir scheint es koennte etwas mit der Auslastung zu tun haben. Ich habe heute nochmal 3 Fensterkontakte dazugenommen und er ist mir allein heute schon dreimal stehengeblieben. Vielleicht findet sich was im debug-log…
(hatte ich vorhin noch nicht an)
-
Und schon ists passiert:
!
maxcul.0 2018-03-03 00:00:03.037 debug serial port buffer have been drained maxcul.0 2018-03-03 00:00:03.037 debug serial port buffer have been drained maxcul.0 2018-03-03 00:00:03.036 debug serial port buffer have been drained maxcul.0 2018-03-03 00:00:03.001 debug Send Packet to CUL: 0b0100401234561b7c2e0026, awaiting drain event maxcul.0 2018-03-03 00:00:03.000 debug Send Packet to CUL: 0b0100401234561b7bbd0026, awaiting drain event maxcul.0 2018-03-03 00:00:03.000 debug serial port buffer have been drained maxcul.0 2018-03-03 00:00:03.000 debug Send Packet to CUL: 0b0100401234561b7e310022, awaiting drain event maxcul.0 2018-03-03 00:00:02.999 debug Send Packet to CUL: 0b0100401234561b7d410022, awaiting drain event maxcul.0 2018-03-03 00:00:02.999 debug got OK-ACK Packet from 16fbae maxcul.0 2018-03-03 00:00:02.999 debug RSSI for Message: -72 maxcul.0 2018-03-03 00:00:02.999 debug decoding Message Z0E01020216FBAE123456000138002204 maxcul.0 2018-03-03 00:00:02.998 debug incoming raw data from CUL: Z0E01020216FBAE123456000138002204 maxcul.0 2018-03-03 00:00:01.877 debug sendTemperature(maxcul.0.OEQ2604915, 19, 0) maxcul.0 2018-03-03 00:00:01.871 debug sendTemperature(maxcul.0.OEQ2604801, 19, 0) maxcul.0 2018-03-03 00:00:01.868 debug sendTemperature(maxcul.0.OEQ2605429, 17, 0) maxcul.0 2018-03-03 00:00:01.865 debug serial port buffer have been drained maxcul.0 2018-03-03 00:00:01.853 debug Send Packet to CUL: 0b01004012345616fbae0022, awaiting drain event maxcul.0 2018-03-03 00:00:01.851 debug sendTemperature(maxcul.0.OEQ2605190, 17, 0) maxcul.0 2018-03-03 00:00:01.851 debug sendTemperature(maxcul.0.NKF0003377, 17, 0) maxcul.0 2018-03-03 00:00:00.876 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.desiredTemperature {"val":19,"ack":false,"ts":1520031600873,"q":0,"from":"system.adapter.javascript.0","lc":1520031600873} maxcul.0 2018-03-03 00:00:00.868 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604801.desiredTemperature {"val":19,"ack":false,"ts":1520031600864,"q":0,"from":"system.adapter.javascript.0","lc":1520031600864} maxcul.0 2018-03-03 00:00:00.865 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2605429.desiredTemperature {"val":17,"ack":false,"ts":1520031600864,"q":0,"from":"system.adapter.javascript.0","lc":1520028000856} maxcul.0 2018-03-03 00:00:00.845 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2605190.desiredTemperature {"val":17,"ack":false,"ts":1520031600831,"q":0,"from":"system.adapter.javascript.0","lc":1520031600831} maxcul.0 2018-03-03 00:00:00.844 debug redis pmessage io.maxcul.0.* io.maxcul.0.NKF0003377.desiredTemperature {"val":17,"ack":false,"ts":1520031600820,"q":0,"from":"system.adapter.javascript.0","lc":1520028000802} javascript.0 2018-03-03 00:00:00.830 info script.js.Skript-Heizung-Esszimmer: setForeignState(id=maxcul.0.OEQ2605190.desiredTemperature, state=17) javascript.0 2018-03-03 00:00:00.827 info script.js.Skript-Heizung-Wohnzimmer: setForeignState(id=maxcul.0.NKF0003377.desiredTemperature, state=17) maxcul.0 2018-03-02 23:59:58.914 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031598899,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:59:53.899 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031593896,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:59:48.897 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031588894,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:59:43.898 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031583894,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:59:38.881 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031578877,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:59:33.877 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031573873,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:48.844 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031528835,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:43.840 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031523831,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:38.831 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031518829,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:33.831 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031513827,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:28.829 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031508825,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:23.829 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031503823,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:18.827 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031498821,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:13.811 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031493804,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:08.809 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031488802,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:03.808 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031483799,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:58:01.280 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.rssi {"val":-66.5,"ack":true,"ts":1520031481275,"q":0,"from":"system.adapter.maxcul.0","lc":1520031481275} maxcul.0 2018-03-02 23:58:01.274 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.batteryLow {"val":false,"ack":true,"ts":1520031481267,"q":0,"from":"system.adapter.maxcul.0","lc":1519979406969} maxcul.0 2018-03-02 23:58:01.269 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.rfError {"val":false,"ack":true,"ts":1520031481260,"q":0,"from":"system.adapter.maxcul.0","lc":1519979406964} maxcul.0 2018-03-02 23:58:01.263 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.measuredTemperature {"val":20.1,"ack":true,"ts":1520031481253,"q":0,"from":"system.adapter.maxcul.0","lc":1520031481253} maxcul.0 2018-03-02 23:58:01.256 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.valvePosition {"val":22,"ack":true,"ts":1520031481247,"q":0,"from":"system.adapter.maxcul.0","lc":1520031481247} maxcul.0 2018-03-02 23:58:01.248 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.desiredTemperature {"val":20,"ack":true,"ts":1520031481241,"q":0,"from":"system.adapter.maxcul.0","lc":1520030166413} maxcul.0 2018-03-02 23:58:01.240 debug redis pmessage io.maxcul.0.* io.maxcul.0.OEQ2604915.mode {"val":null,"ack":true,"ts":1520031481232,"q":0,"from":"system.adapter.maxcul.0","lc":1520031481232} maxcul.0 2018-03-02 23:58:01.236 debug ThermostatStateReceived: {"src":"1b7c2e","desiredTemperature":20,"valvePosition":22,"measuredTemperature":20.1,"dstSetting":1,"lanGateway":1,"panel":1,"rfError":0,"batteryLow":0,"untilString":"","rssi maxcul.0 2018-03-02 23:58:01.235 debug got data from heatingelement 1b7c2e with payload 39162800C9 maxcul.0 2018-03-02 23:58:01.235 debug RSSI for Message: -66.5 maxcul.0 2018-03-02 23:58:01.234 debug decoding Message Z0F0004601B7C2E0000000039162800C90F maxcul.0 2018-03-02 23:58:01.234 debug incoming raw data from CUL: Z0F0004601B7C2E0000000039162800C90F maxcul.0 2018-03-02 23:57:58.804 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031478797,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:57:53.799 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031473796,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:57:48.795 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031468792,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:57:43.793 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031463790,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:57:38.795 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031458787,"q":0,"from":"system.adapter.maxcul.0","lc":1520031458787} maxcul.0 2018-03-02 23:57:33.792 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":895,"ack":true,"ts":1520031453785,"q":0,"from":"system.adapter.maxcul.0","lc":1520031453785} maxcul.0 2018-03-02 23:57:30.114 debug redis pmessage io.maxcul.0.* io.maxcul.0.MEQ1480497.rssi {"val":-75.5,"ack":true,"ts":1520031450110,"q":0,"from":"system.adapter.maxcul.0","lc":1520031450110} maxcul.0 2018-03-02 23:57:30.106 debug redis pmessage io.maxcul.0.* io.maxcul.0.MEQ1480497.batteryLow {"val":false,"ack":true,"ts":1520031450104,"q":0,"from":"system.adapter.maxcul.0","lc":1518824069530} maxcul.0 2018-03-02 23:57:30.103 debug redis pmessage io.maxcul.0.* io.maxcul.0.MEQ1480497.rfError {"val":false,"ack":true,"ts":1520031450100,"q":0,"from":"system.adapter.maxcul.0","lc":1519997246688} maxcul.0 2018-03-02 23:57:30.099 debug redis pmessage io.maxcul.0.* io.maxcul.0.MEQ1480497.isOpen {"val":false,"ack":true,"ts":1520031450095,"q":0,"from":"system.adapter.maxcul.0","lc":1520002444590} maxcul.0 2018-03-02 23:57:30.098 debug ShutterContactStateReceived: {"src":"133721","isOpen":0,"rfError":0,"batteryLow":0,"rssi":-75.5} maxcul.0 2018-03-02 23:57:30.098 debug got data from shutter contact 133721 10000 maxcul.0 2018-03-02 23:57:30.097 debug RSSI for Message: -75.5 maxcul.0 2018-03-02 23:57:30.097 debug decoding Message Z0B5106301337211234560010FD maxcul.0 2018-03-02 23:57:30.097 debug incoming raw data from CUL: Z0B5106301337211234560010FD maxcul.0 2018-03-02 23:57:30.097 debug ignored auto-ack packet maxcul.0 2018-03-02 23:57:30.097 debug RSSI for Message: -74 maxcul.0 2018-03-02 23:57:30.097 debug decoding Message Z0B510002123456133721000000 maxcul.0 2018-03-02 23:57:30.096 debug incoming raw data from CUL: Z0B510002123456133721000000 maxcul.0 2018-03-02 23:57:28.786 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031448783,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:57:23.780 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031443778,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:57:18.783 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031438776,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:57:13.779 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031433773,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:57:08.778 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031428770,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:57:03.761 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031423753,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:56:58.757 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031418750,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:56:53.753 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031413748,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} maxcul.0 2018-03-02 23:56:48.753 debug redis pmessage io.maxcul.0.* io.maxcul.0.info.quota {"val":900,"ack":true,"ts":1520031408747,"q":0,"from":"system.adapter.maxcul.0","lc":1520031208598} !
So schauts aus, hilft uns das was?Koennte es sein dass man beim Senden eines Paketes auch auf seine "Fertigstellung" (sprich kompletten Versand) warten sollte?
-
Hier ist das Problem:
Zeile 150 communication-layer.js:
CommunicationServiceLayer.prototype.serialWrite = function(data) { var command; if (this._serialDeviceInstance.isOpen()) { command = 'Zs' + data + '\n'; return this._serialDeviceInstance.writeAsync(command).then((function(_this) { return function() { env.logger.debug('Send Packet to CUL: ' + data + ', awaiting drain event'); return _this._serialDeviceInstance.drainAsync().then(function() { return env.logger.debug('serial port buffer have been drained'); }); }; })(this)); } else { env.logger.debug('Can not send packet because serial port is not open'); return Promise.reject('Error: serial port is not open'); } };
Diese Funktion braucht ein Locking. Am besten innerhalb des ersten if.
Damit serialisiert man das Handling des Devices und alles wird funktionieren …
Gibts in dieser Umgebung ein Lock/Unlock? Falls nein einfach "von Hand".
Eine statische Variable hochzaehlen und danach ueberpruefen ob sie 1 ist (0 init). Falls nicht 1 Sekunde warten und nochmal pruefen.
Unlock per Variable--.
Oder sowas ginge auch:
-
naja, das macht man in nodejs etwas anders/einfacher
Ich schaue mal wann ich Zeit finde
-
Versuch mal Github version. die sollte jetzt Schreibbefehle queuen und nacheinander senden … schaue mal und sag mal