Gembird Energenie Unterstützung

Begonnen von alexus, 09 Juni 2013, 14:19:44

Vorheriges Thema - Nächstes Thema

alexus

Hallo!

Gibt es neben dem SIS_PM auch Unterstützung für die Gembird Energenie-Serie, z.B. EG-PM2-LAN?

Habe mir die Mühe gemacht, das Fontend über ein php-Script anzusteuern, aber das geht doch sicher auch in perl?! Hat das schon jemand versucht? Wäre das nicht eine schöne Erweiterung für FHEM?

elbielefeld

Hi,

ich habe ein Modul für die EGPMS2LAN Steckdosenleiste geschrieben. Ist allerdings noch nicht komplett fertig (Schalten der Dosen funktioniert, Auslesen und Dokumentation steht noch aus)
Vielleicht kannste es ja trotzdem schon einsetzen ;) Momentan funktioniert es nur ohne Passwort für die Leiste.


define <NAME> EGPMS2LAN <IP>

#Schalten
#set <NAME> on/off <Nummer>
set Steckdosenleiste on 1
set Steckdosenleiste off 4


Gruß, Eric

alexus

Super!! :-)
Das werde ich gleich mal auf dem PI ausprobieren!!

alexus

Hallo!

Dein Modul funktioniert ausgezeichnet. Danke!
Habe für meine Zwecke noch Passwort-Unterstützung hinzugefügt und ein Logoff eingebaut, damit der Zugriff auf die Web-Oberfläche wieder frei wird.

define <NAME> EGPMS2LAN <IP> [Password]
Wenn jetzt noch der Status ausgelesen wird, ist´s perfekt!

elbielefeld

Hi,

habe auch noch ein bisschen weiter gemacht. Passwort und manuelle Abfrage des Status (über set Befehl statusrequest) ist drin. Vielleicht möchtest du ja das Modul fertig stellen? Hab im Moment irgendwie wenig Lust, da alles, was ich benötige, bereits fertig ist ;) Ein tolles Feature wäre noch, wenn man über einen Befehl automatisch Dummys erstellen könnte, welche die Steckdosenleiste jeweils auf einem Port schalten (habe das bei mir von Hand gemacht).

Habe das Modul umbenannt, als ich gesehen habe, dass ich ein EG-PM2-LAN habe...aber es sollte ja bei beiden Steckdosenleisten funktionieren.

MfG, Eric

alexus

Hallo!

Klasse, ich hatte mich mit dem Statusupdate schon rumgequält. Du hast es elegant gelöst.
Habe Dein Modul nochmal etwas erweitert und die Readings verbessert. Nach dem Schalten wird der Status automatisch nachgelesen.

Wie meinst Du das mit den Dummys? Für jede Steckdose (Socket) ein Dummy anlegen?
Vielleicht könnte man nach dem Vorbild SISPM (Host) und SIS_PMS (Socket) ein weiteres Modul schreiben, welches die einzelnen Sockets definiert? Eigentlich gibt es die Namen für jede Steckdose ja auch schon in der Web-Oberfläche von Gembird.
Ich könnte das mal versuchen, allerdings kenne ich mich mit Perl (noch) nicht so gut aus ;-)
Würde vorher noch eine "All off" Funktion einbauen, weil ich das in meiner Steuerung benötige.
Was hälst Du davon?

Stephan81

Guten Abend,
das Modul habe ich schon lange gesucht.
Leider funktioniert es bei mir nicht so ganz oder ich stell mich einfach zu dumm an.

Ich habe die aktuellste Datei heruntergeladen und in das Verzeichnis Fhem zu den anderen Modulen kopiert.

Wenn ich nun das ganze in der fhem.cfg mit folgender Zeile konfiguriere:

define Leiste_Server EGPMS2LAN 192.168.5.2 "Hier steht eigentlich das Passwort"

bekomme ich beim abspeichern die Meldung :
Cannot load module EGPMS2LAN

Ich habe das ganze auch schon ohne ein Passwort versucht aber an der Fehlermeldung ändert sich nichts.
Habt ihr vielleicht dazu noch eine Idee, woran das liegen könnte?

Fhem läuft bei mir auf einer FritzBox 7390.

Vielen Dank für die Hilfe.

Gruß
Stephan

Stephan81

