XS1 von ezcontrol mithören

Begonnen von duke-f, 09 März 2014, 09:23:35

Vorheriges Thema - Nächstes Thema

duke-f

Ich werde mich jetzt mal zunächst auch hier als parallel-Nutzer der beiden Systeme fhem und XS1 outen.das XS1 betreibe ich schon einige Jahre sehr zufrieden und habe mir da auf dem Raspberry Pi schon so einiges an Scripten zusammengestellt.

Ihr vermutet jetzt bestimmt was kommt:
Das XS1 kann dazu bewegt werden per http-Befehl, kontinuierlich alle Ereignisse zu melden. Kann ich jetzt auch dieses irgendwie mit fhem "mithören". Klar, wer das XS1 nicht kennt,  wird nach mehr Infos fragen, kann an meinem Tabelle aber noch nicht so gut arbeiten, folgt also ggf.  Aber vielleicht hat ja jemand schon ähnliches umgesetzt, beispielsweise mit dem neuen JSONMETER?
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

Rince

Ich habe das XS1 nicht.
Hatte es zwar gefühlt schon 5 mal im Einkaufskorb, hatte dann doch wieder Zweifel und bin dann über fhem gestolpert.

Im original Forum von EZcontrol
https://www.ezcontrol.de/forum/viewforum.php?f=4
Finden sich einige Threads, die zumindest stark klingen, als würden sie deinem Wunsch entsprechen.

https://www.ezcontrol.de/forum/viewtopic.php?t=391
https://www.ezcontrol.de/forum/viewtopic.php?t=384

Ein Modul ezcontrol2fhem könnte also schon möglich sein.

Andersrum, fhem2ezcontrol über http links hast du ja selber schon angedeutet.
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

duke-f

Das ist richtig, Werte von fhem ans XS1 habe ich (dank der Unterstützung hier im Forum) geschafft. Einzelne konkrete Werte vom XS1 an fhem würde ich wahrscheinlich mehr oder weniger identisch auch schaffen. Aber es gibt beim XS1 die Möglichkeit, durch den Befehl


http://192.168.1.242/control?callback=cname&cmd=subscribe&format=txt


etwas in der Form
Jahr Monat Tag Wochentag Stunde Minute Sekunde Zeitzone Art Nummer Name Wert

z.B.
UNIX_Zeit(UTC)
1224247936 2009 10 17 Fri 13 52 16 +100 S 7 FS20_FB remotecontrol 0.0
1224248041 2009 10 17 Fri 13 54 1 +100 S 5 Luftdruck barometer 999.0
1224248041 2009 10 17 Fri 13 54 1 +100 S 4 Innenfeuchte hygrometer 27.6
1224248041 2009 10 17 Fri 13 54 1 +100 S 2 Innentemperatur temperature 25.1


im Browser zu bekommen, und das kontinuierlich so lange die Verbindung steht. Also nicht eben einzelne Ereignisse gezielt abfragen am XS1 durch fhem, sonder am laufenden Band. Mein Raspberry Pi protokolliert so in einem bash-Skript alles mit und schreibt das in eine MySQL-Datenbank. Weiter werden auch Ereignisse ausgelöst, falls bestimmte Bedingungen erfüllt sind.

Meine Idee ist eben nun, dass dies auch fhem machen könnte: Kontinuierlich parallel zum angeschlossenen CUL auch das XS1 so verfolgen und die Ereignisse mit verwerten. Noch ein schlauer Spruch zum Schluss: Wenn ich es könnte, würde ich es ja einfach selber machen 8).

Btw: Das ezcontrol-Forum ist praktisch stillgelegt - nur noch aktuelle (Beta-)Firmwares werden präsentiert. Man verlässt sich da auf das privat geführte myezcontrol-Forum.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

alias2006

Das ist richtig. Mit:

http://192.168.1.242/control?callback=cname&cmd=subscribe&format=txt

