Aio Creator und HmIP-SWO-PR
Moderator: Co-Administratoren
- onkeltommy
- Beiträge: 1387
- Registriert: 07.05.2016, 08:03
- Wohnort: Wien
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 26 Mal
Aio Creator und HmIP-SWO-PR
Hallo Leute
ich habe seit heute die Wetterstation HmIP-SWO-PR und in der CCU2 eingebunden, fuinktioniert. Allerdings....grml....Der Aio Creator zeigt nach Geräteimport von der CCU2 die Station NICHT an, wird die nicht von Mediola unterstützt ? Wenn nicht, gibt es einen Workaround ?
Ich brauche die Daten auf dem Tablet der Haussteuerung, da logischerweise die Wetterdaten im Haus verarbeitet werden.
Danke für Tips und Grüße
Thomas
ich habe seit heute die Wetterstation HmIP-SWO-PR und in der CCU2 eingebunden, fuinktioniert. Allerdings....grml....Der Aio Creator zeigt nach Geräteimport von der CCU2 die Station NICHT an, wird die nicht von Mediola unterstützt ? Wenn nicht, gibt es einen Workaround ?
Ich brauche die Daten auf dem Tablet der Haussteuerung, da logischerweise die Wetterdaten im Haus verarbeitet werden.
Danke für Tips und Grüße
Thomas
lG
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
-
- Beiträge: 167
- Registriert: 15.10.2013, 20:15
- Hat sich bedankt: 6 Mal
- Danksagung erhalten: 5 Mal
Re: Aio Creator und HmIP-SWO-PR
Als Workaround könntest Du die Daten/Informationen, die die Wetterstation bereitstellt von der CCU in SysVars kopieren lassen. Diese solltest Du dann problemlos in AIO Creator importieren können.
CCU - RaspberryMatic 3.73.9.20231130 (OVA) / Proxmox VM + HB-RF-ETH + RPI-RF-MOD
LAN GW 1 - CCU2GW (CCU2)
LAN GW 2 - CCU2GW (CCU2)
LAN GW 3 - HmIP-HAP
LAN GW 4 - HmIP-HAP
LAN GW 1 - CCU2GW (CCU2)
LAN GW 2 - CCU2GW (CCU2)
LAN GW 3 - HmIP-HAP
LAN GW 4 - HmIP-HAP
- onkeltommy
- Beiträge: 1387
- Registriert: 07.05.2016, 08:03
- Wohnort: Wien
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 26 Mal
Re: Aio Creator und HmIP-SWO-PR
Hi
auf diese Möglichkeit bin ich nun auch draufgekommen..... da ich aber in Sachen HM Scripting n Anfänger bin, habe ich mir "das" mal zusammengebastelt, ja, es funktioniert, aber ob das so "richtig" ist, keine Ahnung....nur weils läuft, heissts ja nicht, dass es so korrekt ist
Übers Zeitmodul stosse ich das alle 5min an, Variablen werden befüllt.
...oder soll man das anders lösen ?
auf diese Möglichkeit bin ich nun auch draufgekommen..... da ich aber in Sachen HM Scripting n Anfänger bin, habe ich mir "das" mal zusammengebastelt, ja, es funktioniert, aber ob das so "richtig" ist, keine Ahnung....nur weils läuft, heissts ja nicht, dass es so korrekt ist
Übers Zeitmodul stosse ich das alle 5min an, Variablen werden befüllt.
Code: Alles auswählen
! Temp
var source = dom.GetObject("HmIP-RF.00**********:1.ACTUAL_TEMPERATURE");
var TempCurr = dom.GetObject("WDS-TMP");
TempCurr.Variable(source.Value());
! RF
var source = dom.GetObject("HmIP-RF.00**********:1.HUMIDITY");
var RFCurr = dom.GetObject("WDS-RF");
RFCurr.Variable(source.Value());
! WindSpeed
var source = dom.GetObject("HmIP-RF.00**********:1.WIND_SPEED");
var WindSCurr = dom.GetObject("WDS-WINDSPEED");
WindSCurr.Variable(source.Value());
! Regen
var source = dom.GetObject("HmIP-RF.00**********:1.RAIN_COUNTER");
var RainSCurr = dom.GetObject("WDS-RAIN");
RainSCurr.Variable(source.Value());
...oder soll man das anders lösen ?
lG
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Aio Creator und HmIP-SWO-PR
Das Script macht das was du willst, sofern die Namen der Datenpunkte und Systemvariablen richtig sind.
Trotzdem Anmerkungen dazu:
Du benutzt .Variable() um die Systemvariable zu beschreiben - benutze bitte .State()
Ich habe zwar keine Wetterstation, aber ich gehe davon aus, das die Wetterstation sich zyklisch bei der CCU meldet und die Daten schickt.
genau dieses Melden solltest du als Trigger nehmen (und nicht nur in dem Fall) und nicht das Zeitmodul.
Benutzt Hardwaretrigger, schon zig mal als Tipp geschrieben. Warum?
Du bastest dir ein "Workaround" nochmal wofür? (Ich besitze auch Aio Creator nicht)
Trotzdem Anmerkungen dazu:
Du benutzt .Variable() um die Systemvariable zu beschreiben - benutze bitte .State()
- Mit .Variable() werden Zeitstempel der SV nicht aktualisisert, ein Triggern ist also schwer möglich usw.
- ....
Ich habe zwar keine Wetterstation, aber ich gehe davon aus, das die Wetterstation sich zyklisch bei der CCU meldet und die Daten schickt.
genau dieses Melden solltest du als Trigger nehmen (und nicht nur in dem Fall) und nicht das Zeitmodul.
Benutzt Hardwaretrigger, schon zig mal als Tipp geschrieben. Warum?
- Ist aktueller
Der Sensor ermittelt intern, und schickt dann z.B. alle 6min seine aktuelle Daten zur CCU - du fragst ihn aber alle 5min ab. Was denkst du was wird ein aktuelleres, besseres Ergebnis bringen? - schont Ressourcen
und das Zeitmodul gehört immer wenn es geht geschont, schon vergessen das EQ-3 nichts geringer als 15min empfiehlt - ....
- das im dem Fall nur der Vollständigkeit halber:
Werte von Datenpunkten kann man eben auch ohne ein Script zu benutzen mit Systemvariablen synchronisieren
Du bastest dir ein "Workaround" nochmal wofür? (Ich besitze auch Aio Creator nicht)
- Aio Creator ist *IMHO* eine Visualisierungssoftware von Homematicgeräten,
- du bezahlst für die Visualsierungssoftware
- Der Anbieter bietet nicht an die Datenpunkte der Wetterstation direkt zu verwenden?
- du bezahlst ihm Geld dafür
- die Wetterstation ist mindestens seit März 2018 auf dem Markt
- du bezahlst ihm Geld dafür
- verstehst du jetzt schon, auf was ich raus will oder muss ich deutlicher werden?
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- onkeltommy
- Beiträge: 1387
- Registriert: 07.05.2016, 08:03
- Wohnort: Wien
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 26 Mal
Re: Aio Creator und HmIP-SWO-PR
Hi
jup, ich habe bei Mediola eh schon angeklopft.....
DIese übertragenen Werte in die SVs benutze ich nicht als Trigger, werden nur vom AIO abgefragt und angezeigt. Da ist der Timestamp wurscht.
In Programmen kommt dann (Wenn das Teil endlich mal funktioniert) eh nur die Funktionen der Station zur Anwendung.
Der Workaround war ja die Idee, die benötigten Datenpunkte zyklisch in SVs zu übertragen bis sich Mediola bequemt die IP Station einzubinden.
Ok, das mit den 15min hab ich vergessen....uups.... für die reine TempAnzeige am Tablet ist das wurscht ob 5min oder 15min die Werte angepasst werden.
Wie Triggern über die Station ?
Wenn Temp > -20° bei Aktualisierung dann Script ?
Du hast gesagt mit .State() - wie müsste das Scriptchen dann ausschauen ?
lG
jup, ich habe bei Mediola eh schon angeklopft.....
DIese übertragenen Werte in die SVs benutze ich nicht als Trigger, werden nur vom AIO abgefragt und angezeigt. Da ist der Timestamp wurscht.
In Programmen kommt dann (Wenn das Teil endlich mal funktioniert) eh nur die Funktionen der Station zur Anwendung.
Der Workaround war ja die Idee, die benötigten Datenpunkte zyklisch in SVs zu übertragen bis sich Mediola bequemt die IP Station einzubinden.
Ok, das mit den 15min hab ich vergessen....uups.... für die reine TempAnzeige am Tablet ist das wurscht ob 5min oder 15min die Werte angepasst werden.
Wie Triggern über die Station ?
Wenn Temp > -20° bei Aktualisierung dann Script ?
muss ich mir anschauen wie , klar, klingt sinnvollerWerte von Datenpunkten kann man eben auch ohne ein Script zu benutzen mit Systemvariablen synchronisieren
Du hast gesagt mit .State() - wie müsste das Scriptchen dann ausschauen ?
lG
lG
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: Aio Creator und HmIP-SWO-PR
Da gehört *IMHO* nicht nur angeklopft.
Natürlich, wie du meinst, alles wurscht.onkeltommy hat geschrieben: ↑18.08.2018, 12:40DIese übertragenen Werte in die SVs benutze ich nicht als Trigger, werden nur vom AIO abgefragt und angezeigt. Da ist der Timestamp wurscht.
Und in 4 Wochen weißt du das auch noch, wenn dir mal einfällt die SV doch zum Triggern zu benutzen usw.
Klar doch: alles wurscht, aber einen 5 min Trigger einstellen. Das passt dann schon alles zusammen.onkeltommy hat geschrieben: ↑18.08.2018, 12:40Ok, das mit den 15min hab ich vergessen....uups.... für die reine TempAnzeige am Tablet ist das wurscht ob 5min oder 15min die Werte angepasst werden.
Kann man ja froh sein, das die nicht alle 5 Sekunden die Station abfragst und dich hier in noch mehr Threads zum selben Thema beschwerst.
Nö, wenn Temperatur > -85 Grad (oder was auch immer der Minimumwert ist) auf Aktualisierung, oder irgrnd einen anderen Datenpunkt der Station. Sonst würde ja bei einer strengen Frostnacht, das Programm nicht getriggert.onkeltommy hat geschrieben: ↑18.08.2018, 12:40Wie Triggern über die Station ?
Wenn Temp > -20° bei Aktualisierung dann Script ?
Ich denke, das ist wurscht? Was ist denn daran nicht zu verstehen?onkeltommy hat geschrieben: ↑18.08.2018, 12:40Du hast gesagt mit .State() - wie müsste das Scriptchen dann ausschauen ?
statt
TempCurr.Variable(source.Value());
besser:
TempCurr.State(source.Value());
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
- onkeltommy
- Beiträge: 1387
- Registriert: 07.05.2016, 08:03
- Wohnort: Wien
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 26 Mal
Re: Aio Creator und HmIP-SWO-PR
Hi Alchy, danke für Deine Zeit !
Bei Mediola habe ich jetzt als Nachricht #1 nachgefragt, was das soll. Wenn die Antwort nicht sinnvoll ist, dann muss es eh schärfer werden, so es was bringt.
Folgendes, ich möchte nicht die ganzen Probleme nicht mehr auf zig Threads verteilen, ich bleibe in diesem hier, wenns ok ist.
Bild kann ich DIr erst wieder posten, wenn die Station wieder dort ist wo sie sein soll, auf der Reserve-CCU sind alle Zähler auf 0.
Fakt ist, dass (fast) die ganzen Rega Errors seit entfernen der Station und CCU Neustart weg sind.
Nur diese Meldung taucht dann und wann mal auf, 1x oder 4x hintereinander, im Moment suche ich gerade von was das wieder kommt
Zur Wetterstation, ja die legt 3 systeminterne Programme an
#1 getriggert über Zeitmodul 7h täglich
#2 bei Regenmenge >0.0mm bei Aktualisierung
und #3 bei Helligkeit >0 bei Aktualisierung
Bei Mediola habe ich jetzt als Nachricht #1 nachgefragt, was das soll. Wenn die Antwort nicht sinnvoll ist, dann muss es eh schärfer werden, so es was bringt.
Folgendes, ich möchte nicht die ganzen Probleme nicht mehr auf zig Threads verteilen, ich bleibe in diesem hier, wenns ok ist.
Ja, das würde ich wissen, aber Du hast schon recht, wenn die Station wieder in der aktiven CCU ist, dann stelle ich das auf State um.Natürlich, wie du meinst, alles wurscht.
Und in 4 Wochen weißt du das auch noch, wenn dir mal einfällt die SV doch zum Triggern zu benutzen usw.
Ich hatte auch Scripte mit 10min Intervall laufen, welche von allen Temperatursensoren, Bad, Pool, Dachboden usw - also nicht von der Wetterstat. MIN/MAX Werte in SVs schreibt. Derzeit hängt vorm Haus noch ein IP Aussenfühler (soll ja dann durch den Wettermast ersetzt werden), aber diesen habe ich jetzt für die MinMax Werte als Hardware-Trigger eingetragen und das Zeitmodul entfernt.Klar doch: alles wurscht, aber einen 5 min Trigger einstellen. Das passt dann schon alles zusammen.
Kann man ja froh sein, das die nicht alle 5 Sekunden die Station abfragst und dich hier in noch mehr Threads zum selben Thema beschwerst.
Bild kann ich DIr erst wieder posten, wenn die Station wieder dort ist wo sie sein soll, auf der Reserve-CCU sind alle Zähler auf 0.
Fakt ist, dass (fast) die ganzen Rega Errors seit entfernen der Station und CCU Neustart weg sind.
Nur diese Meldung taucht dann und wann mal auf, 1x oder 4x hintereinander, im Moment suche ich gerade von was das wieder kommt
Code: Alles auswählen
Error: IseESP::ExecForEach: WARNING - invalid expression used in foreach(): system.SetSessionVar("sessionCTV", "true"); [iseESPexec.cpp:494]
#1 getriggert über Zeitmodul 7h täglich
Code: Alles auswählen
object chn = dom.GetObject('1266');
object oSysVarSunshineCounterToday = dom.GetObject('svHmIPSunshineCounterToday_1266');
object oSysVarSunshineCounterYesterday = dom.GetObject('svHmIPSunshineCounterYesterday_1266');
object oSysVarRainCounterToday = dom.GetObject('svHmIPRainCounterToday_1266');
object oSysVarRainCounterYesterday = dom.GetObject('svHmIPRainCounterYesterday_1266');
if (oSysVarSunshineCounterYesterday && oSysVarSunshineCounterToday) {oSysVarSunshineCounterYesterday.State(oSysVarSunshineCounterToday.Value());}if (oSysVarSunshineCounterToday) {oSysVarSunshineCounterToday.State(0);}if (oSysVarRainCounterYesterday && oSysVarRainCounterToday) {oSysVarRainCounterYesterday.State(oSysVarRainCounterToday.Value());}if (oSysVarRainCounterToday) {oSysVarRainCounterToday.State(0);}
Code: Alles auswählen
object chn = dom.GetObject('1266');
object oOverflow = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER_OVERFLOW');
object oRainCounter = chn.DPByControl('WEATHER_TRANSMIT.RAIN_COUNTER');
object oSysVarRain = dom.GetObject('svHmIPRainCounter_1266_001858A98C18F0:1');
object oSysVarRainOldVal = dom.GetObject('svHmIPRainCounterOldVal_1266');
object oSysVarCounterToday = dom.GetObject('svHmIPRainCounterToday_1266');
object oSysVarCounterYesterday = dom.GetObject('svHmIPRainCounterYesterday_1266');
boolean overFlowFlag = oOverflow.Value();
real devVal = oRainCounter.Value();
real devValMax = oRainCounter.ValueMax();
real oldDevVal = oSysVarRainOldVal.Value();
real diffVal = 0.0;
real sysVarVal = oSysVarRain.Value();
real sysVarTodayVal = oSysVarCounterToday.Value();
real todayTotal = 0.0;
integer tmp_devVal = (devVal.ToString().ToFloat() * 1000).ToInteger();
integer tmp_oldDevVal = (oldDevVal.ToString().ToFloat() * 1000).ToInteger();
if (overFlowFlag == false) {
! Normal conditions
if (tmp_oldDevVal <= tmp_devVal) {
diffVal = devVal - oldDevVal;
}
! Device has rebooted
if (tmp_oldDevVal > tmp_devVal) {
diffVal = devVal;
}
} else {
!overFlow is true
if (tmp_oldDevVal > tmp_devVal) {
! An device overflow has occured
diffVal = (devVal + devValMax) - oldDevVal;
} else {
! Once the overflow flag has been set it will only be false when the device reboots
! Therefore this is the normal condition after an device overflow
diffVal = devVal - oldDevVal;
}
}
oSysVarRainOldVal.State(devVal);
oSysVarRain.State(sysVarVal + diffVal);
todayTotal = sysVarTodayVal + diffVal;
if (todayTotal >= 1440.0) {todayTotal = 0.0;}
oSysVarCounterToday.State(todayTotal);
Code: Alles auswählen
object chn = dom.GetObject('1266');
object oOverflow = chn.DPByControl('WEATHER_TRANSMIT.SUNSHINEDURATION_OVERFLOW');
object oSunshineCounter = chn.DPByControl('WEATHER_TRANSMIT.SUNSHINEDURATION');
object oSysVarSunshine = dom.GetObject('svHmIPSunshineCounter_1266_001858A98C18F0:1');
object oSysVarSunshineOldVal = dom.GetObject('svHmIPSunshineCounterOldVal_1266');
object oSysVarCounterToday = dom.GetObject('svHmIPSunshineCounterToday_1266');
object oSysVarCounterYesterday = dom.GetObject('svHmIPSunshineCounterYesterday_1266');
boolean overFlowFlag = oOverflow.Value();
real devVal = oSunshineCounter.Value();
real devValMax = oSunshineCounter.ValueMax();
real oldDevVal = oSysVarSunshineOldVal.Value();
real diffVal = 0.0;
real sysVarVal = oSysVarSunshine.Value();
real sysVarTodayVal = oSysVarCounterToday.Value();
real todayTotal = 0.0;
integer tmp_devVal = (devVal.ToString().ToFloat() * 1000).ToInteger();
integer tmp_oldDevVal = (oldDevVal.ToString().ToFloat() * 1000).ToInteger();
if (overFlowFlag == false) {
! Normal conditions
if (tmp_oldDevVal <= tmp_devVal) {
diffVal = devVal - oldDevVal;
}
! Device has rebooted
if (tmp_oldDevVal > tmp_devVal) {
diffVal = devVal;
}
} else {
!overFlow is true
if (tmp_oldDevVal > tmp_devVal) {
! An device overflow has occured
diffVal = (devVal + devValMax) - oldDevVal;
} else {
! Once the overflow flag has been set it will only be false when the device reboots
! Therefore this is the normal condition after an device overflow
diffVal = devVal - oldDevVal;
}
}
oSysVarSunshineOldVal.State(devVal);
oSysVarSunshine.State(sysVarVal + diffVal);
todayTotal = sysVarTodayVal + diffVal;
if (todayTotal >= 1440.0) {todayTotal = 0.0;}
oSysVarCounterToday.State(todayTotal);
lG
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
- onkeltommy
- Beiträge: 1387
- Registriert: 07.05.2016, 08:03
- Wohnort: Wien
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 26 Mal
Re: Aio Creator und HmIP-SWO-PR
wegen AIO Anzeigeproblem....hat sich erledigt....Mediola liest eh aus, wenn man "Geräte ohne Raum" ausblenden deaktiviert...weil die Station noch in keinem Raum war.....ok, slber gestrickter Fehler - sry
lG
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs
Thomas
--------------------------
RaspberryMatic 3.73.9.20240130 @ TinkerS (Produktivsystem) & Historian @ SynologyVM & 2x RB3+ @ Nachwuchs