Ich sollte vielleicht auch noch den Auszug aus der Log File liefern: :-)

2013.07.08 19:14:44 0: Undefined subroutine &main::EGPMS2LAN_Initialize called at fhem.pl line 1654, <$fh> line 184.

Stephan81

Habe es jetzt mal mit einer der älteren File probiert und da geht es.
Kann es sein, dass ein Fehler bei der Umbenennung von EGPM2LAN in EGPMS2LAN passiert ist?


elbielefeld

hi stephan,

klar, das Gerät muss dann als EGPM2LAN definiert werden. immer so, wie auch das Modul heisst.

define Leiste_Server EGPM2LAN 192.168.5.2

@alexus
ja so meine ich das. Mit dem Host und Socket ist auch eine gute Idee. Für mich aber uninteressant, da ich bei den Dummys noch die Möglichkeit habe, die angeschlossenen Geräte vor der Stromwegnahme auszuschalten. Könnte man bei Host+Socket bestimmt auch einbauen aber mir reicht es so.

gruß eric

alexus

Hallo!

Ok!
Hatte auch gehofft, das ich mit einem Call alles aus- oder einschalten kann. Das scheint der Hersteller aber nicht implementiert zu haben :-(
Egal, lassen wir dieses Feature einfach weg.
Aktuell bastel ich an einem Modul "EG-PM" für die einzelnen Steckdosen (Sockets), die dann hoffentlich über ein Auto-Create mit erstellt werden.
Melde mich dann wieder mit einem Ergebnis zum Testen.

elbielefeld

Hi,

ja, pro Anfrage kann nur ein Schaltvorgang durchgeführt werden. Das hindert dich aber nicht daran, mehrere Anfragen abzusenden, um alles aus- bzw. anzuschalten ;)
Beim Einschalten zumindest ist es sowieso nicht sinvoll alle Geräte zeitgleich einzuschalten, sondern z.B. jeweils 1 Sekunde versetzt, da der Einschaltstrom pro Gerät meist viel höher ist, als die Dauerbelastung. Kommt natürlich auf die angeschlossenen Geräte drauf an.

MfG, Eric

alexus

Hallo!

Geschafft! Wie bereits angedroht, habe ich neben dem Hauptmodul für die Steckdosenleiste (EGPM2LAN) ein Modul für die einzelnen Steckdosen/Sockets (EGPM) gebaut. Wenn man mehrere Leisten ansteuern möchte, empfiehlt es sich, diese zunächst über das Webinterface zu konfigurieren und Namen für die einzelnen Steckdosen zu vergeben. Diese werden dann automatisch in FHEM übernommen, damit man die Übersicht behält.

Wie bisher kann die Leiste wie folgt in FHEM bekannt gemacht werden:
define mainswitch EGPM2LAN 10.192.192.20 SecretGarden
attr mainswitch room Wohnzimmer
Bedeutet also define <Name> EGPM2LAN <IP-Adresse> <Passwort>
Wenn man die globale Autcreate-Funktion aktiviert hat, reicht die folgende Anweisung, um die zugehörigen Steckdosen automatisch anlegen zu lassen:
Set mainswitch statusrequest
Natürlich geht das auch manuell. Angenommen, an der 1. Steckdose hängt eine Leselampe:
define Leselampe EGPM mainswitch 1Bedeutet also define <Name> EGPM <Steckdosenleiste> <Steckdosen-Nr.>
Jetzt wird´s ernst. Zum Einschalten braucht es jetzt nur noch:
Set Leselampe onAlso dann: Energie! ;-)

Hier die aktuellste Version zum Download (alte Versionen mit 98_... bitte vorher löschen)
17_EGPM2LAN.pm
70_EGPM.pm

@Eric: Ich hoffe, Du kannst die neue Lösung statt der Dummy-Module verwenden.

elbielefeld

Hi alexus,

ich würds gern testen, habe aber ein Problem: Es funktioniert nichts :). Ich kann die Leiste mit deinem Modul nicht schalten ("set bla on 1" klappt nicht). Auch das autocreate klappt nicht.
Du hast den CustomGetFileFromURL Aufruf ja geändert auf


my $post = "http://" . $hash->{IP} . "/ POST:";
$post .= "cte1=" . ($params == "1" ? "1" : "") . "&cte2=" . ($params == "2" ? "1" : "") . "&cte3=" . ($params == "3" ? "1" : "") . "&cte4=". ($params == "4" ? "1" : "");
CustomGetFileFromURL($hash, $post, 0, $logLevel);


