NEWS
Viessmann-Adapter
-
@passuff sagte in Viessmann-Adapter:
@blauholsten
Danke für das update.
Prinzipiell könnte man eine Variable für die Reconnect Zeit in den Einstellungen unterbringen, dann kann jeder es so Einstellen wie er möchte...Mache ich in der nächsten Version.....
-
@blauholsten sagte in Viessmann-Adapter:
@passuff sagte in Viessmann-Adapter:
@blauholsten
Danke für das update.
Prinzipiell könnte man eine Variable für die Reconnect Zeit in den Einstellungen unterbringen, dann kann jeder es so Einstellen wie er möchte...Mache ich in der nächsten Version.....
Danke!
-
@bahnuhr sagte in Viessmann-Adapter:
Könnte man denn auch noch einen möglichen "reboot auf dem raspi" einfügen (wie oben schon beschrieben).
Das bitte nur als Option, wenn überhaupt. Ansonsten besteht ja die Gefahr, dass Raspi und Adapter hier in eine Endlosschleife geraten.
Ich persönlich komme gut klar mit den fünf Minuten nach dem Verlust der Verbindung bis zum automatischen Neustart des Adapters. Vielleicht sollte man noch eine maximale Anzahl von Neustarts definieren können. Oder belastet ein permanentes Neustarten des Adapters den ioBroker nur geringfügig?
-
@passuff sagte in Viessmann-Adapter:
@blauholsten sagte in Viessmann-Adapter:
@passuff sagte in Viessmann-Adapter:
@blauholsten
Danke für das update.
Prinzipiell könnte man eine Variable für die Reconnect Zeit in den Einstellungen unterbringen, dann kann jeder es so Einstellen wie er möchte...Mache ich in der nächsten Version.....
Danke!
Erledigt in Version 1.2.0
-
@blauholsten sagte in Viessmann-Adapter:
@passuff sagte in Viessmann-Adapter:
@blauholsten sagte in Viessmann-Adapter:
@passuff sagte in Viessmann-Adapter:
@blauholsten
Danke für das update.
Prinzipiell könnte man eine Variable für die Reconnect Zeit in den Einstellungen unterbringen, dann kann jeder es so Einstellen wie er möchte...Mache ich in der nächsten Version.....
Danke!
Erledigt in Version 1.2.0
Danke!
-
@Pep said in Viessmann-Adapter:
Also bei mir läuft der Adapter auch super. Habe eine VITOTRONIC 200 KW2
Hi @pep habe eine Vitrotronic 200 KW1. Könntest du trotzdem mal deine vito.xml posten oder per PN schicken?
Evtl hat sich ja nicht so viel geändert.
-
@Linedancer said in Viessmann-Adapter:
Hier meine funktionierende vito.xml
und hier die dazu passende vcontrold.xml
Das lesen und schreiben der Daten funktioniert perfekt. Das einzige was bei mir nicht funktioniert ist das setzen vom Niveau der Heizkurve,Vielen Dank. Die XMLs für die Vitotronic 200 KW1 hab ich gesucht. Das spart mir eine Menge Arbeit
-
Hi,
ich probiere den Adapter grade ans fliegen zu bekommen. Ich verwende die XML von @Linedancer .Leider bekomme ich im Log immer die Meldung
cannot parse vito.xml Error: Non-whitespace before first tag. Line: 0 Column: 1 Char: �Jetzt hab ich an ein Encoding Problem zwischen Windows und Linux gedacht. Ich nutze
TextpadNotepad++ unter Windows. Kann aber vor dem ersten Tag keinerlei Zeichen ausmachen.Woran könnte es noch liegen?
PROBLEM GELÖST. Es lag wirklich an der Kodierung. Hab es in
TextpadNotepad++ konvertiert und dann ging es. -
Hi,
stehe glaube ich kurz vorm Ziel
In Schritt 6 der Anleitung zu vcontrold soll man ein Skript einrichten (https://github.com/openv/openv/wiki/vcontrold-mit-Raspberry-Pi). Wenn ich jetzt mit den Commandos start und stop arbeiten will kommt der Fehlersudo update-rc.d vcontrol start 99 2 3 4 5 . stop 99 0 1 6 . ausführen. Da kommt bei mir
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaultsNutze Raspbian Buster, da muss man glaube ich mit systemctl oder so arbeiten. Bin leider nicht so fit in Linux, um das selber hinzubekommen. Könnte mir da jemand kurz unter die Arme greifen?
-
Ich verwende für sowas nur Notepad++. Der Windows Editor ist böse...
-
@Linedancer said in Viessmann-Adapter:
Ich verwende für sowas nur Notepad++. Der Windows Editor ist böse...
Hi, den nehme ich auch. Hab mich oben verschrieben.
-
So, habe es hinbekommen. Der Adapter verbindet sich und bekommt Daten. Zumindest ein paar kommen durch.
Vielen Dank für den Adapter
-
habe V1.1.1 installiert.
nach timeout automatisch verbinden klappt.
Es bringt aber nichts.
Nach 3-4 Minuten kommt wieder timeout.viessmann.0 2019-08-17 08:12:12.739 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:12:02.727 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:12:02.727 error Timeout connection error! viessmann.0 2019-08-17 08:09:02.693 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:08:52.677 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:08:52.677 error Timeout connection error! viessmann.0 2019-08-17 08:05:52.647 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:05:42.640 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:05:42.640 error Timeout connection error! viessmann.0 2019-08-17 08:02:42.608 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:02:32.595 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:02:32.595 error Timeout connection error! viessmann.0 2019-08-17 07:59:32.565 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:59:22.549 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:59:22.549 error Timeout connection error! viessmann.0 2019-08-17 07:56:22.518 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:56:12.512 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:56:12.512 error Timeout connection error! viessmann.0 2019-08-17 07:53:12.482 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:53:02.475 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:53:02.475 error Timeout connection error! viessmann.0 2019-08-17 07:50:02.446 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:49:52.434 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:49:52.434 error Timeout connection error! viessmann.0 2019-08-17 07:46:52.401 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:46:42.386 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:46:42.386 error Timeout connection error! viessmann.0 2019-08-17 07:43:42.355 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:43:32.340 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:43:32.340 error Timeout connection error! viessmann.0 2019-08-17 07:40:32.314 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:40:22.313 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:40:22.313 error Timeout connection error! viessmann.0 2019-08-17 07:37:22.277 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:37:12.261 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:37:12.261 error Timeout connection error! viessmann.0 2019-08-17 07:34:12.246 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:34:02.228 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:34:02.228 error Timeout connection error! viessmann.0 2019-08-17 07:31:02.200 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:30:52.184 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:30:52.184 error Timeout connection error! viessmann.0 2019-08-17 07:27:52.166 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:27:42.150 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:27:42.150 error Timeout connection error! viessmann.0 2019-08-17 07:24:42.127 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:24:32.112 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:24:32.112 error Timeout connection error! viessmann.0 2019-08-17 07:21:32.088 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:21:22.073 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:21:22.073 error Timeout connection error! viessmann.0 2019-08-17 07:18:22.056 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:18:12.040 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:18:12.040 error Timeout connection error! viessmann.0 2019-08-17 07:15:12.010 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:15:02.007 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:15:02.007 error Timeout connection error!
Wenn ich nun den Raspi neu reboote und die Instanz neu starten und dann klappt es wieder.
Deshalb nochmal die Anforderung von mir:
Kann man dies einbauen in das Script.Danke.
-
@bahnuhr sagte in Viessmann-Adapter:
habe V1.1.1 installiert.
nach timeout automatisch verbinden klappt.
Es bringt aber nichts.
Nach 3-4 Minuten kommt wieder timeout.viessmann.0 2019-08-17 08:12:12.739 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:12:02.727 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:12:02.727 error Timeout connection error! viessmann.0 2019-08-17 08:09:02.693 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:08:52.677 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:08:52.677 error Timeout connection error! viessmann.0 2019-08-17 08:05:52.647 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:05:42.640 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:05:42.640 error Timeout connection error! viessmann.0 2019-08-17 08:02:42.608 info Connect with Viessmann sytem! viessmann.0 2019-08-17 08:02:32.595 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 08:02:32.595 error Timeout connection error! viessmann.0 2019-08-17 07:59:32.565 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:59:22.549 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:59:22.549 error Timeout connection error! viessmann.0 2019-08-17 07:56:22.518 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:56:12.512 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:56:12.512 error Timeout connection error! viessmann.0 2019-08-17 07:53:12.482 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:53:02.475 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:53:02.475 error Timeout connection error! viessmann.0 2019-08-17 07:50:02.446 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:49:52.434 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:49:52.434 error Timeout connection error! viessmann.0 2019-08-17 07:46:52.401 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:46:42.386 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:46:42.386 error Timeout connection error! viessmann.0 2019-08-17 07:43:42.355 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:43:32.340 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:43:32.340 error Timeout connection error! viessmann.0 2019-08-17 07:40:32.314 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:40:22.313 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:40:22.313 error Timeout connection error! viessmann.0 2019-08-17 07:37:22.277 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:37:12.261 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:37:12.261 error Timeout connection error! viessmann.0 2019-08-17 07:34:12.246 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:34:02.228 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:34:02.228 error Timeout connection error! viessmann.0 2019-08-17 07:31:02.200 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:30:52.184 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:30:52.184 error Timeout connection error! viessmann.0 2019-08-17 07:27:52.166 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:27:42.150 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:27:42.150 error Timeout connection error! viessmann.0 2019-08-17 07:24:42.127 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:24:32.112 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:24:32.112 error Timeout connection error! viessmann.0 2019-08-17 07:21:32.088 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:21:22.073 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:21:22.073 error Timeout connection error! viessmann.0 2019-08-17 07:18:22.056 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:18:12.040 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:18:12.040 error Timeout connection error! viessmann.0 2019-08-17 07:15:12.010 info Connect with Viessmann sytem! viessmann.0 2019-08-17 07:15:02.007 info Connection with Viessmann system disconnected! viessmann.0 2019-08-17 07:15:02.007 error Timeout connection error!
Wenn ich nun den Raspi neu reboote und die Instanz neu starten und dann klappt es wieder.
Deshalb nochmal die Anforderung von mir:
Kann man dies einbauen in das Script.Danke.
Hier bockt dann aber aber dein raspi bzw. der dort drauf laufende vcontrold.
Für dein Fall wäre es Sinninger und einfacher einfach ein kleines Skript laufen zu lassen und dann dein Pi neu starten zu lassen. Falls du dabei Hilfe brauchst, einfach bescheid geben....
-
@blauholsten sagte in Viessmann-Adapter:
Für dein Fall wäre es Sinninger und einfacher einfach ein kleines Skript laufen zu lassen und dann dein Pi neu starten zu lassen. Falls du dabei Hilfe brauchst, einfach bescheid geben....
Ja, ich glaube ich brauche da Hilfe.
Denn dies habe ich schon mal versucht.
anbei mal meine Versuche:
// Wenn der Viessmann Adapter keine Daten mehr bekommt (Verbindung nicht geschlossen) dann force_reload beim raspi und Adapter nach 2 Min. neu starten /* Ablauf - PC wird neu gestartet oder Adapter ist nicht grün - nach 30 Sek. prüfen ob immer noch false - 3 Min. warten - Adapter ausschalten - Raspi force-reload durchführen - 2 Min. warten - Adapter starten - 1 Min. warten -> prüfen ob Adapter true ist -> wenn ja, dann Telegram "gestartet" wenn nein dann Telegram Nachricht "nicht erfolgreich" */ var logging = true; var idTest = ["system.adapter.viessmann.0.connected", "viessmann.0.info.connection"]; on({id: idTest, change: "ne", val: false, ack: true}, function(obj){ if (logging) log("Adapter ist false"); setTimeout(function() { // 30 Sek. warten if (getState("system.adapter.viessmann.0.connected").val === false || getState("viessmann.0.info.connection").val === false) { if (logging) log("nach 30 Sek. Adapter ist weiterhin false"); setTimeout(function() { // 3 Min. warten stopviessmann(); // Adapter gestoppt ! raspi(); // Raspi force-reload durchführen setTimeout(function() { // 2 Min. warten startviessmann(); // Adapter neu gestartet ! setTimeout(function() { // 1 Min. warten if (getState("system.adapter.viessmann.0.connected").val === true & getState("viessmann.0.info.connection").val === true) { log ('Viessmann war nicht mehr verbunden; Raspi und Adapter wurden neu gestartet!'); sendTo('telegram', {user: 'Dieter',text: "Viessmann war nicht mehr verbunden; Raspi und Adapter wurden neu gestartet!", parse_mode: 'HTML'}); } else { log ('Viessmann war nicht mehr verbunden; Raspi und Adapter konnten nicht neu gestartet werden!'); sendTo('telegram', {user: 'Dieter',text: "Viessmann war nicht mehr verbunden; Raspi und Adapter konnten nicht neu gestartet werden!", parse_mode: 'HTML'}); } }, 60000); // 1 Min. }, 120000); // 2 Min. }, 180000); // 3 Min. } else { if (logging) log("nach 30 Sek. Adapter ist true"); } }, 30000); // 30 Sek. }); function raspi() { const Client = require('ssh2').Client; //ssh2 muss vorher beim Adapter javascript eingebunden werden. var conn = new Client(); conn.on('ready', function() { conn.exec('sudo /etc/vcontrold/force_reload.sh', function(err, stream) { if (err) throw err; stream.on('close', function(code, signal) { conn.end(); }).on('data', function(data) { log('Ausgabe: ' + data); }).stderr.on('data', function(data) { log('Fehler: ' + data); }); }); }).connect({ host: '192.168.xxx.xx', // IP des RPi port: 22, username: 'xxx', password: 'xxx' }); } function stopviessmann() { var obj = getObject('system.adapter.viessmann.0'); obj.common.enabled = false; setObject('system.adapter.viessmann.0', obj); log ('Viessmann Adapter gestoppt!'); } function startviessmann() { var obj = getObject('system.adapter.viessmann.0'); obj.common.enabled = true; setObject('system.adapter.viessmann.0', obj); log ('Viessmann Adapter neu gestartet!'); } /* // alter on on({id: "viessmann.0.info.connection", change:"ne", val: false, ack: true}, function(obj){ log ('Viessmann war nicht mehr verbunden; Raspi und Adapter neu gestartet!'); raspi(); setTimeout(function() { setState('system.adapter.viessmann.0.alive', false); }, 60000); setTimeout(function() { if (getState('system.adapter.viessmann.0.alive').val === false) { setState('system.adapter.viessmann.0.alive', true); } }, 120000); }); */ /* // Werte holen mit ssh2 --------------------------------------------------- const Client = require('ssh2').Client; //ssh2 muss vorher beim Adapter javascript eingebunden werden. function raspi() { var conn = new Client(); conn.on('ready', function() { conn.exec('vclient -h 127.0.0.1:3002 -c getTempA', function(err, stream) { if (err) throw err; stream.on('close', function(code, signal) { conn.end(); }).on('data', function(data) { log('Ausgabe: ' + data); }).stderr.on('data', function(data) { log('Fehler: ' + data); }); }); }).connect({ host: '192.168.xxx.xx', // IP des RPi port: 22, username: 'xxx', password: 'xxx' }); } raspi(); //, getTempWWist, getTempWWsoll, getTempKist, getTempKsoll */
Das force-reload.sh auf dem raspi sah wie folgt aus:
# force-reload ausfuehren und Text an telegram curl -s -k "https://api.telegram.org/botabcde:xcyA-ExGV8/sendMessage" -d text="<b>Pi-Heizung: force-reload ausgefuehrt !</b>" -d chat_id=257abcde -d parse_mode=html sleep 3 sudo /etc/init.d/vcontrol force-reload
Fazit:
Meine Versuche haben immer irgendwo gehakt.
Was bräuchte ich:- connection steht nicht (entweder ist der Adapter gelb oder die Werte kommen eben nicht an)
- Intanz ausschalten
- nach x Sek. reboot bei dem raspi
- nach x Sek. Instanz wieder an.
mfg
Dieter -
Im Adapter kann ich ja konfigurieren, in welchen Abständen welche Daten abgefragt werden.
Welche Intervalle machen denn Sinn?
Bei Abgas und Wassertemperatur, Errorcodes sowie Brennerstarts? -
@bahnuhr sagte in Viessmann-Adapter:
@blauholsten sagte in Viessmann-Adapter:
Für dein Fall wäre es Sinninger und einfacher einfach ein kleines Skript laufen zu lassen und dann dein Pi neu starten zu lassen. Falls du dabei Hilfe brauchst, einfach bescheid geben....
Ja, ich glaube ich brauche da Hilfe.
Denn dies habe ich schon mal versucht.
anbei mal meine Versuche:
// Wenn der Viessmann Adapter keine Daten mehr bekommt (Verbindung nicht geschlossen) dann force_reload beim raspi und Adapter nach 2 Min. neu starten /* Ablauf - PC wird neu gestartet oder Adapter ist nicht grün - nach 30 Sek. prüfen ob immer noch false - 3 Min. warten - Adapter ausschalten - Raspi force-reload durchführen - 2 Min. warten - Adapter starten - 1 Min. warten -> prüfen ob Adapter true ist -> wenn ja, dann Telegram "gestartet" wenn nein dann Telegram Nachricht "nicht erfolgreich" */ var logging = true; var idTest = ["system.adapter.viessmann.0.connected", "viessmann.0.info.connection"]; on({id: idTest, change: "ne", val: false, ack: true}, function(obj){ if (logging) log("Adapter ist false"); setTimeout(function() { // 30 Sek. warten if (getState("system.adapter.viessmann.0.connected").val === false || getState("viessmann.0.info.connection").val === false) { if (logging) log("nach 30 Sek. Adapter ist weiterhin false"); setTimeout(function() { // 3 Min. warten stopviessmann(); // Adapter gestoppt ! raspi(); // Raspi force-reload durchführen setTimeout(function() { // 2 Min. warten startviessmann(); // Adapter neu gestartet ! setTimeout(function() { // 1 Min. warten if (getState("system.adapter.viessmann.0.connected").val === true & getState("viessmann.0.info.connection").val === true) { log ('Viessmann war nicht mehr verbunden; Raspi und Adapter wurden neu gestartet!'); sendTo('telegram', {user: 'Dieter',text: "Viessmann war nicht mehr verbunden; Raspi und Adapter wurden neu gestartet!", parse_mode: 'HTML'}); } else { log ('Viessmann war nicht mehr verbunden; Raspi und Adapter konnten nicht neu gestartet werden!'); sendTo('telegram', {user: 'Dieter',text: "Viessmann war nicht mehr verbunden; Raspi und Adapter konnten nicht neu gestartet werden!", parse_mode: 'HTML'}); } }, 60000); // 1 Min. }, 120000); // 2 Min. }, 180000); // 3 Min. } else { if (logging) log("nach 30 Sek. Adapter ist true"); } }, 30000); // 30 Sek. }); function raspi() { const Client = require('ssh2').Client; //ssh2 muss vorher beim Adapter javascript eingebunden werden. var conn = new Client(); conn.on('ready', function() { conn.exec('sudo /etc/vcontrold/force_reload.sh', function(err, stream) { if (err) throw err; stream.on('close', function(code, signal) { conn.end(); }).on('data', function(data) { log('Ausgabe: ' + data); }).stderr.on('data', function(data) { log('Fehler: ' + data); }); }); }).connect({ host: '192.168.xxx.xx', // IP des RPi port: 22, username: 'xxx', password: 'xxx' }); } function stopviessmann() { var obj = getObject('system.adapter.viessmann.0'); obj.common.enabled = false; setObject('system.adapter.viessmann.0', obj); log ('Viessmann Adapter gestoppt!'); } function startviessmann() { var obj = getObject('system.adapter.viessmann.0'); obj.common.enabled = true; setObject('system.adapter.viessmann.0', obj); log ('Viessmann Adapter neu gestartet!'); } /* // alter on on({id: "viessmann.0.info.connection", change:"ne", val: false, ack: true}, function(obj){ log ('Viessmann war nicht mehr verbunden; Raspi und Adapter neu gestartet!'); raspi(); setTimeout(function() { setState('system.adapter.viessmann.0.alive', false); }, 60000); setTimeout(function() { if (getState('system.adapter.viessmann.0.alive').val === false) { setState('system.adapter.viessmann.0.alive', true); } }, 120000); }); */ /* // Werte holen mit ssh2 --------------------------------------------------- const Client = require('ssh2').Client; //ssh2 muss vorher beim Adapter javascript eingebunden werden. function raspi() { var conn = new Client(); conn.on('ready', function() { conn.exec('vclient -h 127.0.0.1:3002 -c getTempA', function(err, stream) { if (err) throw err; stream.on('close', function(code, signal) { conn.end(); }).on('data', function(data) { log('Ausgabe: ' + data); }).stderr.on('data', function(data) { log('Fehler: ' + data); }); }); }).connect({ host: '192.168.xxx.xx', // IP des RPi port: 22, username: 'xxx', password: 'xxx' }); } raspi(); //, getTempWWist, getTempWWsoll, getTempKist, getTempKsoll */
Das force-reload.sh auf dem raspi sah wie folgt aus:
# force-reload ausfuehren und Text an telegram curl -s -k "https://api.telegram.org/botabcde:xcyA-ExGV8/sendMessage" -d text="<b>Pi-Heizung: force-reload ausgefuehrt !</b>" -d chat_id=257abcde -d parse_mode=html sleep 3 sudo /etc/init.d/vcontrol force-reload
Fazit:
Meine Versuche haben immer irgendwo gehakt.
Was bräuchte ich:- connection steht nicht (entweder ist der Adapter gelb oder die Werte kommen eben nicht an)
- Intanz ausschalten
- nach x Sek. reboot bei dem raspi
- nach x Sek. Instanz wieder an.
mfg
DieterHi,
Auf die schnelle vom Handy. Das mit dem Adapters stoppen usw. Kannst du dir schenken.
Mache folgendes.......
Stelle dein Skript so um, dass du nur auf den Connection Datenpunkt des Adapters triggerst. Sollte das passieren, lässt du bei
Wert false Zeit x (ich würde min 10m wählen)laufen, dann führst du einen Befehl aus der den Pi neu starten lässt. Bei true den timer wieder löschen. Mehr brauchst du eigentlich nicht zu machen. Bei weitere Hilfe einfach melden.... -
@martinschm das musst du ein wenig testen, allerdings sollte man relativ unwichtige Werte wie Brennerstarts und erros nicht zu klein wählen. Sowas Frage ich alle fünf Minuten ab. Temperaturen im Sekunden Bereich.
-
Übrigens, das Sortieren bzgl. des Abfrageintervalls klappt noch nicht so richtig. Ein Sortieren nach Name und Beschreibung funktioniert dagegen.
Würde mir noch wünschen, dass man für die Abfrageintervalle einzelne Abfragepunkte markieren kann, um dann für diese einheitlich das Abfrageintervall ändern zu könnnen. Außerdem wäre ein Filterfunktion toll, so dass man z.B. "temp" eingeben kann, um nur noch die Temperatur-Abfragepunkte angezeigt zu bekommen.
-
Es gibt ja bereits einen Dp "connection", der die Verbindung überwacht.
Soweit ich nachvollziehen kann, ist dieser an den Log Eintrag " Connection with Viessmann system disconnected" geknüpft. Wenn ich beispielsweise die Heizung kurz ausschalte, oder den USB Stecker entferne, erhalte ich diesen Eintrag.Ich benötige einen zweiten dp, der auf viessmann.0 Timeout connection error! Triggert. Bei mir der Fall, wenn sich vcontrold oder der raspi aufgehängt hat. Ist dies der Fall würde ich den raspi gerne neustarten. Auf ein Log Eintrag zu triggern, ist vermutlich schwierig. Daher die Bitte für einen zusätzlichen Datenpunkt.