IPSShadowing - eine Beschattungssteuerung

Profile neu erstellt oder die alten verändert, wenn 2, dann alle alten löschen und neu machen, glaube da war mal was, gerade aber keine Zeit zum Suchen.

Der Integerwert steht auf -1, was in einem Datum von 1/1/1970 12:59:59 resultiert

Steht bei mir auch, und die Dinger fahren trotzdem, werden über „ProfileBgnOfDay“ und „ProfileEndOfDay“ gesteuert.

Gruß
Bruno

Ansonsten auch mal das Script IPSShadowing_ProgramTimer manuel ausführen, das zeigt Dir welches Programm gerade aktiv ist …

Zwecks Rückmeldung, eventuell lässt sich ja da was auf die Schnelle machen:

[ul]
[li]Welchen Namen hat die Variable mit der Positions Anzeige (Name+Ident)
[/li][li]Welchen Wertebereich hat diese Variable (zB 0=offen, 1=Geschlossen)
[/li][/ul]

Hallo, danke für die Rückmeldung.

sowie es derzeit aussieht, schmiert mir das Enocean Modul ab. Hab bisher noch nicht evaluieren können, ob es am Gateway liegt oder an IPS.

Wenn ich nah Hause komme, dann lässt sich nichts schalten. Nach einem Restart geht es dann.

Vielleicht passiert das auch über Nacht und deswegen fahren die Rollläden nicht.

Wegen den Rückmeldungen:
Ich muss erst einen eigenen Cutter schreiben, der mir die Enocean Funkprotokolle entschlüsselt. Hab mir den Enochen SP3 und Eltako Codes besorgt. Das wird mich aber ne Weile beschäftigen :slight_smile:

Gruß
Maze

Danke nochmal für die Tipps.

Die Steuerung funktioniert jetzt soweit. Die Verbindungsprobleme lagen an der Entfernung des Lan Gateways zum FAM14.
Wer rechnet schon damit bei 6m und Holzständerbau :slight_smile:

Das Auslesen der Shutterposition ist eine Aufgabe für die Weihnachtstage.

Eine andere Frage habe ich noch:

Ich habe nie für das iphone die iFront App besorgt und da fällt mir auf, dass ich die Beschattungs-Umgebung nur im Visualisierugsordner finde. Den hatte ich ausgeblendet, da in der normalen Weboberfläche ja bereits die Umgebung in der 0 Ebene eingebaut ist.

Ist das normal, oder habe ich etwas falsch gemacht?

Gruß
maze

Visu für die Mobile App wird im Ordner Visualization.Mobile.IPSShadowing angelegt. Bei mir liegt der Root der Mobile App auf Visualization.Mobile, Du kannst Dir den IPSShadowing Ordner aber auch sonst wo hin verschieben …

Hallo,

ich vor ein paar Tagen alle Updates der IPS Libraries gemacht.
Ausserdem hab ich einen Rolladen dazugefügt und nochmal das install script gestartet.
seitdem hab ich ein kleines Problem mit dem Shadowing bzw. mit der Anzeige.

1.) die Anordnung in der Übersicht ist etwas durcheinander gekommen.
2.) Selbst wenn die Rolläden komplett geöffnet sind, wird 50 % angezeigt und nicht offen.

Hat jemand von euch eine Idee, was da durcheinandergekommen ist?

Danke Brownson,
hatte jetzt die Möglichkeit das mit der Mobile App einzustellen. Super! Funktioniert.
Gruß und schöne Feiertage.

@gdfde

Hab die Installation gerade bei mir nochmals laufen lassen, konnte aber kein Problem entdecken. Sieht so aus, als wären die Profile etwas durcheinander geraten (IPSShadowing_MovementXXX).
Sieh Dir die Profile mal an bzw. lass die Installation nochmals laufen, die sollte die Profile wieder gerade biegen…

@brownson
Irgendwas hats da jetzt bei mir, ich hab das IPS Shadowing komplett gelöscht und neu installiert.

Ich hab ganz stark in Verdacht, dass es mit dem IPS Upgrade (3.10.3237) zu tun hat.
Die IPS_Shadowing_movement variable steht richtigerweise auf Offen, im Webfront wirds dennoch als 50 % angezeigt.
Ich glaub, da hats was mit dem Variablenprofil.

Ich bin auch auf ein zweites Problem draufgekommen.
Ich wollte die Profile (Temperatur, Tagesbeginn/ende usw) wieder neu anlegen, aber dort lässt sich der Namen nicht ändern.
Die Variable ist als systemeigene String definiert…wenn man´s händisch auf „Text Box“ umändert, lässt sie sich editieren.

Hast du noch eine Idee?
Danke.

Screen Shot 2013-12-27 at 01.22.03.pngScreen Shot 2013-12-27 at 00.58.39.png