bekommt man alle "events" (fhem Terminologie) der XS1 (EZControl) mit. Das Problem dies in fhem zu integrieren ist (was ich versucht habe), dass der Aufruf ein subscribe ist und die Kontrolle erst wieder ans Programm zurückgegeben wird, wenn ein Ereignis im XS1 passiert. Solange würde dann in fhem gar nicht gehen. Diesen Aufruf müsste man in einen separaten Thread oder mittel fork in einem eigenen Prozess laufen lassen. Ich habe dies versucht, als Basis für den Code habe ich FHEM2FHEM genommen (dort funktioniert ähnliches), aber das war mir zu komliziert.
Ich lasse jetzt ein von FHEM separates Perl Programm laufen mit o.a. XS1 Aufruf. Es logged dann alle XS1 Ereignisse in eine Datei, die man in FHEM ansehen kann. Diejenigen Werte (von actuator/sensor) die ich in FHEM brauche übergebe ich an FHEM mit "fhem set actuator Wert" oder "fhem set sensor Wert", wobei actuator ein echtes Device (z.B. FS20, Homatic) sein kann und sensor ein Dummy device ist.
Hier ein Beispiel Meine XS1-Log Datei:
1398549631,2014,04,27,Sun,00,00,31,+0200,S,05,  12.9    ,WinterG_T1     ,temperature
1398549660,2014,04,27,Sun,00,01,00,+0200,S,10,  11.9    ,KS_Temp        ,temperature
1398549660,2014,04,27,Sun,00,01,00,+0200,S,11,  85.0    ,KS_Feuchte     ,hygrometer
1398549660,2014,04,27,Sun,00,01,00,+0200,S,12,  0.0     ,KS_WSpeed      ,windspeed
1398549660,2014,04,27,Sun,00,01,00,+0200,S,13,  0.0     ,KS_Regen       ,rain
1398549660,2014,04,27,Sun,00,01,00,+0200,S,14,  0.0     ,KS_RMenge      ,rainintensity
1398549660,2014,04,27,Sun,00,01,00,+0200,S,15,  0.0     ,KS_RDiff       ,counterdiff
1398549660,2014,04,27,Sun,00,01,00,+0200,S,16,  184.0   ,KS_RCnt        ,counter
1398549714,2014,04,27,Sun,00,01,54,+0200,S,17,  12.4    ,WinterG_T2     ,temperature
1398549744,2014,04,27,Sun,00,02,24,+0200,S,29,  21.7    ,Flur_T         ,temperature
1398549744,2014,04,27,Sun,00,02,24,+0200,S,30,  46.0    ,Flur_F         ,hygrometer
1398549749,2014,04,27,Sun,00,02,29,+0200,S,32,  19.2    ,HZ_Vorl_T1     ,temperature
1398549781,2014,04,27,Sun,00,03,01,+0200,A,26,  0.0     ,Kamera_FL_2    ,switch
1398549812,2014,04,27,Sun,00,03,32,+0200,S,10,  11.8    ,KS_Temp        ,temperature
1398549812,2014,04,27,Sun,00,03,32,+0200,S,11,  85.0    ,KS_Feuchte     ,hygrometer
1398549812,2014,04,27,Sun,00,03,32,+0200,S,12,  0.2     ,KS_WSpeed      ,windspeed
1398549812,2014,04,27,Sun,00,03,32,+0200,S,13,  0.0     ,KS_Regen       ,rain
1398549812,2014,04,27,Sun,00,03,32,+0200,S,14,  0.0     ,KS_RMenge      ,rainintensity
1398549812,2014,04,27,Sun,00,03,32,+0200,S,15,  0.0     ,KS_RDiff       ,counterdiff
1398549812,2014,04,27,Sun,00,03,32,+0200,S,16,  184.0   ,KS_RCnt        ,counter
1398549864,2014,04,27,Sun,00,04,24,+0200,S,06,  23.0    ,Temp2          ,temperature
1398549864,2014,04,27,Sun,00,04,24,+0200,S,07,  47.0    ,Feucht2        ,hygrometer
1398549942,2014,04,27,Sun,00,05,42,+0200,S,31,  47.3    ,HZ_WW_T1       ,temperature
1398549952,2014,04,27,Sun,00,05,52,+0200,S,05,  12.9    ,WinterG_T1     ,temperature
1398549961,2014,04,27,Sun,00,06,01,+0200,A,22,  0.0     ,A_2STD_22      ,switch
1398549961,2014,04,27,Sun,00,06,01,+0200,S,09,  0.0     ,S_Flur_9       ,motion