In meiner (standard) HttpUtils.pm werden folgende Parameter erwartet:


# - if data (which is urlEncoded) is set, then a POST is performed, else a GET.
# - noshutdown must be set for e.g the Fritz!Box
# 4.0 is needed for some clients trying to reach fhem.de, 2.0 was not enough
sub
CustomGetFileFromURL($$@)
{
  my ($quiet, $url, $timeout, $data, $noshutdown, $loglevel) = @_;


Kann doch so nicht funktionieren oder? Ich bin auch nicht gerade der Perl Experte ;)
PS: Aktivier mal die PM Funktion im Forum.

Gruß, Eric

alexus

Hallo, Eric!

Hmmh, der Grund muss woanders liegen, denn die Parameter stimmen mit der "Ur-Version" überein. Nur der Post-String wird jetzt zusammengebaut. Bei mir funktioniert das mit (Version aus Logfile):version Fhem 5.4 (DEVELOPMENT), $Id: fhem.pl 3405 2013-07-11 19:46:39Z rudolfkoenig $, pid 1892Die letzten Parameter werden optional gemacht siehe HttpUtils.pm:sub
CustomGetFileFromURL($$@)
{
  my ($quiet, $url, $timeout, $data, $noshutdown, $loglevel) = @_;
  $timeout = 4.0 if(!defined($timeout));
  $loglevel = 1 if(!$loglevel);
Kannst Du mal den Loglevel vom EGPM2LAN auf "1" stellen? Steht dann was im LogFile? Nutzt Du eine Fritzbox? Bin jetzt per Mail erreichbar.

Gruß alexus

alexus

Hallo!

Problem behoben.
Eine neue Version steht zur Verfügung - dank Eric mit einem weiteren Feature zum ein- und ausschalten aller Steckdosen:
set mainswitch on all
oder:
set mainswitch off all


Download vom FHEM-Repository:

17_EGPM2LAN.pm
70_EGPM.pm

Oli_t

Hallo,

bin absoluter FHEM-Anfänger. Kann es sein, daß dieses Modul keine Events zurückliefert ? Nach dem Start von FHEM steht bei meiner Steckerleiste überall nur "initialised". Kann ich den Status da irgendwie bei einem Neustart automatisch abfragen ? Nach einem Schalten wird das Icon nicht upgedatet, erst beim Aktualisieren der Seite. Ich habe mal zum Test versucht ein notify einzubauen, das mir eine Mail sendet wenn sich eine der Steckdosen schaltet. Das Notify wird aber nie ausgelöst. Unter EGPM2LAN kann ich auch Nirgends ein event-on-change-reading eintragen. Fehlt da noch was ?

Tschö,
Oli

alexus

Hallo!

Ja, ein guter Hinweis. An die Events hab ich nicht gedacht :-\ Habe das Modul entsprechend erweitert. EGPM liefert jetzt eine Event beim Schalten der definierten Steckdose.

Gruß alexus

micomat

Hab mir eben eine EG-PM2-LAN bestellt :)
Bin schon ganz neugierig ob und wie das funktioniert.

Gruß,
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

micomat

Hi,

funktioniert perfekt  8) Nur hab ich ebenfalls das Problem, dass immer nur "initialized" dran steht =(
Wo finde ich das neue Modul?
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

JoeALLb

Gibt es auch Pläne,  die USB Version davon zu unterstützen?  Die wurde weniger Strom benötigen ;-)

Gesendet von meinem Xperia Pro mit Tapatalk

FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

micomat

Meine Probleme sind dank der super Unterstützung von alexus (riesen Lob!!) weitgehend behoben.
Ein "update HttpUtils.pm" sowie ein neustart des Raspberry haben die Fehlermeldungen im Log behoben.
Use of uninitialized value $code in concatenation (.) or string at FHEM/HttpUtils.pm line 150.
Use of uninitialized value $code in numeric eq (==) at FHEM/HttpUtils.pm line 153.


Und ein Problem, das die einzelnen Dosen den Status auf per Statusrequest nicht bekommen haben lag wohl daran, dass die Namensdeklarationen von EGPM2LAN und den EGPMs zu gleich war.