Die Zeile geht beim Klick auf das Doppel-T kurz auf und verschwindet dann sofort wieder. Betrifft alle Eingabefelder der Library-Programme. Hat m.E. mit dem Variablenprofil aber nix zu tun, da das über eine Funktion gesteuert wird.

Gruß
Bruno

Ich kann das Verhalten bzw. den Fehler der Eingabefelder bestätigen.

p.s. weiter bleit das Webinterface der IPSLibrary beim Updaten seit einigen Tage im „Install“-Process hängen…
WF bleibt schaltbar, IPSLibrary hängt. Manuelles einzel Update in den Unterseiten der Module fixed das.

Seid ihr auch schon auf der IPS 3.1. (beta)?

ja, ich bin auf der aktuellen BETA

Jawollo :wink:

Habe das Problem jetzt bei mir reproduzieren können, kann aber keinen Fehler finden (Profil sieht in Ordnung aus, Wert in Konsole stimmt, nur WebFront ist falsch).
Ich denke, da muss Paresy nach den Feiertagen einen Blick darauf werfen …

Kann dieses Problem auch bestätigen… :frowning:

Sonst alles :loveips:

FG
Strupp

PS: Guten Rutsch ins neue Jahr!!!

Hallo Andreas!

Eine Bitte für zukünftige Updates (wenn möglich) oder vielleicht kannst du mir einen anderen Ansatz liefern.

Ziel:
Abrechen einer Beschattungsfahrt in „IPSShadowing_BeforeActivateShutter“.
(Für Aufrufe aus dem Webfront UND IPSMessageHandler.)

Problem:
Da die Stati bereits vor Aufruf der IPSComponent Funktion geändert werden, werden bei Abrechen der Beschattung in „IPSShadowing_BeforeActivateShutter“ nicht mehr zurückgesetzt!
Das Webfront (=Stati) und die Wirklichkeit laufen nun nicht mehr synchron.

Derzeitige Lösung:
Ich habe die Funktionen StartRefreshTimer, SetStatus, etc. in IPSShadowing_BeforeActivateShutter nachgebildet.
Diese sind in IPSShadowing_Device.class.php als PRIVATE deklariert.

Mein anderer Ansatz über MoveByEvent(c_MovementId_Stop) funktioniert leider nicht, da noch die Funktion MoveByCommand(…) noch läuft.

Wunsch:
Eine PUBLIC Funktion in IPSShadowing_Device.class.php nur um die Statusvariablen mit Hilfe der Movement-Konstanten richtig setzen zu können.

Gruß
Günter

Hi,

mir ist Dein Problem noch nicht ganz klar, ein Abbruch in IPSShadowing_BeforeActivateShutter bedeutet, dass man die Ansteuerung des Beschattungsdevices selber gemacht hat, der Status und die Timer sollen aber trotzdem weiterlaufen.

Wieso willst Du, dass der Status von Movement nicht gesetzt wird?

Eine Funktion zum Synchronisieren der Movement Variable könnte so aussehen:


	public function SyncState($status) {
		if ($this->GetVariableValue(c_Control_StepsToDo)=="") {
			IPSLogger_Inf(__file__, "Sync State=".$status." from Shutter '".IPS_GetName($this->deviceId));
			$this->SetVariableValue(c_Control_Movement, $status);
			$this->SetStatus();
		}
	}

Vielleicht war ich zu kompliziert…
Nach Start einer Beschattung möchte ich einen bestimmten Zustand/Variable (z.B. Fenstergriff) überprüfen.

  1. Start der Beschattung --> z.B im Webfront
  2. in IPSShadowing_BeforeActivateShutter
    Fenster geschlossen: Soll mit der Beschattung weitermachen --> true wird übergeben
    Fenster geöffnet: Soll mit der Beschattung stoppen --> false wird übergeben --> Beschattung wird nicht ausgeführt

Alles noch kein Problem. Aber die Stati im Webfront laufen weiterhin lt. Punkt 1)

Ich habe es so wie Lt. deiner geposteten Funktion in IPSShadowing_BeforeActivateShutter gemacht.
Meine dzt. Lösung:

SetVariableValue($deviceId,c_Control_Step,      -1);
SetVariableValue($deviceId,c_Control_StepsToDo, "");
SetVariableValue($deviceId,c_Control_StartTime, -1);
StartRefreshTimer(false);
SetStatus($deviceId);

Im MessageHandler funktioniert das leider nicht, da das Webfront keine Rücksicht darauf nimmt.

Gruß
Günter

hmm, eine mögliche Lösung wäre zB den Übergabeparameter als „Reference“ zu übergeben, dann kann man sie auch manipulieren und selbst bestimmen, was danach gesetzt wird:


	function IPSShadowing_BeforeActivateShutter($deviceId, @$command) {
		$command=c_MovementId_Stop;
		....