Das Programm hab ich mal schnell hingeschustert vor ca. 6 Monaten. Haupsache es läuft bei mir. Wenn ich das weitergeben soll, muss ich es erst mal überarbeiten. Eigentlich will ich aber keine Zeit mehr reinstecken.  :(

Das XS1 ist für mich ein Exot. Ich hatte vor 3 Jahren damit angefangen, da kannte ich FHEM noch nicht. Nur deshalb ist XS1 da. Neue Dinge implementiere ich nur noch mit FHEM. XS1 ist doch sehr, sehr eingeschränkt und teuer noch dazu! 
Raspberry, Fritz, Qnap, Ezcontrol mit Fs10,Fs20, Ks300, it, Homatic, MAX

duke-f

Entschuldige die späte Antwort, war die letzten Wochen anderweitig gebunden.

Dein Ansatz klingt für mich machbar - hätte ich genügend Zeit würde ich mich sofort ans Umsetzen machen. Die Basis habe ich, denke ich, da mein Raspberry Pi mit dem genannten Aufruf sowieso das XS1 mit in eine MySQL-Datenbank loggt. Jetzt müsste dann fhem "einfach" da zugreifen.

XS1 behalte ich alleine schon deshalb, weil ich mir dafür eine sehr angenehme Oberfläche zugelegt habe.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

dlinus

hm...ich selbst mag solche Antworten zwar nicht, da ich aber selbst XS1 hatte, die Unterschiede, Vor- und Nachteile kenne und seit längerem FHEM nutze, stellte sich mir, als ich deinen Beitrag las, spontan die Frage, wofür ?!

FHEM macht alles und noch viel mehr und zuverlässiger als die XS1 Box. Ich würd´ das Teil schnell vertickern solange du noch ein paar Euro dafür bekommst :-)

Navigator

...das mit dem vertickern ist so ne Sache.... viele XS Benutzer haben noch ne Menge IT Gedöns und FHEM  ist da leider noch etwas zurück, vor allem was die neuen IT2 Produkte angeht. Aber ich muss zugeben, die parallele Symbiose läuft bei mir perfekt und es ist gut noch ein Backup System in der Hinterhand zu haben. Wenn Sonntag morgens der CUL abrauchen sollte oder der Marder die Antenne klaut kann man doch noch was bewegen im Haushalt und sitzt abends nicht im dunkeln.
Passt zwar ned zum Thema aber der Senf musste einfach hier her...

duke-f

@dlinus:
Wir kennen uns ja vom XS1-Forum, ansonsten würde ich hierzu eigentlich nichts sagen. Ist hier ja nicht wirklich der Platz für solche Grundsatzdiskussionen.
Bis auf die bekannte FHT-Problematik bin ich mit dem XS1 sehr zufrieden. Es kann vielleicht nicht so viel wie fhem, aber das was es kann dafür wesentlich einfacher und schneller für jemand, der sich nicht tiefer in die Thematik rein knien kann/will. Und die Entwicklung geht auch weiter, obwohl man ja eigentlich ein abgeschlossenes System gekauft hat. Mittlerweile schickt die neueste Beta beispielsweise auch Mails.
Und zudem: Ist einfach so meine Art: Wenn ich nun mal einige Zeit in eine Sache investiert habe, trenne ich mich nicht so leicht davon. Wie gesagt, es geht alles, was ich brauche. Und "vertickern" ist es mir nicht wert. Was ich an Zeit investiert habe bekomme ich so nie mehr heraus. Dann läuft es eben parallel mit gelegentlichen fhem-Projekten. Für mich wäre es halt einfach schön, wenn es eine richtige Verknüpfung gäbe.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

dlinus

@duke-f
hm.. es sollte um himmelswillen nicht so rüberkommen, als wollte ich es dir miesmachen......
ich meinte nur, wie gesagt ich kenne ja beides und verfolge hier und da noch das myezcontrol.de forum.
ein raspi kostet 29€ im vergleich zu ner xs1 ?!  ich hab mir eine kopie meiner fhem sd karte gemacht und nen raspi als backup. und die benachrichtungsfunktion welche nun im xs1 implementiert wurde....hm...
da lob ich mir fhem, so flexibel und mit pushbenachrichtigungen, ist schon was geiles. und die stabilität finde ich, als leidgeprüfter xs1 user toll. noch keine ausfälle. selbst die it/elro steckdosen, welche öfters mit xs1 nicht schalteten, die probleme hatte ich mit fhem noch nie.
aber ich gebe dir recht, xs1 zu verkaufen tut weh, weil man nie den preis bekommt, welchen man selbst bezahlt hat, ich hatte mir nur gedacht, liebe jetzt, als noch länger zu warten bis man noch weniger bekommt. für die kohle lieber noch nen raspi. gut-  fhem zu konfigurieren ist am anfang aufwendiger, aber wenn man es geschnallt hat.....und dann dieses forum hier, hier findet man für alles eine lösung.