Gruß,
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

alexus

Zitat von: JoeALLb am 23 Dezember 2013, 21:05:04
Gibt es auch Pläne,  die USB Version davon zu unterstützen?  Die wurde weniger Strom benötigen ;-)

Gesendet von meinem Xperia Pro mit Tapatalk

Hallo!

Bin nicht so sicher, das die USB-Version weniger Strom benötigt: Habe mal ein SIS_PMS (=Vorgänger?) am Raspberry betrieben. Das funktionierte nur so lange gut, bis alle Steckdosen gleichzeitig eingeschaltet waren. In dem Moment haben die Relais so viel Strom gezogen, das die Versorgung über USB zusammengebrochen ist. :-[ Erst mit einem Netzteil mit 3 Ampere(!) hat der Raspberry sich wieder mit dem SIS_PMS vertragen. Aus diesem Grund bin ich auf den EGPM2LAN gekommen, bei dem der Hersteller 2,5 W "maximum power consumption" angegeben hat.
Hat schon jemand Erfahrung mit der USB-Version gesammelt? Handelt es sich um eine neue Version vom SIS_PMS http://fhem.de/commandref.html#SIS_PMS?

Gruß
alexus

semmel

Hallo,

ich hatte mir die  PMS2-WLAN kurz vor Weihnachten geholt und leider nur Probleme, den Artikel hier http://www.teltarif.de/eg-pms2-wlan-energenie-wlan-steckdose-schalten-internet/news/52790.html hatte ich leider erst nach den Installationsversuchen gefunden.
Leider hat der Support mit Gembird nicht geklappt und ich habe die Leiste wieder an den Onlineshop zurückgegeben.

Fazit: Derzeit keine dauerhaft WLAN-Verbindung mit einer Fritzbox 7390 ,
         ADHOC-Verbindung zu PC mit Intel WLAN-Karte über einen Tag gehalten, dann von mir abgebrochen.

Grüße aus Erfurt

Semmel

FHEM 5.9 auf EXCITO B3, FHZ 1000 PC, 3 FHT mit 6 Stellantrieben, Mobile Alerts , Philips Hue und FHEM 5.9 auf Pi2B, div. Homematic, 8 Stk. 1Wire-Temp.Sensoren, Mobile Alerts, Philips Hue

alexus

#24
Zitat von: semmel am 03 Januar 2014, 15:55:40
Hallo,

ich hatte mir die  PMS2-WLAN kurz vor Weihnachten geholt und leider nur Probleme, den Artikel hier http://www.teltarif.de/eg-pms2-wlan-energenie-wlan-steckdose-schalten-internet/news/52790.html hatte ich leider erst nach den Installationsversuchen gefunden.
Leider hat der Support mit Gembird nicht geklappt und ich habe die Leiste wieder an den Onlineshop zurückgegeben.

Fazit: Derzeit keine dauerhaft WLAN-Verbindung mit einer Fritzbox 7390 ,
         ADHOC-Verbindung zu PC mit Intel WLAN-Karte über einen Tag gehalten, dann von mir abgebrochen.

Grüße aus Erfurt

Semmel

Hallo Semmel,
Ja, von den WLAN-Problemen habe ich gehört.  :-\
Zum Glück hab ich die LAN-Version per Kabel an einer Fritz!Box hängen. Das klappt bei mir einwandfrei und sicher, da kann ja nichts "dazwischenfunken".
Ich hoffe trotzdem, das die Gembird-Firmware für die WLAN-Version schnell verbessert wird.

Grüße
alexus

Oli_t

Hallo,

ich hätte eine Bitte: wäre es möglich die Timer in der Steckerleiste zu nutzen ? Bei den Homematic-Komponenten benutze ich sehr oft den "on-for-timer" um sicher zu gehen, daß der Schalter anschliessend wieder sicher auf "off" steht. Es wäre toll, wenn man das auch mit der EG-PM2-LAN benutzen könnte. Die Leiste selbst hat ja interne Timer ;-D

Danke !

Oli

alexus

Hallo Oli,

sorry für meine späte Antwort  ::)
Hab Deinen Post irgendwie übersehen  :-\
Habe mir das mal angeschaut; Es wäre grundsätzlich möglich, ist aber im Vergleich zur Homematic viel Aufwand für eine Funktion, die FHEM mit dem AT-Befehl http://fhem.de/commandref_DE.html#at selbst erledigen kann, z.B. nach 5 Minuten die Steckdose wieder abschalten:

set lampe on
define schalter_reset at +00:05:00 set lampe off

Hilft das vielleicht weiter?  ;)

Grüße
alexus

Oli_t

Hallo Alexus,

so mache ich das ja auch im Moment. Es wäre nur schöner, wenn die Steckerleiste das alleine auch könnte. Für den Fall, daß FHEM mal "weg" ist  ;) Hardwareseitig kann sie es ja.

Viele Grüße,
Oli

micomat

Hi Alexus,

geht das nicht ueber die set-extensions? Die bieten diese Funktionen doch schon out-of-the-box an.

@Oli, hast Du auch das Problem, dass nach einem fhem-neustart alle Schalter auf "initialized" stehen?
Bei mir is das leider immer wieder der Fall...

Gruß
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

Oli_t

Hi,

ja, das macht das Ding bei mir auch. Ich habe das so gelöst:
In der fhem.cfg rufe ich meine eigene Konfigurations-Datei mit include auf. Diese Datei enthält unter Anderem diese Zeile:

{fhem "set Steckerleiste statusrequest"} 8)

Viele Grüße,
Oli

micomat

Hmm bei mir wollte das glaube ich nicht helfen. muss es nochmal testen :)
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

micomat

Hab den Fehler gefunden.
Ich hab jetzt alle _ (Unterstriche) aus den Definitionen des EGPM und der EGPM2LAN entfernt und schon geht der Stausrequest :D

Werde das im Wiki-Artikel dokumentieren.

Gruß
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

alexus

Hallo!

War leider einige Zeit gesundheitlich "geplättet"  :-[
Bin aber langsam wieder fit und habe heute eine neue Version gebaut  ;D
Vielleicht hat jemand Zeit, diese mal zu testen?
Beim Start von FHEM fragen die EGPM´s ihren Status ab, ein eigener Aufruf von "Statusrequest" ist also nicht mehr notwendig.
Habe auch die Set-Extensions (on-for-timer, usw.) eingebaut, wie von micomat empfohlen. "Blink" hab ich lieber nicht getestet, das tut den Verbrauchern sicher nicht so gut  ::)
Die komplizierten internen Timer der Leiste werden allerdings nicht genutzt. Das will aktuell noch nicht richtig klappen. Ich glaube, die neue Version wäre trotzdem etwas für Olli, denn im Gegensatz zur HM-Funkverbindung ist die Leiste ja fest verdrahtet, d.h. es ist viel unwahrscheinlicher, das ein Befehl von FHEM verlorengeht.

Gruß Alexus

micomat

#33
saucool :) danke!
bin jetzt noch viel happier da der statusrequest ohne "_" endlich geht.
werden die auch noch eingechecked? dann spar ich mir die scp-arbeit ;)

die aenderungen werde ich in kuerze auch im wiki artikel einfuegen.
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

alexus

Klar, wenn alles ok ist, werd ich´s sofort einchecken...  ;D
Ich erweitere gerade noch die Doku.
Die Änderungen lassen sich nicht so leicht testen, da immer ein FHEM-Reboot nötig ist.
Erzähl mal: Funktioniert bei Dir alles mit der neuen Version?  :)

micomat

also ich hab jetzt on-for-timer, off-for-timer, on-till, off-til und blink ausprobiert :)
hat alles einwandfrei funktioniert.

gruß
markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

alexus

Tja, verflixt - ich kann´s nicht commiten.  :-[ SVN will nicht mehr  :-\
Das wird wohl heute nix mehr. Werde den Meister mal fragen...
Erstmal Danke für Deine Test-Unterstützung  ;)

gruß
alexus

micomat

kein Thema. sobald s drin is mach ich das Wiki update.
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

alexus

Hallo!

So, geschafft. Die neue Version ist verfügbar. Das war eine böse Falle:
Ich hatte als Pfad svn://svn.code.sf.net/p/fhem/code/trunk/fhem/FHEM/17_EGPM2LAN.pm angegeben. Es muss aber https://... heissen!
Bitte bei der Gelegenheit im Wiki den Statusrequest ganz rauswerfen, der ist nu nicht mehr nötig  ;D

Grüße
alexus

micomat

Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200