Erfahrung mit "Vitocom 100 LAN1"

Viessmann, da habe ich die Nase voll (sorry).
Vor einem Jahr hat meine Steuerung von 1997 den Geist auf gegeben (ich könnte den Fehler finden, war eine Batterie).
Aber durch den Stress mit Viessmann bin ich dann einen anderen Weg gegangen.
Ich habe statt der Viessmann Steuerung einen Pi mit IPS, 1wire Sensoren und 8 fach Relaisblock an dem Kessel verbaut.
Seit dem läuft das Ding, so wie ich es möchte, da die ganzen Regler auf mein Haus angepasst sind (Das habe ich mit dem Heizungsbauer, und selber nie mit der alten Steuerung so auf den Punkt bekommen:eek:)
Macht aber viel Arbeit, und braucht Zeit bis es aufs Haus angepasst ist !
Sorry, musste das mal loswerden, da ich mit vielen Steuerungen schon blöde Dinge gesehen habe.
Wenn ich die selbst in Hand nehme, geht es besser. Braucht aber Zeit,
IPS kann viel mehr.:smiley:

Ich bin momentan ganz zufrieden mit der Viessmann Regelung.
Scheitere zurzeit am auslesen mit dem optolink USB Adapter. Es gibt hier im Forum ein Script, jefoch unterstützt dies nicht das 300 er Protokoll ( WO1C ) Regelung. Ich glaube „Coyote“ hat mal geschrieben das er an einem Modul für IPS arbeitet :slight_smile:

Ich arbeite mit dem 300er Protokoll. Das klappt, wenn der Dienst nicht gerade abraucht, sehr zuverlässig. Siehe hierzu auch die vito.xml etc. in diesem Thread.

@tomgr: 1997 ist natürlich auch schon eine ganze Zeit her. Die Vaillant-Heizung, die ich gerade durch die Viessmann ersetzt habe war von 1998. Da liegen technologisch Welten zwischen… Das Teil war auch dermaßen nervig und fehleranfällig, dass ich mich entschieden habe, Vaillant erst gar nicht mehr anzufragen. So hat jeder seine Negativerfahrung mit irgendeiner Marke gemacht… Und 18 Jahre für eine Heizung ist ja auch schon was…

Gruß
Walter

@Walter
Ich habe den Optolink Adapter schon erfolgreich in IPS integriert.
Mit welchem Script fragst du die Daten ab, bzw. hohlst diese in IPS?
Ich so vorgegangen:
Abfrage & Steuerung von Viessmann Heizungen

Inkl. dem Script!

@michl: Ich habe das nach dem Verfahren von pumpkineater gem. diesem Thread hier realisiert. Das Prinzip mit der Registervariable hat mir gut gefallen und im Prinzip wird nur ein Sende- und ein Empfangsskript benötigt. Ich habe mir allerdings noch ein Art Semaphore dazu programmiert. Das ist nichts anderes als ein Sperrmechanismus, gesteuert über eine Boolean Variable, der verhindert, dass mehrere Anfragen auf einmal an den Raspi / Vcontrold gesendet werden. Skripte kann ich Dir bei Bedarf zusenden oder hier veröffentlichen…

Hallo Walter,
das mit der Registervariable hab ich auch so im Sinne.
Gerne nehme ich dein Angebot an, das du dein Sende-Empfangsscript zur Verfügung stellst!

Ich arbeite ohne einen Raspi, also direkt von der Vito per USB an den IPS PC.

Habe auch auf dem Rechner die v-commDLL installiert, dies war eine normale Setup Datei. Die v-commDLL brauch ich nicht mit dem Script verlinken, oder mit der Vito.xml Datei?

Danke

Und also wenn du das hier veröffentlichen würdest wer das super und würd mir um einiges weiterbringen
Gruß stefan

Gesendet von meinem SM-A510F mit Tapatalk

Hallo Michl,

sorry, das scheint ein ganz anderer Ansatz zu sein, den ich leider nicht kenne. Ich habe das mit dem Raspi und vcontrold realisiert.

Hallo Walter,

könntest du uns trotzdem dein Script zur Verfügung stellen? Ev. können wir es ja umbauen :slight_smile: Danke!