duke-f

Ich denke, wir sind uns einig. Sehe das auch nicht als Versuch von Dir, mir was mies zu machen.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

Sauron

Hallo duke,
das ist nicht so toll, wie das was Du da anstrebst, aber für einzelne Werte recht nett.
Im XS1
bei Änderung:
if(Helligkeit<1000){
  url2(Helligkeit);
}
192.168.0.XX:8083/fhem?cmd.Helligkeit=set+Helligkeit+

in fhem:
define Helligkeit dummy
attr Helligkeit room Automatik

könnte man vielleicht noch parametrisieren, so dass es allgemeiner nutzbar ist. z.B. virtueller Sensorwert als Parameter übergeben, der dann Sensornummer und Wert als Parameter übergibt.
Ich hoffe, dass das mit dem 433 MHz Empfang demnächst direkt unter fhem standardmäßig geht, dann kann ich mir die ganzen Krücken sparen. Du hast doch auch einige ab400 im Einsatz, das Senden an die geht unter fhem bisher richtig gut. (habe allerdings ne zusätzliche 433 Cul dran )

duke-f

Du hast schon recht: Nicht so toll wie das was ich anstrebe.
1. XS1 kann nur 4 URLs
2. Die Anzahl der Zeichen ist zu begrenzt, um meine Wünsche zu erfüllen.

Klar, mittels virtuellen Sensorwerten lies sich das noch etwas aufweiten.
Trotzdem Danke.
Cubietruck, 3 Raspberry Pis,
CUL868, RFXtrx433, CUL433, SCC868, HM-USB,
IRTrans, EZcontrol XS1, IguanaWorks USB IR Transceiver
ESPEasy, Fritz!Box, Samsung TV+BD, LMS, Squeezelite

leupin

Hallo duke-f,
hast Du Dein "Projekt" inzwischen weiterbringen können?
Brauchst Du ein Protokoll aller Autoren oder Sensoren?
Allenfalls wäre es eine Lösung, über HTTPMod und dem get_list_sensors resp. get_list_actuators Befehl die gewünschten Sensoren und Autoren durch FHEM regelmässig aus
dem XS1 auszulesen und zu protokollieren - das Ausleseintervall kannst Du ja über FHEM selbst festlegen...
Andernfalls wäre es auch möglich, die gewünschten Sensoren und Aktoren ebenfalls über HTTPMOD regelmässig auszulesen, allerdings ist das natürlich dann sehr aufwändig, wenn alle Sensoren und Autoren protokolliert werden sollen...

Burny4600

#13
@alias2006

Wie kann man den Link mit Username und Passwort darstellen?
http://192.168.1.242/control?callback=cname&cmd=subscribe&format=txt


Bekomme unter buf folgende Meldung:
HTTP/1.0 401 Unauthorized Cache-Control: no-cache, must-revalidate Pragma: no-cache WWW-Authenticate: Basic realm="ccs-ht-xs1" Content-Type: text/html Connection: close <title>Unauthorized</title>Wrong username/password or your webbrower does not support Basic Authentication.


Hat sich in der Form erledigt:
define XS1 HTTPMOD http://Username:Password@192.xxx.xxx.xxx/control?callback=cname&cmd=subscribe&format=txt 60
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT

Burny4600

Hat hier schon jemand eine Definition durchgeführt die alle Aktoren, Sensoren und Timer bei mit einem definierten Zyklus aus der XS1 ausliest?
Mfg Chris

Raspberry Pi 2/2+/3/3+/4 / Betriebssystem: Bullseye Lite
Schnittstellen: RFXtrx433E, SIGNALduino, MQTT, nanoCUL, HM-MOD-UART, 1-Wire, LAN, ser2net, FHEM2FEHEM
Devices: S.USV, APC-USV, Fronius Datalogger Web 2, FS20, IT, Resol VBUS & DL2, TEK603, WMR200, YouLess, Homematic, MQTT