Mach ich gerne. Bringt aber glaube ich nicht viel. Das folgende Receive-Skript wertet die Rückgabe der Registervariable aus. Die mit IF abgefragten Kommandos korrespondieren mit den individuellen Einstellungen in der vito.xml des RASPIs. Von daher nicht besonders aussagekräftig.

<?
include "logging.php";

IF (strpos($_IPS['VALUE'],"ERROR")==0 && strpos($_IPS['VALUE'],"Error")==0 && strpos($_IPS['VALUE'],"Fehler")==0)
{
		$response = explode("|", $_IPS['VALUE']);
      SetValue(29810 /*[Heizung\Zentralheizung \VCONTROLD\IP Socket Zustand]*/,TRUE);
      
		if($response[0] == "getTempKessel") {
			SetValue(19179 /*[Heizung\Zentralheizung \Allgemeine Werte\Kesseltemperatur_Ist]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempWW") {
		   SetValue(12371 /*[Heizung\Zentralheizung \Allgemeine Werte\Warmwasser_Ist]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempA") {
		   SetValue(35648 /*[Heizung\Zentralheizung \Allgemeine Werte\Außentemperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempAbgas") {
		   SetValue(58311 /*[Heizung\Zentralheizung \Allgemeine Werte\Abgastemperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempKesselSoll") {
		   SetValue(35899 /*[Heizung\Zentralheizung \Allgemeine Werte\Kesseltemperatur_Soll]*/, (float)$response[1]);
		}
		else if($response[0] == "getBrennerstarts")
		{
		   SetValue(47684 /*[Heizung\Zentralheizung \Allgemeine Werte\BrennerStarts]*/, (int)$response[1]);
		   SetValue(25890 /*[Heizung\Zentralheizung \Allgemeine Werte\Brennerstarts heute]*/, GetValue(47684 /*[Heizung\Zentralheizung \Allgemeine Werte\BrennerStarts]*/)-GetValue(18331 /*[Heizung\Zentralheizung \Allgemeine Werte\Brennerstarts Stand gestern]*/) );
		}
		else if($response[0] == "getPumpeStatusIntern") {
		   SetValue(21164 /*[Heizung\Zentralheizung \Allgemeine Werte\Status_Pumpe Intern]*/, (int)$response[1]);
		}
		else if($response[0] == "getBrennerStunden") {
		   SetValue(39294 /*[Heizung\Zentralheizung \Allgemeine Werte\BrennerStunden1]*/, (int)$response[1]);
		}
		else if($response[0] == "getHeizkurveM1") {
		   SetValue(18014 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Heizkurve]*/, (float)$response[1]);
		   SetValue(19513 /*[Heizung\Zentralheizung \Eingabewerte SET\Heizkurve M1]*/, (float)$response[1]);
		}
		else if($response[0] == "getNiveauM1") {
		   SetValue(36025 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Niveau]*/, (int)$response[1]);
		   SetValue(21075 /*[Heizung\Zentralheizung \Eingabewerte SET\Niveau M1]*/, (int)$response[1]);
		}
		else if($response[0] == "getHeizkurveM2") {
		   SetValue(31667 /*[Heizung\Zentralheizung \Heizkreis FB EG\Heizkurve]*/, (float)$response[1]);
			SetValue(28896 /*[Heizung\Zentralheizung \Eingabewerte SET\Heizkurve M2]*/, (float)$response[1]);
		}
		else if($response[0] == "getNiveauM2") {
		   SetValue(37138 /*[Heizung\Zentralheizung \Heizkreis FB EG\Niveau]*/, (int)$response[1]);
		   SetValue(26745 /*[Heizung\Zentralheizung \Eingabewerte SET\Niveau M2]*/, (int)$response[1]);
		}
		else if($response[0] == "getTempVLM1") {
		   SetValue(50702 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Vorlauf Temperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempVLM2") {
		   SetValue(26800 /*[Heizung\Zentralheizung \Heizkreis FB EG\Vorlauf Temperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getBetriebsartM1") {
		   SetValue(13561 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Betriebsmodus]*/, (string)$response[1]);
		   SetValue(52404 /*[Heizung\Zentralheizung \Eingabewerte SET\Betriebsmodus M1]*/, (string)$response[1]);
		}
		else if($response[0] == "getBetriebsartM2") {
		   SetValue(52258 /*[Heizung\Zentralheizung \Heizkreis FB EG\Betriebsmodus (Integer)]*/, (string)$response[1]);
		   SetValue(31775 /*[Heizung\Zentralheizung \Eingabewerte SET\Betriebsmodus M2]*/, (string)$response[1]);
		}
		else if($response[0] == "getTempRaumNorSollM1") {
		   SetValue(44729 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Raumtemperatur NORMAL]*/, (float)$response[1]);
		   SetValue(13169 /*[Heizung\Zentralheizung \Eingabewerte SET\RaumNormal M1]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempRaumNorSollM2") {
		   SetValue(15832 /*[Heizung\Zentralheizung \Heizkreis FB EG\Raumtemperatur NORMAL]*/, (float)$response[1]);
		   SetValue(31556 /*[Heizung\Zentralheizung \Eingabewerte SET\RaumNormal M2]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempRaumRedSollM1") {
		   SetValue(17690 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Raumtemperatur REDUZIERT]*/, (float)$response[1]);
		   SetValue(37659 /*[Heizung\Zentralheizung \Eingabewerte SET\RaumRed M1]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempRaumRedSollM2") {
		   SetValue(43630 /*[Heizung\Zentralheizung \Heizkreis FB EG\Raumtemperatur REDUZIERT]*/, (float)$response[1]);
		   SetValue(54335 /*[Heizung\Zentralheizung \Eingabewerte SET\RaumRed M2]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempRLTSM1") {
		   SetValue(49357 /*[Heizung\Zentralheizung \Heizkreis 1.OG\RücklaufTemperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempRLTSM2") {
		   SetValue(46001 /*[Heizung\Zentralheizung \Heizkreis FB EG\RücklaufTemperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getLeistungIst") {
		   SetValue(56708 /*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (float)$response[1]);
		}
		else if($response[0] == "getPumpeStatusM1") {
		   SetValue(22302 /*[Heizung\Zentralheizung \Heizkreis 1.OG\PumpeStatus]*/, (int)$response[1]);
		}
		else if($response[0] == "getPumpeStatusM2") {
		   SetValue(53279 /*[Heizung\Zentralheizung \Heizkreis FB EG\PumpeStatus]*/, (int)$response[1]);
		}
		else if($response[0] == "getPumpeStatusSp") {
		   SetValue(46441 /*[Heizung\Zentralheizung \Allgemeine Werte\Speicherladepumpe]*/, (int)$response[1]);
		}
		else if($response[0] == "getPumpeDrehzahlIntern") {
		   SetValue(34564/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (float)$response[1]);
		}
		else if($response[0] == "getPumpeDrehzahlM1") {
		   SetValue(56159/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (float)$response[1]);
		}
		else if($response[0] == "getPumpeDrehzahlM2") {
		   SetValue(18608/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
		}
		else if($response[0] == "getBrennerStunden2") {
		   SetValue(39749/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
		}
		else if($response[0] == "getPartyM1") {
		   SetValue(14938/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
			SetValue(32016/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
		}
		else if($response[0] == "getPartyM2") {
		   SetValue(54148/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
			SetValue(57900/*[Heizung\Zentralheizung \Allgemeine Werte\Aktuelle Leistung]*/, (int)$response[1]);
		}
		else if($response[0] == "getTempWWSoll")
			{
		   SetValue(41325 /*[Heizung\Zentralheizung \Allgemeine Werte\Warmwasser_Soll]*/, (float)$response[1]);
		   SetValue(27402 /*[Heizung\Zentralheizung \Eingabewerte SET\Warmwasser SOLL]*/, (int)$response[1]);
			}
		else if($response[0] == "getTempLadePumpe") {
		   SetValue(52349 /*[Heizung\Zentralheizung \Allgemeine Werte\Temperatur Speicher Ladesensor (Komforsensor)]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempAuslauf") {
		   SetValue(20380 /*[Heizung\Zentralheizung \Allgemeine Werte\Warmwasser Auslauftemperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getVorlauftemperatur") {
		   SetValue(31429 /*[Heizung\Zentralheizung \Allgemeine Werte\Gem. Vorlauftemperatur]*/, (int)$response[1]);
		}
		else if($response[0] == "getSystime") {
		   SetValue(26487 /*[Heizung\Zentralheizung \Allgemeine Werte\Systime]*/, (string)$response[1]);
		}
		else if($response[0] == "getTempPartyM1") {
		   SetValue(14001 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Party Temperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getTempPartyM2") {
		   SetValue(59043 /*[Heizung\Zentralheizung \Heizkreis FB EG\Party Temperatur]*/, (float)$response[1]);
		}
		else if($response[0] == "getBetriebSparM1") {
		   SetValue(46714 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Sparbetrieb]*/, (int)$response[1]);
		   SetValue(15803 /*[Heizung\Zentralheizung \Eingabewerte SET\SparbetriebM1]*/, (int)$response[1]);
		}
		else if($response[0] == "getBetriebSparM2")
		{
		   SetValue(56992 /*[Heizung\Zentralheizung \Heizkreis FB EG\Sparbetrieb]*/, (int)$response[1]);
		   SetValue(14606 /*[Heizung\Zentralheizung \Eingabewerte SET\SparbetriebM2]*/, (int)$response[1]);
		}
		else if(Substr($response[0],0,13) == "setTempWWSoll" && Substr($response[1],0,2)=="OK")
		{
			$grad=Substr($response[0],14,2);
		   logging("Heizung","Warmwasser Soll-Temperatur wurde auf $grad Grad gesetzt.");
		}
		else if(Substr($response[0],0,3) == "set" && Substr($response[1],0,2)=="OK")
		{
		   logging("Heizung","SET-Befehl $response[0] erfolgreich verarbeitet");
		}
		else if($response[0] == "getTimerM1Mo") {
		   SetValue(26644 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 1Montag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1Di") {
		   SetValue(46677 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 2Dienstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1Mi") {
		   SetValue(30754 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 3Mittwoch]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1Do") {
		   SetValue(42415 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 4Donnerstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1Fr") {
		   SetValue(44489 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 6Freitag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1Sa") {
		   SetValue(57507 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 7Samstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM1So") {
		   SetValue(28867 /*[Heizung\Zentralheizung \Heizkreis 1.OG\Schaltzeiten\_Schaltzeiten 8Sonntag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Mo") {
		   SetValue(43631 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 1Montag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Di") {
		   SetValue(56439 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 2Dienstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Mi") {
		   SetValue(19190 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 3Mittwoch]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Do") {
		   SetValue(19766 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 4Donnerstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Fr") {
		   SetValue(40713 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 6Freitag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2Sa") {
		   SetValue(58888 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 7Samstag]*/, (string)$response[1]);
		}
		else if($response[0] == "getTimerM2So") {
		   SetValue(29425 /*[Heizung\Zentralheizung \Heizkreis FB EG\Schaltzeiten\_Schaltzeiten 8Sonntag]*/, (string)$response[1]);
		}
		else if($response[0] == "getBrennerStoerung") {
	   	SetValue(53981 /*[Heizung\Zentralheizung \Allgemeine Werte\Brennerstoerung]*/, (string)$response[1]);
		}
		else if($response[0] == "getSammelStoerung") {
	   	SetValue(40871 /*[Heizung\Zentralheizung \Allgemeine Werte\SammelStoerung]*/, (string)$response[1]);
		}
		else if($response[0] == "getPumpeStatusZirku") {
	   	SetValue(36836 /*[Heizung\Zentralheizung \Allgemeine Werte\Zirkulationspumpe Status]*/, (string)$response[1]);
		}
		else if($response[0] == "getBrennerStatus") {
	   	SetValue(42627 /*[Heizung\Zentralheizung \Allgemeine Werte\Brennerstatus]*/, (string)$response[1]);
		}
}
ELSE
{
	logging("Heizung","Fehler bei RECEIVE-Skript erkannt! Starte RESET Routine");
	IPS_RUNSCRIPT(23275 /*[Heizung\Zentralheizung \VCONTROLD\Socket freischießen]*/);
	IPS_RUNSCRIPT(43866 /*[Heizung\Zentralheizung \VCONTROLD\Vcontrold-Reset]*/);
}
?>

Das folgende Sendeskript schickt Kommandos an den Socket, der vorher angelegt sein muss. Auch hier sind die Kommandos gem. Vito.xml auf dem RASPI:

<?
require_once "logging.php";
$ok=FALSE;
$ms=20;
$wait=300;

FOR ($x=1;$x<=$ms;$x++)
	{
		$status=GetValue(30642 /*[Heizung\Zentralheizung \VCONTROLD\Socket_Busy]*/);
		IF (!$status)
		   {
		      SetValue(30642 /*[Heizung\Zentralheizung \VCONTROLD\Socket_Busy]*/,TRUE);
				Send_to_vito();
				IPS_SLEEP(500);
				SetValue(30642 /*[Heizung\Zentralheizung \VCONTROLD\Socket_Busy]*/,FALSE);
				$ok=TRUE;
				$x=$ms+1;
		   }
		ELSE
		   {
		  		//logging("Heizung","Zyklisches Sendeskript wartet auf freien Socket: Versuch $x !");
		  		IPS_SLEEP($wait);
		   }
	}
IF (!$ok)
	{
		logging("Heizung","Polling-Skript: Maximale Anzahl $ms erreicht beim Polling Versuch. Starte RESET Routine");
		IPS_RUNSCRIPT(23275 /*[Heizung\Zentralheizung \VCONTROLD\Socket freischießen]*/);
		IPS_RUNSCRIPT(43866 /*[Heizung\Zentralheizung \VCONTROLD\Vcontrold-Reset]*/);
	}

// ************************** Schreibfunktionen ********************************

function Send_to_vito()
{
	$socketId = 34390 /*[Client Socket Vitodens222]*/;
	$pause=100;

	if (IPS_GetProperty($socketId,'Open') == false)
	{
		IPS_SetProperty($socketId, "Open", true); // Socket öffnen
		IPS_ApplyChanges($socketId); // IPS die Änderung durchführen lassen
		IPS_Sleep(1000);
	}

	CSCK_SendText($socketId, "getTempKessel
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempA
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempWW
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempAbgas
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempKesselSoll
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBrennerstarts
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeStatusIntern
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBrennerStunden
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getHeizkurveM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getNiveauM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getHeizkurveM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getNiveauM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempVLM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempVLM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBetriebsartM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBetriebsartM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempRaumNorSollM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempRaumNorSollM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempRaumRedSollM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempRaumRedSollM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getLeistungIst
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeStatusM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeStatusM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeStatusSp
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeDrehzahlIntern
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeDrehzahlM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeDrehzahlM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBrennerStunden2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPartyM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPartyM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempWWSoll
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempLadePumpe
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempAuslauf
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempPartyM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getTempPartyM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBetriebSparM1
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBetriebSparM2
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getBrennerStoerung
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getSammelStoerung
");
	IPS_Sleep($pause);
	CSCK_SendText($socketId, "getPumpeStatusZirku
");
//	IPS_Sleep($pause);
//	CSCK_SendText($socketId, "getBrennerStatus
");
}
?>

Die Vito.xml und die vcontrold.xml hatte ich in diesem Thread ja schon gepostet.

Gruß
Walter

Hallo nochmal,

zu o.a. Skripts sollte man auf jeden Fall die Anleitung von pumpkineater auf dieser Seite anschauen. Aus dieser wird das ganze Prinzip klar. Die einzelnen Schritte sind gut erklärt. Ohne das sind die Skripte oben relativ unverständlich und bringen nichts…

Gruß
Walter

Tach Zusammen,

sorry für das hochholen des alten Fadens.
Bei uns steht eine neue Heizung an…
Bei Viessmann gibt es mittlerweile das WLAN-Modul kostenlos dabei, jedoch macht das Ding nur „Cloud“:frowning:
Das Vitolo 100 LAN gibt es wohl noch, daher die Frage an die Nutzer:
Kann ich das LAN-Modul direkt per http/api o.Ä. ansprechen und auslesen?
Seriell auf die Kiste zuzugreifen wäre für mich nicht ganz optimal.

Dank und Gruß aus OBC

kea