FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: Volker Kettenbach am 25 August 2016, 18:03:57

Titel: 24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 25 August 2016, 18:03:57
##########################
#
# Es gibt zwei Git-Repositories mit dem Sourcecode:
# https://gitlab.com/volkerkettenbach/FHEM-TPLink-Kasa
# https://github.com/kettenbach-it/FHEM-TPLink-HS110/
#
##########################

Hallo,

wie bereits in (1) angekündigt, habe ich ein Modul für die TP-Link HS-110 und HS-100 WLAN-Steckdosen geschrieben.

Der Unterschied zwischen der HS100 und HS110 besteht darin, dass die HS110 eine Echtzeit-Messung von
Strom, Spannung sowie Leistung durchführt.
Das Modul erkennt automatisch, welchen Typ Sie verwenden und passt die Readings entsprechend an.

Das Modul implementiert nicht alle Funktionen der HS100/110.
Derzeit werden alle für den sinnvollen Betrieb an FHEM benötigten Parameter ausgelesen.
Geschrieben werden jedoch nur die Schaltzustände "An", "Aus" sowie der Nachtmodus An/Aus (Nachtmodus = LEDs der Steckdose ausschalten).
Für eine weitergehende Programmierung der Steckdosen wird daher die TP Link App "Kasa" empfohlen, wobei deren
Funktionen wie Timer etc. letztlich redundant zu Kernfunktionen von FHEM sind.

Für alles weitere am besten in die Doku im Modul schauen.

Das Modul ist hier zum Testen erhältlich:

https://github.com/kettenbach-it/FHEM-TPLink-HS110

Bugreports bitte hier!
Change Requests bitte als Patch über die Pull-Request Funktion von github submitten.

Nach einer Testphase werde ich das Modul in das offizielle FHEM Repository einchecken.

Gruß
Volker


(1) https://forum.fhem.de/index.php/topic,52124.0.html (https://forum.fhem.de/index.php/topic,52124.0.html)
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 27 August 2016, 11:50:50
Hallo Volker,

vielen Dank für das Modul. Leider startet es nicht bei mir.

Im Log steht folgendes:
2016.08.27 11:46:14 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.

2016.08.27 11:46:14 0: Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.



Die Perl Module habe ich installiert, denke ich.

Viele Grüße
Stefan
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 27 August 2016, 13:29:09
So ein Teil eben gekauft, nachdem ich im Geschäft geprüft habe ob es mit FHEM funktioniert.
Frage: Wie komme ich an die IP Adresse??? Das Gerät wird mir in der FritzBox nicht angezeigt, obwohl es bereits mit der APP funktioniert.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 27 August 2016, 13:36:49
Auszug aus dem LOG:
Zitat2016.08.27 13:32:49 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31.

2016.08.27 13:32:49 0: Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31.

2016.08.27 13:33:09 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31.

2016.08.27 13:33:09 0: Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 27 August 2016, 13:42:06
Zitat von: bjoernbo am 27 August 2016, 13:29:09
So ein Teil eben gekauft, nachdem ich im Geschäft geprüft habe ob es mit FHEM funktioniert.
Frage: Wie komme ich an die IP Adresse??? Das Gerät wird mir in der FritzBox nicht angezeigt, obwohl es bereits mit der APP funktioniert.
Hallo,
für das iPhone gibt es eine App, die scannt das lokale Netz nach IP Adressen (fing):
https://itunes.apple.com/de/app/fing-network-scanner/id430921107?mt=8

Gruß
Stefan
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 27 August 2016, 13:59:15
Danke!
Also IP Adresse habe ich nun!
define VerbrKuehlschr TPLinkHS110 192.168.178.52 sagt mir aber:
ZitatCannot load module TPLinkHS110

Habe 24_TPLinkHS110.PM in das Verzeichnis in das FHEM Verzeichnis kopiert. Dort wo auch alle anderen .PM Dateien sind. Danach ein Shutdown restart  :-[
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 27 August 2016, 14:38:12
OK. Ich denke mir fehlt das Modul
ZitatPerl Module: IO::Socket::Timeout
. Wo bekomme ich das her und wie richte ich das ein. Wird das auf Kommandozeilenebene installiert?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 27 August 2016, 19:56:07
Zitat von: stefan_kah am 27 August 2016, 11:50:50

2016.08.27 11:46:14 0: Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 597.

Die Perl Module habe ich installiert, denke ich.


Welche Distribution verwendest Du?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 27 August 2016, 19:58:38
Zitat von: bjoernbo am 27 August 2016, 13:36:49
Auszug aus dem LOG:

Wie in der Doku steht: das Modul benötigt das Perl Modul IO::Socket::Timeout.pm
Im Falle von Debian/Raspbian/Ubuntu:

apt-get install libio-socket-timeout-perl
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 27 August 2016, 20:24:36
Zitatpi@raspberrypi ~ $ sudo apt-get install libio-socket-timeout-perl
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libio-socket-timeout-perl

:-\
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 27 August 2016, 22:00:00
Zitat von: Volker Kettenbach am 27 August 2016, 19:58:38
Wie in der Doku steht: das Modul benötigt das Perl Modul IO::Socket::Timeout.pm
Im Falle von Debian/Raspbian/Ubuntu:

apt-get install libio-socket-timeout-perl

Danke für deine Antwort.

pi@fhem ~ $ sudo apt-get install libio-socket-timeout-perl
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
E: Paket libio-socket-timeout-perl kann nicht gefunden werden.

sudo apt-get update hab ich vorher gemacht

pi@fhem ~ $ uname -a
Linux fhem 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l GNU/Linux

ist ein Raspbian wheezy auf einem Raspberry Pi 2
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 28 August 2016, 00:20:56
Entweder auf jessie updaten, denn da gibt es das Paket.
Oder das Paket mittels cpan installieren. Hier steht im Abschnitt 'Install Perl Modules using CPAN automatically' wie das geht.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 28 August 2016, 09:55:22
schade auch mit jessie funktioniert es leider nicht!! Somit kann ich das Modul auch nicht testen  :-\
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 28 August 2016, 13:44:40
Zitat von: Volker Kettenbach am 28 August 2016, 00:20:56
Entweder auf jessie updaten, denn da gibt es das Paket.
Oder das Paket mittels cpan installieren. Hier steht im Abschnitt 'Install Perl Modules using CPAN automatically' wie das geht.

habe cpan eingerichtet, das Modul installiert, und den server neu gestartet:

cpan[1]> install IO::Socket::INET
Going to read '/home/pi/.cpan/Metadata'
  Database was generated on Sun, 28 Aug 2016 05:17:02 GMT
IO::Socket::INET is up to date (1.31).

cpan[2]> install IO::Socket::Timeout
IO::Socket::Timeout is up to date (0.32).

geht leider nicht.
werde heute abend mal jessie neu aufsetzen. auf einer frischen SD Karte.

2016.08.28 13:40:15 0: Can't locate IO/Socket/Timeout.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 593.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 31, <$fh> line 593.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 28 August 2016, 16:07:00
Zitatwerde heute abend mal jessie neu aufsetzen. auf einer frischen SD Karte.
Ich denke das werden die wenigsten machen, nur für ein neues Modul!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 28 August 2016, 18:34:57
Zitat von: bjoernbo am 28 August 2016, 16:07:00
Ich denke das werden die wenigsten machen, nur für ein neues Modul!

Ich wollte eh auf Jessie updaten, um unter anderem an eine neuere Version von Kodi zu kommen.

Auf einem frischen Jessie läuft es. Man muss aber noch JSON installieren.
apt-get install libjson-perl
apt-get install libio-socket-timeout-perl


@Volker: Vielen Dank für das Plugin
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 28 August 2016, 18:42:00
ich verstehe es einfach nicht

Zitatpi@raspberrypi ~ $ sudo apt-get install libjson-perl
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libjson-perl is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 46 not upgraded.
pi@raspberrypi ~ $ sudo apt-get install libio-socket-timeout-perl
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libio-socket-timeout-perl
pi@raspberrypi ~ $
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 28 August 2016, 18:44:45
Zitat von: bjoernbo am 28 August 2016, 18:42:00
ich verstehe es einfach nicht

Hast du mal ein sudo apt-get update und dann ein sudo apt-get upgrade gemacht?
Da sind 46 Pakete noch nicht auf dem neuesten Stand.
Dein RPi läuft mit jessie?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 28 August 2016, 19:07:16
Danke für den Tipp! Eben durchgeführt, aber an dem Ergebnis ändert es leider nichts  :-[
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 29 August 2016, 17:09:03
Das System ist nun auf dem aktuellsten Stand. Habt ihr noch einen Tipp???
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 29 August 2016, 19:30:23
Bitte mal den Output von " apt-cache policy libio-socket-timeout-perl " hier posten
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 29 August 2016, 19:37:40
Zitatpi@raspberrypi ~ $ sudo apt-cache policy libio-socket-timeout-perl
N: Unable to locate package libio-socket-timeout-perl
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 29 August 2016, 21:25:20
Bitte mal den Output von "cat /etc/apt/sources.list" posten.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 30 August 2016, 06:21:26
Zitatpi@raspberrypi ~ $ cat /etc/apt/sources.list
deb http://packages.dotdeb.org wheezy all
deb-src http://packages.dotdeb.org wheezy all
deb http://packages.dotdeb.org wheezy-php55 all
deb-src http://packages.dotdeb.org wheezy-php55 all
deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 August 2016, 07:43:54
Das system läuft auf wheezy. Da gibt es das Paket nicht.

Du musst auf jessie upgraden oder das Paket über das Kommando "cpan" installieren:

cpan  IO::Socket::Timeout
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 30 August 2016, 09:38:30
Danke Volker!

Werde ich heute Abend einmal durchführen. Habe hierzu bereits eine Anleitung gefunden https://www.rootusers.com/how-to-upgrade-debian-7-wheezy-to-debian-8-jessie/ (https://www.rootusers.com/how-to-upgrade-debian-7-wheezy-to-debian-8-jessie/)

Ich hoffe danach funktioniert noch alles  ::)
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 30 August 2016, 16:29:37
habe es mit
Zitatcpan  IO::Socket::Timeout
zum laufen bekommen. Das Modul wird in FHEM erkannt und ist bereits eingerichtet! Läuft!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 August 2016, 21:26:43
Gut!

Funktioniert die Steuerung der Steckdose bei allen?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 31 August 2016, 06:31:00
Da es mir nur um das Auslesen der Wert geht, habe ich das nicht ausführlich getestet.Aber wenn ich den Status auf off setzte, passiert genau das was passieren soll. Die Steckdose geht aus  ;D

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 31 August 2016, 16:43:47
@Volker: Kannst Du noch "Daily Average" irgendwie einbinden? Momentan ist ja nur der aktuelle Verbrauch ablesbar sowie der Gesamtverbrauch. In der Kasa-App gibt es ja auch o.g. Ausgabe noch.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 01 September 2016, 17:43:39
Zitat von: bjoernbo am 31 August 2016, 16:43:47
@Volker: Kannst Du noch "Daily Average" irgendwie einbinden? Momentan ist ja nur der aktuelle Verbrauch ablesbar sowie der Gesamtverbrauch. In der Kasa-App gibt es ja auch o.g. Ausgabe noch.

Hallo Björn,

grundsätzlich ja.
Allerdings sind die Abfragen "teuer", d.h. Sie brauchen viel Rechenzeit und blockieren FHEM während der Abfrage.
Ich werde das mal implementieren und dann schauen, wie viel CPU-Zeit dafür verbraucht wird bzw. wie lange FHEM blockiert.
Dann sehen wir weiter.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 04 September 2016, 19:53:56
Hallo zusammen,

die Werte "daily_average" (per month) und "monthly_total" sind jetzt implementiert.
Hier ist das neue Modul: https://github.com/kettenbach-it/FHEM-TPLink-HS110

Gruß
VK
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 04 September 2016, 21:08:58
Hallo Volker!

Super! Herzlichen Dank. Funktioniert SUPER !!!

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: rsneyer am 05 September 2016, 19:25:01
Hallo Volker,

vielen Dank für das Modul. Ich habe es installiert und mein hs100 wird auch erkannt. Leider stürzt anschließend fhem direkt ab. Das log sagt:


2016.09.05 19:21:05 1: PERL WARNING: "my" variable $command masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 142.
2016.09.05 19:21:05 1: PERL WARNING: "my" variable $c masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 143.
2016.09.05 19:21:05 1: PERL WARNING: "my" variable $socket masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 144.
2016.09.05 19:21:05 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 151.
2016.09.05 19:21:05 1: PERL WARNING: "my" variable $json masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 155.
2016.09.05 19:21:05 3: TPLinkHS110: my_hs100 defined.
2016.09.05 19:21:05 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/24_TPLinkHS110.pm line 175.
2016.09.05 19:21:07 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/24_TPLinkHS110.pm line 83.
2016.09.05 19:21:07 3: TPLinkHS110: my_hs100 Get called. Relay state: 1, RSSI: -60
Illegal division by zero at ./FHEM/24_TPLinkHS110.pm line 164.



FHEM läuft auf einem raspi 2 unter raspbian, alle Updates sind eingespielt. Hast Du eine Idee, was schief läuft?


Viele Grüße,
Robert
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 05 September 2016, 19:30:57
Habe da einen Verdacht und das Modul geändert.
Versuch es mal mit der neues Version, die jetzt auf github ist.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: rsneyer am 05 September 2016, 20:06:45
Hallo Volker,

leider keine Änderung. Das log bringt genau dieselbe Ausgabe. Kann es daran liegen, dass ich kein Online Konto erstellt habe, sondern den Plug nur intern nutze?

Viele Grüsse,
Robert
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 05 September 2016, 20:09:19
Nein, das ist es sicher nicht.
Hast Du ein 100 oder 110?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: rsneyer am 05 September 2016, 20:31:00
Ist ein 100 ... gerade ausgepackt und in Betrieb genommen. Schalten per app geht einwandfrei.

In FHEM wird der Status Bildshirm aufgebaut, dann stürzt FHEM ab.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 05 September 2016, 21:16:40
Okay, das erklärt einiges!
Ich denke, mit dem jetzt im github befindlichen Modul sollte es laufen!
Danke für den Bugreport!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 05 September 2016, 22:10:53
Hallo Volker,

ich habe mein System nun im laufenden Betrieb von Whezzy auf Jessie geupdatet. Nun läuft es :-)

Vielen Dank für das Plugin
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 05 September 2016, 22:16:18
Du solltest auf jeden Fall auch das neueste Modul einsetzen, da die hs100 besser unterstützt wird!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: rsneyer am 06 September 2016, 17:41:55
Hallo Volker,

habe gerade die neuste Modul-Version eingespielt und siehe da .... es funktioniert :-) !

Vielen herzlichen Dank für das Modul inkl. Update!

Viele Grüsse,
Robert
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 07 September 2016, 16:06:04
Hallo Volker,

es läuft soweit alles. Aber im Log steht nach einem Neustart folgendes:

2016.09.07 15:59:24 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/24_TPLinkHS110.pm line 83.
2016.09.07 15:59:27 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/24_TPLinkHS110.pm line 176.

Hast du da eine Idee?

Viele Grüße
Stefan
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 07 September 2016, 21:06:02
An diesen Stellen wird im Code geprüft, ob das Attribut "disabled" gesetzt ist.
Falls das Attribut nicht existiert, kommt dieser Fehler.
Wenn Du den loswerden willst, dann setze disabled auf 0.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stefan_kah am 08 September 2016, 08:00:06
Zitat von: Volker Kettenbach am 07 September 2016, 21:06:02
An diesen Stellen wird im Code geprüft, ob das Attribut "disabled" gesetzt ist.
Falls das Attribut nicht existiert, kommt dieser Fehler.
Wenn Du den loswerden willst, dann setze disabled auf 0.

Danke für deine Antwort. Könnte man den Wert nicht per default auf 0 setzen?
Die Warnung würde doch sonst bei allen im Log stehen, oder?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 10 September 2016, 12:29:40
Ist in der neuesten Version eingebaut!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 10 September 2016, 12:45:28
Das Modul ist jetzt Teil des offiziellen FHEM Repositories
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: OGOL am 10 September 2016, 15:11:39
Steuert jemand die Steckdosen via Hostname an ?

z.b. define HS110 TPLinkHS110 HS110

Beim absetzen eines Schaltbefehls (mit definiertem Hostname), kommt die Fehlermeldung:

Couldn't connect to HS110:9999: IO::Socket::INET: Bad hostname 'HS110'

Mit der IP funktioniert meine HS110 ohne Probleme.

mfg
      OGOL
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 10 September 2016, 15:38:23
Hallo,

ja, ich mache das und es funktioniert.
Die Fehlermeldung weisst auf eine nicht funktionierende Namensauflösung auf dem Host, auf dem FHEM läuft, hin.
Wenn Du nur "HS110" als Hostnamen verwenden willst, dann musst Du die Search-Domain auf dem host in /etc/resolv.conf richtig eintragen.
Oder Du gibst den Hostname im define als fqdn an.
Eine korrekte Auflösung über den DNS-Server oder die Datei /etc/hosts musst Du in jedem Fall sicher stellen.
Du kannst das auf den Host testen mit de  Kommado "hostname"

rpi:~# host plug1
plug1.xxxxx..de has address 192.168.11.61

bzw.:

rpi:~# host plug1121
Host plug1121 not found: 3(NXDOMAIN)
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: OGOL am 10 September 2016, 16:14:03
Couldn't connect to HS110:9999: IO::Socket::INET: Bad hostname 'HS110'

Zitat von: Volker Kettenbach am 10 September 2016, 15:38:23
Die Fehlermeldung weisst auf eine nicht funktionierende Namensauflösung auf dem Host, auf dem FHEM läuft, hin.
Das wars !

Vielen Dank für das Plugin !
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 20 September 2016, 11:55:18
Ich empfehle jedem, die neueste Version ein zu spielen.
Entweder durch SVN Update oder auf github https://github.com/kettenbach-it/FHEM-TPLink-HS110

Ich habe einen Bug behoben, der zum Absturz von FHEM führen kann.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 20 September 2016, 15:51:16
Hätte ich mal hier zuerst nachgeschaut! War schon verzweifelt! DANKE. Jetzt läuft es wieder.

Ich dachte heute morgen schon, was ist denn jetzt los. Hing das mit dem UPDATE der APP zusammen die auf iOS10 verfügbar war?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: OGOL am 20 September 2016, 18:22:24
Zitat von: Volker Kettenbach am 20 September 2016, 11:55:18
Ich habe einen Bug behoben, der zum Absturz von FHEM führen kann.

DANKE. Jetzt läuft alles wieder :D
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Sunless am 23 September 2016, 15:38:24
Hallöchen ...
Habe zufällig Dein Modul gefunden und daraufhin mal eine dieser HS110 bestellt.
Erstinbetriebnahme war etwas krampfig - schade, dass das Setup nur per App möglich ist.
Danach funktioniert die Steckdose recht gut. Danke für Deine Arbeit.

Habe noch ein paar Userreadings hinzugefügt:

powerR { my $pp = (split '"."',ReadingsVal("$name","power",0)) [0]; substr($pp,0,3); },
voltageR { my $pp = (split '"."',ReadingsVal("$name","voltage",0)) [0]; substr($pp,0,3); }


So werden die Daten bei Power und Voltage ohne Komma angezeigt.
Evtl. kann man dies ja direkt ins Modul einbauen und/oder für User, die lieber auf's millionstel genaue Daten haben möchten, die Anzahl der Nachkommastellen (u.U. mit Rundung) per Attribut einstellbar machen -> rounddecimalplaces {Anzahl Stellen / default wenn nicht gesetzt}?

Weiterhin setze ich per DOIF den Interval auf 60 (Sekunden), sobald die HS110 angeschaltet wird und lösche dies wieder, sobald sie wieder ausgeschaltet wird. Wäre auch eine Idee, dies direkt ins Modul zu implementieren, wenn machbar -> intervalwhenon {sekunden / default wenn nicht gesetzt} ;)

Grüße ... Sebastian
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 14 Oktober 2016, 07:19:11
Hallo,

habe mal eben in mein Logfile geschaut und habe unendlich Meldungen : Hier mal ein Auszug:

Zitat2016.10.14 07:15:15 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056831) line 1, near "0)"

2016.10.14 07:15:20 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056835) line 1, near "0)"

2016.10.14 07:15:25 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056838) line 1, near "0)"

2016.10.14 07:15:30 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056841) line 1, near "0)"

2016.10.14 07:15:35 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056844) line 1, near "0)"

2016.10.14 07:15:40 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056847) line 1, near "0)"

2016.10.14 07:15:45 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056850) line 1, near "0)"

2016.10.14 07:15:50 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056853) line 1, near "0)"

2016.10.14 07:15:55 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056858) line 1, near "0)"

2016.10.14 07:16:00 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056878) line 1, near "0)"

2016.10.14 07:16:05 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056881) line 1, near "0)"

2016.10.14 07:16:10 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056884) line 1, near "0)"

2016.10.14 07:16:15 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056889) line 1, near "0)"

2016.10.14 07:16:20 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056892) line 1, near "0)"

2016.10.14 07:16:25 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056897) line 1, near "0)"

2016.10.14 07:16:30 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056901) line 1, near "0)"

2016.10.14 07:16:35 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056906) line 1, near "0)"

2016.10.14 07:16:40 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056911) line 1, near "0)"

2016.10.14 07:16:45 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056914) line 1, near "0)"

2016.10.14 07:16:50 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 1056918) line 1, near "0)"
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: pc1246 am 14 Oktober 2016, 09:18:28
Moin
Mal eine kurze Frage so zwischendrin. Kann man die Steckdose so konfigurieren, dass Sie nach einem Stromausfall wieder an geht? (Kuehlschrank!)
Gruss Christoph
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 14 Oktober 2016, 22:50:35
Zitat von: pc1246 am 14 Oktober 2016, 09:18:28
Moin
Mal eine kurze Frage so zwischendrin. Kann man die Steckdose so konfigurieren, dass Sie nach einem Stromausfall wieder an geht? (Kuehlschrank!)
Gruss Christoph

Meiner Kenntnis nach leider nicht. Bin auch schon drauf rein gehalten.

Was du aber machen kannst, ist einen schedule einrichten, der die Steckdose zum Beispiel 1x pro Stunde einschaltet. Das geht derzeit nur über die app.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Murph am 10 November 2016, 13:37:57
Hi,

tschuldigung schon mal für die möglicherweise doofe Frage.
Ich hab ein aktuelles fhem auf einem Raspi testweise laufen. Jetzt hab ich versucht dein Modul zu laden bzw. mit define anzulegen.
Dabei kommt "Modul TPLinkHS110 nicht vorhanden".......zumindest sinngemäß.
Bin gerade nicht zu Hause darum aus dem Gedächtnisprotokoll.
Wie kann ich das Modul installieren?
Bzw. wo muß ich es hinschieben?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 10 November 2016, 14:04:36
in der FHEM Zeile folgendes Eintrag:
update check

dann sollte es angezeigt werden. Danach

update all
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Murph am 10 November 2016, 17:52:43
Danke für den Tip,hat leider nix gebracht!  :'(
Die Meldung lautet: Cannot load Modul TPLinkHS110
Dieses Modul stand aber auch nicht bei update check dabei......
Also sollte es doch schon installiert sein oder?

Update:
Ich habe Raspberrian nochmal neu installiert,vorher möglicherweiße totgespielt ;-) ,fhem neu......und siehe da es funktioniert!

Danke für das Modul!!!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: redlav am 14 November 2016, 21:56:33
Hallo,

zuerst einmal vielen Dank für das Modul. Ich habe mittlerweile 6 TPLinkHS110 im Einsatz und bin soweit auch zufrieden!.
Hin und wieder kommt es beim Schalten zu einem Fehler, wobei dann die betroffene Steckdose auch über die APP nicht
mehr zu schalten ist und als inaktiv dargestellt wird. Das übelste ist aber, das FHEM dann nicht mehr reagiert.

Beim Neustart des Servers erscheint im Log folgende Fehlermeldung:

2016.11.14 15:12:52.813 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 310.
2016.11.14 15:12:52.813 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 310.
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 107.


Das Device sieht so aus:


Internals:
   DEF        192.168.1.10
   HOST       192.168.1.10
   INTERVAL   300
   NAME       stSteckdose2
   NEXTUPDATE Mon Nov 14 15:24:37 2016
   NR         670
   STATE      off
   TIMEOUT    1
   TYPE       TPLinkHS110
   Readings:
     2016-11-14 15:19:37   active_mode     schedule
     2016-11-14 15:19:37   alias           Steckdose 2
     2016-11-14 15:19:37   dev_name        Wi-Fi Smart Plug
     2016-11-14 15:19:37   deviceId        80065A934CBB34FC14E1EB59D8481541174CF316
     2016-11-14 15:19:37   err_code        0
     2016-11-14 15:19:37   feature         TIM
     2016-11-14 15:19:37   fwId            BFF24826FBC561803E49379DBE74FD71
     2016-11-14 15:19:37   hwId            22603EA5E716DEAEA6642A30BE87AFCA
     2016-11-14 15:19:37   hw_ver          1.0
     2016-11-14 15:19:37   icon_hash
     2016-11-14 15:19:37   latitude        0
     2016-11-14 15:19:37   led_off         0
     2016-11-14 15:19:37   longitude       0
     2016-11-14 15:19:37   mac             50:C7:BF:03:FD:13
     2016-11-14 15:19:37   model           HS100(EU)
     2016-11-14 15:19:37   oemId           812A90EB2FCF306A993FAD8748024B07
     2016-11-14 15:19:37   on_time         0
     2016-11-14 15:19:37   relay_state     0
     2016-11-14 15:19:37   rssi            -57
     2016-11-14 15:19:37   state           off
     2016-11-14 15:19:37   sw_ver          1.0.8 Build 151101 Rel.24452
     2016-11-14 15:19:37   type            smartplug
     2016-11-14 15:19:37   updating        0
Attributes:
   disable    0
   room       020_Steckdosen


Ist es vielleicht möglich den Fehler abzufangen, damit die Steckdose nicht den FHEM-Prozeß killt.

Gruß Norbert
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 15 November 2016, 13:11:29
Zitat von: redlav am 14 November 2016, 21:56:33

Ist es vielleicht möglich den Fehler abzufangen, damit die Steckdose nicht den FHEM-Prozeß killt.


Danke für den präzisen Report!
Ist auf jeden Fall machbar.
Ich schaue, dass ich mich nachher mal dran setze!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 15 November 2016, 20:16:02
So, ich habe eine paar Sicherheitschecks eingebaut, dass FHEM im Falle eines gecrashten HS100/110 nicht auch crashed.

Code ist im github und (ich glaube) am morgen auch im FHEM-SVN.

Würde ich mich über Feedback und weitere Bugreports freuen.
Meine Erfahrungen mit dem TPLinks sind auch ganz gut. Man bekommt viele Features für wenig Geld und die FHEM-Anbindung funktioniert auch gut.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: redlav am 20 November 2016, 13:12:01
Hallo Volker,

nach dem Update hatte ich heute das erste mal wieder das Problem mit der Steckdose. Dieses mal ist FHEM aber nicht abgestürzt :)
Offensichtlich verträgt sich die Steckdose nicht mit einem eingesteckten Netzteil eines kleinen Springbrunnen und verliert dadurch
die wlan-Verbindung. Die gleiche Steckdose mit einer Lampe funktioniert ohne Problem.

Vielen Dank für deinen schnellen Support!

Gruß Norbert
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: cs1711 am 24 November 2016, 22:02:10
Ich habe leider das Problem, dass sich FHEM regelmäßig beim ersten/zweiten Ausschaltvorgang der TPLink-Steckdose aufhängt und nur noch ein FHEM Neustart hilft. FHEM läuft noch, aber es passiert nichts mehr und FHEM ist über das Webinterface nicht mehr erreichbar.

Ich habe als 24_TPLinkHS110.pm den neuesten Code von Github verwendet. Hilft aber leider nicht :-(

Für Hilfe wäre ich dankbar!

Nachtrag:
Ich habe jetzt den Hostnamen durch die IP-Adresse ersetzt und jetzt scheint es stabil(er) zu funktionieren. Werde das mal weiter beobachten.

Wie ist das bei Euch, funktioniert es zuverlässig oder gibt es immer mal wieder Aussetzer/fehlerhafte Schaltvorgänge?

Viele Grüße
Christian
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 25 November 2016, 17:16:57
Bei mir läuft es stabil.
Auch mit hostname.
Aber ich schalte auch nicht oft.
Aber ich Frage alle 5 Minuten die Readings ab.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: rola am 26 November 2016, 10:16:01
HI,

ich habe 5 TPLink HS110 im Einsatz. Manchmal bekomme ich folgende Fehler-Meldung (verschiedene Geräte, nicht nachvollziehbar wann):
-->json-decoding failed. Problem decoding getting statistical data
Daraufhin habe ich ein paar Debug-messages eingebaut und herausgefunden dass in dem eval (Zeile 157) das letzte readingsBulkUpdate schiefgeht, weil $count = 0 ist und die Division dann scheitert.
$jason enthält folgende Daten:
{"emeter":{"get_daystat":{"day_list":[],"err_code":0}}}
Kann es sein, dass dass Array-Format in day_list der Grund ist - wenn die Abfrage klappt, ist es wie erwartet ein Hash
Testweise habe ich ein if ($count) um das letzte readingsBulkUpdate gebaut und damit die Fehlermeldung erledigt.

Viele Grüße
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: cs1711 am 30 November 2016, 21:13:25
Zitat von: cs1711 am 24 November 2016, 22:02:10
Ich habe leider das Problem, dass sich FHEM regelmäßig beim ersten/zweiten Ausschaltvorgang der TPLink-Steckdose aufhängt und nur noch ein FHEM Neustart hilft. FHEM läuft noch, aber es passiert nichts mehr und FHEM ist über das Webinterface nicht mehr erreichbar.

Ich habe als 24_TPLinkHS110.pm den neuesten Code von Github verwendet. Hilft aber leider nicht :-(

Für Hilfe wäre ich dankbar!

Nachtrag:
Ich habe jetzt den Hostnamen durch die IP-Adresse ersetzt und jetzt scheint es stabil(er) zu funktionieren. Werde das mal weiter beobachten.

Jetzt hatte ich gerade wieder einen FHEM Hänger, weil die Steckdose nicht erreichbar ist. Auch die TPLink-Software KASA meldet, dass der Device nicht erreichbar ist.

Das sie nicht schaltet, weil sie nicht im WLAN erreichbar ist, ist ja eine Sache. Aber das FHEM sich komplett deswegen aufhängt und damit auch sämtliche andere (automatische) Steuerung nicht mehr geht, ist schon extrem ärgerlich.

Bin nun leider kein PERL-Spezialist, aber kann man das ggf. irgendwie weiter stabilisieren?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 November 2016, 21:25:21
Wie ist das timeout Attribut bei Dir gesetzt?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: cs1711 am 30 November 2016, 21:27:51
Hallo Volker,

TIMEOUT 1

Sollte das auf einem anderen Wert stehen?

Viele Grüße
Christian
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 November 2016, 21:44:07
Nein.
An sich sollte fhem nach einer Sekunde aufgeben, wenn keine Verbindung zur Steckdose zu Stande kommt.

Antwortet Deine Steckdose noch auf Ping, wenn sie hängt?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: cs1711 am 30 November 2016, 21:45:59
Kann ich Dir leider nicht sagen, vergessen zu überprüfen. Checke ich beim nächsten Hänger. Hilft es Dir bei der Fehleranalyse, wenn ich einen bestimmten Loglevel o. ä. setze?

Im FHEM Log kann ich sehen, dass alle fünf Minuten bis 20:57:33 der Status abgefragt wurde:
2016.11.30 20:57:33 3: TPLinkHS110: ESSZIMMER_ECKE Get called. Relay state: 1, RSSI: -53
2016.11.30 20:57:33 3: TPLinkHS110: ESSZIMMER_ECKE Device is an HS110. Got extra realtime data: 2.326024 Watt, 237.422021 Volt, 0.023718 Ampere
2016.11.30 20:57:33 3: TPLinkHS110: ESSZIMMER_ECKE Get end


Dann ist der nächste Befehl:
2016.11.30 21:01:00 3: TPLinkHS110: ESSZIMMER_ECKE Set <off> called

Danach ist Schluß.

Timeout 1 bedeutet, dass FHEM durchaus für eine Minute hängen könnte, bis der Timeout zuschlägt?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 November 2016, 22:31:53
Nein, es bedeutet eine Sekunde!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: NeoMatrix am 07 Dezember 2016, 01:19:32
Zitat von: pc1246 am 14 Oktober 2016, 09:18:28
Moin
Mal eine kurze Frage so zwischendrin. Kann man die Steckdose so konfigurieren, dass Sie nach einem Stromausfall wieder an geht? (Kuehlschrank!)
Gruss Christoph

Hallo.

Ich habe die Firmware sw_ver 1.0.8 Build 151101 Rel.24452 auf meiner gerade gekaufte HS110. Wenn sie eingeschaltet ist und stromlos "wird" kehrt sie nach "Rückkehr" des Stroms wieder in den "AN-Zustand" zurück. Evtl. hilft also ein Firmwareupdate?

Gruß

Andre
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: NeoMatrix am 07 Dezember 2016, 01:40:22
Hallo.

Erstmal vielen Dank für die ganze Arbeit. Auch ich musste auf Jessie upgraden borvor es funktionierte. Was mich interessiert ist ob man den Schalten (An/Aus) sperren kann und auch die Schaltfunktion in FHEM "deaktivieren" kann. Hintergrund ist das ich die Dose bzw. bestimmte Dosen nur für die Verbrauchsmessung nutzen möchte und daher diese Funktion gerne gegen Fremdzugriff schützen möchte.

Danke für jede Hilfe.

Gruß

Andre
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 07 Dezember 2016, 08:43:52
Schau Dir mal die Attribute dummy und webcmd an.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 08 Dezember 2016, 16:27:39
Zitat von: rola am 26 November 2016, 10:16:01
HI,

ich habe 5 TPLink HS110 im Einsatz. Manchmal bekomme ich folgende Fehler-Meldung (verschiedene Geräte, nicht nachvollziehbar wann):
-->json-decoding failed. Problem decoding getting statistical data
Daraufhin habe ich ein paar Debug-messages eingebaut und herausgefunden dass in dem eval (Zeile 157) das letzte readingsBulkUpdate schiefgeht, weil $count = 0 ist und die Division dann scheitert.
$jason enthält folgende Daten:
{"emeter":{"get_daystat":{"day_list":[],"err_code":0}}}
Kann es sein, dass dass Array-Format in day_list der Grund ist - wenn die Abfrage klappt, ist es wie erwartet ein Hash
Testweise habe ich ein if ($count) um das letzte readingsBulkUpdate gebaut und damit die Fehlermeldung erledigt.

Viele Grüße

Danke für den Tip!
Ich habe den Code angepasst und eingecheckt.
Ab morgen ist das auch im offiziellen FHEM drin.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 10 Dezember 2016, 08:19:30
auch auf die Gefahr hin, dass ich mich wiederhole! Das Modul läuft einwandfrei, allerdings wird mein globales-FHEM Logfile mit folgenden Einträgen zugefüllt !

Zitat2016.12.01 00:00:04 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 543933) line 1, near "0)"

2016.12.01 00:00:09 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 543937) line 1, near "0)"

2016.12.01 00:00:14 3: WattVerbrauchsmesser: Too many arguments for main::ReadingsVal at (eval 543942) line 1, near "0)"

Diese Einträge ziehen sich fast bis ins unendliche fort!

Da alles einwandfrei läuft, daher die Frage, kann ich es irgendwie unterbinden das diese Einträge ins FHEM-LOGFILE geschrieben werden?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 10 Dezember 2016, 18:35:55
Komisch.
Neueste Modulversion im Einsatz?
Wie ist Dein define?
Wie ist der loglevel?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DasB am 02 Januar 2017, 18:07:31
Sorry für die blöde Frage aber ich stehe gerade maximal auf dem Schlauch.  ???

Was für Werte werden zurückgeliefert, um welche Einheiten handelt es sich?

current = Aktueller Strom in A
voltage = Aktuelle Spannung in V
daily_average = Tagesdurchschnitt in Wh? Sprich, Wie viel W hat das Gerät im Durchschnitt pro Stunde verbraucht
monthly_total = Monat Gesamt in Wh?
total = Gesamtzähler in Wh?

Irgendwie ergeben die Zahlen für mich keinen Sinn und ich habe das Gefühl völlig daneben zu liegen. Ich würde gerne aus den Daten den Stromverbrauch in kw/h berechnen, bin mir jedoch nicht sicher was ich hier für Werte vor mir habe.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 02 Januar 2017, 19:35:37
Zitat von: DasB am 02 Januar 2017, 18:07:31
Sorry für die blöde Frage aber ich stehe gerade maximal auf dem Schlauch.  ???

Was für Werte werden zurückgeliefert, um welche Einheiten handelt es sich?

current = Aktueller Strom in A
voltage = Aktuelle Spannung in V
daily_average = Tagesdurchschnitt in Wh? Sprich, Wie viel W hat das Gerät im Durchschnitt pro Stunde verbraucht
monthly_total = Monat Gesamt in Wh?
total = Gesamtzähler in Wh?

Irgendwie ergeben die Zahlen für mich keinen Sinn und ich habe das Gefühl völlig daneben zu liegen. Ich würde gerne aus den Daten den Stromverbrauch in kw/h berechnen, bin mir jedoch nicht sicher was ich hier für Werte vor mir habe.

Schau mal in der App.
Fhem gibt die gleichen Werte aus wie die App.
Ich weiss es nämlich auch nicht genau.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DasB am 02 Januar 2017, 20:13:30
Gute Idee,

warum bin ich da nicht selbst drauf gekommen  :-X

Habe die Werte mal verglichen, irgendwie werde ich da nicht schlau daraus. Das passt doch nicht zusammen?

Readings:
     2017-01-02 20:11:13   current         0.032747
     2017-01-02 20:11:13   daily_average   0.4885
     2017-01-02 20:11:13   monthly_total   0.977
     2017-01-02 20:11:13   on_time         263972
     2017-01-02 20:11:13   power           0
     2017-01-02 20:11:13   relay_state     1
     2017-01-02 20:11:13   rssi            -78
     2017-01-02 20:11:13   state           on
     2017-01-02 20:11:13   sw_ver          1.0.8 Build 151101 Rel.24452
     2017-01-02 20:11:13   total           0.977
     2017-01-02 20:11:13   type            smartplug
     2017-01-02 20:11:13   updating        0
     2017-01-02 20:11:13   voltage         224.478151


Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 03 Januar 2017, 13:00:07
Zitat von: DasB am 02 Januar 2017, 20:13:30
Gute Idee,

warum bin ich da nicht selbst drauf gekommen  :-X

Habe die Werte mal verglichen, irgendwie werde ich da nicht schlau daraus. Das passt doch nicht zusammen?

Readings:
     2017-01-02 20:11:13   current         0.032747
     2017-01-02 20:11:13   daily_average   0.4885
     2017-01-02 20:11:13   monthly_total   0.977
     2017-01-02 20:11:13   on_time         263972
     2017-01-02 20:11:13   power           0
     2017-01-02 20:11:13   relay_state     1
     2017-01-02 20:11:13   rssi            -78
     2017-01-02 20:11:13   state           on
     2017-01-02 20:11:13   sw_ver          1.0.8 Build 151101 Rel.24452
     2017-01-02 20:11:13   total           0.977
     2017-01-02 20:11:13   type            smartplug
     2017-01-02 20:11:13   updating        0
     2017-01-02 20:11:13   voltage         224.478151


Die aktuellen Werte passen:

monthly_total = Total Consumption (gerundet auf 2 Nachkommastellen)
power = current power

Die Daily AVgs passen irgendwie nicht.

Vorschlag: versuch mal mit dem CLI-Tool Deine Geräte aus zu lesen:

./tplink_hs110_cmd.pl -i plug1 -c daystat

./tplink_hs110_cmd.pl -i plug1 -c monthstat

Es gibt in der Steckdose nämlich daily und monthly stats.

Was das "Daily in past 7 days" und "daily ind 30 days" in der App bedeuten soll, verstehe ich nämlich auch nicht.
Mit den CLI Tool siehst Du, was aus der Steckdose wirklich an Daten kommt.








Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DasB am 03 Januar 2017, 16:56:31
Okay, die Werte passen.

Angaben sind kWh.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: kurtl am 08 Januar 2017, 17:53:19
Hallo!

Ich verwende einige der HS100 und habe das Problem, dass sich fhem alle paar Tage einmal aufhängt - der letzte Logeintrag ist immer von TPLinkHS110. da ich einen Watchdog laufen habe, ist das nicht so dramatisch, aber vielleicht lässt sich der Fehler ja finden. Hier die letzten Logeinträge vom gestrigen Hänger:

2017.01.07 22:52:07 3: TPLinkHS110: 13.Smartplug.01 Get called. Relay state: 1, RSSI: -77
2017.01.07 22:53:07 3: TPLinkHS110: 13.Smartplug.01 Set <off> called
2017.01.07 22:53:17 3: TPLinkHS110: 13.Smartplug.01 Get called. Relay state: 0, RSSI: -77
2017.01.07 22:53:20 3: TPLinkHS110: 15.Smartplug.03 Set <off> called
2017.01.07 22:53:30 3: TPLinkHS110: 11.Smartplug.05 Get called. Relay state: 0, RSSI: -59
2017.01.07 22:53:35 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 315.
2017.01.07 22:53:35 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 315.
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 137.


Falls ich für den nächsten Hänger an den Logs  was ändern soll, bitte um Info.

lG Kurt
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 09 Januar 2017, 09:30:41
Hi Kurtl,

danke für die Info.
Zwei Dinge fallen mir dazu ein:

1. Scheinbar liefert Deine HS100 unvollständige oder leere Daten zurück. Warum Sie das tut, weiss ich auch nicht. Vlt. solltest Du mal prüfen, ob es ein Softwareupdate für das Ding gibt. Meine HS110s machen das jedenfalls nicht.
Das Abfangen diesen Fehlers ist machbar. Ich werde die Tage dafür was programmieren und ins nächste Release bringen.

2. Warum FHEM sich dabei aufhängt, weiss ich auch nicht. Das sollte an sich nicht sein, denn es ist keine Division durch 0 oder ähnlich involviert.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 09 Januar 2017, 10:36:58
So, ich hab's gleich gemacht.

Entweder ab morgen das Modul 24_TPLinkHS110 aus dem FHEM-SVN holen oder ab sofort hier:
https://github.com/kettenbach-it/FHEM-TPLink-HS110/blob/master/24_TPLinkHS110.pm

Ab Log-Level 1 wird geloggt, wenn das TPLink Gerät 0-Daten sendet und ab Log-Level 2 werden Fehler im JSON geloggt.
Ich empfehle also mal den Betrieb mit 2.
Bei Bedarf auch 3, dann werden auch Decoding-Ergebnisse geloggt.

Viel Spaß!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: kurtl am 09 Januar 2017, 20:19:52
Hi!

Danke, werde ich gleich einspielen. Meine Steckdosen sind übrigens HS110 (habe mich oben vertippt) und sind alle auf der aktuellen Firmware.

lG Kurt
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: panameranet am 10 Januar 2017, 23:54:46
Hallo, heute wollte ich das neue Modul testen. Allerdings ohne Erfolg. Die beiden benötigten Perl-Module sind am dem Raspberry Pi 3 installiert. Es erscheint die Fehlermeldung in FHEM: Cannot load Modul TPLinkSSH110.
Woran kanns liegen?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 11 Januar 2017, 00:36:41
Das Modul heisst TPLinkHS110 und nicht TPLinkSSH110
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: panameranet am 11 Januar 2017, 12:07:35
In meinem letzten Beitrag habe ich mich leider vertippt.
Es erscheint weiterhin die Fehlermeldung "Cannot load Modul TPLinkHS110".
FHEM ist up to date. Auch die benötigten Perl-Module wurden über capnm installiert geben die Rückmeldung up to date zu sein.
Was mache ich falsch??
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 11 Januar 2017, 15:09:27
Bitte aus dem Log File mal eine ausführlichere Fehlermeldung kopieren, da sich mit diesen Informationen nichts sagen lässt.
Dafür ggf. den Loglevel erhöhen.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: atmelfreak am 13 Januar 2017, 12:01:22
Hallo Volker,
erstmal vielen Dank für dein tolles Modul. Es läuft bei mir soweit sehr gut und stabil.

Einen kleinen Verbesserungsvorschlag hätte ich noch:
Mir fehlt ein Reading mit dem kWh Verbrauch für den aktuellen Tag (vielleicht habe ich es auch nur übersehen). daily_average liefert ja nur einen Durchschnittswert der letzten Tage oder Monate? Ich habe den gewünschten Wert mal provisorisch in deinen Code eingefügt:

                        foreach my $key (sort keys @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}}) {
                                foreach my $key2 ($json->{'emeter'}->{'get_daystat'}->{'day_list'}[$key]) {
                                        $total = $total+ $key2->{'energy'};
                                        # added for "daily_total" reading
                                        if ($key2->{'day'} == $mday) {
                                                readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy'}));
                                        }
                                        # end added
                                }
                        }


Es wäre schön, wenn du das als Standard in Deinen Code mit aufnehmen könntest.
Außerdem wäre es schön, wenn du die Readings wie power, daily_average, current, voltage... etwas runden könntest (z.B. 2 Nachkommastellen). Dann würde die event-on-change-reading Option die Daten etwas effektiver reduzieren können.

Viele Grüße
Frank 
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 13 Januar 2017, 13:41:15
Hallo Frank,

das Reading habe ich eingebaut.
Das Modul ist in git (https://github.com/kettenbach-it/FHEM-TPLink-HS110) und SVN - also ab morgen über die Update Funktion von FHEM zu bekommen.

Vielen Dank für den Tip!

Was das Runden angeht: ich hatte auch schon darüber nachgedacht. Aber wenn ich das jetzt einbaue, ruft ein anderer, dass er das nicht will sondern die exakten Werte.
Daher lasse ich es und verweise auf die Bordmittel von FHEM - Stichwort userReadings.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: atmelfreak am 13 Januar 2017, 14:10:52
Hallo Volker,

wow, das ging ja schnell, vielen Dank dafür!

Das Runden werde ich dann selbst in userReadings machen.

Viele Grüße
Frank
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Ralf777 am 14 Januar 2017, 09:38:41
Hallo zusammen,

mein FHEM läuft auf einer Diskstation und ich bekomme immer den Fehler der hier auch schon beschrieben wurde.

Can't locate IO/Socket/Timeout.pm

Bei IO::Socket::Timeout bekomme ich immer folgenden Fehler:

ZitatRunning install for module 'IO::Socket::Timeout'
Running Build for D/DA/DAMS/IO-Socket-Timeout-0.32.tar.gz
  Has already been unwrapped into directory /root/.cpan/build/IO-Socket-Timeout-0.32-0n6Ecy
  '/opt/bin/perl Build.PL ' returned status 512, won't make
Running Build test
  Make had some problems, won't test
Running Build install
  Make had some problems, won't install

Hat jemand eine Idee was ich falsch mache?

Grüße Ralf
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 14 Januar 2017, 11:41:56
Da heb ich schon mal was dazu geschrieben:

https://forum.fhem.de/index.php/topic,52124.msg544426.html#msg544426

Wenn Du nicht die nächsten Wochen damit verbringen willst, auf das Nas ein vollwertiges Linux zu installieren, würde ich empfehlen, einen Raspberry Pi zu kaufen.
Ansonsten bitte an ein Synology Forum wenden, dann das ganze ist kein Thema für FHEM.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Lippi am 30 Januar 2017, 17:55:17
Ahoi!

Ich bin grade auf des Rätsels Lösung gestoßen, das mich seit Wochen plagt (bzw seit ich die Funksteckdose durch ne HS110 ersetzt habe): mein FHEM-Prozess auf dem Raspberry 1 B stürzt komplett ab. Log sieht direkt nach dem Absturz immer so aus:


2017.01.26 17:26:07 3: TPLinkHS110: Steckdose Set <on> called
2017.01.26 17:26:07 3: TPLinkHS110: Steckdose Get called. Relay state: 1, RSSI: -64
2017.01.26 17:26:07 3: TPLinkHS110: Steckdose Device is an HS110. Got extra realtime data: 0 Watt, 233.998885 Volt, 0.019419 Ampere
2017.01.26 17:26:07 3: TPLinkHS110: Steckdose Get end
2017.01.26 17:26:16 3: TPLinkHS110: Steckdose Set <dim> called
2017.01.26 17:26:16 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 317.
2017.01.26 17:26:20 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 328.
2017.01.26 17:26:20 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 328.
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 223.


Jetzt gerade so:

2017.01.30 16:52:13 3: TPLinkHS110: Steckdose Set <on> called
2017.01.30 16:52:13 3: TPLinkHS110: Steckdose Get called. Relay state: 1, RSSI: -63
2017.01.30 16:52:13 3: TPLinkHS110: Steckdose Device is an HS110. Got extra realtime data: 0 Watt, 234.236638 Volt, 0.019231 Ampere
2017.01.30 16:52:13 2: TPLinkHS110: Steckdose json-decoding failed. Problem decoding getting statistical data
2017.01.30 16:52:13 3: TPLinkHS110: Steckdose Get end
2017.01.30 16:55:57 3: TPLinkHS110: Steckdose Set <discoSpeedDown> called
2017.01.30 16:55:57 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 317.
2017.01.30 16:56:01 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 328.
2017.01.30 16:56:01 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 328.
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 223.


Ich habe ne Funksteckdose, 3 Milights und die HS110 in einer Structure, also Gruppe. Den Funksteckdose waren unbekannte Befehle bisher wurscht, aber dein Script steigt aus wenn nach "Set" was Unbekanntes kommt (wie hier <dim> oder <discoSpeedDown>).

Kannst Du Dir dafür bitte was überlegen? Ich mag das Modul und die Steckdose inzwischen nämlich schon gern...

Danke Dir!

Sebastian

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 31 Januar 2017, 14:57:24
Hallo Sebastian,

danke für den Bugreport. In der Tat fehlte da die Abfrage für ungültige Kommandos.
Ich kann es zwar mangels Gruppe nicht testen, denke aber, dass die neueste Version des Moduls bei Dir stabil laufen sollte.
Probier es einfach aus!

Das neue Modul ist ab sofort im github (https://github.com/kettenbach-it/FHEM-TPLink-HS110) und ab morgen im SVN.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Lippi am 02 Februar 2017, 17:18:51
Sieht gut aus, die Milight Kommandos machen dem Modul jetzt nichts mehr aus. Im Log steht auch nichts bedenkliches. Danke dir!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Groej am 05 Februar 2017, 17:17:10
Hallo,

erstmal Danke für das Modul und damit die Einbindung der HS110 in FHEM.
Eine Frage habe ich. Kann ich den Status der Dose direkt bei der Dose abfragen? Hintergrund ist der weil ich die Dose auch über den Amazon Echo schalte und wenn ich die Zeit ungünstig war erst nach 5 Minuten im FHEM sehen das sie geschaltet ist. Würde es z.B. über einen at Befehl alle 5 Sekunden oder so dann machen.

Danke

Gruß

Jörg
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: redlav am 05 Februar 2017, 17:24:12
Das Device hat Standardmäßig einen Intervall von 300s, wenn du es einrichtest:

Attribute
    interval: Das Intervall in Sekunden, nach dem FHEM die Messwerte aktualisiert. Default: 300s
    Eine Aktualisierung der Messwerte findet auch bei jedem Schaltvorgang statt.

Wenn du die Steckdose jetzt manuell oder per Echo schaltest dauert es im ungünstigsten Fall 300s
bis der Status in FHEM akualisiert wird. Wenn du es schneller haben willst, musst du den Intervall
verkleinern, wobei das permanente pollen vermutlich bei vielen Steckdosen auch nicht optimal ist.
So ist das halt, wenn man von unterschiedlichen Systemen ein Gerät schaltet.

http://fhem.de/commandref_DE.html#TPLinkHS110 (http://fhem.de/commandref_DE.html#TPLinkHS110)

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 05 Februar 2017, 20:11:23
Wie redlav schreibt: Intervall verkürzen.

Oder Amazon Echo ein FHEM Kommando absetzen lassen und FHEM den Schaltvorgang vornehmen lassen.
Wobei ich nicht weiss, ob es bereits für dieses Gerät Schnittstellen gibt.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: atmelfreak am 19 Februar 2017, 16:17:30
Hallo Volker,

könntest Du bitte alle Aufrufe von
my $json = decode_json($data);
durch ein eval absichern? Mir ist jetzt der FHEM Server z.B beim Schalten der Steckdose abgestürzt.
Wie kommt es eigentlich, dass der FHEM Server durch einen Fehler durch korrupte Daten beim decode_json
komplett abstürzt. Könnte man sowas nicht im Server durch einen "die" Handler abfangen?

Generell bin ich aber nicht sehr zufrieden mit der TPLink-Steckdose, da diese mit meinem Speedport-Router
nicht sauber zusammen arbeitet. Irgendwann kann der Router den Namen der Steckdose nicht mehr auflösen
und FHEM kann diese nicht mehr erreichen. Ich kann im Speedport leider auch keine feste IP-Adresse für die
Steckdose vergeben. Also muss ich die Adresse des Devices ständig im FHEM anpassen...
 
Viele Grüße
Frank
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 25 Februar 2017, 17:02:21
Ist erledigt!
Danke für den Vorschlag!

Modul list up-to-date im github und ab morgen im SVN.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: atmelfreak am 05 März 2017, 21:17:45
Supi, danke Dir!

Mein Problem mit der Adressauflösung und den dynamischen IP-Adressen habe ich jetzt dadurch gelöst, dass ich meinen Speedport-Router durch eine Fritzbox abgelöst habe. Bei der Fritzbox funktioniert die Auflösung der Hostnamen einwandfrei und macht mir das Leben mit FHEM und Homeautomation wesentlich leichter.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: redlav am 16 April 2017, 10:24:39
Hallo Volker,

gestern hatte ich seit langem mal wieder ein Problem:

2017.04.15 10:30:02.431 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 328.
malformed JSON string, neither array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 108.

Nach dem schalten der Steckdose war das die letzte Zeile im Log, bevor fhem gestorben ist. Ich kann den Fehler nicht
reproduzieren und die steckdose funktioniert seitdem wieder. Kannst du den Fehler vielleicht abfangen, damit der nicht das
System abschießt?

Gruß Norbert

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 09 Mai 2017, 18:06:08
Hallo Volker,

ich setze Dein TPLink Modul derzeit testweise ein und habe folgendes Problem festgestellt:

Bei einer TPLink HS110 Steckdose im Wohnzimmer habe ich absolut keine Probleme mit dem Ein- und Ausschalten. Funktioniert immer auf Anhieb beim ersten Mal.

Bei zwei weiteren HS110 Steckdosen im Pavillon und im Gartenhaus klappt das Einschalten meistens nicht beim ersten Mal. Stattdessen kommt nach ein paar Sekunden die Fehlermeldung: Couldn't connect to 192.168.1.58:9999: IO::Socket::INET: connect: timeout

Erst nach dem zweiten oder dritten Anlauf lässt sich die Steckdose dann einschalten. Danach klappt das Ein- und Ausschalten problemlos.

Ich habe mal den TimeOut auf 5 Sekunden erhöht, konnte das Problem damit aber nicht lösen.

Mein WLAN im Garten ist vermutlich nicht so stark wie im Haus, was eventuell eine Erklärung sein könnte. Mit der Kasa App habe ich diese Probleme aber nicht und die Steckdosen lassen sich alle gut schalten.

Vielen Dank für Deine Hilfe.

Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 12 Mai 2017, 07:17:31
Hallo Mave,

dasvProbkem habe ich auch hin und wieder.
Ich habe auch keine Ahnung, woran das liegt.
Ich könnte versuchen, den request bei einem timeout nochmal zu schicken.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 13 Mai 2017, 08:00:59
Moin Volker,

das würde ich sehr begrüßen.

Vielen Dank.

Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 17 Mai 2017, 16:40:44
Ich habe das jetzt mal so gelöst, dass im Falle eine Timeout genau 1x versucht wird, nochmal zu senden (schalten).
Mal schauen, ob das ausreicht.

Das Update ist ab sofort im git und ab morgen im svn.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 18 Mai 2017, 11:54:05
Super, vielen Dank.

Ich werde testen und berichten.

Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 18 Mai 2017, 12:07:14
Das habe ich nach einem Neustart im Log gefunden:

PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/24_TPLinkHS110.pm line 167.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 19 Mai 2017, 01:08:01
Nicht tragisch. Kannst Du ignorieren.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: anpfeiffer am 20 Mai 2017, 16:16:12
Hi,
ich hab nach dem letzten Update das Problem, das bei der HS110 das Reading power permanent 0 anzeigt, auch wenn definitiv Strom verbraucht wird.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 22 Mai 2017, 09:57:15
Das kann ich leider nicht nachvollziehen.
Bei mir geht es bei allen Steckdosen.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steck
Beitrag von: Chris_Worms am 23 Mai 2017, 15:37:25
Hi,

weiss jemand ob die Steckdosen oder die App irgendwelche Daten nach aussen zu TP-Link senden?

Gruß
Chris
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BWPower am 24 Mai 2017, 17:31:14
Hallo,

leider kann auch ich betätigen, dass die Readings power, current, voltage und total nicht mehr im FHEM ankommen. Es werden wohl nur die info-readings angezeigt. Per Kommandlinescript sind die realtime Angaben aber da. Woran kann das liegen. Bis zum 18.05. war noch alles da.

Gruß Ronny
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: anpfeiffer am 24 Mai 2017, 23:26:10
Ja genau so ist es auch bei mir. Ich habe wieder die Vorversion installiert und seitdem geht wieder alles.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 26 Mai 2017, 09:17:21
Ich habe die GitHub und SVN Version wieder auf den Stand vor der Änderung zurück gebracht.
Ich kann den Fehler leider nicht nach vollziehen.

@Mave: vlt. solltest Du Dein Netz optimieren!?
@All: wenn jemand den Retry implementieren kann, dann nur zu. Ich akzeptiere auf github gerne pull-requests für das Modul.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BWPower am 26 Mai 2017, 11:43:07
Danke. Tut jetzt wieder wunderbar.  ;D

Gruß Ronny
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: link611 am 14 Juli 2017, 09:34:04
Moin,

habe am Primeday zugeschlagen und mir, aufgrund der FHEM Unterstützung, auch eine geschossen.

Soweit läuft alles ziemlich gut, habe nur im Log folgende Log Einträge:

2017.07.14 09:25:30 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <on> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Get called. Relay state: 1, RSSI: -72
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Get end
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <off> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Get called. Relay state: 0, RSSI: -72
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Get end
2017.07.14 09:27:48 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:48 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Get called. Relay state: 0, RSSI: -72
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Get end
2017.07.14 09:32:53 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:55 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:55 3: TPLinkHS110: Drucker Set <?> called


teilweise passiert das alle paar Minuten, und eigtl. immer wenn ich die Dose schalte.
Sie schaltet dann auch sauber.


Hatte noch ein interessantes Phänomen:

seit die Steckdose im Fhem integriert war, reagierte dieser extrem träge wenn ich von lokal (VPN - dann auf lokale IP) gekommen bin, wenn ich von außen (externe IP über ReverseProxy) kam, lief alles wie gewohnt.
Habe daraufhin im Device Timeout auf 3 gesetzt, jetzt scheint es lokal besser zu sein.


Zur Konstellation:
FHEM auf rpi3 jessie (älterer updatestand)
HS100 in Fritzbox geblockt für Internetzugriff
FW HS100 1.1.3
disable 0
timeout 3
FHEM ist aktuell
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: link611 am 17 Juli 2017, 10:25:04
Zitat von: link611 am 14 Juli 2017, 09:34:04
Moin,

habe am Primeday zugeschlagen und mir, aufgrund der FHEM Unterstützung, auch eine geschossen.

Soweit läuft alles ziemlich gut, habe nur im Log folgende Log Einträge:

2017.07.14 09:25:30 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <on> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Get called. Relay state: 1, RSSI: -72
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:25:32 3: TPLinkHS110: Drucker Get end
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <off> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Get called. Relay state: 0, RSSI: -72
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:43 3: TPLinkHS110: Drucker Get end
2017.07.14 09:27:48 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:27:48 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:28:06 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Get called. Relay state: 0, RSSI: -72
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:43 3: TPLinkHS110: Drucker Get end
2017.07.14 09:32:53 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:55 3: TPLinkHS110: Drucker Set <?> called
2017.07.14 09:32:55 3: TPLinkHS110: Drucker Set <?> called


teilweise passiert das alle paar Minuten, und eigtl. immer wenn ich die Dose schalte.
Sie schaltet dann auch sauber.


Hatte noch ein interessantes Phänomen:

seit die Steckdose im Fhem integriert war, reagierte dieser extrem träge wenn ich von lokal (VPN - dann auf lokale IP) gekommen bin, wenn ich von außen (externe IP über ReverseProxy) kam, lief alles wie gewohnt.
Habe daraufhin im Device Timeout auf 3 gesetzt, jetzt scheint es lokal besser zu sein.


Zur Konstellation:
FHEM auf rpi3 jessie (älterer updatestand)
HS100 in Fritzbox geblockt für Internetzugriff
FW HS100 1.1.3
disable 0
timeout 3
FHEM ist aktuell

Ah,

hab's jetzt verstanden, das sind die Statusabfragen, die alle 5 Minuten anhand des Intervalls kommen. Habe das Intervall jetzt auf 86400 gesetzt (1x pro Tag)

Gibt es eine Möglichkeit die Abfrage komplett abzuschalten? Da ich die Steckdose ausschließlich über FHEM schalte.


dann noch 2 Feature-Requests:

- Cool wäre ein set toggle (da ich die Dose mit einem Dashbutton schalte), klar geht das mit einer IF auch, aber ein toggle wäre eleganter.
- ein set on-for-timer wäre auch eine sinnvolle Ergänzung.


Dann noch eine Frage:

- wo/wie kann man denn bei einer HS100 den Nachtmodus aktivieren?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 24 Juli 2017, 13:39:29
Zitat von: Volker Kettenbach am 12 Mai 2017, 07:17:31
Hallo Mave,

dasvProbkem habe ich auch hin und wieder.
Ich habe auch keine Ahnung, woran das liegt.
Ich könnte versuchen, den request bei einem timeout nochmal zu schicken.



Hallo Volker,

ich suche seit Wochen immer wieder nach einer Lösung für die sporadischen Probleme, dass die Steckdosen nicht erreichbar sind.
Mittlerweile habe ich sogar die Qualität meines WLAN über FritzRepeater stark verbessert. Dennoch funktionieren die beiden Steckdosen im Garten meistens nicht auf's erste Mal.
Meistens muss ich 4 bis 5 Mal klicken, damit die Steckdosen ein- bzw. ausschalten. Das hat leider zur Folge, dass bei einer zeitgesteuerten Schaltung die Gartenbeleuchtung abends dunkel bleibt.

Auch ein Timeout von 5 Sekunden bringt keine Besserung.

Hast Du noch eine Idee?

Vielen Dank.

Grüße Kai
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 25 Juli 2017, 08:04:09
Du könntest:

1. die Steckdosen mal pingen (über einen gewissen Zeitraum) und schauen, ob diese konstant erreichbar sind. Z.B. mittels smokeping o.ä. auf dem raspberry pi

2. die App von TPLink dazu nutzen zu testen, ob diese zuverlässiger schaltet

3. den Loglevel in FHEM erhöhen, um zu sehen, welche Meldungen im Fehlerfalle in der Logdatei stehen

Gruß
Volker

P.S.: für die zuverlässige Steuerung einer Gartenbeleuchtung halte ich solche Spielzeuggeräte wie diese Steckdosen nicht geeignet. WLAN ist viel zu anfällig. Ich würde Dir zu einem KNX Bus raten. Den verwende ich für so etwas und das ist 100% stabil auch mit FHEM.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 25 Juli 2017, 22:25:34
Volker,

gerade für so "unwichtige" Dinge wie die Gartenbeleuchtung halte ich die kostengünstigen TPLink Steckdosen für optimal.
Die Schaltung der Steckdosen per App läuft seit einem halben Jahr völlig problemlos.

Die "manuelle" Schaltung über FHEMWEB funktioniert mittlerweile (ich habe meine WLAN Repeater erneuert) ganz gut.
Nur bei einer zeitgesteuerten Schaltung über "at" kommt fast immer diese Fehlermeldung (TimeOut auf 5s):

2017.07.25 21:20:52 3: at_Gartenbeleuchtung_an: Couldn't connect to 192.168.1.91:9999: IO::Socket::INET: connect: timeout

Couldn't connect to 192.168.1.92:9999: IO::Socket::INET: connect: timeout

2017.07.25 21:20:52 1: Perfmon: possible freeze starting at 21:20:42, delay is 10.211


Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 26 Juli 2017, 06:22:43
Dass da eine Timeout Auftritt ist klar.
Interessant wäre zu wissen, was Ping sagt.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 31 Juli 2017, 06:54:33
Volker,

ich habe jetzt mal 2 Tage lang einen Dauerping auf meine TPLink Dosen laufen lassen.
Kein einziger Ping ging verloren, Antwortrate 100%

Die Antwortzeiten schwanken allerdings erheblich - zwischen 4 ms und 100 ms.

Seltsam ist nur Folgendes:
Ein manuelles schalten über die Kasa App oder auch über FHEM funktioniert so gut wie immer.
Aber sobald ich die Dosen zeitgesteuert über einen at Befehl schalten lasse, funktioniert es meistens nicht.

Könntest Du die Schaltung der Dosen in Deinem Modul eventuell etwas "robuster" gestalten?
Eventuell mehrmals einen on oder off Befehl senden? Eventuell länger auf eine Rückmeldung warten?

Gefühlt betrifft es nur die Dosen, die über einen WLAN Repeater angebunden sind und da vermutlich die Antwortzeiten etwas länger sind.

Vielen Dank.

Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: prodigy7 am 04 August 2017, 14:11:09
Ich überlege mir, die HS110 zuzulegen weil die recht günstig ist. Kurz Off-Topic Frage: Wenn die Steckdose den Strom verliert, kehrt sie in den letzten Zustand zurück vor Stromverlust? D.h. An wenn sie vorher An war, Aus wenn sie vorher Aus war?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: magenbrot am 16 August 2017, 20:31:48
Zitat von: prodigy7 am 04 August 2017, 14:11:09
Wenn die Steckdose den Strom verliert, kehrt sie in den letzten Zustand zurück vor Stromverlust? D.h. An wenn sie vorher An war, Aus wenn sie vorher Aus war?

nein, die ist dann leider aus.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 16 September 2017, 12:43:47
Hallo, ich habe seit kurzen 3 von den HS100 Steckern. Vorerst hatte ich eine und die hat immer gut geschaltet. Jetzt habe ich noch 2 dazu und hatte Probleme, dass nicht immer alle ein bzw. ausgeschaltet werden.

Mir ist auf gefallen, dass es wohl an der Abarbeitung liegt, wie Fhem die Befehle sendet.

So gibt es keine Probleme:


fhem ("set TPLINK_SD_LampeFlurStehlampe off; set TPLINK_SD_LampeSofaFensterbank off; set TPLINK_SD_LampeWZBuntSchrank off");


..und so macht es nur Probleme:

fhem ("set TPLINK_SD_LampeFlurStehlampe off");
fhem ("set TPLINK_SD_LampeSofaFensterbank off");
fhem ("set TPLINK_SD_LampeWZBuntSchrank off");



Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 20 September 2017, 11:00:44
Hi,
die Dosen gibt es ab 18 Uhr bei Amazon im Angebot und Dank Google bin ich auf das Modul gestoßen ;-)

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: ChristianR am 20 September 2017, 11:21:10
Zitat von: CBSnake am 20 September 2017, 11:00:44
Hi,
die Dosen gibt es ab 18 Uhr bei Amazon im Angebot und Dank Google bin ich auf das Modul gestoßen ;-)

Grüße
Achim

Hi Achim,

das klingt interessant!
Woher hast du die Info und weißt du schon den Angebotspreis?

Update:
Ok, hab's gefunden!
Gruß Christian
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 20 September 2017, 11:44:04
Sehr gut, hast es ja schon gefunden :-)
Ich schau mir mehrmals täglich an, was es diese Woche im Angebot gibt (Smarthome Woche) und schau was FHEM kompatible ist.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 21 September 2017, 20:08:46
Hi,

angekommen, die mega APP (80MB  :o) installiert, ins Wlan gepackt und gleich aus dem Internet ausgesperrt. Perl Module haben natürlich gefehlt ;-) musste mich dann erstmal mit CPAN angooglen. Klappt aber nun und tut was sie soll :-)
Danke fürs Modul  ;)

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 22 September 2017, 07:13:05
Ich habe schlechte Erfahrungen mit den TP-Link Dosen an FHEM gemacht.
Ca. 50% aller Schaltvorgänge funktionieren nicht.

Die Steuerung der Dosen über die Kasa App ist sehr träge. Von unterwegs Bedarf es manchmal mehrerer Neustarts der App, damit die Dosen überhaupt Remote gesteuert werden können. Optik und Funktionalität der Kasa App ist Geschmacksache - mein Geschmack ist es nicht. Sie wird zwar immer mal wieder per Update modifiziert, an der Stabilität wird aber nichts mehr verbessert.

Mein WLAN ist inzwischen optimiert und läuft einwandfrei.
In FHEM habe ich schon alles Mögliche ausprobiert und habe mittlerweile sogar 2 Schaltvorgänge mit sleep 2 getrennt hintereinander angeordnet und trotzdem schalten die Dosen immer mal wieder nicht in den gewünschten Zustand.

Ich schalte damit nur noch ein paar Lampen im Garten, weil es da nicht so tragisch ist, wenn die Lampen mal abends nicht angehen oder die ganze Nacht an bleiben, weil der Ausschaltvorgang mal wieder nicht funktioniert hat.

Ich denke, für 10 Euro mehr, sind die HomeMatic Steckdosen die deutlich bessere Wahl.

Grüße Mave
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 22 September 2017, 08:50:33
Moin,

dann bin ich mal gespannt :-) Die App werde ich eh nicht nutzen, das soll FHEM erledigen. Bisher hab ich nur ZWAVE im Einsatz die sind halt leider nicht günstig. Die TP-Link hätte ich ohne Angebot auch nicht gekauft  ;D

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 23 September 2017, 05:54:55
Zitat von: stera am 16 September 2017, 12:43:47
Hallo, ich habe seit kurzen 3 von den HS100 Steckern. Vorerst hatte ich eine und die hat immer gut geschaltet. Jetzt habe ich noch 2 dazu und hatte Probleme, dass nicht immer alle ein bzw. ausgeschaltet werden.

Mir ist auf gefallen, dass es wohl an der Abarbeitung liegt, wie Fhem die Befehle sendet.

So gibt es keine Probleme:


fhem ("set TPLINK_SD_LampeFlurStehlampe off; set TPLINK_SD_LampeSofaFensterbank off; set TPLINK_SD_LampeWZBuntSchrank off");


..und so macht es nur Probleme:

fhem ("set TPLINK_SD_LampeFlurStehlampe off");
fhem ("set TPLINK_SD_LampeSofaFensterbank off");
fhem ("set TPLINK_SD_LampeWZBuntSchrank off");



Moin,

ich muss meine Aussage etwas zurücknehmen. Ich hatte auch mit der zweiten Variante noch echt Probleme mit den Schaltvorgängen. Mir ist aber auch noch was aufgefallen.
Ich habe eine FritzBox7490. In der Netzwerkübersicht, werden auch alle 3 Dosen angezeigt, verhalten sich aber anders ->

TP-HS100-LampeFlurStehlampe
   WLAN, 2,4 GHz   Details   

TP-HS100-LampeWZBuntSchrank
   WLAN, 2,4 GHz   Details   

TP-HS100-LampeWZFensterbank
   WLAN, 2,4 GHz, 72 Mbit/s   Details   


Bei der letzten "TP-HS100-LampeWZFensterbank" wird immer die Signalstärke angezeigt, bei den anderen neueren Dosen nicht. Warum, keine Ahnung. Die anderen beiden Dosen verschwinden auch ab und zu, ob diese sich in Standby legen. Genau dann machen sie beim ersten Schaltvorgang diese An/Aus Schaltprobleme.
Habe dann in dem Moment auch nochmal ein Pingtest gemacht und die ersten Ansprechzeiten lagen bei über 100ms, der zweite,dritte Wert bei 4ms.

Jetzt habe ich auf alle 3 Dosen ein Presencemodul mit Pingabfrage laufen. Seitdem funktionieren die Dosen Störungsfrei..
Es gibt ja noch eine Attr. INTERVAL, die hatte ich bisher noch nicht angepasst.

Internals:
   ADDRESS    192.168.10.119
   CHANGED
   DEF        lan-ping 192.168.10.119 60
   MODE       lan-ping
   NAME       TPLinkHS110_FlurStehlampe
   NOTIFYDEV  global
   NR         58
   NTFY_ORDER 50-TPLinkHS110_FlurStehlampe
   STATE      present
   TIMEOUT_NORMAL 60
   TIMEOUT_PRESENT 60
   TYPE       PRESENCE
   Helper:
     DBLOG:
       state:
         myDbLog:
           TIME       1506130021.76567
           VALUE      present
   READINGS:
     2017-09-22 13:45:58   model           lan-ping
     2017-09-23 05:52:17   presence        present
     2017-09-23 05:52:17   state           present
   helper:
     CURRENT_STATE present
Attributes:
   devStateIcon present:WLAN_Status.1 absent:WLAN_Status.0
   event-on-change-reading .*
   room       Netzwerk


Evtl. hat Volker eine Lösung irgendwann mal für uns parat. Denke dieses pingen, wird den Standbyverbrauch der Dosen auch erhöhen.

Gruß,
SteRa

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 23 September 2017, 07:33:01
stera,

wenn eine Übertragungsrate MBit/s angezeigt wird, heißt das nach meinem Verständnis, dass Deine Dose mit dem WLAN Deiner FritzBox verbunden ist. Die anderen beiden Dosen ohne Übertragungsrate müssten demnach mit einem Repeater verbunden sein.

Der Dauerping ist ein guter Hinweis, vielen Dank. Ich habe nämlich auch schon die Beobachtung gemacht, dass wenn ein Schaltvorgang mal funktioniert hat, dass dann alle darauffolgenden auch funktionieren. Man könnte wirklich meinen, die Dose geht mit der Zeit in einen Sleepmodus und das Aufwecken durch FHEM scheint mal mehr und mal weniger gut zu funktionieren.

Wie gesagt, braucht bei mir die Kasa App auch manchmal ewig lange, bis sie einzelne Dosen erreichen kann. Könnte also ein generelles Aufweckproblem aus dem Sleepmodus sein.

Grüße Mave

PS: Ich hatte Volker auch schon mal gebeten, das TP-Link Modul dahingehend robuster zu machen, dass es hartnäckiger und länger an einem Ein- bzw. Ausschaltvorgang arbeitet. Aber vielleicht ist das nicht so einfach zu realisieren, keine Ahnung.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 23 September 2017, 13:15:15
Zitat von: Mave am 23 September 2017, 07:33:01
stera,

wenn eine Übertragungsrate MBit/s angezeigt wird, heißt das nach meinem Verständnis, dass Deine Dose mit dem WLAN Deiner FritzBox verbunden ist. Die anderen beiden Dosen ohne Übertragungsrate müssten demnach mit einem Repeater verbunden sein.

Der Dauerping ist ein guter Hinweis, vielen Dank. Ich habe nämlich auch schon die Beobachtung gemacht, dass wenn ein Schaltvorgang mal funktioniert hat, dass dann alle darauffolgenden auch funktionieren. Man könnte wirklich meinen, die Dose geht mit der Zeit in einen Sleepmodus und das Aufwecken durch FHEM scheint mal mehr und mal weniger gut zu funktionieren.

Wie gesagt, braucht bei mir die Kasa App auch manchmal ewig lange, bis sie einzelne Dosen erreichen kann. Könnte also ein generelles Aufweckproblem aus dem Sleepmodus sein.

Grüße Mave

PS: Ich hatte Volker auch schon mal gebeten, das TP-Link Modul dahingehend robuster zu machen, dass es hartnäckiger und länger an einem Ein- bzw. Ausschaltvorgang arbeitet. Aber vielleicht ist das nicht so einfach zu realisieren, keine Ahnung.

Hallo Mave,

die sind nicht über einen Repeater verbunden sondern alle direkt.. Mich wundert das auch..

Gruß,
SteRa
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 23 September 2017, 13:26:36
Hier auch nochmal die Logauswertung der Steckdosen mit dem PresenceModul. Das schalten funktioniert immer noch tadellos, aber der ping reist komischerweise bei den beiden neueren auch mal ab.
Die Entfernung zu den Dosen, ist ziemlich gleich!


2017-09-22_13:44:45 present
2017-09-22_22:23:28 absent
2017-09-22_22:24:31 present
2017-09-22_22:54:10 absent
2017-09-22_22:55:13 present
2017-09-23_01:48:58 absent
2017-09-23_01:50:01 present
2017-09-23_02:25:58 absent
2017-09-23_02:27:01 present
2017-09-23_04:41:55 absent
2017-09-23_04:42:58 present
#TPLinkHS110_WZBunt:state:::



2017-09-22_13:44:45 present
2017-09-23_00:58:28 absent
2017-09-23_00:59:31 present
2017-09-23_03:25:58 absent
2017-09-23_03:27:01 present
#TPLinkHS110_FlurStehlampe:state:::



Bei der garnix! War die allererste Dose, die ich bestellt habe.

2017-09-22_13:46:15 present
#TPLinkHS110_WZFensterbank:state:::
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 24 September 2017, 11:36:26
Ich kann die ganzen Erreichbarkeitsprobleme nicht nach vollziehen und daher auch schlecht helfen.
Wie ich aber auch schon vormals erwähnt hatte: wenn ich vernünftige Informationen bekomme, kann ich ggf. helfen.

Zitat von: Mave am 23 September 2017, 07:33:01
Der Dauerping ist ein guter Hinweis, vielen Dank. Ich habe nämlich auch schon die Beobachtung gemacht, dass wenn ein Schaltvorgang mal funktioniert hat, dass dann alle darauffolgenden auch funktionieren. Man könnte wirklich meinen, die Dose geht mit der Zeit in einen Sleepmodus und das Aufwecken durch FHEM scheint mal mehr und mal weniger gut zu funktionieren.
Wie gesagt, braucht bei mir die Kasa App auch manchmal ewig lange, bis sie einzelne Dosen erreichen kann. Könnte also ein generelles Aufweckproblem aus dem Sleepmodus sein.

Das ist ein guter Hinweis.
Ich setze die HS110 ein und frage diese 1x pro Minute ab (Leistung usw.).
Evtl. kommt das einen Dauerping gleich.
Nicht-Erreichbarkeit ist bei mir kein Thema.

Zitat von: Mave am 23 September 2017, 07:33:01
PS: Ich hatte Volker auch schon mal gebeten, das TP-Link Modul dahingehend robuster zu machen, dass es hartnäckiger und länger an einem Ein- bzw. Ausschaltvorgang arbeitet. Aber vielleicht ist das nicht so einfach zu realisieren, keine Ahnung.

Auch hier kann ich nur darauf verweisen, dass ich das nicht nach vollziehen kann.
Neben dem oben erwähnten Thema Dauerping ist noch zu sagen:
WLAN ist keine Technik, die für eine verlässliche Realtime-Anwendung tauglich ist.
Fritzboxen sind teilweise stark fehlerbehaftete Consumer-Produkte.

Wer sein Haus stabil vernetzen will, sollte erstens KNX verwenden und zweitens kabelgebundenes Ethernet mit Switches, die Stabiltät hergeben z.B. von Cisco.
Wenn Drahtlostechnik gefordert ist, gibt es besseres als WLAN.
Und WLAN eingesetzt wird, dann gibt es auch hier Access-Points (Cisco, Unify), die deutlich bessere Ergebnisse erzielen als Consumer-Produkte.

Ich setze die o.g. Techniken von Cisco und 1-2 anderen soliden Herstellern in 3 Häusern ein und steuere darüber fast 100 Geräte.
Alles läuft 100% verlässlich, auch die HS110.


Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: prodigy7 am 24 September 2017, 14:06:07
In meinem fhem Log taucht TPLinkHS110: Keller.Waschkueche.Device.Waschmaschine2 Set <?> calledauf wenn ich die Seite eines entsprechenden Gerätes im FHEM Web Interface aufrufe. Ist das Kunst oder kann das weg?

Edit: Und noch eine Frage -> Bei mir wird derzeit kein Logfile geschrieben. Bei meiner Revolt bekomme ich ein Logfile im Format 2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner P:   0.0 E:  20.73 V: 229 C:   0.00 F: 50 Pf: 0.00
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner voltage: 229
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner current: 0
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner frequency: 50
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner power: 0
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner pf: 0
2017-09-24_14:12:03 Keller.Waschkueche.Device.Trockner energy: 20.73
. Ginge das auch noch für die TP-Link, dass man daraus eine grafische Auswertung machen kann mit einem Plot?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 24 September 2017, 20:00:06
Hi,

zum Thema Log:

Klar musst du dir halt selber anlegen

define FileLog_Keller.Waschkueche.Device.Waschmaschine2 FileLog ./log/Keller.Waschkueche.Device.Waschmaschine2-%Y-%m.log

Könnte aber mit deinen .... im Namen kolidieren ;-) probieres aus

auch das

./log/

solltest du vorher mit dem Logfile des Trockners abgleichen ;-)

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: jhohmann am 04 Oktober 2017, 19:45:01
Halllo zusammen, ich nutze ein TPLinkHS100 schon seit einiger Zeit, um eine Lampe programmatisch zu schalten.
Das geht bei mir auch soweit gut.
Nun will ich damit aber einen PC vom Strom trennen können.
Jetzt dachte ich mir, wenn ich den TPLink einschalte, kann ich auch mittels WOL den PC automatisch starten. Hat erstmal nicht geklappt, da WOL etwas schwerfällig einzurichten war (BIOS, Windows-Netz-Treiber, Programm, das das kann, ...).
Nachdem ich diese Hürde genommen habe, habe ich mich gewundert, warum das notify auf meinem Device TPLinkHS100 nicht funktioniert.
Dann musste ich feststellen, dass FHEM anscheinend nicht in Echt-Zeit mit bekommt, dass ich den Schalter betätigt habe, sondern erst dann, wenn das nächste Intervall für die Kommunikation wieder rum ist.
Default sind hier 300 Sekunden.
Jetzt meine Frage: Kann ich das Intervall auf 1 Sekunde (oder 2) drücken? Macht das Probleme bei der Auslastung von FHEM? Bläst mir das das Log voll?
Oder gibt es da andere Möglichkeiten?
Eventuell ist auch dieser Schalter für meinen Zweck nicht das richtige. Kennt jemand Alternativen?
Danke
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 05 Oktober 2017, 07:31:12
Hast du einen normalen PC oder Laptop? Beim normalen PC kannst du doch im bios das so einstellen, das er automatisch angeht, sobald die tp Link Strom schaltet.

Ich habe ein Laptop, schalte alle Zusatzgeräte mit einer tp Link weg. Der Laptop hat immer Strom und fährt in Energie sparen. Mit WOL wecke ich manchmal per fern auf.

Gruß SteRa



Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: jhohmann am 06 Oktober 2017, 15:47:23
Ich nutze einen normalen PC.
Nach einigem Rumprobieren scheine ich die richtige Option im BIOS gefunden zu haben, ich weiß aber nicht mehr welche :).
Damit war die ganze Sucherei nach WOL für die Füße  >:(. Aber man lernt dadurch ja auch was.
Danke an SteRa für den Tipp.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: stera am 06 Oktober 2017, 17:54:33
Zitat von: jhohmann am 06 Oktober 2017, 15:47:23
Ich nutze einen normalen PC.
Nach einigem Rumprobieren scheine ich die richtige Option im BIOS gefunden zu haben, ich weiß aber nicht mehr welche :).
Damit war die ganze Sucherei nach WOL für die Füße  >:(. Aber man lernt dadurch ja auch was.
Danke an SteRa für den Tipp.
"Restore on AC/Power Loss" heißt das meistens ;-)

Gesendet von meinem SM-G930F mit Tapatalk

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 27 November 2017, 16:13:55
Hi,

kaum bin ich ne Woche weg spinnt die Dose ;-( Meine Frau meldet Fehler bei den Lampen, verantwortlich ist evtl die TP Link, diese füllt den Log mit

json-decoding failed. Problem decoding getting statistical data

Oder doch ein Netzwerkproblem welches auch die TP Link Spinnen lässt?

Mehr Infos könnte ich nachher liefern wenn ich mit nem PC aufs system komme.

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110
Beitrag von: Black7king am 28 November 2017, 07:56:59
funktioniert das Modul auch mit dem Großen Bruder der beiden?

Den TP-Link RE270K AC750
https://www.amazon.de/gp/product/B01N4WMSL1/ref=ask_ql_qh_dp_hza
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BM030 am 29 November 2017, 06:36:45
Hallo Volker,

ist es möglich Deinen Code um auch LED Lampen zu erweitern?

Hier ist ein ähnliches Modul für Homebridge: https://github.com/plasticrake/homebridge-tplink-smarthome

würde mich freuen

Gruß Gordon
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Lawrence am 29 November 2017, 23:31:57
Hi,

I have bought one of these plugs in the UK and its model name is HS110(UK) which means the meter readings are ignored.

I have tried to put a patch on your Github page to fix this but failed, I am not authorised.

I tried to replace line 128 that reads:
   if ($json->{'system'}->{'get_sysinfo'}->{'model'} eq "HS110(EU)") {
to:
   if ($json->{'system'}->{'get_sysinfo'}->{'model'} =~ /HS110[(][A-Z]{2}[)]/) {
So it should work on any two character region version of this plug.

Regards,
Lawrence

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 November 2017, 08:31:05
Hi Lawrence,

thanks for submitting this code.
I added it to github a few seconds ago.

The fhem repository will be updated next day (afaik).

Concerning patches: you could have either sent me a patch-file (diff) or create a PullRequest on GitHub which can be done here:
https://github.com/kettenbach-it/FHEM-TPLink-HS110/pulls

by cloning the repository, modifying your branch and submitting the changes as a PpullRequest.

Best regards
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Knuspertaler am 01 Dezember 2017, 10:36:43
Nach einspielen des heutigen Updates, kann das Modul bei mir nicht mehr geladen werden (HS100) ...

2017.12.01 10:28:33 1: PERL WARNING: Subroutine TPLinkHS110_Initialize redefined at ./FHEM/24_TPLinkHS110.pm line 40.
2017.12.01 10:28:33 1: PERL WARNING: Subroutine TPLinkHS110_Define redefined at ./FHEM/24_TPLinkHS110.pm line 58.
2017.12.01 10:28:33 1: PERL WARNING: "my" variable $socket masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 131.
2017.12.01 10:28:33 1: PERL WARNING: "my" variable $command masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 159.
2017.12.01 10:28:33 1: PERL WARNING: "my" variable $c masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 160.
2017.12.01 10:28:33 1: PERL WARNING: "my" variable $data masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 168.
2017.12.01 10:28:33 1: PERL WARNING: "my" variable $hash masks earlier declaration in same scope at ./FHEM/24_TPLinkHS110.pm line 251.
2017.12.01 10:28:33 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
syntax error at ./FHEM/24_TPLinkHS110.pm line 128, near ")) "
Global symbol "$realtimejcommand" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 130.
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 194.
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 195.
Global symbol "$name" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 195.
syntax error at ./FHEM/24_TPLinkHS110.pm line 196, near "}"
Can't use global @_ in "my" at ./FHEM/24_TPLinkHS110.pm line 202, near "= @_"
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 203.
syntax error at ./FHEM/24_TPLinkHS110.pm line 245, near "}"
Can't use global @_ in "my" at ./FHEM/24_TPLinkHS110.pm line 251, near "= @_"
./FHEM/24_TPLinkHS110.pm has too many errors.

2017.12.01 10:28:33 0: syntax error at ./FHEM/24_TPLinkHS110.pm line 128, near ")) "
Global symbol "$realtimejcommand" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 130.
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 194.
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 195.
Global symbol "$name" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 195.
syntax error at ./FHEM/24_TPLinkHS110.pm line 196, near "}"
Can't use global @_ in "my" at ./FHEM/24_TPLinkHS110.pm line 202, near "= @_"
Global symbol "$hash" requires explicit package name at ./FHEM/24_TPLinkHS110.pm line 203.
syntax error at ./FHEM/24_TPLinkHS110.pm line 245, near "}"
Can't use global @_ in "my" at ./FHEM/24_TPLinkHS110.pm line 251, near "= @_"
./FHEM/24_TPLinkHS110.pm has too many errors.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: bjoernbo am 01 Dezember 2017, 15:15:33
Dem schließe ich mich an !  :-\

ZitatMessages collected while initializing FHEM:
configfile: Cannot load module TPLinkHS110

Autosave deactivated
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: pte am 01 Dezember 2017, 18:01:07
muss ich ebenfalls bestätigen :(
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: pumabaer am 01 Dezember 2017, 18:03:48
Ich hatte vorhin nach dem Update von FHEM das gleiche Problem, FHEM wieder hergestellt aus dem Backup und dann lief es wieder.

Ich mache erstmal kein Update
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 01 Dezember 2017, 23:15:19
Modul lässt sich nicht mehr laden... :(
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 02 Dezember 2017, 06:47:50
Fehler ist gefunden und behoben
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 02 Dezember 2017, 09:00:41
Super, vielen Dank.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: FHEM-Wohnung am 15 Dezember 2017, 17:28:30
Cannot load module TPLinkHS110  :(
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: heisly am 23 Dezember 2017, 17:20:13
Wollte die Tage testweise eine HS110 in fhem einbinden und habe das gleiche Problem:
Messages collected while initializing FHEM:
configfile: Cannot load module TPLinkHS110


Kann es sein, dass ich noch die benötigten Module nachinstallieren muss?

Edit:
Ja so einfach ist es, wer lesen kann ist...

sudo apt-get install libio-socket-timeout-perl


und schon läufts!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: steff555 am 28 Dezember 2017, 00:08:13
Zitat von: CBSnake am 27 November 2017, 16:13:55
Hi,

kaum bin ich ne Woche weg spinnt die Dose ;-( Meine Frau meldet Fehler bei den Lampen, verantwortlich ist evtl die TP Link, diese füllt den Log mit

json-decoding failed. Problem decoding getting statistical data

Oder doch ein Netzwerkproblem welches auch die TP Link Spinnen lässt?

Mehr Infos könnte ich nachher liefern wenn ich mit nem PC aufs system komme.

Grüße
Achim

Hallo Achim,
hast Du bzgl. dieser Meldung etwas in Erfahrung bringen können? Ich bekomme die auch immer wieder - jedoch habe ich die Vermutung, es tritt NICHT sporadisch auf, sondern immer nach einer gewissen Zeit (vermute so 26 bis 27 Tage). Dann kommt die Meldung ein paar Tage lang und danach fängt sich das wieder.
Für mich hat es den Anschein, als ob hier eine Variable "überläuft" (was ich mir bei Perl zwar nicht nicht vorstellen kann - aber Meldung deutet ja auf json hin und das kenne ich quasi gar nicht).
Wäre super falls Du was hier eine Lösung gefunden hast, bzw. woran es bei Dir lag - würde mich sehr freuen, wenn Du das hier posten könntest.

Danke & viele Grüße
Steff
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CBSnake am 28 Dezember 2017, 04:56:24
Guten Morgen,

Nicht wirklich, ich hab im Anschluss mein Netzwerk neu aufgebaut, der DHCP Server war bisher die Fritzbox der Nachbarin, war die nicht erreichbar lief das halbe smarthome Amok ;-) jetzt übernimmt den DHCP Job eine Fritzbox direkt in meinem Netzwerk.

Grüße
Achim
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Mave am 28 Dezember 2017, 23:48:03
Hab ich jetzt auch im Log stehen:

json-decoding failed. Problem decoding getting statistical data


Außerdem heute zum ersten Mal folgendes Phänomen:
TPLink Dose wurde zeitgesteuert um 23 Uhr ausgeschaltet. Eingesteckt Lampe ging auch brav aus.

In FHEM erscheint die Dose aber noch als on.
Dabei fällt auf: das Reading state ist off, das Internal STATE ist on.

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 04 Januar 2018, 11:24:02
Für die Ansteuerung meiner WLAN-Steckdosen per UI habe ich eine "toggle"-Funktion vermisst. Deshalb habe ich die mal selbst in das Modul "reingebastelt".
Sind letztlich nur ein paar Zeilen Code. Vielleicht mag der Modulautor sich die mal ansehen und ggf. in die offizielle Version übernehmen?

Einschränkung: Es wird "nur" in FHEM selbst ermittelt, wie der aktuelle Status vorm Toggle ist. Wenn die Steckdose kurz zuvor manuell geschaltet wurde und FHEM das noch nicht mitbekommen hat, würde genau falsch geschaltet, also gar nichts passieren. Wollte man es perfekt machen, müsste man erst den Status bei der Steckdose abfragen und dann schalten. Aber das war mir zu aufwändig, da für meinen Anwendungsfall überflüssig (ich schalte die praktisch nie manuell).

Ich habe leider auf die Schnelle keine Software für ein Diff oder einen PullRequest. Deshalb poste ich hier meine geänderte Version der Funktion TPLinkHS110_Set bezogen auf 24_TPLinkHS110.pm  15532 2017-12-01 07:31:38Z vk


#####################################
sub TPLinkHS110_Set($$)
{
my ( $hash, @a ) = @_;
  my $name= $hash->{NAME};
return "Device disabled in config" if ($attr{$name}{"disable"} eq "1");
    Log3 $hash, 3, "TPLinkHS110: $name Set <". $a[1] ."> called";
return "Unknown argument $a[1], choose one of on off toggle " if($a[1] ne "on" & $a[1] ne "off" & $a[1] ne "toggle");

my $command;
if($a[1] eq "on") {
$command = '{"system":{"set_relay_state":{"state":1}}}';
}
if($a[1] eq "off") {
$command = '{"system":{"set_relay_state":{"state":0}}}';
}
if($a[1] eq "toggle") {
if (ReadingsVal($name,"state", "???") eq "off") {
$command = '{"system":{"set_relay_state":{"state":1}}}';
}
if (ReadingsVal($name,"state", "???") eq "on") {
$command = '{"system":{"set_relay_state":{"state":0}}}';
}
}
my $remote_host = $hash->{HOST};
my $remote_port = 9999;
my $c = encrypt($command);
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT})
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($c);
my $data;
my $retval = $socket->recv($data,8192);
$socket->close();
unless( defined $retval) { return undef; }
$data = decrypt(substr($data,4));
my $json;
eval {
$json = decode_json($data);
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};

        if ($json->{'system'}->{'set_relay_state'}->{'err_code'} eq "0") {
TPLinkHS110_Get($hash,"");

} else {
                return "Command failed!";
        }
return undef;
}
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 09 Januar 2018, 09:51:20
Servus Brockmann,

ich baue das ein und stelle ein neues Modul in Github bzw. FHEM bereit.
Bitte etwas Geduld.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: CoolTux am 09 Januar 2018, 10:10:35
Verstehe nicht wieso man das Rad zweimal erfinden muß.

https://wiki.fhem.de/wiki/DevelopmentModuleAPI#SetExtensions
https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/SetExtensions.pm



Grüße
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 09 Januar 2018, 12:10:57
Zitat von: CoolTux am 09 Januar 2018, 10:10:35
Verstehe nicht wieso man das Rad zweimal erfinden muß.

https://wiki.fhem.de/wiki/DevelopmentModuleAPI#SetExtensions
https://svn.fhem.de/trac/browser/trunk/fhem/FHEM/SetExtensions.pm
Danke für den Hinweis. Bin nun mal kein Entwickler und mit solchen Mechanismen nicht vertraut. Aber Recht hast Du und neben toggle bekommt man gleich noch einige andere Befehle gratis dazu.
Hier also die Variante mit setExtensions (bezogen auf 24_TPLinkHS110.pm  15532 2017-12-01 07:31:38Z vk:
Diesmal die komplette Datei, wobei außer in der Set-Funktion nur ganz oben eine use-Zeile ergänzt wurde.
Ggf. sollte in der HTML-Doku noch erwähnt werden, dass das Modul die setExtensions-Befehle unterstützt?

################################################################
# $Id: 24_TPLinkHS110.pm 15532 2017-12-01 07:31:38Z vk $
#
#  Copyright notice
#
#  (c) 2016 Copyright: Volker Kettenbach
#  e-mail: volker at kettenbach minus it dot de
#
#  Description:
#  This is an FHEM-Module for the TP Link TPLinkHS110110/110
#  wifi controlled power outlet.
#  It support switching on and of the outlet as well as switching
#  on and of the nightmode (green led off).
#  It supports reading several readings as well as the
#  realtime power readings of the HS110.
#
#  Requirements
Perl Module: IO::Socket::INET
Perl Module: IO::Socket::Timeout

In recent debian based distributions IO::Socket::Timeout can
be installed by "apt-get install libio-socket-timeout-perl"
In older distribution try "cpan IO::Socket::Timeout"
#
#  Origin:
#  https://github.com/kettenbach-it/FHEM-TPLink-HS110
#
################################################################

package main;

use strict;
use warnings;
use IO::Socket::INET;
use IO::Socket::Timeout;
use JSON;
use SetExtensions;

#####################################
sub TPLinkHS110_Initialize($)
{
  my ($hash) = @_;
 
  $hash->{DefFn}      = "TPLinkHS110_Define";
  $hash->{ReadFn}     = "TPLinkHS110_Get";
  $hash->{SetFn}      = "TPLinkHS110_Set";
  $hash->{UndefFn}    = "TPLinkHS110_Undefine";
  $hash->{DeleteFn}   = "TPLinkHS110_Delete";
  $hash->{AttrFn}     = "TPLinkHS110_Attr";
  $hash->{AttrList}   = "interval ".
"disable:0,1 " .
"nightmode:on,off " .
  "timeout " .
                        "$readingFnAttributes";
}

#####################################
sub TPLinkHS110_Define($$)
{
  my ($hash, $def) = @_;
  my $name= $hash->{NAME};

  my @a = split( "[ \t][ \t]*", $def );
  return "Wrong syntax: use define <name> TPLinkHS110 <hostname/ip> " if (int(@a) != 3);

  $hash->{INTERVAL}=300;
  $hash->{TIMEOUT}=1;
  $hash->{HOST}=$a[2];
  $attr{$name}{"disable"} = 0;
  # initial request after 2 secs, there timer is set to interval for further update
  InternalTimer(gettimeofday()+2, "TPLinkHS110_Get", $hash, 0);
   
  Log3 $hash, 3, "TPLinkHS110: $name defined.";
 
  return undef;
}


#####################################
sub TPLinkHS110_Get($$)
{
my ($hash) = @_;
my $name = $hash->{NAME};
return "Device disabled in config" if ($attr{$name}{"disable"} eq "1");
  RemoveInternalTimer($hash);   
InternalTimer(gettimeofday()+$hash->{INTERVAL}, "TPLinkHS110_Get", $hash, 1);
$hash->{NEXTUPDATE}=localtime(gettimeofday()+$hash->{INTERVAL});

my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$mon++;
$year += 1900;

my $remote_host = $hash->{HOST};
my $remote_port = 9999;
my $command = '{"system":{"get_sysinfo":{}}}';
my $c = encrypt($command);
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT} )
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($c);
my $data;
my $retval = $socket->recv($data,8192);
$socket->close();
unless( defined $retval) { return undef; }
$data = decrypt(substr($data,4));
my $json;
eval {
$json = decode_json($data);
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};

Log3 $hash, 3, "TPLinkHS110: $name Get called. Relay state: $json->{'system'}->{'get_sysinfo'}->{'relay_state'}, RSSI: $json->{'system'}->{'get_sysinfo'}->{'rssi'}";
readingsBeginUpdate($hash);
foreach my $key (sort keys %{$json->{'system'}->{'get_sysinfo'}}) {
readingsBulkUpdate($hash, $key, $json->{'system'}->{'get_sysinfo'}->{$key});
        }
if ($json->{'system'}->{'get_sysinfo'}->{'relay_state'} == 0) {
readingsBulkUpdate($hash, "state", "off");
}
if ($json->{'system'}->{'get_sysinfo'}->{'relay_state'} == 1) {
readingsBulkUpdate($hash, "state", "on");
}
# If the device is a HS110, get realtime data:
if ($json->{'system'}->{'get_sysinfo'}->{'model'} eq "HS110(EU)" or $json->{'system'}->{'get_sysinfo'}->{'model'} eq "HS110(UK)") {
my $realtimejcommand='{"emeter":{"get_realtime":{}}}';
my $rc = encrypt($realtimejcommand);
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT} )
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($rc);
my $rdata;
$retval = $socket->recv($rdata,8192);
$socket->close();
unless( defined $retval) { return undef; }
$rdata = decrypt(substr($rdata,4));
my $realtimejson;
if (length($rdata)==0) {
Log3 $hash, 1, "TPLinkHS110: $name: Received zero bytes of realtime data. Cannot process realtime data";
return;
}
eval {
$realtimejson = decode_json($rdata);
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};
foreach my $key2 (sort keys %{$realtimejson->{'emeter'}->{'get_realtime'}}) {
readingsBulkUpdate($hash, $key2, $realtimejson->{'emeter'}->{'get_realtime'}->{$key2});
}
Log3 $hash, 3, "TPLinkHS110: $name Device is an HS110. Got extra realtime data: $realtimejson->{'emeter'}->{'get_realtime'}->{'power'} Watt, $realtimejson->{'emeter'}->{'get_realtime'}->{'voltage'} Volt, $realtimejson->{'emeter'}->{'get_realtime'}->{'current'} Ampere";
# Get Daily Stats
my $command = '{"emeter":{"get_daystat":{"month":'.$mon.',"year":'.$year.'}}}';
my $c = encrypt($command);
$socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT} )
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($c);
my $data;
$retval = $socket->recv($data,8192);
$socket->close();
unless( defined $retval) { return undef; }
$data = decrypt(substr($data,4));
eval {
my $json = decode_json($data);
my $total=0;
foreach my $key (sort keys @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}}) {
foreach my $key2 ($json->{'emeter'}->{'get_daystat'}->{'day_list'}[$key]) {
$total = $total+ $key2->{'energy'};
if ($key2->{'day'} == $mday) {
readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy'}));
}
}
}
my $count=1;
$count = @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}};
readingsBulkUpdate($hash, "monthly_total", $total);
if ($count) { readingsBulkUpdate($hash, "daily_average", $total/$count)};
1;
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};
}
readingsEndUpdate($hash, 1);
Log3 $hash, 3, "TPLinkHS110: $name Get end";
}


#####################################
sub TPLinkHS110_Set($$)
{
my ( $hash, $name, $cmd, @args ) = @_;
my $cmdList = "on off";
return "\"set $name\" needs at least one argument" unless(defined($cmd));
return "Device disabled in config" if ($attr{$name}{"disable"} eq "1");
    Log3 $hash, 3, "TPLinkHS110: $name Set <". $cmd ."> called";

my $command="";
if($cmd eq "on")
{
$command = '{"system":{"set_relay_state":{"state":1}}}';
}
elsif($cmd eq "off")
{
$command = '{"system":{"set_relay_state":{"state":0}}}';
}
else # wenn der übergebene Befehl nicht durch X_Set() verarbeitet werden kann, Weitergabe an SetExtensions
{
return SetExtensions($hash, $cmdList, $name, $cmd, @args);
}

my $remote_host = $hash->{HOST};
my $remote_port = 9999;
my $c = encrypt($command);
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT})
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($c);
my $data;
my $retval = $socket->recv($data,8192);
$socket->close();
unless( defined $retval) { return undef; }
$data = decrypt(substr($data,4));
my $json;
eval {
$json = decode_json($data);
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};

        if ($json->{'system'}->{'set_relay_state'}->{'err_code'} eq "0") {
TPLinkHS110_Get($hash,"");

} else {
                return "Command failed!";
        }
return undef;
}


#####################################
sub TPLinkHS110_Undefine($$)
{
my ($hash, $arg) = @_;
my $name= $hash->{NAME};
RemoveInternalTimer($hash);   
Log3 $hash, 3, "TPLinkHS110: $name undefined.";
return;
}


#####################################
sub TPLinkHS110_Delete {
my ($hash, $arg) = @_;
my $name= $hash->{NAME};
Log3 $hash, 3, "TPLinkHS110: $name deleted.";
return undef;
}


#####################################
sub TPLinkHS110_Attr {
my ($cmd,$name,$aName,$aVal) = @_;
my $hash = $defs{$name};
 
if ($aName eq "interval") {
if ($cmd eq "set") {
$hash->{INTERVAL} = $aVal;
} else {
$hash->{INTERVAL} = 300;
}
Log3 $hash, 3, "TPLinkHS110: $name INTERVAL set to " . $hash->{INTERVAL};
}

if ($aName eq "timeout") {
if ($cmd eq "set") {
$hash->{TIMEOUT} = $aVal;
} else {
$hash->{TIMEOUT} = 1;
}
Log3 $hash, 3, "TPLinkHS110: $name TIMEOUT set to " . $hash->{TIMEOUT};
}

if ($aName eq "nightmode") {
my $command;
if ($cmd eq "set") {
$hash->{NIGHTMODE} = $aVal;
Log3 $hash, 3, "TPLinkHS110: $name Nightmode $aVal.";
$command =  '{"system":{"set_led_off":{"off":1}}}' if ($aVal eq "on");
$command =  '{"system":{"set_led_off":{"off":0}}}' if ($aVal eq "off");
}
if ($cmd eq "del") {
Log3 $hash, 3, "TPLinkHS110: $name Nightmode attribute removed. Nightmode disabled.";
$command =  '{"system":{"set_led_off":{"off":0}}}';
$hash->{NIGHTMODE} = "off";
}
my $remote_host = $hash->{HOST};
my $remote_port = 9999;
my $c = encrypt($command);
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
        PeerPort => $remote_port,
        Proto    => 'tcp',
        Type     => SOCK_STREAM,
        Timeout  => $hash->{TIMEOUT} )
        or return "Couldn't connect to $remote_host:$remote_port: $@\n";
$socket->send($c);
my $data;
my $retval = $socket->recv($data,8192);
$socket->close();
unless( defined $retval) { return undef; }
$data = decrypt(substr($data,4));
my $json;
eval {
$json = decode_json($data);
} or do {
Log3 $hash, 2, "TPLinkHS110: $name json-decoding failed. Problem decoding getting statistical data";
return;
};
}
return undef;
}

# Encryption and Decryption of TP-Link Smart Home Protocol
# XOR Autokey Cipher with starting key = 171
# Based on https://www.softscheck.com/en/reverse-engineering-tp-link-hs110/
sub encrypt {
        my $key = 171;
        my $result = "\0\0\0\0";
        my @string=split(//, $_[0]);
        foreach (@string) {
                my $a = $key ^ ord($_);
                $key = $a;
                $result .= chr($a);
        }
        return $result;
}
sub decrypt {
        my $key = 171;
        my $result = "";
        my @string=split(//, $_[0]);
        foreach (@string) {
                my $a = $key ^ ord($_);
                $key = ord($_);
                $result .= chr($a);
        }
        return $result;
}

######################################################################################

1;



=pod
=begin html

<a name="TPLinkHS110"></a>
<h3>TPLinkHS110</h3>
<ul>
  <br>

  <a name="TPLinkHS110"></a>
  <b>Define</b>
    <code>define &lt;name&gt; TPLinkHS110 &lt;ip/hostname&gt;</code><br>
    <br>
Defines a TP-Link HS100 or HS110 wifi-controlled switchable power outlet.<br>
The difference between HS100 and HS110 is, that the HS110 provides realtime measurments of<br>
power, current and voltage.<br>
This module automatically detects the modul defined and adapts the readings accordingly.<br>
<br><br>
This module does not implement all functions of the HS100/110.<br>
Currently, all parameters relevant for running the outlet under FHEM are processed.<br>
Writeable are only "On", "Off" and the nightmode (On/Off) (Nightmode: the LEDs of the outlet are switched off).<br>
Further programming of the outlet should be done by TPLinks app "Kasa", which funtionality is partly redundant<br>
with FHEMs core functions.
  <p>
  <b>Attributs</b>
<ul>
<li><b>interval</b>: The interval in seconds, after which FHEM will update the current measurements. Default: 300s</li>
An update of the measurements is done on each switch (On/Off) as well.
<p>
<li><b>timeout</b>:  Timeout in seconds used while communicationg with the outlet. Default: 1s</li>
<i>Warning:</i>: the timeout of 1s is chosen fairly aggressive. It could lead to errors, if the outlet is not answerings the requests
within this timeout.<br>
Please consider, that raising the timeout could mean blocking the whole FHEM during the timeout!
<p>
<li><b>disable</b>: The execution of the module is suspended. Default: no.</li>
<i>Warning: if your outlet is not on or not connected to the wifi network, consider disabling this module
by the attribute "disable". Otherwise the cyclic update of the outlets measurments will lead to blockings in FHEM.</i>
</ul>
  <p>
  <b>Requirements</b>
<ul>
This module uses the follwing perl-modules:<br><br>
<li> Perl Module: IO::Socket::INET </li>
<li> Perl Module: IO::Socket::Timeout </li>
</ul>

</ul>

=end html

=begin html_DE

<a name="TPLinkHS110"></a>
<h3>TPLinkHS110</h3>
<ul>
  <br>

  <a name="TPLinkHS110"></a>
  <b>Define</b>
    <code>define &lt;name&gt; TPLinkHS110 &lt;ip/hostname&gt;</code><br>
    <br>
    Definiert eine TP-Link HS100 oder HS110 schaltbare WLAN-Steckdose. <br>
Der Unterschied zwischen der HS100 und HS110 besteht darin, dass die HS110 eine Echtzeit-Messung von <br>
Strom, Spannung sowie Leistung durchführt.<br>
Dieses Modul erkennt automatisch, welchen Typ Sie verwenden und passt die Readings entsprechend an.
<br><br>
Das Modul implementiert nicht alle Funktionen der HS100/110.<br>
Derzeit werden alle für den sinnvollen Betrieb an FHEM benötigten Parameter ausgelesen.<br>
Geschrieben werden jedoch nur die Schaltzustände  "An", "Aus" sowie der Nachtmodus An/Aus (Nachtmodus = LEDs der Steckdose ausschalten).<br>
Für eine weitergehende Programmierung der Steckdosen wird daher die TP Link App "Kasa" empfohlen, wobei deren<br>
Funktionen wie Timer etc. letztlich redundant zu Kernfunktionen von FHEM sind.
  <p>
  <b>Attribute</b>
<ul>
<li><b>interval</b>: Das Intervall in Sekunden, nach dem FHEM die Messwerte aktualisiert. Default: 300s</li>
Eine Aktualisierung der Messwerte findet auch bei jedem Schaltvorgang statt.
<p>
<li><b>timeout</b>:  Der Timeout in Sekunden, der bei der Kommunikation mit der Steckdose verwendet wird. Default: 1s</li>
<i>Achtung</i>: der Timeout von 1s ist knapp gewählt. Ggf. kann es zu Fehlermeldungen kommen, wenn die Steckdose nicht
schnell genug antwortet.<br>
Bitte beachten Sie aber auch, dass längere Timeouts FHEM für den Zeitraum des Requests blockieren!
<p>
<li><b>disable</b>: Die Ausführung des Moduls wird gestoppt. Default: no.</li>
<i>Achtung: wenn Ihre Steckdose nicht in Betrieb oder über das WLAN erreichbar ist, sollten Sie
dieses FHEM-Modul per Attribut "disable" abschalten, da sonst beim zyklischen Abruf der Messdaten
der Steckdose Timeouts auftreten, die FHEM unnötig verlangsamen.</i>
</ul>
  <p>
  <b>Requirements</b>
<ul>
Das Modul benötigt die folgenden Perl-Module:<br><br>
<li> Perl Module: IO::Socket::INET </li>
<li> Perl Module: IO::Socket::Timeout </li>
</ul>

</ul>
=end html_DE

=item summary Support for TPLink HS100/100 wifi controlled power outlet

=item summary_DE Support für die TPLink HS100/110 WLAN Steckdosen
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 10 Januar 2018, 23:09:42
Kannst Du das Modul bitte noch mal als Attachment hoch laden?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 11 Januar 2018, 07:31:32
Zitat von: Volker Kettenbach am 10 Januar 2018, 23:09:42
Kannst Du das Modul bitte noch mal als Attachment hoch laden?
Klar.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 11 Januar 2018, 18:30:50
Guten Abend allerseits,

das neue Release mit SetExtension (Danke für den Tip - Das kannte ich bisher auch nicht!) ist fertig.
Das FHEM-SVN habe ich aktualisiert. Das Modul sollte morgen verfügbar sein.

Wer's früher mag, findet es hier:
https://github.com/kettenbach-it/FHEM-TPLink-HS110

Ein Bitte:
ich bin dankbar für jeden Beitrag.
Aber diesen bitte entweder als komplettes Modul hier hochladen, so dass ich einen Patch/Pull-Request damit erzeigen kann.
Oder einen Pull-Request auf GitHub erzeugen.

Wer regelmäßig contributen will, der kann gerne auch Zugriff auf Git bekommen.
In diesem Falle wäre aber wichtig, sich mit GitFlow aus zu kennen, denn das verwende ich zum Management des Git-Repos.

Gruß
VK
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Winterbottom am 15 Januar 2018, 20:44:14
Hallo Volker,

danke für das schöne Modul.
Dank der anderen, die dieselben Fehler gemacht haben, wie ich, habe ich es mit ein bisschen Lesen doch recht schnell hinbekommen, meine Steckdose an Fhem anzubinden.
Danke!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Wizzball am 31 Januar 2018, 10:00:10
Hallo!
Erst einmal danke für das sehr nützliche Modul. Ich bin auch über den Fehler mit den nicht immer aktualisierenden Werten gestolpert. Ab und an scheint der Plug keine sinnvollen Tages-/Monatsdaten zuliefern. Auch in der Kasa-App ist dann nichts zu sehen. Dann werden ab auch die Real-Time Daten nicht mehr aktualisiert.
Soweit ich das Modul verstanden habe, scheint nach dem Log-Eintrag in Level 2 direkt ein Return zu folgen, ohne ein readingsEndUpdate davor. Das scheint dazuzuführen, dass zwar die Readings am Device aktuell sind, aber keine Events geschickt werden.
Ich habe Lokal bei mir nun a) die Fehlerlogs geändert, damit ich weiß welches Json decoding schief geht und b) vor das Return ein readingsEndUpdate gestellt.
Jetzt scheint mein Waschmaschinen-Ende-Doif wieder zu funktionieren.
Ich beobachte mal, ob ich nichts kaputt gemacht habe. Und wenn ich herausfinde, wie ich das Modul per Tablett hochlade teile ich gerne meine Änderungen.
Viele Grüße, Robert

Edit: Datei angefügt
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: tox14 am 31 Januar 2018, 21:30:02
Hallo!

ich nutze das Modul seit ca. einen Monat und habe nun seit 2 Tagen folgendes Problem, dass bei Internals der state nicht mehr aktualisiert wird. Dieser steht permanent auf off.
Der state unter den readings wird bei jedem manuellen Schaltvorgang aktualisiert.

Ich steuere mit folgender Routine, die dadurch nicht mehr so in dieser Art funktioniert, da der state sich nicht ändert und somit die Steckdose nicht mehr ausschaltet.
([Heizkreis_VLVM:temperature:d] < 33.0) (set wifipowerplug1:FILTER=STATE=on off) DOELSEIF ([Heizkreis_VLVM:temperature:d] > 35.0) (set wifipowerplug1:FILTER=STATE=off on)

Im logfile taucht auch ein neuer Eintrag auf:
Vorher:
2018.01.01 00:03:51 3: TPLinkHS110: wifipowerplug1 Get called. Relay state: 0, RSSI: -73
2018.01.01 00:03:51 3: TPLinkHS110: wifipowerplug1 Device is an HS110. Got extra realtime data: 0 Watt, 226.388095 Volt, 0.02574 Ampere
2018.01.01 00:03:51 3: TPLinkHS110: wifipowerplug1 Get end

Seit 2 Tagen:
2018.01.31 21:20:11 3: TPLinkHS110: wifipowerplug1 Get called. Relay state: 1, RSSI: -50
2018.01.31 21:20:11 3: TPLinkHS110: wifipowerplug1 Device is an HS110. Got extra realtime data: 0 Watt, 225.183699 Volt, 0.025733 Ampere
2018.01.31 21:20:11 2: TPLinkHS110: wifipowerplug1 json-decoding failed. Problem decoding getting statistical dat

Ich habe das Problem gelöst, indem ich bei der Steuerung das :FILTER=STATE=on entfernt habe.

Kann mir jemand sagen wieso auf einmal bei Internals der state hängt und sich nicht aktualisiert?

Vielen Dank im voraus.

VG
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Wizzball am 31 Januar 2018, 22:56:18
Hallo tox14,
ich hatte das selbe Problem und habe das Modul bei mir Lokal modifiziert, so dass auch beim auftreten dieses Fehlers noch die der (anscheinend nötige) Befehl abgesetzt wird um die alles vollständig zu aktualisieren und die Events abzufeuern. Meine Änderungen habe ich oben angehängt.
Zumindest bei mir läuft die Welt nun wieder normal.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 01 Februar 2018, 14:02:54
Hallo zusammen,

ich habe die Änderungen von Wizzball ins offizielle Release eingebaut.
Vielen Dank dafür! Du hast in der Tat einen Bug gefixed!

(Dafür dass die Steckdosen manchmal keine Daten liefern kann ich aber nichts).

Das neue Modul steht unter https://github.com/kettenbach-it/FHEM-TPLink-HS110 und ab morgen im FHEM-SVN zur Verfügung.

Gruß
VK
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Wizzball am 01 Februar 2018, 20:42:48
Cool, freut mich dass ich ein kleines bisschen beitragen konnte.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: tox14 am 02 Februar 2018, 07:46:27
@Wizzball: Danke für das schnelle Feedback und die Modifikation

Ich habe wie oben beschrieben, die eine Statusabfrage rausgenommen und gestern hat alles wieder ordnungsgemäß funktioniert. Ich denke auch, dass der Status wieder aktualisiert wurde.

@VK: Ich werde das Modul mal updaten, die Routine wieder auf den Ausgangszustand zurücksetzen und beobachten. Danke erstmal dafür.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 16 März 2018, 11:13:36
Hallo Volker,

habe mir jetzt auch mal eine solche Dose zugelegt und hat auch einwandfrei funktioniert.
Frage ... in der Commandref steht:

Zitat
Geschrieben werden jedoch nur die Schaltzustände "An", "Aus" sowie der Nachtmodus An/Aus (Nachtmodus = LEDs der Steckdose ausschalten).

Mal abgesehen davon dass ich irgendwie nicht deuten kannst was du mit "Geschrieben" meinst, finde ich auch kein set-Kommando mit dem man den Nachmodus ein/ausschalten könnte.

Vielleicht habe ich auch etwas übersehen ?

Danke und LG,
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 17 März 2018, 08:08:28
Zitat von: DS_Starter am 16 März 2018, 11:13:36
Mal abgesehen davon dass ich irgendwie nicht deuten kannst was du mit "Geschrieben" meinst, finde ich auch kein set-Kommando mit dem man den Nachmodus ein/ausschalten könnte.
Vielleicht habe ich auch etwas übersehen ?

Der Nightmode wird über ein Attribut festgelegt.
Geschrieben heißt an das Gerät gesendet.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 17 März 2018, 08:24:18
Morgen Volker,

ZitatDer Nightmode wird über ein Attribut festgelegt.

Ahh ... jetzt habe ich es gefunden. Das Attribut ist in der Commandref nicht aufgeführt !

Grüße,
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 17 März 2018, 09:28:13
Gibt es eine Möglichkeit dem Gerät eine feste IP zuzuordnen ?

Ich habe bis jetzt auch in der Kasa-App nichts dergleichen gefunden.
Vielleicht habt ihr es doch irgendwie hinbekommen.

LG,
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 18 März 2018, 07:08:12
Ich kann mich nicht erinnern, ob das evtl in der App geht.
Ich habe es auf jeden Fall per DHCP gelöst (statischer Eintrag).
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: der-graph am 01 Mai 2018, 15:13:07
Hallo,
ich bin begeisterter Benutzer des Moduls für die HS110 und auch sehr zufrieden mit den Steckdosen selbst.

Nachrem ich mir ganz aktuellen Nachschub gegönnt habe, muss ich nun leider feststellen, dass im Log nur noch die  Meldung

TPLinkHS110: XXX json-decoding failed. Problem decoding getting statistical data

TPLinkHS110: XXX json-raw:


erscheint.
Nach etwas Recherche ist mir aufgefallen, dass die beiden neuen Steckdosen nun HW-Version 2.0 (anstatt 1.0 bei den alten Dosen) in der App anzeigen und die Firmware bei den alten 1.2.5 und bei den neuen 1.5.2 lautet. Möglicherweise scheint hier etwas nicht mehr kompatibel zu sein. In der Kasa App scheinen natürlich sonst beide identisch zu sein.

Kann ich irgendentwas beisteuern, so dass sich das Problem hoffentlich lösen lässt? Danke schon mal!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: der-graph am 02 Mai 2018, 14:10:34
Hi, ich nochmal.

Nachdem ich mich nun intensiv mit dem Problem beschäftigt habe, ist es mir nun tatsächlich gelungen das Problem zu lösen. Wenn ich von V2 spreche meine ich die neuen Dosen (hw_ver=2.0), bei V1 meine ich die "alten" Dosen mit hw_ver=1.0
Folgende Dinge sind mir aufgefallen:

1.) In der Funktion encrypt muss eine Änderung erfolgen, da sonst die neuen Dosen V2 nicht antworten. Ich habe keinen Ahnung warum, aber die Änderung interessiert die alten Dosen V1 anscheinend nicht, hier läuft nach meinen Tests alles auch nach der Änderung problemlos weiter:
349: my $result = "\0\0\0\0";
wird zu
my $result = "\0\0\0".chr(@string);

Anschließend antwortet die Dose schon wieder und alle mit einer HS100 V2 habens bereits geschafft. Allerdings gab es bei der HS110 V2 noch ein paar Änderungen, so dass nun das Auslesen der Verbäuche nicht mehr funktioniert.

2.) Bei V2 wurden leider die Werte im json-String {'emeter'}->{'get_realtime'} umbenannt, so dass nicht mehr auf die entsprechenden Daten zur Auswertung von Volt, Watt, Ampere etc zugegriffen werden kann.
Konkret wurde

{'power'} zu {'power_mw'}
{'voltage'} zu {'voltage_mv'}
{'current'} zu {'current_ma'}
{'energy'} zu {'energy_wh'}


Damit nun alles wieder funktioniert muss an diesen Stellen natürlich die Version der Dosen unterschieden werden. Ich hab das für mich jetzt mal so gelöst:

163: Log3 $hash, 3, "TPLinkHS110: $name Device is an HS110. Got extra realtime data: $realtimejson->{'emeter'}->{'get_realtime'}->{'power'} Watt, $realtimejson->{'emeter'}->{'get_realtime'}->{'voltage'} Volt, $realtimejson->{'emeter'}->{'get_realtime'}->{'current'} Ampere";


wird zu


my $hw_ver = $json->{'system'}->{'get_sysinfo'}->{'hw_ver'};
if ($hw_ver eq "1.0") {
Log3 $hash, 3, "TPLinkHS110: $name Device is an HS110. Got extra realtime data: $realtimejson->{'emeter'}->{'get_realtime'}->{'power'} Watt, $realtimejson->{'emeter'}->{'get_realtime'}->{'voltage'} Volt, $realtimejson->{'emeter'}->{'get_realtime'}->{'current'} Ampere";
# hw_vers >= 2.0
} else {
Log3 $hash, 3, "TPLinkHS110: $name Device is an HS110. Got extra realtime data: $realtimejson->{'emeter'}->{'get_realtime'}->{'power_mw'} Milliwatt, $realtimejson->{'emeter'}->{'get_realtime'}->{'voltage_mv'} Millivolt, $realtimejson->{'emeter'}->{'get_realtime'}->{'current_ma'} Milliampere";
}


und


182: foreach my $key (sort keys @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}}) {
foreach my $key2 ($json->{'emeter'}->{'get_daystat'}->{'day_list'}[$key]) {
$total = $total+ $key2->{'energy'};
if ($key2->{'day'} == $mday) {
readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy'}));
}
}
}


wird nun zu:


foreach my $key (sort keys @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}}) {
foreach my $key2 ($json->{'emeter'}->{'get_daystat'}->{'day_list'}[$key]) {
if ($hw_ver eq "1.0") {
$total = $total+ $key2->{'energy'};
if ($key2->{'day'} == $mday) {
readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy'}));
}
} else {
$total = $total+ $key2->{'energy_wh'};
if ($key2->{'day'} == $mday) {
readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy_wh'}));
}
}

}
}



So funktioniert das Ganze nun erst mal. Wie jedoch die geänderten Werte schon erahnen lassen werden nun tatsächlich auch die Einheiten bei der Auswertung geändert. Wo früher Volt stand und Werte wie current=229.3001 gesendet wurden sind es nun tatsächlich Millivolt und der Wert lautet current_mv=229300. Ebenso bei den anderen Werten (Milliampere etc.) Hier sollten eventuell die Readings angeasst werden ( / 1000), so dass das Modul wieder einheitliche Werte liefert. Ich hoffe der aktuelle Stand hilft aber bereits dem ein oder anderen.

Schöne Grüße


Edit: Noch etwas. Es gibt ein neues Reading unter {"system":{"get_sysinfo":{}}} mit dem Namen "next_action". Dabei handelt es sich um eine geschachteltes JSON-Objekt und taucht aktuell dann in fhem natürlich als "HASH(0x47e4180)" auf. Sollte auch noch gefixt werden, nur zur Info...
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 02 Mai 2018, 15:34:48
Hallo Graph,

vielen Dank für Deine Beitrag und den Pull-Request.
Da ich selbst keine Version 2 Dosen haben, hätte ich auch nur bedingt helfen können.
Dein Beitrag schaut auch im Code sehr sinnvoll aus und ich würde den Pull-Request grundsätzlich mergen.
Aber es wäre nett, wenn Du die vorgeschlagene Division /1000 einbauen würdest und einen neuen Pull-Request schicken könntest.
Grund ist, dass sonst bei einem Mischbetrieb der beiden Versionen der Dosen unterschiedliche Einheiten in de Readings stehen und das Rechnen damit dann zu einem Durcheinander würde.

Wäre es möglich, dass Du das noch machst und noch mal einen Pull-Request schickst?
Ich merge den dann sofort.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: der-graph am 03 Mai 2018, 11:26:40
Hallo,

hab den Code entsprechend aktualisiert. Da bei mir die Dosen Version 1/2 ja jetzt auch im Mischbetrieb laufen, war mir das auch ein persönliches Anliegen die Werte schnell zu vereinheitlichen.

Was momentan noch fehlt ist das verschachtelte neue json-Element für die "next_action" im sysinfo mittels foreach auszulesen. Keine große Sache, aber sollte man eventuell irgendwann der Vollständigkeit halber noch einbauen.

Da die Dosen zur Zeit, weil "Alexa kompatibel", extrem auf Amazon beworben werden, hab ich jetzt ein Werte/Faktor Mapping gebaut. Nicht, dass in Kürze dann Hardwareversion 3.0 erscheint und die Readings wieder umständlich geändert werden müssen.  ;D
Hier sollte im Code zur Vereinheitlichung auch im Abschnitt "total/energy" noch auf das Mapping verwiesen werden, wie im Abschnitt "sysinfo" und "emeter". Aber funktioniert dort natürlich im Moment auch anhand der Unterscheidung von "hw_ver". Aber schöner - weil einheitlicher - wär's.

Schöne Grüße
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 03 Mai 2018, 17:08:54
Super!
Gib mir mal das Wochenende Zeit.
Dann teste und merge ich das!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: dynamoa am 14 Mai 2018, 10:50:31
Hallo Volker,

gibt es hier schon etwas neues? Habe seit dem WE auch die HS110 V2 im Einsatz, und bekomme auch nur die Logeinträge:

TPLinkHS110: HS110 json-decoding failed. Problem decoding getting statistical data

Meine HS100 V1 läuft immer noch einwandfrei. Wenn ich irgendwie helfen kann, würde ich das gerne machen.

VG

Raik
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 15 Mai 2018, 07:33:51
Habe viel um die Ohren.
Ich kümmere mich heute Abend drum
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 17 Mai 2018, 08:41:50
Das neue Modul steht im Git bereit: https://github.com/kettenbach-it/FHEM-TPLink-HS110

Ab morgen dann auch im offiziellen SVN des FHEM Projekts.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: dynamoa am 19 Mai 2018, 12:18:20
Hallo Volker,

vielen Dank, dass Du Dich kümmerst! Leider hat das Update bei der HS110 V2 noch nicht den gewünschten Effekt. In FHEM bekomme ich als State nur ???.
Im Log habe ich folgendes stehen:

PERL WARNING: Use of uninitialized value in string eq at ./FHEM/24_TPLinkHS110.pm line 253.

Die andere Meldung scheint dafür aber weg zu sein. Kann ich noch irgendwie helfen?

VG

EDIT: Sorry, aber bekomme jetzt doch Meldungen von der Steckdose. Scheint also zu funktionieren. Musste nur einmal einen request an die HS110 senden. Also: VIELEN DANK noch einmal!!!
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 28 Mai 2018, 08:39:46
Hallo Volker,

bin aus dem Urlaub gekommen und habe ein Update in FHEM gemacht. Seitdem bekomme ich bei meiner V1-Steckdose immer wieder die Meldungen:


2018.05.28 07:59:53.038 2: TPLinkHS110: tplink.energymeter json-decoding failed. Problem decoding getting daily stat data
2018.05.28 08:15:22.996 2: TPLinkHS110: tplink.energymeter json-decoding failed. Problem decoding getting daily stat data
2018.05.28 08:17:58.041 2: TPLinkHS110: tplink.energymeter json-decoding failed. Problem decoding getting daily stat data


Manchmal funktioniert es auch. Aber so stabil wie vorher ist es leider nicht mehr. Zwei Beiträge vorher hat dynamoa das gleiche Problem mit V2 Dosen beschrieben das bei ihm offensichtlich nach einer Codeänderung beseitigt ist, bei mir aber nun dieser Fehler kommt.

list:


Internals:
   DEF        192.168.2.102
   HOST       192.168.2.102
   INTERVAL   155
   NAME       tplink.energymeter
   NR         1551
   STATE      2.249066 W
   TIMEOUT    1
   TYPE       TPLinkHS110
   READINGS:
     2018-05-28 08:37:53   active_mode     schedule
     2018-05-28 08:37:53   alias           Steckdose 2
     2018-05-28 08:37:53   current         0.074613
     2018-05-28 08:37:53   daily_average   0.0740714285714286
     2018-05-28 08:37:53   daily_total     0.022
     2018-05-28 08:37:53   dev_name        Wi-Fi Smart Plug With Energy Monitoring
     2018-05-28 08:37:53   deviceId        800631C67AD9E0A84E8DF3B6BA79D2941991980D
     2018-05-28 08:37:53   err_code        0
     2018-05-28 08:37:53   feature         TIM:ENE
     2018-05-28 08:37:53   fwId            851E8C7225C3220531D5A3AFDACD9098
     2018-05-28 08:37:53   hwId            45E29DA8382494D2E82688B52A0B2EB5
     2018-05-28 08:37:53   hw_ver          1.0
     2018-05-28 08:37:53   icon_hash       
     2018-05-28 08:37:53   latitude        51.316095
     2018-05-28 08:37:53   led_off         0
     2018-05-28 08:37:53   longitude       12.06025
     2018-05-28 08:37:53   mac             B0:4E:26:6B:99:03
     2018-05-28 08:37:53   model           HS110(EU)
     2018-05-28 08:37:53   monthly_total   2.074
     2018-05-28 08:37:53   oemId           3D341ECE302C0642C99E31CE2430544B
     2018-05-28 08:37:53   on_time         465
     2018-05-28 08:37:53   power           2.249066
     2018-05-28 08:37:53   relay_state     1
     2018-05-28 08:37:53   rssi            -60
     2018-05-28 08:37:53   state           on
     2018-05-28 08:37:53   sw_ver          1.1.4 Build 170417 Rel.145118
     2018-05-28 08:37:53   total           3.503
     2018-05-28 08:37:53   type            IOT.SMARTPLUGSWITCH
     2018-05-28 08:37:53   updating        0
     2018-05-28 08:37:53   voltage         233.371585
Attributes:
   alias      TPLink Energiemesser
   cmdIcon    on:remotecontrol/black_btn_GREEN off:remotecontrol/black_btn_RED
   comment    *_total:      Wh
power:        aktueller Verbrauch in Watt
on_time:      s
   disable    0
   event-on-update-reading state
   group      Energiemesser
   interval   155
   room       Energie
   stateFormat power W
   verbose    2


Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 28 Mai 2018, 18:28:47
Hi Volker,

ich nehme alles zurück behaupte das Gegenteil  :)
Habe die vorherige Version wieder eingespielt und bekomme die gleichen Fehlermitteilungen. Muß also an etwas anderem liegen und muss mal auf die Suche gehen.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 28 Mai 2018, 22:44:10
Hallo Volker,

ich habe das Modul etwas umgebaut damit man mehr sieht. Mit verbose 5 kann man sich die empfangenen Daten (Get) ansehen.

Es ist deutlich zu sehen dass im Meldungsfall die Daten unvollständig/abgeschnitten sind.
Hast du eine Idee woran das liegen könnte. Es kommt immer mal wieder vor.


2018.05.28 22:31:34.208 3: TPLinkHS110: tplink.energymeter Get called. Relay state: 1, RSSI: -60
2018.05.28 22:31:34.251 3: TPLinkHS110: tplink.energymeter Device is an HS110. Got extra realtime data: 2.26819 Watt, 233.937667 Volt, 0.074182 Ampere
2018.05.28 22:31:34.287 5: tplink.energymeter - Data returned: '{"emeter":{"get_daystat":{"day_list":[{"year":2018,"month":5,"day":1,"energy":0.064000},{"year":2018,"month":5,"day":2,"energy":0.062000},{"year":2018,"month":5,"day":3,"energy":0.062000},{"year":2018,"month":5,"day":4,"energy":0.063000},{"year":2018,"month":5,"day":5,"energy":0.074000},{"year":2018,"month":5,"day":6,"energy":0.083000},{"year":2018,"month":5,"day":7,"energy":0.083000},{"year":2018,"month":5,"day":8,"energy":0.083000},{"year":2018,"month":5,"day":9,"energy":0.083000},{"year":2018,"month":5,"day":10,"energy":0.083000},{"year":2018,"month":5,"day":11,"energy":0.083000},{"year":2018,"month":5,"day":12,"energy":0.083000},{"year":2018,"month":5,"day":13,"energy":0.082000},{"year":2018,"month":5,"day":14,"energy":0.083000},{"year":2018,"month":5,"day":15,"energy":0.083000},{"year":2018,"month":5,"day":16,"energy":0.083000},{"year":2018,"month":5,"day":17,"energy":0.083000},{"year":2018,"month":5,"day":18,"energy":0.083000},{"year":2018,"month":5,"day":19,"energy":0.083000},{"year":2018,"month":5,"day":20,"energy":0.083000},{"year":2018,"month":5,"day":21,"energy":0.082000},{"year":2018,"month":5,"day":22,"energy":0.083000},{"year":2018,"month":5,"day":23,"energy":0.063000},{"year":2018,"month":5,"day":24,"energy":0.064000},{"year":2018,"month":5,"day":25,"energy":0.067000},{"year":2018,"month":5,"day":26,"energy":0.062000},{"year":2018,"month":5,"day":27,"energy":0.062000},{"year":2018,"month":5,"day":28,"energ'



Die Fehlermeldung falls beim Dekodieren etwas schiefgeht erscheint nun in einem Reading "decode_json", sonst steht dort "ok".
Das geänderte Modulhabe ich mit angehängt.
Vielleicht magst du es so ins SVN übernehemen. Ich denke das ist jetzt hilfreicher und aussagefähiger für eine Fehlersuche.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 29 Mai 2018, 17:38:35
Könntest Du einen Pullrequest schicken

https://github.com/kettenbach-it/FHEM-TPLink-HS110/pulls
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 29 Mai 2018, 18:57:39
Ich hoffe es richtig gemacht zu haben, tue mich immer sehr schwer mit dem Git.

Das Problem an sich ist damit natürlich nicht aus der Welt.
Hast du eine Idee zu den "Verstümmelungen" ?

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 Mai 2018, 11:46:07
Hallo Heiko,

die Verstümmelungen beobachte ich auch. Ich weiss nicht, warum die auftreten. Ich tippe mal auf die Hardware.

Der Pullrequest wurde irgendwie mit dem Code von der-graph vermischt, der jedoch bereits committet ist.
Ich habe den Pull-Request verworfen und habe mir das Diff zwischen dem o.g. Modul und dem im Master-Branch angeschaut.
Dein Patch ist recht umfangreich.
Ich verstehe nicht, wofür er da ist.
Du schreibst, Du willst den Debug-Output verbessern. Warum dann das hier:

>          my $emeterValue = $realtimejson->{'emeter'}->{'get_realtime'}->{$key2};
>
>          #adjust different hw_ver readings, be sure to list all emeter readings in hwMapping
>          if (exists($hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2})) {
>             if (exists($hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'factor'})) {
>                $emeterValue = $emeterValue * $hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'factor'};
>             }
>             $key2 = $hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'name'};
>             readingsBulkUpdate($hash, $key2, $emeterValue);
>             $emeterReadings{$key2} = $emeterValue;
>          } else {
>             return "Check supported hw_ver of device: $hw_ver\n";
>          }
163c192,195

An sich ist der Code vom Modul gut, so wie er ist.
An den Verstümmelungen können wir vermutlich nichts ändern.
Wenn ich Code committen soll, dann müsste dieser besser lesbar und kommentiert sein.
Und in Form einer Patch-Datei oder eines Pull-Requests.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 30 Mai 2018, 12:19:26
Hi Volker,

Zitat
>          my $emeterValue = $realtimejson->{'emeter'}->{'get_realtime'}->{$key2};
>
>          #adjust different hw_ver readings, be sure to list all emeter readings in hwMapping
>          if (exists($hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2})) {
>             if (exists($hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'factor'})) {
>                $emeterValue = $emeterValue * $hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'factor'};
>             }
>             $key2 = $hwMap{$hw_ver}{'emeter'}{'get_realtime'}{$key2}{'name'};
>             readingsBulkUpdate($hash, $key2, $emeterValue);
>             $emeterReadings{$key2} = $emeterValue;
>          } else {
>             return "Check supported hw_ver of device: $hw_ver\n";
>          }
163c192,195

Da habe ich nix mit zu tun  ;) ... Nein, schau nochmal, da hast du wahrscheinlich etwas anderes gesehen als die von mit geänderten Stellen.

Zitat
An sich ist der Code vom Modul gut, so wie er ist.

Ja ist er. Es geht tatsächlich nur um die Möglichkeiten dieser Fehlerdarstellung/Analyse.

ZitatUnd in Form einer Patch-Datei oder eines Pull-Requests.
Ich mache lieber einen SVN-Patch. Ist mir echt sympathischer.
(Kannst du natürlich auch selbst anschauen, die Datei ist ja angehängt)

Melde mich wieder

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 30 Mai 2018, 22:38:26
Hallo Volker,

anbei ist der SVN-Diff.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 02 Juni 2018, 10:34:50
Hallo Heiko,

ich habe mir das jetzt mal angeschaut. Prinzipiell okay.
Ich habe nur ein persönliches Problem:

Mein FHEM ist schon ca. 2 Jahre alt. Ich habe aufgehört das zu aktualisieren, da damals eine erhebliche Änderung des KNX-Moduls gemacht wurde, welches mich zwingen würde, alle meine KNX-Devices neu zu definieren. Da das bei mir sehr viele sind und es Stunden und Tage dauern würde, bin ich auf dieser alten Version stehen geblieben.

Was bei mir jetzt nicht geht ist die Funktion readingsBulkUpdateIfChanged, denn die wurde erst später eingeführt.
Wäre es möglich, dass Du diese Funktion nicht verwendest sondern einfach ein Update machst, egal ob sich was geändert hat?

Für Dein Feature habe ich einen Feature-Branch aufgemacht (ich arbeite mit git-flow):
Der liegt hier:

https://github.com/kettenbach-it/FHEM-TPLink-HS110/tree/feature/ds-starter_extradedebugging

Da kannst Du mir einfach einen Patch dagegen schicken oder die Datei ändern und schicken.

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 02 Juni 2018, 11:40:51
Hallo Volker,

Zitat
Was bei mir jetzt nicht geht ist die Funktion readingsBulkUpdateIfChanged, denn die wurde erst später eingeführt.
Wäre es möglich, dass Du diese Funktion nicht verwendest sondern einfach ein Update machst, egal ob sich was geändert hat?

Ja klar, kein Problem.
Ich ändere das und versuche mich mal bei deinem Git  ;)

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 03 Juni 2018, 08:33:50
Morgen Volker,

Änderung ist drin ... schau mal.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 03 Juni 2018, 16:21:03
Du müsstest eine Datei anhängen oder einen Pull-Request auf den Branch machen
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 03 Juni 2018, 17:47:11
Hast du eine Handlungsanleitung was wo wie zu machen ist ?  Ich würde gern ein File anhängen, geht aber nicht wegen fehlernder Schreibberechtigung. Ansonsten finde ich nur Kommentarfelder. Ist das immer so aufwändig ? Da lobe ich mir doch SVN :)
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 03 Juni 2018, 19:02:02
Bitte ein Diff hier anhängen
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 03 Juni 2018, 19:13:48
Hi Volker,

gerne :) ... hier ist das Diff.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 07 Juni 2018, 15:12:10
Änderungen sind im Git und ab morgen im SVN
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 07 Juni 2018, 19:56:47
Danke Volker !

Lg
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 29 Juni 2018, 16:19:48
Hallo Volker,

ich habe noch eine kleine Unschönheit im Modul festgestellt. Wenn das Modul disabled ist, erscheinen unter "set" ein paar unsinnige Auswahlmöglichkeiten. Der angehängte diff behebt das.

viele Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 30 Juni 2018, 14:19:51
Hi Heiko,

ich kann den Patch nicht anwenden. Da stimmt was nicht.

vsauer@volkers-mbp: ~/GitHub/FHEM-TPLink-HS110[develop*]>patch --dry-run < /tmp/24_TPLinkHS110.diff
(Stripping trailing CRs from patch.)
patching file 24_TPLinkHS110.pm
Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n] <
Skipping patch.
4 out of 4 hunks ignored -- saving rejects to file 24_TPLinkHS110.pm.rej


Der Inhalt des Patches sieht auch recht komisch aus.

Bitte den Patch gegen die Master Branch von https://github.com/kettenbach-it/FHEM-TPLink-HS110 erzeugen!

Gruß
Volker
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 30 Juni 2018, 14:46:49
Hallo Volker,

sorry, das ist ein SVN-diff.
Kommst du damit klar ? Wenn nicht versuche ich mich nochmal mit dem GIT.

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 01 Juli 2018, 08:28:38
Ob Git oder Svn ist doch letztlich egal.
Es muss ein mit diff erzeugter Patch sein, der sich auf den Master Branch bezieht
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 01 Juli 2018, 09:20:17
Tja, tut mir leid, in dem Git-Molloch habe ich jetzt wieder endlos Zeit verbracht um irgendeine Stelle zu finden wo man "einfach" einen diff erzeugen kann. Eine simple Beschreibung für solche Tätigkeiten kenne ich ja nach wie vor nicht. Ist mir jetzt echt zu viel Aufwand und schade um die vergeudete (Frei)Zeit nur um eine Zeile zu ändern:

252 -> return "Device disabled in config" if ($attr{$name}{"disable"} eq "1");

ändere in:

return if (IsDisabled($name));

Dann passt das und funktioniert wie gewünscht.

Aber habe mit meinem Tortoise-Diff nochmal ein File gegen das SVN erstellt. Sieht jetzt besser aus denke ich.

Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 02 Juli 2018, 17:59:17
Zitat von: DS_Starter am 01 Juli 2018, 09:20:17
Tja, tut mir leid, in dem Git-Molloch habe ich jetzt wieder endlos Zeit verbracht um irgendeine Stelle zu finden wo man "einfach" einen diff erzeugen kann. Eine simple Beschreibung für solche Tätigkeiten kenne ich ja nach wie vor nicht. Ist mir jetzt echt zu viel Aufwand und schade um die vergeudete (Frei)Zeit nur um eine Zeile zu ändern:

Hier steht wie das geht:

https://feldspaten.org/2014/12/05/patch-erzeugen-diff-patch/

Mit GIT oder SVN hat das im Grunde ja gar nichts zu tun.
Die Tool heissen diff und patch und können auch aus irgendwelchen GUI wie Eclipse, IntelliJ usw. aufgerufen werden.
Ggf. auch von irgendwelchen GIT oder SVN-Tools.

Vlt. solltest Du Dir wegen GIT das hier mal anschauen:
https://www.sourcetreeapp.com/
Das kann eine Alternative sein, wenn Du keine IDE verwendest.
Ich nutze es gelegentlich, wenn ich nicht meine IDE starten will.

Stichwort IDE: evtl. wäre das hier sinnvoll für Dich: https://code.visualstudio.com/
Mit den entsprechenden Plugins kann das auch Perl. GIT oder SVN sowieso.
Bei diesen Tools heisst das einfach nur VCS (Version Control System).

Ansonsten kann ich Dich nur ermuntern, Dich mit GIT zu beschäftigen.
SVN ist mausetot und im Vergleich zu GIT auch wie Käfer zu Porsche 911.

Die Codezeile habe ich geändert und ins GIT und SVN eingecheckt.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: DS_Starter am 02 Juli 2018, 19:59:05
Hi Volker,

danke für die Links. Schaue ich mir an.
Da war ich gestern wohl etwas sehr genervt  :o

Grüße
Heiko
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Fritz Muster am 06 Juli 2018, 08:56:22
Hallo in die Runde,

ich habe ein Problem auf einem Whezzy Pi mit cpan. Hier (https://forum.fhem.de/index.php/topic,89166.msg816530.html#msg816530) der Thread dazu. Wäre klasse wenn mich da jemand unterstützen könnte.

Danke und Grüße

Fritz
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Fritz Muster am 07 Juli 2018, 17:15:42
Hallo,

also ich kriege das nicht hin. Habe auf meinem Raspberry (wheezy) nun via cpan IO::Socket::Timeout die benötigten Pakete installiert. Bekomme aber wenn ich

define MbAktTplWlan01 TPLinkHS110 192.168.178.53 eingeben ein

Cannot load module TPLinkHS110 als Ausgabe.

Wäre dankbar wenn mich hier jemand unterstützen könnte.

Grüße Fritz
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 09 Juli 2018, 08:10:04
Zitat von: Fritz Muster am 07 Juli 2018, 17:15:42
Cannot load module TPLinkHS110 als Ausgabe.
Wäre dankbar wenn mich hier jemand unterstützen könnte.
Wenn Du in die Log-Datei schaust, sollte da für diesen Zeitpunkt eine ausführlichere Fehlermeldung stehen. Daran kann man sehen, woran es genau hapert...
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Fritz Muster am 09 Juli 2018, 18:04:45
Zunächst einmal Danke für den Hinweis.

Im Log steht folgendes

2018.07.09 18:02:10 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
Excessively long <> operator at ./FHEM/24_TPLinkHS110.pm line 21.

2018.07.09 18:02:10 0: Excessively long <> operator at ./FHEM/24_TPLinkHS110.pm line 21.


Güße
Fritz
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 10 Juli 2018, 08:04:35
Zitat von: Fritz Muster am 09 Juli 2018, 18:04:45
Zunächst einmal Danke für den Hinweis.
Hast Du die aktuelleste Version der TPLinkHS110.pm? Es gab da kürzlich einige Änderungen, damit auch Geräte mit neuerer Firmware unterstützt werden.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Fritz Muster am 10 Juli 2018, 11:24:53
Zitat von: Brockmann am 10 Juli 2018, 08:04:35
Hast Du die aktuelleste Version der TPLinkHS110.pm? Es gab da kürzlich einige Änderungen, damit auch Geräte mit neuerer Firmware unterstützt werden.

Ja, habe von github die aktuelle Version von DS_Starter runtergeladen und ins Verzeichnis fhem/FHEM kopiert. Rechte und Gruppe angepasst. Werde das aber nochmal kontrollieren.

Danke
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Brockmann am 10 Juli 2018, 15:25:50
Zitat von: Fritz Muster am 10 Juli 2018, 11:24:53
Ja, habe von github die aktuelle Version von DS_Starter runtergeladen und ins Verzeichnis fhem/FHEM kopiert. Rechte und Gruppe angepasst. Werde das aber nochmal kontrollieren.
Also das ist dann zumindest nicht die aktuelle "offizielle" Version der Datei. Warum nimmst Du nicht einfach die Version, die zum aktuellen Lieferumfang von FHEM gehört?
Da sollten die Änderungen von DS_Starter auch schon integriert sein, wenn ich die letzten Posts hier richtig interpretiere.

Ein Fehler in Zeile 21 kommt mir jedenfalls komisch vor. Bei der "offiziellen" Datei sind die ersten 30 Zeilen Kommentare, da kann gar kein Fehler auftreten.
Hast Du mal in die Datei (bei Dir) reingeschaut? Eventuell ist da beim Runterladen was schiefgelaufen?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Fritz Muster am 11 Juli 2018, 09:19:38
Zitat von: Brockmann am 10 Juli 2018, 15:25:50
Hast Du mal in die Datei (bei Dir) reingeschaut? Eventuell ist da beim Runterladen was schiefgelaufen?

Danke für den Tipp. In der Datei stand tatsächlich Kokolores. Habe die Datei nochmal gezogen und nun läuft es.

Vielen Dank und Grüße

Fritz
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BM030 am 06 September 2018, 07:09:52
Hallo Volker,

würdest Du Dein Modul auch auf Glühbirnen erweitern?

Hier gibt es ein Perl Script, welche beide TPLink Arten vereint, also LB und HS in einem Script:
https://github.com/pete1450/tPLink/blob/master/lib/My/TPLCmd.pm (https://github.com/pete1450/tPLink/blob/master/lib/My/TPLCmd.pm)

Ich versuche schon seit einigen Tagen das irgendwie ins FHEM zu übersetzen, bekomme es aber leider nicht hin.
Habe leider von den FHEM Modulen keine Ahnung...

Könntest Du dir das mal anschauen?

Danke Grüße Gordon
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 07 September 2018, 08:37:29
Guten Morgen!

Ich habe mir den Code von pete1450 mal angeschaut.
Ich würde sagen, dass das eine gute Chance hat zu klappen.

Ich würde mir mal eine LB130 bestellen, weil ohne Testgerät wird es schwer.
Dazu eine Frage: bei Amazon gibt es mehrere negative Bewertungen, weil das Gerät nach einiger Zeit die WLAN Verbindung verliert.
It das bei Dir auch so?

Gruß
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: BM030 am 07 September 2018, 20:06:59
Hi Volker,
Ich nutze eine LB120 sowie LB130 und habe bisher keine Probleme. Natürlich spiele ich auch wie bei den Steckdosen Updates ein, diese über den PC und nicht über die Kasse App. Vielleicht wissen das die Nutzer der schlechten Bewertungen nicht.

Grüsse Gordon
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 07 September 2018, 22:54:21
Hab die lb130 bestellt.
Dann Mal schauen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: BM030 am 09 September 2018, 15:03:33
Super, ...

wenn ich an meine Heos Geräte denke, liegt es auch eher an der App und nicht an den Geräten selber, dass diese nicht reagieren.

Seitdem ich diese über FHEM bediene habe ich auch auch bei diesen keine wirklichen Probleme mehr.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: chani666 am 24 September 2018, 17:24:07
Hallo,
ich habe 5 von den Steckdosen (HS110), 2 alte und 3 neue (HW 2.0). Zunächst haben die neuen auch funktioniert, ausser dass die neuen halt Watth statt kWatth rückgemeldet habe.

Aber nach ein paar Tagen habe ich jetzt diese Meldung bei den neuen (die alten kein Problem):

Zitat
decode_json        unexpected end of string while parsing JSON string, at character offset 1020 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 458.


es geht nicht mehr weg, was kann ich tun? Im Githup komm ich nicht ganz klar mit den Branches, als aktuelleste habe ich eine 3 Monate alte version geladen, denke dass ist dort die aktuellste?

Grüße
Björn

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 25 September 2018, 07:29:31
Die aktuellste ist immer der Branch Master.
3 Monate ist korrekt. Du dürftest die letzte Version haben.

Was bei Dir los ist, ist schwer zu sagen.
Scheinbar kommen korrupte Daten an.
Gehen die Geräte mit der App?
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: Volker Kettenbach am 25 September 2018, 07:31:56
Zitat von: BM030 am 06 September 2018, 07:09:52
Hallo Volker,

würdest Du Dein Modul auch auf Glühbirnen erweitern?

Hier gibt es ein Perl Script, welche beide TPLink Arten vereint, also LB und HS in einem Script:
https://github.com/pete1450/tPLink/blob/master/lib/My/TPLCmd.pm (https://github.com/pete1450/tPLink/blob/master/lib/My/TPLCmd.pm)

Ich versuche schon seit einigen Tagen das irgendwie ins FHEM zu übersetzen, bekomme es aber leider nicht hin.
Habe leider von den FHEM Modulen keine Ahnung...

Könntest Du dir das mal anschauen?

Danke Grüße Gordon

Kurzes Update: die LB ist mittlerweile da.
Ich plane für die nächsten Wochen einiges zu programmieren. Da werde ich versuchen das mit zu machen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: BM030 am 25 September 2018, 19:23:44
... kann es kaum erwarten! Teste gerne soweit ich kann, falls du Hilfe brauchst.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: chani666 am 25 September 2018, 22:48:20
Zitat von: Volker Kettenbach am 25 September 2018, 07:29:31
Was bei Dir los ist, ist schwer zu sagen.
Scheinbar kommen korrupte Daten an.
Gehen die Geräte mit der App?

Ja mit der Kasa App klappts. Die APP zeigt aber ab und zu auch nur Laufzeit und nicht Verbrauch an. Aber das legt sich schnell nach ein paar Sekunden, bei FHEM nicht. Der String der in eval_json überprüft wird ist tatsächlich nur 1024 zeichen lang, während der string von den alten HW v1 viel länger ist bei get_dailystats.

Ich hab mit dem recv befehl rumgespielt, aber die 8000 irgendwas sinds wohl nicht... Es scheint bis zum 21ten eines Monats zu gehen:

Data returned: $VAR1 = '{"emeter":{"get_daystat":{"day_list":[{"year":2018,"month":9,"day":2,"energy_wh":787},{"year":2018,"month":9,"day":3,"energy_wh":0},{"year":2018,"month":9,"day":4,"energy_wh":0},{"year":2018,"month":9,"day":5,"energy_wh":0},{"year":2018,"month":9,"day":6,"energy_wh":0},{"year":2018,"month":9,"day":7,"energy_wh":0},{"year":2018,"month":9,"day":8,"energy_wh":0},{"year":2018,"month":9,"day":9,"energy_wh":0},{"year":2018,"month":9,"day":10,"energy_wh":56},{"year":2018,"month":9,"day":11,"energy_wh":221},{"year":2018,"month":9,"day":12,"energy_wh":497},{"year":2018,"month":9,"day":13,"energy_wh":564},{"year":2018,"month":9,"day":14,"energy_wh":700},{"year":2018,"month":9,"day":15,"energy_wh":394},{"year":2018,"month":9,"day":16,"energy_wh":485},{"year":2018,"month":9,"day":17,"energy_wh":471},{"year":2018,"month":9,"day":18,"energy_wh":393},{"year":2018,"month":9,"day":19,"energy_wh":481},{"year":2018,"month":9,"day":20,"energy_wh":488},{"year":2018,"month":9,"day":21,"energy_wh":577},{"year":2018,"month":9,"d';

FW ist 1.5.4, hätte jetzt keinen hardware defekt vermutet, sind ja alle 3 mit HW v2.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: chani666 am 26 September 2018, 23:28:53
Ich habs Problem gelöst, auf diese Weise. Sicher nicht elegant, vorallem weil ich keine Ahnung hab ob das mit den alten Probleme gibt, ich lass es mal ein paar Tage so laufen un berichte.


Zitat# Get Daily Stats
      my $command = '{"emeter":{"get_daystat":{"month":'.$mon.',"year":'.$year.'}}}';
      my $c = encrypt($command);
      $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
              PeerPort => $remote_port,
              Proto    => 'tcp',
              Type     => SOCK_STREAM,
                Timeout  => $hash->{TIMEOUT} )
              or return "Couldn't connect to $remote_host:$remote_port: $@\n";
      $socket->send($c);
      my $data1;
      $retval = $socket->recv($data1,16384);
      $data1 = decrypt(substr($data1,4));
       #($success,$json) = TPLinkHS110__evaljson($name,$data);         
      $socket->send($c);
      my $data2;
      $retval = $socket->recv($data2,16384);
      $socket->close();
      
      unless( defined $retval) { return undef; }
            
      $data2 = decrypt(substr($data2,4));
        my $data;
      
      $data = $data1.$data2;
      
        ($success,$json) = TPLinkHS110__evaljson($name,$data);
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 27 September 2018, 09:02:06
Der String in Deiner ersten Nachricht ist genau 1024 Bytes lang.
Meine Vermutung ist, dass das Programm nur 1kB liest. Das dürfte wohl an der "recv" Funktion liegen.
Du rufst den Socket 2x auf und verbindest das ganze.
Der Ansatz ist richtig.
Am besten wäre eine while Schleife, die so lange liest, bis keine Daten mehr kommen.
Ich setze das mal auf meine Todo-Liste.
Ich denke, ich kann das und die Implementation der LB in den nächsten Tagen machen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: chani666 am 27 September 2018, 22:16:42
jap, wobei man vorhersehen kann, dass der string bei 31 tage keine 2kb groß werden wird, aber ja.

es scheint auch mit den HWv1 keine Problem zu geben, allerdings in dem Code noch folgendes falsch:

ich hab die daten getrennt dekodiert und dann zusammen geworfen, dabei gehen zeichen verloren, man muss sie zuerst zusammen werden dann das decrypt aufrufen.

bisher gehts...
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 28 September 2018, 23:22:32
Guten Abend,

hier findet sich eine in der Stabilität stark verbesserte Version:

https://github.com/kettenbach-it/FHEM-TPLink-HS110/blob/hotfix/Fix_recv_function/24_TPLinkHS110.pm

(Update 2.10.2018: der Link ist nicht mehr gültig, da der Hotfix in den MasterBranch gemerged wurde)

Ich behaupte, dass damit die Probleme von chani666 und noch einige mehr gelöst sind.

Bitte das ganze mal testen!
Wenn alles okay ist, werde ich den Branch auf den aktuellen Master mergen und dann ins SVN releasen.

Gruß
Volker

P.S. an der LB130 bin ich dran.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 02 Oktober 2018, 11:31:57
Hallo zusammen,

da sich niemand gemeldet hat, nehme ich an, dass das ganze stabil läuft.
Ich habe den Hotfix daher gemerged und ins SVN eingecheckt.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: kec08569 am 04 Oktober 2018, 22:23:17
Hallo Volker,
Ich bin neu hier und vorweg ein Dank für deinen Code und den super Support. Bei mir gibts leider Probleme seit dem letzten FHEM-Update von gestern.
Ich habe 2 TPLinkk HS110(EU) am Laufen:
Nr.     HW-Ver   SW-Ver
1   1.0   1.2.5
2   2.0   1.5.4

Nr 1 machte vorher und nachher keine Probleme.
Nr 2 wirft seit dem Update einen decode_json-Fehler und liefert keine Verbrauchsdaten mehr. Schalten lässt es sich und alle anderen Readings kommen auch. Ähnlich wie oben bei chani666.

Mein Workaround ist jetzt der Wechsel zurück auf die alte Modul-Datei vom 1. Feb 18 aus dem GitHub-Archiv -> Verbrauchsdaten kommen wieder.

VG
Christoph
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 05 Oktober 2018, 07:17:27
Kannst Du das Debugging mal per "verbose 5" Attribut beim Gerät aktivieren und den LogOutput hier posten?

Ich habe mir gerade bei Amazon mal eine neue HS110 bestellt. Ich hoffe, das ist eine Version 2 (es gibt wohl schon die 3).
Weil ohne kann ich das nicht nachvollziehen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: DS_Starter am 05 Oktober 2018, 08:44:51
Morgen Volker,

nach dem Update kommen in meinem Log laufende Meter diese Meldungen:


2018.10.05 06:53:32.693 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 06:53:32.706 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 06:54:52.688 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 06:54:52.700 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 06:56:12.688 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 06:56:12.701 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 06:57:32.689 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 06:57:32.701 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 06:58:52.697 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 06:58:52.710 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:00:12.695 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:00:12.710 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:01:32.692 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:01:32.704 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:02:52.694 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:02:52.707 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:04:12.709 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:04:12.745 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:05:32.780 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:05:32.792 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:06:52.777 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:06:52.791 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:08:12.779 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:08:12.791 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:09:32.798 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:09:32.810 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:10:52.781 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:10:52.796 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:12:12.781 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:12:12.794 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:13:32.855 1: TPLinkHS110: tplink.energymeter Realtime data updated
2018.10.05 07:13:32.867 1: TPLinkHS110: tplink.energymeter Daystat updated
2018.10.05 07:14:52.857 1: TPLinkHS110: tplink.energymeter Realtime data updated


Muß ich wirklich verbose 0 einstellen ? Ist bestimmt nicht so gewollt.

Meine Softwareversion ist: sw_ver = 1.1.4 Build 170417 Rel.145118

viele Grüße
Heiko
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: mkraus81 am 05 Oktober 2018, 10:11:29
Hi,

also ich bekomme seit gestern (da habe ich glaube das Update gemacht) auch keine Verbrauchsdaten mehr

in den decode_json readings steht

"garbage after JSON object, at character offset 112 (before "\x{fffd}\x{0}\x{2}\x{fffd}...") at ./FHEM/24_TPLinkHS110.pm line 472, <GEN210> line 1."

Irgendwas scheint sich geändert zu haben

folgendes steht im Log

2018.10.05 10:20:23 5: TpLinkHS110Umwaelzpumpe - Data returned: $VAR1 = '{"system":{"get_sysinfo":{"sw_ver":"1.5.4 Build 180815 Rel.121440","hw_ver":"2.0","type":"IOT.SMARTPLUGSWITCH","model":"HS110(EU)","mac":"AC:84:C6:29:11:47","dev_name":"Smart Wi-Fi Plug With Energy Monitoring","alias":"Umwälzpumpe","relay_state":1,"on_time":372,"active_mode":"schedule","feature":"TIM:ENE","updating":0,"icon_hash":"","rssi":-67,"led_off":0,"longitude_i":86026,"latitude_i":521927,"hwId":"044A516EE63C875F9458DA25C2CCC5A0","fwId":"00000000000000000000000000000000","deviceId":"80062E1B8FD1B5DC7CD4271C6E7EBD4819E2E05B","oemId":"1998A14DAA86E4E001FD7CAF42868B5E","next_action":{"type":1,"id":"C1F224EAB9965A1E920F7039664BD61C","schd_sec":81000,"action":0},"err_code":0}}}';

2018.10.05 10:20:23 3: TPLinkHS110: TpLinkHS110Umwaelzpumpe Get called. Relay state: 1, RSSI: -67
2018.10.05 10:20:24 5: TpLinkHS110Umwaelzpumpe - Data returned: $VAR1 = '{"emeter":{"get_realtime":{"voltage_mv":222641,"current_ma":96,"power_mw":20876,"total_wh":2,"err_code":0}}}��`"system":{"get_sysinfo":{"sw_ver":"1.5.4 Build 180815 Rel.121440","hw_ver":"2.0","type":"IOT.SMARTPLUGSWITCH","model":"HS110(EU)","mac":"AC:84:C6:29:11:47","dev_name":"Smart Wi-Fi Plug With Energy Monitoring","alias":"Umwälzpumpe","relay_state":1,"on_time":372,"active_mode":"schedule","feature":"TIM:ENE","updating":0,"icon_hash":"","rssi":-67,"led_off":0,"longitude_i":86026,"latitude_i":521927,"hwId":"044A516EE63C875F9458DA25C2CCC5A0","fwId":"00000000000000000000000000000000","deviceId":"80062E1B8FD1B5DC7CD4271C6E7EBD4819E2E05B","oemId":"1998A14DAA86E4E001FD7CAF42868B5E","next_action":{"type":1,"id":"C1F224EAB9965A1E920F7039664BD61C","schd_sec":81000,"action":0},"err_code":0}}}';



und es scheint nru bei hw_ver 2.0 zu dem Problem zu kommen, denn meine ältere HW_ver 1.0 funktioniert scheinbar noch

DANKE und Gruß
Marcel
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 06 Oktober 2018, 18:31:02
Okay, der Fehler mit der Version 2 ist gefunden und hier (https://github.com/kettenbach-it/FHEM-TPLink-HS110) im Master enthalten!!
@Heiko: Das Thema mit dem Loglevel 1 habe ich auch gerade mit gefixed.
Das SVN ist ab morgen up -to-date!!


Eine Sache noch:
Geholfen hat, dass ich gerade meine neue TPLink HS110 bekommen! Aber es ist eine Version 3!
Damit habe ich jetzt mehrere Version 1 und eine Version 3.
Aber leider keine Version 2.
Es wäre aber gut, wenn ich eine hätte.

Frage in die Runde: wer würde mir seine Version 2 im Austausch gegen eine Version 1 geben!?
Dann hätte ich alles Version zum testen da!

Gruß
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: DS_Starter am 06 Oktober 2018, 19:22:05
Danke Volker und einen schönen Abend

Achso , ich habe nur version 1 steckdosen. Da kann ich nicht mit dienen.

Lg,
Heiko
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: mkraus81 am 06 Oktober 2018, 21:12:29
Danke Volker, dann bin ich auf das Update morgen gespannt
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: kec08569 am 06 Oktober 2018, 22:10:22
Hallo Volker,
klar können wir tauschen. Meine Version 2 ist recht neu, habe sie auch erst vorletzte Woche von Amazon bekommen. Drum wundert es mich, dass sie jetzt schon V3 liefern. Ich schicke Dir eine PM mit meiner Adresse.

VG
Christoph
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 06 Oktober 2018, 23:13:33
Hallo nochmal zusammen,

wg. dem Versions-Thema noch mal eine Frage in die Runde:

Meine neue HS110 hat einen Aufkleber, auf dem steht Version 3.0
Lt. der Support Seite von TPLink gibt es in der Tat wohl 3 Versionen: https://www.tp-link.com/de/download/HS110.html
Die Software meldet jedoch 2.0.
Genauer:    

hw_ver: 2.0
sw_ver: 1.4.3 Build 171009 Rel.104144

Meine Frage ist: wie sieht das bei den 2.0 Dosen aus? Was steht drauf, was meldet die Software?
Bitte hier mal posten!

Gruß
Volker

P.S.: mein Verdacht ist, dass softwaremäßig V2==V3 ist.
Das wäre gut für mich, denn ich habe keine HW-Version 2.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: mkraus81 am 07 Oktober 2018, 13:04:52
gerade das Update gemacht.

Läuft wieder! DANKE!!!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: kec08569 am 07 Oktober 2018, 21:48:14
bei mir auch: Update funktioniert! Danke!

VG
Christoph
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: CBSnake am 08 Oktober 2018, 08:19:45
Moin,

seit dem letzten Update  füllt es mit den LOG im 5 Minuten Takt




2018.10.08 00:10:38.248 2: TPLinkHS110: TPLink1 Realtime data updated
2018.10.08 00:10:38.287 2: TPLinkHS110: TPLink1 Daystat updated
2018.10.08 00:15:38.249 2: TPLinkHS110: TPLink1 Realtime data updated
2018.10.08 00:15:38.283 2: TPLinkHS110: TPLink1 Daystat updated



Ist ein so häufiges Update normal? Wenn ja wäre das nicht was für Verbose Level 3?

Grüße
Achim
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: Volker Kettenbach am 08 Oktober 2018, 08:23:37
Ein verbose Level von 1 ist für das Modul angebracht. Dann zeigt es nur Fehler.
Aber Du hast im Grunde recht. Ich werde das mit dem nächsten Update auf Level 2 oder gar 3 ändern.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2 Steckdosen
Beitrag von: CBSnake am 08 Oktober 2018, 08:32:29
Perfekt, danke dir :-)
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: klein.michael am 26 Oktober 2018, 20:09:27
Hallo,

ich habe hier seit vorigem Jahr 8 Stück HS110 in Hardware-Version 1.0, Firmware-Version 1.2.5 am laufen. Nun habe ich mir noch zwei weitere gekauft, diese sind Hardware-Version 2.0, Firmware-Version 1.5.4 (device HS110_09 und HS110_10).

Anscheinend sind die angezeigten Werte bei den Hardware-Versionen unterschiedlich (Version 1 in kWatt, Version 2 in Watt). Das hat bei der Anzeige im ersten Moment doch ... naja, eine kurze Panikattacke ob des Verbrauchswertes
verursacht   :o ;D


Auszug aus Datenbank, Tabelle "current"

timestamp               device    reading       value     unit
2018-10-26 19:38:22     HS110_01  daily_total   11.071   
2018-10-26 19:39:21     HS110_02  daily_total   8.426
2018-10-26 19:17:55     HS110_03  daily_total   0.000
2018-10-26 19:41:54     HS110_04  daily_total   2.198
2018-10-26 19:38:05     HS110_05  daily_total   0.000
2018-10-26 19:38:07     HS110_06  daily_total   2.892
2018-10-26 19:39:58     HS110_07  daily_total   4.527
2018-10-26 19:40:01     HS110_08  daily_total   1.867
2018-10-26 19:40:06     HS110_09  daily_total   2285.000
2018-10-26 19:41:24     HS110_10  daily_total   1429.000



Gibt es hier die Möglichkeit einer "Vereinheitlichung" der Einheit oder muss ich hier schlicht und ergreifend bezüglich Anzeige und Auswertung per Hand ran ?

Ich bedanke mich schon im voraus für allfällige Infos und Hinweise :-)

Liebe Grüße aus Österreich
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Lichti am 29 Oktober 2018, 16:02:36
Nachdem ich einen FHEM-Update gemacht hatte, kommt es nach ca. 1-2 Stunden zum Absturz von FHEM.

Letzte Meldungen im Log:
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Get called. Relay state: 0, RSSI: -72
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Updating readings
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Get end
2018.10.28 20:55:11 1: PERL WARNING: Use of uninitialized value $data in substr at ./FHEM/24_TPLinkHS110.pm line 116.
substr outside of string at ./FHEM/24_TPLinkHS110.pm line 116.

Nach Einsatz einer älteren Version von 24_TPLinkHS110.pm läuft es wieder.
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BM030 am 02 November 2018, 19:47:37
Zitat von: Volker Kettenbach am 25 September 2018, 07:31:56
Kurzes Update: die LB ist mittlerweile da.
Ich plane für die nächsten Wochen einiges zu programmieren. Da werde ich versuchen das mit zu machen.

Hallo Volker,

Bist du schon dazu gekommen?

Grüße Gordon
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 03 November 2018, 07:52:58
Nein. Eventuell bis Ende des Jahres.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: delta8585 am 11 November 2018, 09:39:07
Zitat von: Lichti am 29 Oktober 2018, 16:02:36
Nachdem ich einen FHEM-Update gemacht hatte, kommt es nach ca. 1-2 Stunden zum Absturz von FHEM.

Letzte Meldungen im Log:
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Get called. Relay state: 0, RSSI: -72
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Updating readings
2018.10.28 20:55:10 3: TPLinkHS110: HS100 Get end
2018.10.28 20:55:11 1: PERL WARNING: Use of uninitialized value $data in substr at ./FHEM/24_TPLinkHS110.pm line 116.
substr outside of string at ./FHEM/24_TPLinkHS110.pm line 116.

Nach Einsatz einer älteren Version von 24_TPLinkHS110.pm läuft es wieder.

ich habe das gleiche Problem. Gibt es dazu schon eine Lösung?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 11 November 2018, 09:42:35
Nein, weil ich es nicht nachvollziehen kann.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: delta8585 am 11 November 2018, 10:30:04
Hmm kann ich irgendwie helfen?

mir ist noch aufgefallen das die Zeilen Angabe nicht immer gleich ist.
Ich bekomme manchmal:

PERL WARNING: Use of uninitialized value $data in substr at ./FHEM/24_TPLinkHS110.pm line 214.
oder
PERL WARNING: Use of uninitialized value $rdata in substr at ./FHEM/24_TPLinkHS110.pm line 162.
oder
PERL WARNING: Use of uninitialized value $data in substr at ./FHEM/24_TPLinkHS110.pm line 116.


ebenfalls denke ich, es hat was mit der Erreichbarkeit der Steckdose zu tun. Ich bin mir nicht ganz sicher. Aber es kann sein das der Fehler erst auftritt, seitdem ich sie an einer anderen Steckdose angesteckt habe. Dort ist der Wlan Empfang nicht sehr gut.
Könnte das die Ursache sein?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Lichti am 11 November 2018, 10:47:20
Bei mir ist der Empfang immer sehr gut. Fehler tritt aber trotzdem auf.
Mit der alten Version läuft es aber wieder problemlos.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: STING333 am 01 Dezember 2018, 20:20:16
Moin,

mal eine Frage, habe von TP-Link RE270K (Steckdose wie HS100 mit Repeater + LAN Port) würde die auch gerne über FHEM schalten. Hatte die Hoffnung das würde mit deinem Modul klappen....

Einbinden geht auch aber es kommt dann die folgende Meldung:

,,Couldn't connect to 192.168.2.250:9999: IO::Socket::INET: connect: timeout"

Die Steckdose und Reapeater werden auch über die KASA App gesteuert exakt wie die HS100/HS110. Besteht die Chance die auch über das Modul zu steuern?

Was würde ggf. Benötigt das diese eingebaut werden könnte?

Von den HS100/110 nutze ich 9 Stück alle zuverlässig :)

Danke und Gruß
Gerhard
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 02 Dezember 2018, 08:45:18
Zitat von: STING333 am 01 Dezember 2018, 20:20:16
Moin,

mal eine Frage, habe von TP-Link RE270K (Steckdose wie HS100 mit Repeater + LAN Port) würde die auch gerne über FHEM schalten. Hatte die Hoffnung das würde mit deinem Modul klappen....

Einbinden geht auch aber es kommt dann die folgende Meldung:

,,Couldn't connect to 192.168.2.250:9999: IO::Socket::INET: connect: timeout"

Die Steckdose und Reapeater werden auch über die KASA App gesteuert exakt wie die HS100/HS110. Besteht die Chance die auch über das Modul zu steuern?

Was würde ggf. Benötigt das diese eingebaut werden könnte?

Von den HS100/110 nutze ich 9 Stück alle zuverlässig :)

Danke und Gruß
Gerhard

Hallo Gerhard,

Hier kannst du den Stand der Dinge nachlesen, was die Entschlüsselung des Protokolls angeht:
https://github.com/plasticrake/tplink-smarthome-api/issues/15

Da hat sich seit einem Jahr nichts getan. Ich sehe die Chancen daher schlecht.

Gruss
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: STING333 am 02 Dezember 2018, 11:00:39
Hallo Volker,

oh danke... wenn ich das richtig sehe würde das Thema ,,geschlossen" kennst du ggf. eine Alternative?

An sich ist es kein Must have..... aber im Smarthome ein Nice to have. Ich hab mir die Steckdose an sich gekauft weil diese das WiFi Siglnal an die LAN Dose weitergibt. Plus die Schaltbare Steckdose.... sowie 2,4 und 5Ghz die Kombination und der Preis haben mir gut gefallen....

Oder hat jemand ggf. Erfahrung mit den neueren Modellen? Nur die sind ja gut doppelt so teuer....

einen schönen 1. Advent

Gerhard
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: DerWu am 02 Dezember 2018, 16:39:02
Hallo Volker,

zunächst einmal Danke für deine Arbeit und die Bereitstellung des Moduls!
Leider läuft bei mir etwas nicht ganz rund: Ich betreibe zwei HS100 Steckdosen, eine HW Rev 1 und eine Rev 2.
Während die Rev2 problemlos läuft, habe ich mit der Rev1 vermehrt Ausfälle/Abstürze (Schlatpunkte werden nicht ausgeführt bis hin zum totalen aufhängen der Steckdose)
Im "decode_json" Reading konnte ich vermehr die Fehlermeldung bzgl "malformed json, died in line 471" entdecken.

Ein Blick in den Code und der Verbose Mode 5 offenbarte das Problem: Es werden immer zwei Befehle ausgeführt, einmal das Schalten and sich und danach ein Update des Status. Letzterer liefert bei mir aber sehr oft nur ein leeres reading zurück und bring die Steckdose in einen Rest oder zum hängen:

2018.12.02 15:30:40 3: TPLinkHS110: Umwaelzpumpe Set <on> called
2018.12.02 15:30:41 5: Umwaelzpumpe - Data returned: $VAR1 = '{"system":{"set_relay_state":{"err_code":0}}}';
2018.12.02 15:30:41 5: Umwaelzpumpe - Data returned: $VAR1 = '';


Testweise habe ich den Code angepasst und die 2 Commands durch eine pause von einer Sekunde entzerrt:

if ($json->{'system'}->{'set_relay_state'}->{'err_code'} eq "0") {
#HS100 HW v1.0 is not returning an answer if commands are comming too fast. Hold on for a second
sleep(1);
TPLinkHS110_Get($hash,"");

} else {
         return "Command failed!";
    }


Das Ergebnis: Ein Stresstest von vielen Schaltdurchgängen wurde endlich ohne Hänger gemeistert:

2018.12.02 16:09:00 3: TPLinkHS110: Umwaelzpumpe Set <on> called
2018.12.02 16:09:00 5: Umwaelzpumpe - Data returned: $VAR1 = '{"system":{"set_relay_state":{"err_code":0}}}';
2018.12.02 16:09:01 5: Umwaelzpumpe - Data returned: $VAR1 = '{"system":{"get_sysinfo":{"err_code":0,"sw_ver":"1.2.5 Build 171213 Rel.101415","hw_ver":"1.0","type":"IOT.SMARTPLUGSWITCH","model":"HS100(EU)","mac":"xxx","deviceId":"xxx","hwId":"xxx","fwId":"00000000000000000000000000000000","oemId":"xxx","alias":"Umwaelzpumpe","dev_name":"Wi-Fi Smart Plug","icon_hash":"","relay_state":1,"on_time":1,"active_mode":"none","feature":"TIM","updating":0,"rssi":-65,"led_off":0,"latitude":0,"longitude":0}}}';


Eine Pause von 0.5 war bei mir noch zu kurz, aber gegebenfalls kann man die Pause, und die ggf. benötigte Zeitspanne über ein Attribut einstellbar machen, bzw eine alternative Art die Commands zu separieren implementieren.

Danke & Gruß,
der Wu
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 02 Dezember 2018, 19:00:52
Ich werde sehen, was ich tun kann.
Ich will versuchen zwischen den Jahren den Support für die Bulbs LB100-130 einzubauen.
Da werde ich mich nochmal mit dem Thema Stabilität befassen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 13 Dezember 2018, 14:13:34
Ich bekomme nach einem Update am 07.12.2018 sporadisch folgende Einträge im Log:
2018.12.07 21:10:48 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/24_TPLinkHS110.pm line 415.
2018.12.07 21:10:48 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 415.
2018.12.07 21:10:48 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 415.
2018.12.07 21:10:48 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data

2018.12.07 21:14:49 1: PERL WARNING: Use of uninitialized value $json in concatenation (.) or string at ./FHEM/24_TPLinkHS110.pm line 243.
2018.12.07 21:14:49 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:

Ergänzend zeigt mir Freezemon fast immer recht lange Laufzeiten:
myFreezemon: possible freeze starting at 11:56:56, delay is 1.723 possibly caused by: tmr-TPLinkHS110_Get(LBE250.Steckdose)

Ich habe:
hw_ver 2.0
sw_ver 1.5.4 Build 180815 Rel.121440


Ergänzend verdächtige ich die Steckdose zum "Einfrieren" von FHEM zu führen. Der Prozess läuft weiter, es wird aber nix mehr geloggt, erst ein Beenden über die Konsole wird wieder protokolliert. Nach dem Neustart läuft's wieder problemlos.

Hat jemand Erfahrungen dazu?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Calle78 am 16 Dezember 2018, 15:43:50
Hi Volker,

auch von mir ein großes Dankeschön, wenns läuft ists eine der günstigsten Leistungsmessungen. Die 7 Lines im Logfile bei Verbose 3 finde ich recht viel, aber mit 2 bei vb2 komm ich klar.

Bislang läufts bei mir auch durch, bei jedem Schaltvorgang hab ich jedoch einen Freeze: Connection lost, trying a reconnect every 5 seconds.

bin ich damit allein?

ciao Carlo
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Lichti am 16 Dezember 2018, 19:11:12
Zu früh gefreut. :(
Jetzt doch wieder ein FHEM-Absturz mit der Meldung:

substr outside of string at ./FHEM/24_TPLinkHS110.pm line 161
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Dennis1234567890 am 16 Dezember 2018, 21:41:40
Hallo, ich versuche gerade, meine HS100 per define <name> TPLinkHS110 <ip> in fhem einzubinden. Jedes Mal, wenn ich das versuche, stürzt fhem ab. Gespeichert ist dann natürlich nichts. Fhem läuft bei mir auf einem Raspberry 2, Perl ist installiert. Das logfile zeigt mir folgendes vor dem Absturz an:
PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 328.
2018.12.16 20:55:29 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 328.
malformed JSON string, neither tag, array, object, number, string or atom, at character offset 0 (before "(end of string)") at ./FHEM/24_TPLinkHS110.pm line 108
Kann mir da vielleicht jemand helfen?

Viele Grüße, Dennis
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 17 Dezember 2018, 07:50:56
Scheinbar häufen sich diese Stabilitätsprobleme.
Ich kann die leider nicht nachvollziehen.
Ich hatte vor zwischen den Jahren nach der Implementierung der lb130 zu schauen.
Da werde ich auch den relevanten Codev anschauen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: chani666 am 29 Dezember 2018, 21:13:11
Zitat von: klein.michael am 26 Oktober 2018, 20:09:27
Hallo,

ich habe hier seit vorigem Jahr 8 Stück HS110 in Hardware-Version 1.0, Firmware-Version 1.2.5 am laufen. Nun habe ich mir noch zwei weitere gekauft, diese sind Hardware-Version 2.0, Firmware-Version 1.5.4 (device HS110_09 und HS110_10).

Anscheinend sind die angezeigten Werte bei den Hardware-Versionen unterschiedlich (Version 1 in kWatt, Version 2 in Watt). Das hat bei der Anzeige im ersten Moment doch ... naja, eine kurze Panikattacke ob des Verbrauchswertes
verursacht   :o ;D


Auszug aus Datenbank, Tabelle "current"

timestamp               device    reading       value     unit
2018-10-26 19:38:22     HS110_01  daily_total   11.071   
2018-10-26 19:39:21     HS110_02  daily_total   8.426
2018-10-26 19:17:55     HS110_03  daily_total   0.000
2018-10-26 19:41:54     HS110_04  daily_total   2.198
2018-10-26 19:38:05     HS110_05  daily_total   0.000
2018-10-26 19:38:07     HS110_06  daily_total   2.892
2018-10-26 19:39:58     HS110_07  daily_total   4.527
2018-10-26 19:40:01     HS110_08  daily_total   1.867
2018-10-26 19:40:06     HS110_09  daily_total   2285.000
2018-10-26 19:41:24     HS110_10  daily_total   1429.000



Gibt es hier die Möglichkeit einer "Vereinheitlichung" der Einheit oder muss ich hier schlicht und ergreifend bezüglich Anzeige und Auswertung per Hand ran ?

Ich bedanke mich schon im voraus für allfällige Infos und Hinweise :-)

Liebe Grüße aus Österreich


ich hab das skript (neustes vom SVN so geändert) ungefähr bei Linie 220:

         my $total=0;
         foreach my $key (sort keys @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}}) {
            foreach my $key2 ($json->{'emeter'}->{'get_daystat'}->{'day_list'}[$key]) {
               if ($hw_ver eq "1.0") {   
                  $total = $total+ $key2->{'energy'};
                  if ($key2->{'day'} == $mday) {
                  readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy'}));
                  }
               } else {
                  $total = $total+ $key2->{'energy_wh'};
                  if ($key2->{'day'} == $mday) {
                  readingsBulkUpdate($hash, "daily_total", sprintf("%.3f", $key2->{'energy_wh'}*0.001));
                  }
               }
               
            }
         }
         my $count=1;
         $count = @{$json->{'emeter'}->{'get_daystat'}->{'day_list'}};
         if ($hw_ver eq "1.0") {readingsBulkUpdate($hash, "monthly_total", $total);}
         if ($hw_ver eq "2.0") {readingsBulkUpdate($hash, "monthly_total", $total*0.001);}

         

und dank an Herr Kettenbach für die letzten updates, SVN läuft bei mir Problemlos. Übrigens glaube ich dass die Probleme teilweise von HW ver 2.0 ohne FW update kommen, da ich meine erst nach ein paare Tage updatete und danach erst die Probleme mit einer neueren Modulversion kamen, und mit der alten FW im Auslieferzustand ich keine Probleme hatte... aber ja, das ist anekdotisch :/

Frohe Weihnachten und Guten Rutsch!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 30 Dezember 2018, 10:47:46
Danke für den Code!
Ich will versuchen, den auch einzubauen.
Ich hoffe, ich komme in den nächsten Tagen noch wie versprochen dazu.

Wg. dem Thema Stabilität:
Welche Firmware Version führt denn bei der HW 2.0 (vermutlich) zu den Instabilitäten?

Noch mal der Aufruf: bitte schickt mal Eure HW und SW Versionen mit einem Vermerkt, ob stabil oder nicht!

Bitte einfach die Tabelle im kommenden Post ergänzen!

Und noch mal der Hinweis:
Mir würde es sehr helfen, wenn jeglicher Code zumindest als Patch oder - noch viel besser - als Merge Reuqest über Gitlab eingebracht würde:
https://gitlab.com/volkerkettenbach/FHEM-TPLink-Kasa
Git(Lab) nicht zu verwenden ist, wie wenn Du einen Auto-Motor mit einem Taschenmesser auseinander baust, obwohl neben dran ein Werkzeugwagen mit dem feinsten Spezialwerkzeug steht.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 30 Dezember 2018, 10:50:23
Übersicht der HW und Software Versionen








ProduktHWSWStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452JaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144JaVolkerKettenbach
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: delta8585 am 31 Dezember 2018, 14:25:39
Zitat von: Volker Kettenbach am 30 Dezember 2018, 10:50:23
Übersicht der HW und Software Versionen








ProduktHWSWStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452JaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144JaVolkerKettenbach











ProduktHWSWStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452JaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144JaVolkerKettenbach
HS1101.01.1.4 Build ? Rel.?neinJohannes Maier
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: BM030 am 13 Januar 2019, 22:29:55











ProduktHWSWStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452JaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144JaVolkerKettenbach
HS1101.01.1.4 Build ? Rel.?neinJohannes Maier
HS1101.01.2.5 Build 171213 Rel.101523jaBM030

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 14 Januar 2019, 08:29:25











ProduktHWSWCloudStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452NeinJaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144NeinJaVolkerKettenbach
HS1101.01.1.4 Build ? Rel.??neinJohannes Maier (delta8585)
HS1101.01.2.5 Build 171213 Rel.101523?jaBM030
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: BM030 am 14 Januar 2019, 19:47:45











ProduktHWSWCloudStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452NeinJaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144NeinJaVolkerKettenbach
HS1101.01.1.4 Build ? Rel.??neinJohannes Maier (delta8585)
HS1101.01.2.5 Build 171213 Rel.101523neinjaBM030
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 16 Januar 2019, 07:03:43










ProduktHWSWCloudStabil?Owner
HS1101.01.0.8 Build 151101 Rel.24452NeinJaVolkerKettenbach
HS1102.01.4.3 Build 171009 Rel.104144NeinJaVolkerKettenbach
HS1101.01.1.4 Build ? Rel.??neinJohannes Maier (delta8585)
HS1101.01.2.5 Build 171213 Rel.101523neinjaBM030
HS1102.01.5.4 Build 180815 Rel.121440?neinTheTrumpeter
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 19 Februar 2019, 06:40:03
Irgendwelche Neuigkeiten dazu?
Ich habe weiterhin ein paar solcher Logfile-Einträge pro Tag:

2019.02.13 19:31:25 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.13 19:34:27 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.13 19:44:28 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.13 19:53:28 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.13 20:00:28 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.13 20:16:28 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.13 22:27:35 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.14 06:04:09 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.14 19:55:49 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.14 19:57:49 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.14 20:33:48 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.15 06:05:18 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.16 19:16:13 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.17 19:26:27 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.17 20:39:32 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.17 20:41:32 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.17 20:54:32 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.17 22:08:37 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.17 22:50:39 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.17 23:06:38 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.18 21:24:51 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.02.18 21:34:50 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.18 21:35:50 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.19 05:58:17 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
2019.02.19 06:17:18 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: DS_Starter am 19 Februar 2019, 08:30:19
Schließe mich TheTrumpeter an. Diese Meldungen gibt es immer wieder. Ich möchte deswegen aber ungern den verbose level 0 einstellen. Vielleicht gibt es ja auch ein paar sinnvolle Meldungen die man lesen sollte.  ;)
Ich wage zu behaupten dass frühere Versionen des Moduls dieses Problem in dieser Form nicht hatten, kann mich aber auch täuschen.

LG,
Heiko
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 20 Februar 2019, 01:09:12
Ich denke, dass es nicht frühere Versionen des Moduls waren, sondern frühere Versionen der Firmware.
Wie man an der Tabelle sieht, wird diese ja eifrig upgedatet.
Bei mir aber nicht, da ich meine Steckdosen nicht in der Cloud habe.
Ich selbst kann da wenig machen, da ich die Probleme nicht nachvollziehen kann. Und auch derzeit keine Zeit habe. Vlt. im Laufe des Jahres mal.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: steff555 am 01 April 2019, 20:40:38
Hi - ich kann Volker da bestätigen: Meiner Meinung nach ist es ein Problem der Firmware in Verbindung mit einer stark genutzten Wlan Umgebung.
Ich habe 4 HS110 (1 x Version 1 / 3 x Version V3 (bzw. V2 laut App)). Leider haben alle 3 V3 Versionen massive Probleme (Die V1 gar nicht). Die HS110 sind alle im gleichen Raum im Umkreis von ca 3m.
Ich hatte auch Kontakt mir TP-Link - aber leider können (bzw. wollen) die nicht wirklich helfen.
Ich habe nun über Wochen hinweg diverses ausprobiert (Wlan Kanal geändert, Wlan Sendeleistung auf 100% / 50%, Reset der HS110 , Firewall offen für die Dosen oder mal nur der Zeitserver pool.org ...) Leider hat alles keine Besserung gebracht.
Dann habe ich in meinem Router (Fritz 7490) die An- und Abmeldeversuche protokollieren lassen und habe festgestellt, dass sich die V3 Versionen sich alle 5 Minuten (mal alle Stunde) ab und wieder neu anmelden! Leider habe ich in meiner Umgebung (Mehrfamilienhaus) ca. 60-70 Wlan-Funknetze. Auch wenn man das nicht unbedingt machen sollte: Ich habe testweise auf Kanal 13 gewechselt und siehe da: Seit dem haben sich die Wlan Ab - und Anmeldungen auf ein Minimum reduziert (ca. 4-20 am Tag, von vorher ca. 50-80)! Und damit auch die Meldungen in FHEM!
Ich vermute dies hängt direkt mit den Meldungen in FHEM zusammen - wenn die HS110 gerade nicht erreichbar ist, dann klappt der decode JSON halt nicht und es kommt zu den oben genannten Meldungen (Timeout).
Ich hoffe auf ein baldiges Firmware-Update (in der Hoffnung, das dies dann auch eine stabile Version sein wird - ansonsten würde ich mich über eine PM freuen, falls noch jemand die V1.4.3 als *.bin file rumliegen hat.
Wer also diese Probleme hat, sollte auf jeden Fall mal die An- und Abmeldungen protokollieren und ggf. auf einen ,,exotsichen"  Kanal wechseln und weiter beobachten.
@Volker: Wäre aber trotzdem schön, wenn du bei Gelegenheit mal die von chani666 genannten Zeilen anpassen könntest (dann muß nicht nach jedem Update die Sicherung ,,24_TPLINKHS110.pm" zurückgespielt werden)
Danke & schöne Grüße
Steff


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 02 April 2019, 15:26:28
Hallo steff555,

danke für die systematische Analyse.
Ich kann von meiner Seite bestätigen, dass meine HS110 mit alter (also die zum Kaufzeitpunkt) Firmware (kein Update über Cloud möglich, da nicht in Cloud angemeldet) i.d.R. keine Reconnects zum WLAN machen sondern dauerhaft connected sind. Folglich machen Sie auch keine Probleme mit FHEM. Meine WLAN Umgebung würde ich eher als ruhig bezeichnen und der Empfang der Geräte ist gut, da sie immer recht nah (wenige Meter) von einem Access-Point entfernt sind.

Sorry, den Code von chani666 hatte ich übersehen. Ich kann hier nur immer wieder darauf hinweisen, dass ein Merge Request oder zumindest in Issue auf https://gitlab.com/volkerkettenbach/FHEM-TPLink-Kasa der wesentlich bessere Weg ist, Code bei zu tragen.

Ich habe den Code von chani666 gerade eingebaut und ins Gitlab gepushed: https://gitlab.com/volkerkettenbach/FHEM-TPLink-Kasa
Das FHEM-SVN sollte meiner Kenntnis nach morgen das aktuelle Modul haben.

Gruß
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: matrixice am 06 April 2019, 12:04:12
Hallo Leute,

bin noch etwas neu in FHEM aber habe soweit fast alles in meinem Zuhause zum Laufen gebracht bis auf meine LB130 Lampe. Ich kriege mit dem Modul meine LB130 nicht geschaltet. Es kommt immer ein trockenes "command failed" wenn ich die Lampe schalten möchte. Log und Event Monitor enthalten dabei zu dem Ereigniss  keine Meldungen dazu. Readings werden aber angezeigt. Readings unten.

Würde mich sehr freuen wenn mir jemand einen Lösungsansatz hätte.

LG Dmitri


Readings
active_mode

none

2019-04-06 11:56:37
alias

Lampa

2019-04-06 11:56:37
ctrl_protocols

HASH(0x2badfc0)

2019-04-06 11:56:37
decode_json

ok

2019-04-06 11:57:01
description

Smart Wi-Fi LED Bulb with Color Changing

2019-04-06 11:56:37
dev_state

normal

2019-04-06 11:56:37
deviceId

8012119C2E94CB91425852F39B34075D18E08E7A

2019-04-06 11:56:37
disco_ver

1.0

2019-04-06 11:56:37
err_code

0

2019-04-06 11:56:37
heapsize

315384

2019-04-06 11:56:37
hwId

111E35908497A05512E259BB76801E10

2019-04-06 11:56:37
hw_ver

1.0

2019-04-06 11:56:37
is_color

1

2019-04-06 11:56:37
is_dimmable

1

2019-04-06 11:56:37
is_factory

false

2019-04-06 11:56:37
is_variable_color_temp

1

2019-04-06 11:56:37
light_state

HASH(0x2ba3f70)

2019-04-06 11:56:37
mic_mac

704F5705054D

2019-04-06 11:56:37
mic_type

IOT.SMARTBULB

2019-04-06 11:56:37
model

LB130(EU)

2019-04-06 11:56:37
oemId

D5C424D3C480911C980ECDD56C27988F

2019-04-06 11:56:37
preferred_state

ARRAY(0x15f1438)

2019-04-06 11:56:37
rssi

-62

2019-04-06 11:56:37
state

off

2019-04-06 11:56:37
sw_ver

1.8.6 Build 180809 Rel.091659

2019-04-06 11:56:37
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 07 April 2019, 07:05:23
Die lb130 wird bisher nicht unterstützt.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: matrixice am 07 April 2019, 12:01:21
okay. Danke
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Xell1984 am 19 April 2019, 13:46:13
Moin, hab meine HS110 eben über die App ins WLAN gebracht und in fhem eingebunden. Wie kann ich Updates verhindern an der Dose bzw Cloud Sperren? Über die Firewall oder gibt's eine andere Lösung?

Gruß
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 19 April 2019, 15:12:47
Zitat von: Xell1984 am 19 April 2019, 13:46:13
Über die Firewall oder gibt's eine andere Lösung?
Ich hab's einfach in der Fritz.Box verboten.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 20 April 2019, 06:49:20
Zitat von: Xell1984 am 19 April 2019, 13:46:13
Moin, hab meine HS110 eben über die App ins WLAN gebracht und in fhem eingebunden. Wie kann ich Updates verhindern an der Dose bzw Cloud Sperren? Über die Firewall oder gibt's eine andere Lösung?

Gruß

Ich habe mich nicht an der cloud angemeldet.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 03 Mai 2019, 07:36:00
Vielleicht für manche interessant:
Die HS110 gibt's heute im Doppelpack bei iBood um EUR 39,95 zzgl. Versand: https://www.ibood.com/electronics-at/de/product-specs/48688/196408/2-x-tp-link-hs110-wifi-smart-plug.html
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 19 Mai 2019, 12:29:03
Nachdem mein zweiter TPLink auch ein HS110 mit neuerer Hardware (und firmware version) ist, habe ich leider auch regelmässige Probleme. Schaltfunktionen laufen problemlos, aber regelmässige Freezes, die nach meinem bisherigen Verständnis auf die TPLinks zurückzuführen sind.

Laut Readings:
sw_ver 1.5.4 Build 180815 Rel.121440
hw_ver 2.0

Vermutung, diese treten beim normalerweise alle 5-minuten laufenden timergesteuerten ..._get auf, aber auch bei jedem aus FHEM initierten Schaltvorgang auf.

Wenn ich es im Thread richtig verstanden habe, gibt es dafür bisher keine Lösung?


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 20 Mai 2019, 07:46:17
Leider richtig.
Ich kann die Probleme nicht nachvollziehen, da meine Steckdosen alle älter sind und die Firmware nicht aktualisiert wird.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: WhyTea am 20 Mai 2019, 13:33:52
Hallo
Ich habe aktuell fünf HS110. Bei vier von den fünf habe ich das Problem das die daily und monthly Werte nicht mehr aktualisiert werden.
Nach dem was ich in meinem Log sehe seit dem ersten April. Bzw. seit der letzten Firmwareaktualisierung und dem darauf folgenden Monatswechsel.

List von dem Einen der noch funktioniert:
Internals:
   CFGFN      /var/fhem/FHEM/KG_Badezimmer.cfg
   DEF        192.168.6.145
   FUUID      5c46c494-f33f-a5a6-a713-0d1daee70282dd5d
   HOST       192.168.6.145
   INTERVAL   300
   NAME       KG_BZ_Trockner
   NEXTUPDATE Mon May 20 13:10:31 2019
   NR         764
   STATE      on
   TIMEOUT    1
   TYPE       TPLinkHS110
   Helper:
     DBLOG:
       monthly_total:
         mylogdb:
           TIME       1558349132.81315
           VALUE      15.784
       power:
         mylogdb:
           TIME       1558350332.84528
           VALUE      0.308
       state:
         mylogdb:
           TIME       1558349132.81315
           VALUE      on
   READINGS:
     2019-05-20 13:05:31   active_mode     none
     2019-05-20 13:05:31   alias           KG_BZ_Trockner
     2019-05-20 13:05:31   current         0.038
     2019-05-20 13:05:31   daily_average   789.2
     2019-05-20 13:05:31   daily_total     0.003
     2019-05-20 13:05:31   decode_json     ok
     2019-05-20 13:05:31   dev_name        Smart Wi-Fi Plug With Energy Monitoring
     2019-05-20 13:05:31   deviceId        8006DAD6044104540C433830515A51681AA795E0
     2019-05-20 13:05:31   err_code        0
     2019-05-20 13:05:31   feature         TIM:ENE
     2019-05-20 13:05:31   fwId            00000000000000000000000000000000
     2019-05-20 13:05:31   hwId            044A516EE63C875F9458DA25C2CCC5A0
     2019-05-20 13:05:31   hw_ver          2.0
     2019-05-20 13:05:31   icon_hash       
     2019-05-20 13:05:31   latitude        51.4532
     2019-05-20 13:05:31   led_off         0
     2019-05-20 13:05:31   longitude       7.4875
     2019-05-20 13:05:31   mac             0C:80:63:DD:63:97
     2019-05-20 13:05:31   model           HS110(EU)
     2019-05-20 13:05:31   monthly_total   15.784
     2019-05-20 13:05:31   next_action     HASH(0x67756b4)
     2019-05-20 13:05:31   oemId           1998A14DAA86E4E001FD7CAF42868B5E
     2019-05-20 13:05:31   on_time         1898318
     2019-05-20 13:05:31   power           0.308
     2019-05-20 13:05:31   relay_state     1
     2019-05-20 13:05:31   rssi            -87
     2019-05-20 13:05:31   state           on
     2019-05-20 13:05:31   sw_ver          1.5.4 Build 180815 Rel.121440
     2019-05-20 13:05:31   total           19.166
     2019-05-20 13:05:31   type            IOT.SMARTPLUGSWITCH
     2019-05-20 13:05:31   updating        0
     2019-05-20 13:05:31   voltage         223.79
Attributes:
   disable    0
   event-min-interval monthly_total:1800,power:1800,state:1800
   event-on-change-reading monthly_total,power,state
   interval   300
   room       Keller->Badezimmer
   verbose    0


List von einem der nicht mehr funktioniert:
Internals:
   CFGFN      /var/fhem/FHEM/KG_Badezimmer.cfg
   CHANGED   
   DEF        192.168.6.144
   FUUID      5c46c496-f33f-a5a6-79d4-2a0cd00419275a01
   HOST       192.168.6.144
   INTERVAL   300
   NAME       KG_BZ_Waschmaschine
   NEXTUPDATE Mon May 20 13:10:33 2019
   NIGHTMODE  off
   NR         768
   STATE      on
   TIMEOUT    1
   TYPE       TPLinkHS110
   Helper:
     DBLOG:
       monthly_total:
         mylogdb:
           TIME       1558350035.91618
           VALUE      0
       power:
         mylogdb:
           TIME       1558350035.91618
           VALUE      0
       state:
         mylogdb:
           TIME       1558350035.91618
           VALUE      on
   READINGS:
     2019-05-20 13:05:34   active_mode     none
     2019-05-20 13:05:34   alias           KG_BZ_Waschmaschine
     2019-05-20 13:05:34   current         0.049
     2019-05-20 13:05:34   decode_json     ok
     2019-05-20 13:05:34   dev_name        Smart Wi-Fi Plug With Energy Monitoring
     2019-05-20 13:05:34   deviceId        800686FE2560C35F95A68FAB4632B8C01A090A10
     2019-05-20 13:05:34   err_code        0
     2019-05-20 13:05:34   feature         TIM:ENE
     2019-05-20 13:05:34   fwId            00000000000000000000000000000000
     2019-05-20 13:05:34   hwId            044A516EE63C875F9458DA25C2CCC5A0
     2019-05-20 13:05:34   hw_ver          2.0
     2019-05-20 13:05:34   icon_hash       
     2019-05-20 13:05:34   latitude        51.4532
     2019-05-20 13:05:34   led_off         0
     2019-05-20 13:05:34   longitude       7.4875
     2019-05-20 13:05:34   mac             AC:84:C6:65:A5:CD
     2019-05-20 13:05:34   model           HS110(EU)
     2019-05-20 13:05:34   monthly_total   0
     2019-05-20 13:05:34   next_action     HASH(0x6c5bc6c)
     2019-05-20 13:05:34   oemId           1998A14DAA86E4E001FD7CAF42868B5E
     2019-05-20 13:05:34   on_time         1897846
     2019-05-20 13:05:34   power           0
     2019-05-20 13:05:34   relay_state     1
     2019-05-20 13:05:34   rssi            -78
     2019-05-20 13:05:34   state           on
     2019-05-20 13:05:34   sw_ver          1.5.4 Build 180815 Rel.121440
     2019-05-20 13:05:34   total           8.397
     2019-05-20 13:05:34   type            IOT.SMARTPLUGSWITCH
     2019-05-20 13:05:34   updating        0
     2019-05-20 13:05:34   voltage         223.668
Attributes:
   disable    0
   event-min-interval monthly_total:1800,power:1800,state:1800
   event-on-change-reading monthly_total,power,state
   interval   300
   nightmode  off
   room       Keller->Badezimmer
   verbose    0

Angeblich sind HW und SW Version gleich.
Was mir aufgefallen ist ist das der Anfang der MAC Adresse bei den nicht funktionierenden anders ist als bei dem der funktioniert.

Der Funktionierende hat eine 0C:80:63 und alle Anderen eine AC:84:C6.

Auch in der KASA App werden keine Statistikwerte mehr angezeigt. Dort wird auch lediglich die aktuelle Leistungsaufnamhme angezeigt.
Ich gehe daher nicht von einem Fehler im Fhem Modul aus.

Hat noch jemand das Problem oder weis vielleicht sogar wie ich es beheben kann?

Gruß
Daniel
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 21 Mai 2019, 18:29:06
Zitat von: Volker Kettenbach am 20 Mai 2019, 07:46:17
Leider richtig.
Ich kann die Probleme nicht nachvollziehen, da meine Steckdosen alle älter sind und die Firmware nicht aktualisiert wird.

Ich kann Dir gerne eine neue Version zur Verfügung stellen.
Inzwischen habe ich aber auch etwas in den Code reingeschaut, grundsätzlich sind die Verbindungsaufbauten im _get ja blockierend, so dass der freeze erklärbar ist. bei den 110er werden ja eigentlich 3 requests gemacht (status, realtime data, daystats), jeder davon braucht etwas Zeit zum Verbindungsaufbau und hat ein Read timeout von 0.5 sek --> also sagen wir mal jeweils 0.6 s --> das entspricht ziemlich genau den 1.8s freezes bei mir.

Kann es also sein, dass die alte Firmware direkt nach dem Datentransfer den Socket zumacht --> kaum Verzögerung, während die neue Firmware daten sendet aber eben die Verbindung nicht schliesst?

Da das Format ja in den ersten 4 Bytes die Länge der Daten versendet, ist das vermutlich auch bei der Antwort so. Damit sollte es möglich sein erst die 4 Bytes zu lesen und dann danach genau soviele Bytes zu lesen wie zu erwarten sind und nicht auf das Timeout zu warten.

Ich habe dazu noch keine Experimente gemacht, aber vielleicht löst das zumindest das timeout/freeze problem?

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 21 Mai 2019, 20:55:31
Ich habe mal eine Testversion erstellt, die beim set und get nur soviele Daten liest, wie benötigt wird.

Bei mir scheint das soweit zu funktionieren und ich habe bisher auch keine freezes mehr gesehen. Möchte das noch jemand anders ausprobieren?


EDIT: 22.5. - Update mit Fehlerbehebung für Realtimedata und Statistik

EDIT: 27.5 - Update für Unterstützung auch längerer Datenmengen
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ufo-hans am 22 Mai 2019, 06:45:27
Da bei mir auch bei eine von 5 identen HS110 die Log-Einträge erzeugte, habe ich mal die neue Version aus dem vorherigen Post ausprobiert. Fehler ist weg, bis jetzt keinerlei Auffälligkeiten.

Danke - und *daumengedrückthalten*!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 22 Mai 2019, 07:25:31
Zitat von: viegener am 21 Mai 2019, 20:55:31
Ich habe mal eine Testversion erstellt, die beim set und get nur soviele Daten liest, wie benötigt wird.

Bei mir scheint das soweit zu funktionieren und ich habe bisher auch keine freezes mehr gesehen. Möchte das noch jemand anders ausprobieren?
Hattest Du davor auch die folgenden Fehler?
2019.05.20 21:50:12 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.20 21:50:12 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.20 21:50:12 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.22 06:12:57 1: PERL WARNING: Use of uninitialized value $json in concatenation (.) or string at ./FHEM/24_TPLinkHS110.pm line 243.
2019.05.22 06:12:57 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.05.22 06:44:58 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime dat
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 22 Mai 2019, 14:32:22
Zitat von: TheTrumpeter am 22 Mai 2019, 07:25:31
Hattest Du davor auch die folgenden Fehler?
2019.05.20 21:50:12 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.20 21:50:12 1: PERL WARNING: substr outside of string at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.20 21:50:12 1: PERL WARNING: Use of uninitialized value $_[0] in split at ./FHEM/24_TPLinkHS110.pm line 415.
2019.05.22 06:12:57 1: PERL WARNING: Use of uninitialized value $json in concatenation (.) or string at ./FHEM/24_TPLinkHS110.pm line 243.
2019.05.22 06:12:57 1: TPLinkHS110: LBE250.Steckdose Error updating daystat. Success: 0, json:
2019.05.22 06:44:58 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime dat


Nein ich hatte andere Meldungen --> das hängt aber vielleicht auch damit zusammen, das die Fehlermeldungen von Dir nicht zur aktuellen Version des Moduls in FHEM passt. Hast Du mal ein update gemacht?

Generell sollten auch ähnliche Fehler nicht mehr auftreten, ich habe dazu nochmal eine aktualisierte Version oben eingespielt, da ist auch ein Fehler ausgemerzt.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 23 Mai 2019, 07:58:46
Zitat von: viegener am 22 Mai 2019, 14:32:22
Nein ich hatte andere Meldungen --> das hängt aber vielleicht auch damit zusammen, das die Fehlermeldungen von Dir nicht zur aktuellen Version des Moduls in FHEM passt. Hast Du mal ein update gemacht?
Habe ich gestern Abend dann gemacht, heut' ist schon wieder so ein Eintrag da:

2019.05.23 06:35:37 1: TPLinkHS110: LBE250.Steckdose: Received zero bytes of realtime data. Cannot process realtime data

Zitat von: viegener am 22 Mai 2019, 14:32:22
Generell sollten auch ähnliche Fehler nicht mehr auftreten, ich habe dazu nochmal eine aktualisierte Version oben eingespielt, da ist auch ein Fehler ausgemerzt.
Werd' ich mal ausprobieren...
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: WhyTea am 23 Mai 2019, 14:16:57
Zitat von: WhyTea am 20 Mai 2019, 13:33:52
Hallo
Ich habe aktuell fünf HS110. Bei vier von den fünf habe ich das Problem das die daily und monthly Werte nicht mehr aktualisiert werden.
Nach dem was ich in meinem Log sehe seit dem ersten April. Bzw. seit der letzten Firmwareaktualisierung und dem darauf folgenden Monatswechsel.
...
Hat noch jemand das Problem oder weis vielleicht sogar wie ich es beheben kann?

Inzwischen habe ich selbst die Lösung gefunden. Danke für die Hilfe.
Für alle die das Gleiche oder ein ähnliches Problem haben...

Man muss die betreffenden HS110 in Werkseinstellung zurücksetzen (RESET-Knopf am Gerät 20 Sek. gedrückt halten) und per KASA-App komplett neu einrichten.

Gruß
Daniel
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 27 Mai 2019, 22:30:05
@Volker Kettenbach: Macht es Sinn die Änderungen in die offizielle Version zu übernehmen?

Ich habe die aktuellste Version hier hinterlegt: https://forum.fhem.de/index.php/topic,57068.msg942121.html#msg942121 (https://forum.fhem.de/index.php/topic,57068.msg942121.html#msg942121)

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 29 Mai 2019, 17:21:01
Grundsätzlich schon.
Ich habe mal kurz den Code angeschaut und bin selbst ein bisschen raus aus dem Thema.
Wenn ich das richtig sehe, dann hast Du:

- den Code für das viermalige Abrufen in eine Methode gepackt (=> don't repeat yourself)
- Du liest am Anfang 4 Bytes und dann ermittelst damit die länge des Pakets und liest dann genau dieses Länge - richtig!?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Lichti am 29 Mai 2019, 20:05:00
Bisher hatte ich mit der aktuellen Version immer das Problem, das nach einigen Tagen FHEM abgestürzt ist.
Eine ältere Version läuft hingegen.

Seit ca. einer Woche habe ich die obige Version im Einsatz.
Hiermit bisher keine Probleme.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 30 Mai 2019, 10:05:01
Zitat von: Volker Kettenbach am 29 Mai 2019, 17:21:01
Grundsätzlich schon.
Ich habe mal kurz den Code angeschaut und bin selbst ein bisschen raus aus dem Thema.
Wenn ich das richtig sehe, dann hast Du:

- den Code für das viermalige Abrufen in eine Methode gepackt (=> don't repeat yourself)
- Du liest am Anfang 4 Bytes und dann ermittelst damit die länge des Pakets und liest dann genau dieses Länge - richtig!?

Ja, genau, das sind die wesentlichen Änderungen. Beim Abrufenhabe ich noch einen Teil eingebaut, der weiter vom Socket liest, wenn die Daten in mehreren Abschnitten kommen (bei mir kamen zum Beispiel im ersten Schritt maximal 1024 Bytes an).


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 31 Mai 2019, 15:29:45
Okay, ich werde die Änderungen checken und in die offizielle Version einbauen.

Ich habe übrigens jetzt eine HW Version und stelle fest, dass die sich in der Tat anders verhält als die Version 1.
Insbesondere dauert das Abrufen der Daten mit der alten Version des Moduls deutlich länger.
Mit der Version 1 und der Originalfirmware geht es vollkommen ohne Verzögerung.
Die Version 2 legt immer ca. 3-4 "Gedenksekunden" ein, während denen FHEM blockiert ist.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 31 Mai 2019, 16:47:13
So, der Patch ist gemerged und im Master-Branch vorhanden:

https://gitlab.com/volkerkettenbach/FHEM-TPLink-Kasa

Am SVN bin ich dran. Habe da gerade Probleme mit dem Zugriff.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 02 Juni 2019, 08:38:27
Neues Modul ist auch jetzt im SVN.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 16 Juni 2019, 20:18:59
Seit dem Update haben sich die Fehlermeldungen verändert, weg sind sie nicht:

2019.06.16 18:14:04 1: TPLinkHS110: LBE250.Steckdose Get failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout

2019.06.16 20:11:11 1: TPLinkHS110: LBE250.Steckdose Get daily stats failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout


Die Meldungen kommen mal sporadisch, mal im Minutentakt.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: derFunk am 20 Juni 2019, 20:54:44
Zitat von: STING333 am 01 Dezember 2018, 20:20:16
Moin,

mal eine Frage, habe von TP-Link RE270K (Steckdose wie HS100 mit Repeater + LAN Port) würde die auch gerne über FHEM schalten. Hatte die Hoffnung das würde mit deinem Modul klappen....

Einbinden geht auch aber es kommt dann die folgende Meldung:

,,Couldn't connect to 192.168.2.250:9999: IO::Socket::INET: connect: timeout"
...

Ich habe bei mir die gleiche Situation. Das tritt bei mir nach einem Neustart von FHEM auf. Erst nachdem ich einmal mit der Kasa App (bei mir iOS) die Steckdose getoggelt habe, kann ich sie auch über FHEM steuern. Warum das so ist weiss ich leider auch nicht.

Meine Versionen:

HS110:
hw_ver: 1.0
sw_ver: 1.1.4 Build 170417 Rel.145118

TPlinkHS110 Modul:
Latest Revision: 19661
24_TPLinkHS110.pm     19532 2019-06-02 06:38:05Z vk



Übrigens erhält man ziemlich viele Logausgaben bei verbose/loglevel 3 im Log, alle 5 Minuten by default:


...
2019.06.01 00:15:09 3: TPLinkHS110: CouchLicht Get called. Relay state: 1, RSSI: -73
2019.06.01 00:15:10 2: TPLinkHS110: CouchLicht Realtime data updated
2019.06.01 00:15:10 3: TPLinkHS110: CouchLicht Device is an HS110. Got extra realtime data: 10.121952 Watt, 234.379034 Volt, 0.078238 Ampere
2019.06.01 00:15:10 3: TPLinkHS110: CouchLicht Updating daystat. Data: {"emeter":{"get_daystat":{"day_list":[{"year":2019,"month":6,"day":1,"energy":0.003000}],"err_code":0}}}
2019.06.01 00:15:10 2: TPLinkHS110: CouchLicht Daystat updated
2019.06.01 00:15:10 3: TPLinkHS110: CouchLicht Updating readings
2019.06.01 00:15:10 3: TPLinkHS110: CouchLicht Get end
2019.06.01 00:20:09 3: TPLinkHS110: CouchLicht Get called. Relay state: 1, RSSI: -73
2019.06.01 00:20:10 2: TPLinkHS110: CouchLicht Realtime data updated
2019.06.01 00:20:10 3: TPLinkHS110: CouchLicht Device is an HS110. Got extra realtime data: 10.338583 Watt, 237.788829 Volt, 0.079619 Ampere
2019.06.01 00:20:10 3: TPLinkHS110: CouchLicht Updating daystat. Data: {"emeter":{"get_daystat":{"day_list":[{"year":2019,"month":6,"day":1,"energy":0.004000}],"err_code":0}}}
2019.06.01 00:20:10 2: TPLinkHS110: CouchLicht Daystat updated
2019.06.01 00:20:10 3: TPLinkHS110: CouchLicht Updating readings
2019.06.01 00:20:10 3: TPLinkHS110: CouchLicht Get end
...


Ich denke da könnte man einige Zeilen auf Loglevel 4 oder sogar 5 setzen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Pauline am 02 Juli 2019, 07:42:08
Hallo,

ich habe mehrere HS110 im Einsatz und soweit funktioniert alles wunderbar.
Außer, wenn ich mal einen HS110 aus der Steckdose ziehe oder einer sonstwie W-Lan-Offline ist!
Habe diesen Fall mit PRESENCE abgefangen und setzte, wenn absent, den entsprechenden HS110 auf disable=1 und vergrößere das Intervall für den PING-Test. Das funktioniert.
Wenn der HS110 aber wieder online ist, setzt PRESENCE das Gerät wieder auf disable=0. Das funktioniert, aber die Readings-Abfrage starten nicht mehr automatisch. Erst wenn ich auf den Anzeigetext im WEB-Fenster klicke oder das Relai schalte werden die Readings wieder kontinuierlich aktualisiert.

(Ich weiß nicht, wie man an dieser Stelle einen Screenshot einfügen kann...)

Das Problem müsste doch eigentlich bekannt sein, ich finde im Netz aber keine Lösung. Die Readings-Abfrage soll wieder aktiviert werden ohne Benutzereingriff.
Ein  fhem ('trigger WEB JS:location.reload(true)');  hilft nicht, die Readings bleiben unverändert.
Der Parameter (set) NEXTUPDATE:Tue Jul 2 07:30:35 2019  ist und bleibt hinter dem aktuellen Datum und ich weiß nicht, wie ich ihn ändern könnte.
Bei disable=1 ändert sich die Textfarbe im WEB-Fenster von rot auf schwarz und bei disable=0 wieder von schwarz auf rot, aber die Readings ändern sich nicht.

Kann mir da jemand weiter helfen?

Viele Grüße
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 03 Juli 2019, 09:29:10
Zitat von: Pauline am 02 Juli 2019, 07:42:08
Hallo,

ich habe mehrere HS110 im Einsatz und soweit funktioniert alles wunderbar.
Außer, wenn ich mal einen HS110 aus der Steckdose ziehe oder einer sonstwie W-Lan-Offline ist!
Habe diesen Fall mit PRESENCE abgefangen und setzte, wenn absent, den entsprechenden HS110 auf disable=1 und vergrößere das Intervall für den PING-Test. Das funktioniert.
Wenn der HS110 aber wieder online ist, setzt PRESENCE das Gerät wieder auf disable=0. Das funktioniert, aber die Readings-Abfrage starten nicht mehr automatisch. Erst wenn ich auf den Anzeigetext im WEB-Fenster klicke oder das Relai schalte werden die Readings wieder kontinuierlich aktualisiert.

(Ich weiß nicht, wie man an dieser Stelle einen Screenshot einfügen kann...)

Das Problem müsste doch eigentlich bekannt sein, ich finde im Netz aber keine Lösung. Die Readings-Abfrage soll wieder aktiviert werden ohne Benutzereingriff.
Ein  fhem ('trigger WEB JS:location.reload(true)');  hilft nicht, die Readings bleiben unverändert.
Der Parameter (set) NEXTUPDATE:Tue Jul 2 07:30:35 2019  ist und bleibt hinter dem aktuellen Datum und ich weiß nicht, wie ich ihn ändern könnte.
Bei disable=1 ändert sich die Textfarbe im WEB-Fenster von rot auf schwarz und bei disable=0 wieder von schwarz auf rot, aber die Readings ändern sich nicht.

Kann mir da jemand weiter helfen?

Viele Grüße

Das Problem ist einfach, dass im Code bei einem disable=0 die regelmässigen Anfragen nicht wieder automatisch starten.

Ich denke ein möglicher Workaround wäre NACH dem Setzen von "disable=0" noch ein get auf dem TPLink device auszuführen, damit sollte auch der automatische Zyklus  von updates wieder getriggert
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: tobiwan am 07 Juli 2019, 10:49:40
Zitat von: TheTrumpeter am 16 Juni 2019, 20:18:59
Seit dem Update haben sich die Fehlermeldungen verändert, weg sind sie nicht:

2019.06.16 18:14:04 1: TPLinkHS110: LBE250.Steckdose Get failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout

2019.06.16 20:11:11 1: TPLinkHS110: LBE250.Steckdose Get daily stats failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout


Die Meldungen kommen mal sporadisch, mal im Minutentakt.

Hallo zusammen,

ich habe die gleichen Fehlermeldungen. Bisher ist FHEM aber nicht (wie zuvor) komplett abgestürzt. Läuft denn bei jemandem mittlerweile die HS110 Version 2 stabil (also mehrere Tage oder gar Wochen) ?

Viele Grüße
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Lichti am 07 Juli 2019, 10:52:49
Hatte vorher auch alle paar Tage einen Absturz.
Mit der aktuellen Version seit ca. 3 Wochen kein Absturz und keine Fehlermeldungen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: tobiwan am 08 Juli 2019, 07:23:39
Danke, das macht mir Mut !
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 08 Juli 2019, 16:57:32
Zitat von: TheTrumpeter am 16 Juni 2019, 20:18:59
Seit dem Update haben sich die Fehlermeldungen verändert, weg sind sie nicht:

2019.06.16 18:14:04 1: TPLinkHS110: LBE250.Steckdose Get failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout

2019.06.16 20:11:11 1: TPLinkHS110: LBE250.Steckdose Get daily stats failed - Couldn't connect to 10.0.0.16:9999: IO::Socket::INET: connect: timeout


Die Meldungen kommen mal sporadisch, mal im Minutentakt.

ich habe jetzt mal unabsichtlich für ein paar Tage eine meiner V2-Steckdosen vom Netz getrennt gehabt und bekomme dieselben Fehlermeldungen - ganz wie zu erwarten. Beim Wiederverbinden mit dem Strom hat sich das sofort gegeben.

Wenn die Fehlermeldungen stören - müsste man per presence das Gerät dann wirklich deaktivieren - wie oben gesagt aber mindestens einmal den get beim Aktivieren wieder einfügen.

Also Fazit:
- Die Fehlermeldungen bei Verbindungsproblemen sind aus meiner Sicht völlig richtig
- Durch etwas Aufwand (presence/notify) lässt sich das aber auch lösen

Wunschliste:
- Automatisches Aktivieren der Abfrage beim enable
- Eingebauter Präsentstatus, der das im Device auch anzeigt (wie bei anderen Geräten ebenfalls)
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 09 Juli 2019, 06:39:18
Zitat von: viegener am 08 Juli 2019, 16:57:32
ich habe jetzt mal unabsichtlich für ein paar Tage eine meiner V2-Steckdosen vom Netz getrennt gehabt und bekomme dieselben Fehlermeldungen - ganz wie zu erwarten. Beim Wiederverbinden mit dem Strom hat sich das sofort gegeben.
Mit dem Unterschied, dass die Steckdose bei mir nicht vom Netz getrennt ist, sondern ständig eingesteckt und auch eingeschaltet ist.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 09 Juli 2019, 08:59:02
Zitat von: TheTrumpeter am 09 Juli 2019, 06:39:18
Mit dem Unterschied, dass die Steckdose bei mir nicht vom Netz getrennt ist, sondern ständig eingesteckt und auch eingeschaltet ist.

Dann beschreibt die Meldung aber auf ein Netzwerkproblem zwischen FHEM und TPLink-Steckdose hin, hast Du mal ein regelemässiges ping auf das device gemacht (per presence)? Ich sehe das Problem bei mir nur sehr selten.

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Pauline am 09 Juli 2019, 17:28:21
Gelegentliche W-Lan-Unterbrechungen habe ich auch immer mal wieder. Deshalb fange ich die Abfrage im HS110-Modul mit disable 0/1 eben ab.

Zitat von: viegener am 03 Juli 2019, 09:29:10
Das Problem ist einfach, dass im Code bei einem disable=0 die regelmässigen Anfragen nicht wieder automatisch starten.

Ich denke ein möglicher Workaround wäre NACH dem Setzen von "disable=0" noch ein get auf dem TPLink device auszuführen, damit sollte auch der automatische Zyklus  von updates wieder getriggert

Ja, die regelmäßige automatische Abfrage startet nach disable 1 auf 0 nicht mehr.
Ein "get <device name> power" ergibt:  "No get implemented for <device name>"
Demnach kann das TPLinkHS110 das nicht, oder?

Hat noch jemand eine Idee?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 10 Juli 2019, 08:28:23
@Pauline: Sorry, Du hast recht, ich habe mich durch die Funktion _get im COde verwirren lassen, diese wird aber nicht an einen Get-Befehl gebunden. Ohne Code-änderung sehe ich da moment keine einfache Möglichkeit. Die regelmässige Abfrage lässt sich momentan nur über einen Schaltbefehl oder einen redefine wieder aktivieren.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 10 Juli 2019, 09:09:46
Zitat von: Pauline am 09 Juli 2019, 17:28:21
Gelegentliche W-Lan-Unterbrechungen habe ich auch immer mal wieder. Deshalb fange ich die Abfrage im HS110-Modul mit disable 0/1 eben ab.
Verstehe ich grad nicht...

Du kannst die WLAN-Unterbrechung vorhersehen und daher rechtzeitig die FHEM-Anfrage an die Steckdose ausschalten, um keine Fehlermeldungen zu erhalten?  :-\
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 11 Juli 2019, 07:07:55
Zitat von: TheTrumpeter am 10 Juli 2019, 09:09:46
Verstehe ich grad nicht...

Du kannst die WLAN-Unterbrechung vorhersehen und daher rechtzeitig die FHEM-Anfrage an die Steckdose ausschalten, um keine Fehlermeldungen zu erhalten?  :-\
Machst Du das per PRESENCE?
Hab' dieses Modul bisher nicht genutzt, weil ich keinen Anwendungsfall dafür hatte... hab's jetzt mal eingerichtet um die Steckdose zu überprüfen, wahrscheinlich schaltest Du die HS110-Abfrage ab, wenn die Steckdose auf "abwesend" geht und gleich wieder ein, wenn sie auf "anwesend" geht? Werde das mal ausprobieren.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Pauline am 11 Juli 2019, 21:10:26
Ja, genau so mache ich das. Hat den Vorteil, dass PRESENCE bei absent die PING-Rate hoch setzt (also nur z.B. alle 30 oder 60 Sekunden testet ob das Gerät sich wieder meldet). Und das entsprechende HS110-Modul schweigt. Der Traffic und eventuelle Wartezeiten in FHEM werden enorm reduziert.
Ich stecke meine Geräte immer mal wieder um oder schalte eine Steckdosenleiste, in der ein HS110 steckt, über Nacht komplett aus.

Zitat von: Pauline am 09 Juli 2019, 17:28:21
Gelegentliche W-Lan-Unterbrechungen habe ich auch immer mal wieder. Deshalb fange ich die Abfrage im HS110-Modul mit disable 0/1 eben ab.

Genauer: Deshalb fange ich die Abfrage des HS110-Moduls mit disable 0 bzw. 1 eben ab....

Derzeit speichere ich laufend den Zustand des Relais und setzte den Status, wenn der HS110 sich wieder meldet, mit set auf den letzten Zustand. Damit startet die automatische Abfrage der Readings wieder!
Geht soweit ganz gut, hat aber ein kleines Fenster (kurz vor dem Ausstecken/Abschalten und bis W-Lan wieder connect ist nach dem Einstecken/Einschalten, dass manuelle Schaltzustandswechsel am Gerät evt. vom letzten Status überschrieben werden.... Naja, kann ich mit leben.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 12 Juli 2019, 08:00:23
Zitat von: Pauline am 11 Juli 2019, 21:10:26
Derzeit speichere ich laufend den Zustand des Relais und setzte den Status, wenn der HS110 sich wieder meldet, mit set auf den letzten Zustand. Damit startet die automatische Abfrage der Readings wieder!
Geht soweit ganz gut, hat aber ein kleines Fenster (kurz vor dem Ausstecken/Abschalten und bis W-Lan wieder connect ist nach dem Einstecken/Einschalten, dass manuelle Schaltzustandswechsel am Gerät evt. vom letzten Status überschrieben werden.... Naja, kann ich mit leben.
Teilst Du den Code hier? Dann brauch' ich nicht selbst basteln...
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: jnewton957 am 25 August 2019, 16:14:47
Hallo,

kann bitte jemand seine .cfg für die HS110 posten.

Vielleicht mit Filelog und schöner Grafik.

Ich suche nach einer .cfg, die eben täglich den daily_total um 23:59 ausliest und dann grafisch darstellt. Gleiches für monthly_total.

Danke
Jörg
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 19 Oktober 2019, 10:19:29
Hallo zusammen, ich bekomme seit einigen Tagen im ca. 15 Minutentakt folgende Fehlermeldung:

2019.10.19 10:10:31 1: TPLinkHS110: BUT_TPLink_3D_Drucker Get failed - Couldn't connect to 192.168.178.37:9999: IO::Socket::INET: connect: timeout

IO::Socket::INET ist installiert und aktuell.

Internals:
   CHANGED   
   DEF        192.168.178.37
   FUUID      5d741eeb-f33f-2e6c-d074-9e1d6d04cb69acdb
   FVERSION   24_TPLinkHS110.pm:0.195320/2019-06-02
   HOST       192.168.178.37
   INTERVAL   300
   NAME       BUT_TPLink_3D_Drucker
   NR         27
   STATE      off
   TIMEOUT    1
   TYPE       TPLinkHS110
   READINGS:
     2019-10-19 10:15:30   active_mode     none
     2019-10-19 10:15:30   alias           Steckdose Drucker
     2019-10-19 10:15:30   decode_json     ok
     2019-10-19 10:15:30   dev_name        Wi-Fi Smart Plug
     2019-10-19 10:15:30   deviceId        80067BD603E4D06F234C5D1B767FD625196BEC10
     2019-10-19 10:15:30   err_code        0
     2019-10-19 10:15:30   feature         TIM
     2019-10-19 10:15:30   fwId            00000000000000000000000000000000
     2019-10-19 10:15:30   hwId            22603EA5E716DEAEA6642A30BE87AFCA
     2019-10-19 10:15:30   hw_ver          1.0
     2019-10-19 10:15:30   icon_hash       
     2019-10-19 10:15:30   latitude        48.407936
     2019-10-19 10:15:30   led_off         0
     2019-10-19 10:15:30   longitude       10.963076
     2019-10-19 10:15:30   mac             B0:4E:26:17:88:1B
     2019-10-19 10:15:30   model           HS100(EU)
     2019-10-19 10:15:30   oemId           812A90EB2FCF306A993FAD8748024B07
     2019-10-19 10:15:30   on_time         0
     2019-10-19 10:15:30   relay_state     0
     2019-10-19 10:15:30   rssi            -72
     2019-10-19 10:15:30   state           off
     2019-10-19 10:15:30   sw_ver          1.2.5 Build 171213 Rel.101415
     2019-10-19 10:15:30   type            IOT.SMARTPLUGSWITCH
     2019-10-19 10:15:30   updating        0
Attributes:
   DbLogExclude .*
   alexaName  Drucker
   alexaRoom  Büro Thomas
   alias      Steckdose 3D Drucker
   devStateIcon on:ios-on-green off:ios-off toggle:rc_BLUE
   disable    0
   event-on-change-reading .*
   group      Geräte
   icon       hue_filled_outlet
   room       Büro Thomas,Geräte,Homekit
   verbose    2
   webCmd     :
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 27 Oktober 2019, 17:53:03
Niemand eine Idee wie ich das Problem lösen könnte?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 28 Oktober 2019, 12:32:58
Die Fehlermeldung ist ja recht klar: Deine Steckdose ist über das Netz nicht erreichbar.
Also:
1. Prüfen, ob die Steckdose noch die angegebene IP hat. Falls nein: IP ändern
2. Prüfen, ob ie IP von anderen Geräten pingbar ist
Falls nein: Fehlerquelle ist Steckose
Falls ja: Fehlerquelle ist FHEM
3. Falls Fehlerquelle Steckdose (wahrscheinlich)
- Steckdose rebooten
- Steckdose resetten
Falls nicht erfolgreich, nochmal melden
4. Falls Fehlerquelle FHEM: noch mal melden
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 28 Oktober 2019, 18:03:00
Zitat von: Volker Kettenbach am 28 Oktober 2019, 12:32:58
- Steckdose resetten

Hätte ich eigentlich selbst drauf kommen können... :D
Läuft jetzt seit 2 Stunden ohne Fehlermeldung, mal hoffen das es so bleibt.
Mich hatte es halt nur gewundert, weil die Dose trotz Fehlermeldung ganz normal geschalten hat...

Danke! :)
Titel: Antw:Neues Modul: 24_TPLinkHS110.pm mit Support für TPLink HS100 und HS110 Steckdosen
Beitrag von: BM030 am 29 Oktober 2019, 06:14:15
Zitat von: Volker Kettenbach am 25 September 2018, 07:31:56
Kurzes Update: die LB ist mittlerweile da.
Ich plane für die nächsten Wochen einiges zu programmieren. Da werde ich versuchen das mit zu machen.

Hallo Volker,

traue mich schon fast gar nicht mehr zu fragen....  die LBs sind die einzigsten Geräte, die ich noch mit App steuern muss, alles andere ist über FHEM angebunden ...

Greetings Gordon
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 29 Oktober 2019, 18:45:35
Zu früh gefreut, die Fehlermeldung ist wieder da...
1. Prüfen, ob die Steckdose noch die angegebene IP hat. Falls nein: IP ändern
-> IP passt

2. Prüfen, ob ie IP von anderen Geräten pingbar ist
-> ist pingbar
3. Falls Fehlerquelle Steckdose (wahrscheinlich)
- Steckdose resetten
-> durchgeführt, hat nichts gebracht

4. Falls Fehlerquelle FHEM: noch mal melden
*nochmalmeld*
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 29 Oktober 2019, 20:10:57
Was ist die Fehlermeldung im fhem?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 30 Oktober 2019, 17:02:57
Weiterhin
2019.10.30 16:45:22 1: TPLinkHS110: BUT_TPLink_3D_Drucker Get failed - Couldn't connect to 192.168.178.37:9999: IO::Socket::INET: connect: timeout
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 30 Oktober 2019, 17:27:34
Da wird wohl die Steckdose kaputt sein
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 30 Oktober 2019, 22:14:53
Grad noch eine andere Steckdose ausgepackt, gleiches Modell.

2019.10.30 21:45:39 1: TPLinkHS110: Test_Dose Get failed - Couldn't connect to 192.168.178.55:9999: IO::Socket::INET: connect: timeout :/

Dürfte also wohl nicht an den Dosen liegen. Kann es sein das vllt im IO::Socket::INET Modull irgendwas falsch läuft? Kann ich das irgendwie neu installieren?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 03 November 2019, 08:08:06
Ich denke nicht, dass IO::Socket::INET ein Problem hat. Das Modul wird von sehr vielen Programmen verwendet.
Die Fehlermeldung sagt ja klar und deutlich, dass Deine Dose nicht über das Netz erreichbar ist.
Da kann das Modul und das FHEM nichts dafür.
Das liegt an der Dose oder ggf. Deinem Netzwerk (WLAN?).
Du könntest mal versuchen mit dem Tool nmap von dem FHEM-Rechner aus den Port 9999 (ich glaube udp) zu erreichen. Das wird nicht gehen, weil die Dose einfach nicht erreichbar ist.

Lies ausserdem mal den Thread hier genauer durch.Da wirst Du finden, dass es bei den Dosen scheinbar mit den neueren Firmwareversionen Probleme gibt, die wir uns nicht erklären können.
Ich habe auf allen meinen Dosen eine alte Firmware drauf und habe keine Probleme.

Sollten Dosen benötigt werden, die 100% zuverlässig schalten, würde ich sowieso von diesem Produkt und allen Produkten, die per WLAN arbeiten abraten und etwas was per Kabel-Ethernet oder KNX funktioniert nehmen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 03 November 2019, 20:14:59
@Humpelpumpel: Ich habe die Meldung
TPLinkHS110: kugellampe Get failed - Couldn't connect to 192.168.2.60:9999: IO::Socket::INET: connect: timeout


auch sporadisch manchmal alle paar Stunden / manchmal über Wochen nicht.

Bei mir ist allerdings die Vermutung, dass die Steckdosen aus irgendeinem Grund gelegentlich die Verbindung ins WLAN verlieren.

Kommt die Meldung denn bei Dir dauerhaft oder auch nur sproadisch.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Humpelpumpel am 03 November 2019, 23:12:46
Kommt tatsächlich leider alle 15-20 Minuten, bei bei Steckdosen die ich im einsatz habe. Habe jetzt verbose erstmal auf 0 gestellt damit mein Log nicht komplett platzt :D
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Tenge_Home am 28 März 2020, 16:48:23
Bin ganz neu hier ...

Habe mir die TP HS100 gekauft (Hardware 4.0, FW 1.1.1) und krieg sie nicht verbunden. Die Fehlermeldung lautet:
2020.03.28 16:26:26 3: TPLinkHS110: tp_test defined.
2020.03.28 16:26:28 1: TPLinkHS110: tp_test Get failed - Couldn't connect to 192.168.6.25:9999: IO::Socket::INET: connect: Connection refused

Ping funktioniert, Web-Oberfläche auch, was tun?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 28 März 2020, 22:40:37
Zitat von: Tenge_Home am 28 März 2020, 16:48:23
Bin ganz neu hier ...

Habe mir die TP HS100 gekauft (Hardware 4.0, FW 1.1.1) und krieg sie nicht verbunden. Die Fehlermeldung lautet:
2020.03.28 16:26:26 3: TPLinkHS110: tp_test defined.
2020.03.28 16:26:28 1: TPLinkHS110: tp_test Get failed - Couldn't connect to 192.168.6.25:9999: IO::Socket::INET: connect: Connection refused

Ping funktioniert, Web-Oberfläche auch, was tun?

Vielleicht stehe ich ja auf der Leitung, aber welche Web-Oberfläche meinst Du?

Ping auch vom pi zur Steckdose?

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 29 März 2020, 10:50:38
IO::Socket::INET: connect: Connection refused bedeutet, dass die Dose per IP-Protokoll erreichbar ist, auf dem Port, zu dem verbunden werden soll, aber kein Service läuft.
Daraus und dass Tenge_Home von einer Weboberfläche berichtet schliesse ich, dass die Version 4 wohl eine ganze andere Software hat, als 1-3.
Das ist nicht gut.
Ohne ein solches Teil können wir da nichts programmieren.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Tenge_Home am 29 März 2020, 12:48:21
Völlig crazy:
nachdem ich das Teil erstmalig installiert habe, wollte ich die IP-Adresse davon haben und habe in der Fritzbox nachgesehen. Da wurde das Teil gelistet und ich konnte es sogar anklicken und landete dann in der Web-Oberfläche. Dort konnte man einstellen, ob das ein AP und/oder STA Betrieb sein sollte mit allen möglichen Zusatzinfos (DNS,....), wie man eben so einen Router o.ä. konfiguriert.
Nur: ich konnte den nicht von FHEM aus ansprechen - s. o.

Nach euren Antworten war ich etwas frustiert und habe einen reset gemacht und die Dose über die App neu angemeldet. Und nun?
Oh Wunder: die Weboberfläche ist nicht mehr erreichbar, aber FHEM kann jetzt plötzlich darauf zugreifen und schalten.

Im Moment sieht also alles gut aus. Wenn ich neue Erkenntnisse habe, melde ich mich.
Bis hierher erst einmal vielen Dank!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: phoenix-anasazi am 29 März 2020, 17:26:35
Hallo,

erstmal vielen Dank für das Modul. Mittlerweile gibt es Hardware Version 4. Daher müssten die Mappings angepasst werden, bzw. da die Readings identisch zu Version 2 sind, diese auch für Version 4 eingefügt werden. Zu Version 3 kann ich leider nichts sagen.
Da ich Anfänger bin, kann ich leider nicht mit viel mehr Infos dienen, bin aber natürlich gerne behilflich.
Vielen Dank und Grüße!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: phoenix-anasazi am 10 April 2020, 17:06:53
Hallo,

ich habe folgendes an die HArdware Mappings angehängt und nun funktioniert die Dose wie gewünscht und gibt auch korrekte Werte aus.
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'power_mw'}{'name'} = 'power';
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'power_mw'}{'factor'} = 0.001;
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'voltage_mv'}{'name'} = 'voltage';
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'voltage_mv'}{'factor'} = 0.001;
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'current_ma'}{'name'} = 'current';
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'current_ma'}{'factor'} = 0.001;
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'total_wh'}{'name'} = 'total';
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'total_wh'}{'factor'} = 0.001;
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'err_code'}{'name'} = 'err_code';
$hwMap{'4.0'}{'emeter'}{'get_realtime'}{'err_code'}{'factor'} = 1;


Einziges Problem ist, dass nach jedem Upgrade die Änderung wieder weg ist. Könnte das jemand im Modul anpassen? Vielen Dank.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 10 April 2020, 21:39:12
Zitat von: phoenix-anasazi am 10 April 2020, 17:06:53
Einziges Problem ist, dass nach jedem Upgrade die Änderung wieder weg ist. Könnte das jemand im Modul anpassen? Vielen Dank.

Du kannst das Modul erstmal vom update ausschliessen (exclude_from_update an global

Die Änderungen kannst Du auch als pull request in github stellen - der link ist im ersten beitrag





Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: phoenix-anasazi am 11 April 2020, 16:48:04
Vielen Dank für deine Antwort. Beides erledigt.   ;)
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 12 April 2020, 11:15:33
@phoenix-anasazi: Vielen Dank für den Pull-Request!

Das Update ist ab sofort im Git https://github.com/kettenbach-it/FHEM-TPLink-HS110
und ab morgen im offiziellen FHEM SVN-Repo.

Frohe Ostern!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: phoenix-anasazi am 12 April 2020, 16:45:19
Super. Vielen Dank und ebenfalls frohe Ostern!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: jnewton957 am 14 April 2020, 21:05:54
Gibt es eigentlich eine Möglichkeit die HS110 ohne die China-App ausschließlich mit fhem zu betreiben ?

Die Kasa App tunnelt ja meine fritzbox und ich benutze die Steckdose faktisch ausschließlich als Strommessgerät am Gefrierschrank und schalte die Dose somals nie.

Danke für die Info
Jörg
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: viegener am 14 April 2020, 22:08:53
Zitat von: jnewton957 am 14 April 2020, 21:05:54
Gibt es eigentlich eine Möglichkeit die HS110 ohne die China-App ausschließlich mit fhem zu betreiben ?

Die Kasa App tunnelt ja meine fritzbox und ich benutze die Steckdose faktisch ausschließlich als Strommessgerät am Gefrierschrank und schalte die Dose somals nie.

Danke für die Info
Jörg

Was meinst Du mit tunneln? Ich habe es nicht im Detail analysiert, aber aus meiner Sicht melden die Schalter Ihren Status an die KASA-Server und nehmen über diesen Weg auch Schaltbefehle entgegen, aber es wird kein "Tunnel" von aussen nach innen geschaffen (also kein Port geöffnet oder ähnliches).

Was ich ausprobiert habe, ist im Router den Steckdosen den Zugang ins Internet zu nehmen, im eigenen Netz funktioniert die App dann immer noch und natürlich FHEM ebenfalls.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: jnewton957 am 15 April 2020, 13:13:31
Zitat von: viegener am 14 April 2020, 22:08:53
Was meinst Du mit tunneln? Ich habe es nicht im Detail analysiert, aber aus meiner Sicht melden die Schalter Ihren Status an die KASA-Server und nehmen über diesen Weg auch Schaltbefehle entgegen, aber es wird kein "Tunnel" von aussen nach innen geschaffen (also kein Port geöffnet oder ähnliches).

Was ich ausprobiert habe, ist im Router den Steckdosen den Zugang ins Internet zu nehmen, im eigenen Netz funktioniert die App dann immer noch und natürlich FHEM ebenfalls.
Ich hatte das so bei der Einrichtung von KASA gelesen, dass somit der Zugriff "durch" den Router auf die Steckdosen passiert. Die Steckdose meldet ja auch regelmäßig seinen Verbrauch an die KASA App.

Gute Idee mal im Router die Internetverbindung der IP Adresse der Steckdose zu verwehren. Mal sehen, was passiert.

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: CBSnake am 25 Mai 2020, 08:55:13
Hi,

ich hab seit kurzem ein Problem mit einer HS110 Hardware Version 1.0 Software Version 1.1.4 die bisher ohne Probleme lief. Aktuell geht schalten wunderbar aber es werden weder power noch total Werte übertragen, beide stehen immer auf 0.
Die beiden anderen HS110 (Hardware beide 2.0 Software 1.5.4 und 1.4.3) funktionieren problemlos.

Weiter oben im Thread hab ich von einer Anpassung für die Hardware 3.0 gelesen. Könnte das damit zusammenhängen? Updates mache ich regelmäßig und automatisch Dienstag Nacht :-)

24_TPLinkHS110.pm      21645 2020-04-12 09:11:23Z vk

Hat noch jemand diese Modulversion mit ner 1.0 Hardware im Einsatz und könnte das mal prüfen ob er den Fehler auch hat?`

Wenn ich mal dazu kommen lad ich mir mal ne ältere Version aus dem Github und prüf das nochmal

Grüße
Achim

Nachtrag: Auch mit 24_TPLinkHS110.pm      19095 2019-04-02 13:02:04Z vk keine Readings bei Power und Total :-( scheint dann doch die Hardware zu sein
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 05 Juni 2020, 09:20:40
Guten Morgen,

ich habe das geprüft: mit der gleichen Version gibt es bei mir keine Probleme mit dem Datenabruf.
Es wäre auch sehr verwunderlich, da die von Dir erwähnte Änderung nur ein kleiner Eingriff war und den Datenabruf nicht betraf.

Ich meine in diesem Thread weiter vorne mal gelesen zu haben, dass jemand auch ein Problem mit dem Datenabruf hatte - er hatte das, glaube ich, in den Griff bekommen.
Lies mal in diesem Thread nach - evtl hilft Dir das.

Gruß
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: CBSnake am 05 Juni 2020, 10:23:23
Hi,

danke fürs prüfen, aktuell tut er, auch mit der neuen Version wieder, er ruft die Daten wie z.b. on/off schon ab, aber z.b. die Netzspannung fehlt im Fehlerfall komplett ich vermute mal das da evtl ne kalte Lötstelle ist und ohne Spannung kein Verbrauch :-)

Grüße
Achim
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: gadget am 20 August 2020, 14:19:43
Hallo,

Ich habe eine HS100(EU) mit hw_ver 2.0.
Ich will den Stromverbrauch des laufenden Tages graphen.

In der Kasa-App habe ich:

Gesamtverbrauch heute: 0,20 kWh
Gesamtverbrauch 7 Tage 1,28 kWh
Gesamtverbrauch 30 Tage 1,28 kWh

In den readings stehen aber komplett andere Werte:


Internals:
   DEF        192.168.178.160
   FUUID      5f37dcd6-f33f-6385-03ca-5f4bf9175c76e579
   HOST       192.168.178.160
   INTERVAL   60
   NAME       tplinkswitch7
   NEXTUPDATE Thu Aug 20 14:15:14 2020
   NR         944
   STATE      on 3.848 W
   TIMEOUT    1
   TYPE       TPLinkHS110
   READINGS:
     2020-08-20 14:14:14   active_mode     none
     2020-08-20 14:14:14   alias           HWW
     2020-08-20 14:14:14   current         0.062
     2020-08-20 14:14:14   daily_average   247.166666666667
     2020-08-20 14:14:14   daily_total     0.203
     2020-08-20 14:14:14   decode_json     ok
     2020-08-20 14:14:14   dev_name        Smart Wi-Fi Plug With Energy Monitoring
     2020-08-20 14:14:14   deviceId        8006655ACAAA60197EA9D90187F93D601B88E927
     2020-08-20 14:14:14   err_code        0
     2020-08-20 14:14:14   feature         TIM:ENE
     2020-08-20 14:14:14   fwId            00000000000000000000000000000000
     2020-08-20 14:14:14   hwId            044A516EE63C875F9458DA25C2CCC5A0
     2020-08-20 14:14:14   hw_ver          2.0
     2020-08-20 14:14:14   icon_hash       
     2020-08-20 14:14:14   led_off         0
     2020-08-20 14:14:14   mac             98:DA:C4:08:78:52
     2020-08-20 14:14:14   model           HS110(EU)
     2020-08-20 14:14:14   monthly_total   1.483
     2020-08-20 14:14:14   next_action     -None-
     2020-08-20 14:14:14   oemId           1998A14DAA86E4E001FD7CAF42868B5E
     2020-08-20 14:14:14   on_time         3937
     2020-08-20 14:14:14   power           3.848
     2020-08-20 14:14:14   relay_state     1
     2020-08-20 14:14:14   rssi            -63
     2020-08-20 14:14:14   state           on
     2020-08-20 14:14:14   sw_ver          1.5.6 Build 191125 Rel.083657
     2020-08-20 14:14:14   time            2020-8-20 14:14:13
     2020-08-20 14:14:14   total           1.483
     2020-08-20 14:14:14   type            IOT.SMARTPLUGSWITCH
     2020-08-20 14:14:14   updating        0
     2020-08-20 14:14:14   voltage         233.311
Attributes:
   alias      HWW Schaltsteckdose
   devStateIcon on.*:message_socket_on_off@red:off off.*:message_socket_on_off@black:on
   disable    0
   event-min-interval total:300,on_time:300
   event-on-change-reading state,total,on_time
   group      HWW
   interval   60
   room       Keller
   stateFormat state power W


Muss ich da noch was umrechnen ? Die Last ist ein Hauswasserwerk (Pumpe), also im Wesentlichen induktive Last.

Grüße, gadget
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 21 August 2020, 08:51:46
daily_total scheint zu zu stimmen. 2.03 vs 2.0 - hier hat Kasa gerundet.

Die anderen Werte, also Avg. 7 Tage und Avg. 30 Tage sind schlicht und einfach nicht im FHEM drin.
Frag mich nicht warum. Ich glaube das wurde nie implementiert.

Von daher läuft hier nichts falsch.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Wasserwerk33 am 08 Oktober 2020, 13:52:20
Hallo Leute,

besitze seit heute meine 3 TP Link Steckdose. Die anderen 2 sind ohne Energiemesser. Nur leider wird bei mir keine Energiemessung angezeigt. Dauert das ein bisschen bis das kommt oder habe ich was falsch?

Das neuste Update des Moduls bekomme ich doch über die update Routine oder nicht?

Habe mal eine List mit dran gepackt. Und bei mir stehen auch Fragezeichen als Status bei meinen anderen beiden hatte ich direkt das Lampen Symbol. Schalten lässt sie sich aber über Fhem. Ändert aber auch nicht die Fragezeichen.

Internals:
   CFGFN     
   DEF        192.168.33.26
   FUUID      5f7efb32-f33f-faf7-e7ba-b58ce67c68d04ac5
   HOST       192.168.33.26
   INTERVAL   300
   NAME       WLan_Stromzahler1
   NR         4841
   STATE      ???
   TIMEOUT    1
   TYPE       TPLinkHS110
   READINGS:
     2020-10-08 13:43:06   active_mode     none
     2020-10-08 13:43:06   alias           Stromz�hler Steckdose 1
     2020-10-08 13:43:06   decode_json     ok
     2020-10-08 13:43:06   dev_name        Smart Wi-Fi Plug With Energy Monitoring
     2020-10-08 13:43:06   deviceId        8006C34046915F03EC9631831B4323B81CC55F09
     2020-10-08 13:43:06   err_code        0
     2020-10-08 13:43:06   feature         TIM:ENE
     2020-10-08 13:43:06   hwId            06D9793BF7C4C3E37A386CB6C5D4A929
     2020-10-08 13:43:06   hw_ver          4.0
     2020-10-08 13:43:06   icon_hash       
     2020-10-08 13:43:06   latitude_i      522800
     2020-10-08 13:43:06   led_off         0
     2020-10-08 13:43:06   longitude_i     77146
     2020-10-08 13:43:06   mac             B0:95:75:15:6A:8B
     2020-10-08 13:43:06   mic_type        IOT.SMARTPLUGSWITCH
     2020-10-08 13:43:06   model           HS110(EU)
     2020-10-08 13:43:06   next_action     HASH(0x6b930c8)
     2020-10-08 13:43:06   oemId           BC7DF59F436483CD3D8396111011B83E
     2020-10-08 13:43:06   on_time         1
     2020-10-08 13:43:06   relay_state     1
     2020-10-08 13:43:06   rssi            -24
     2020-10-08 13:43:06   state           on
     2020-10-08 13:43:06   status          new
     2020-10-08 13:43:06   sw_ver          1.0.4 Build 191111 Rel.143500
     2020-10-08 13:43:06   updating        0
Attributes:
   alias      WLan_Stromzahler1
   disable    0
   room       Steckdosen
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Wasserwerk33 am 08 Oktober 2020, 14:34:59
Fehler gefunden. Es fehlte mir die neue Version 4.0. Hoffe das nun die älteren auch noch funktionieren
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: iDaNnY am 14 Oktober 2020, 19:14:20
Ich verwende fhem schon eine Weile für Stromaufzeichnungen mit einem EDIPLUG SP2101W. Jetzt habe ich mir noch 2 TP-Link HS110 geholt. Ich betreibe fhem unter Windows. Die Inbetriebnahme des HS110 hat leider ein paar Probleme bereitet, da IO::Socket::Timeout sowie PerlIO::via::Timeout in der Strawberry Perl Portable nicht enthalten sind. Man kann diese aber von metacpan beziehen und in die entsprechenden Pfade (fhem-5.8\perl\lib\PerlIO\via bzw. fhem\perl\lib\IO\Socket) kopieren.

https://metacpan.org/pod/PerlIO::via::Timeout
https://metacpan.org/pod/IO::Socket::Timeout

Anschließend funktioniert der Stecker auch unter Windows. Nur falls noch jemand über das Problem stolpert...

Positiv beim HS110 ist mir aufgefallen, dass dieser im Gegensatz zum EDIPLUG sekündlich einen neuen Wert liefert.

EDIT: Mein Stecker ist übrigens ein V4.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: jonien am 15 Oktober 2020, 14:59:13
Hallo,
nachdem ich mit tplink Steckdose und diesem Modul gute Erfahrungen gemacht habe, habe ich mir KL110 Wlan Leuchte von tplink zugelegt. Funktioniert super. Die Einrichtung in Fhem habe (aufgrund fehlender? Alternativen) mit dem Modul für die Steckdose versucht. Die Gerätedaten der Wlan Leuchte werden auch ausgelesen. Die Schaltbefehle funktionieren logischerweise nicht... Gibt es vllt. eine Weiterentwicklung in Richtung KL110?, oder habe ich etwas übersehen?
LG

    Readings
active_mode
none
alias
Vorbaulicht
ctrl_protocols
HASH(0x87f5a10)
decode_json
ok
description
Smart Wi-Fi LED Bulb with Dimmable Light
dev_state
normal
deviceId
80123AF174F125854163A8D0FAB4003A1CDC39DC
disco_ver
1.0
err_code
0
heapsize
293084
hwId
111E35908497A05512E259BB76801E10
hw_ver
1.0
is_color
0
is_dimmable
1
is_factory
0
is_variable_color_temp
0
light_state
HASH(0xabe8ad8)
mic_mac
B09575AF8F62
mic_type
IOT.SMARTBULB
model
KL110(EU)
oemId
775B67C11038B99BEEDE39B0C910F6E9
preferred_state
ARRAY(0xa095a30)
rssi
-58
state
off
sw_ver
1.8.11 Build 191113 Rel.105336
time
-- :: 
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Sascha_P am 17 Oktober 2020, 16:01:03
Hallo Zusammen,

ich hätt eine Frage zu den WLAN Steckdosen. Ich bin recht neu in FHEM und Perl deshalb habt bitte nachsicht.
Meine Frage ist wie ich den Verbrauch auslesen kann.
Ich hab die Steckdose hinterlegt und bekomme nun im Log folgendes:
2020.10.17 11:46:22.596 5: Test_Steckdose - Data returned: $VAR1 = '{"emeter":{"get_realtime":{"voltage_mv":235293,"current_ma":29,"power_mw":2717,"total_wh":6,"err_code":0}}}';

Wie bekomme ich nun die Werte als "Readings", sodass ich sie zb. in eine Datenbank schreiben kann.

Mfg
Sascha
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 06 Januar 2021, 20:06:24
Hallo zusammen,

ich habe hier mehrere HS110 Steckdosen von TP-Link im Betrieb. Die funktionieren alle auch genau so, wie ich es möchte, nur eine, die ich jetzt erst gekauft habe, will irgendwie nicht. Dies ehat die Hardware Rev. 4.0.

Ich binde die Steckdose in FHEM wie folgt ein:

define HS110_Zahnbuerste TPLinkHS110 192.168.1.115

Die Steckdose ist online, lässt sich über KASA ganz normal schalten, funktioniert alles super. Die Steckdose wurde mit dem Standardverfahren eingerichtet (KASA App).

ping 192.168.1.115

Ping wird ausgeführt für 192.168.1.115 mit 32 Bytes Daten:
Antwort von 192.168.1.115: Bytes=32 Zeit=23ms TTL=255
Antwort von 192.168.1.115: Bytes=32 Zeit=40ms TTL=255
Antwort von 192.168.1.115: Bytes=32 Zeit=17ms TTL=255
Antwort von 192.168.1.115: Bytes=32 Zeit=27ms TTL=255

Ping-Statistik für 192.168.1.115:
    Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0
    (0% Verlust),
Ca. Zeitangaben in Millisek.:
    Minimum = 17ms, Maximum = 40ms, Mittelwert = 26ms


Leider sehe ich im FHEM keinen Status der Steckdose (Anhang hc_001.jpg).
Das dazugehörige Filelog wird auch nicht beschrieben. Attribute wie current und power fehlen auch.
Klicke ich auf die drei Fragezeichen, so schaltet die Steckdose EIN und die Werte unten aktualisieren sich. Außerdem erscheint im Event Monitor folgendes:

2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste decode_json: ok
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste decode_json: ok
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste active_mode: none
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste alias: HS110_Zahnbuerste
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste dev_name: Smart Wi-Fi Plug With Energy Monitoring
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste deviceId: 80062B0EBFBAB5F1BD7B3B24FEBE9BB51DA82C3C
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste err_code: 0
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste feature: TIM:ENE
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste hw_ver: 4.0
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste icon_hash:
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste latitude_i: 514595
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste led_off: 0
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste longitude_i: 119690
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste mac: E4:C3:2A:2C:E9:C4
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste mic_type: IOT.SMARTPLUGSWITCH
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste model: HS110(EU)
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste next_action: HASH(0x4521290)
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste oemId: BC7DF59F436483CD3D8396111011B83E
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste on_time: 0
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste relay_state: 1
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste rssi: -61
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste status: new
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste sw_ver: 1.0.5 Build 200917 Rel.095551
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste updating: 0
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste on
2020-12-31 10:38:30.919 TPLinkHS110 HS110_Zahnbuerste decode_json: ok


Klicke ich nochmal passiert nichts.

Liegt hier eventuell ein Fehler vor, da das die Revision 4 ist?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 08 Januar 2021, 08:08:30
Stell mal verbose auf 5 und schau dann mal, was im Log steht
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 08 Januar 2021, 08:44:27
Ich habe Steckdose einmal auf on und einmal auf off gestellt:


2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test decode_json: ok
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test decode_json: ok
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test active_mode: none
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test alias: Test
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test err_code: 0
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test icon_hash:
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test led_off: 0
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test next_action: HASH(0x49171c8)
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test on_time: 0
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test relay_state: 1
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test rssi: -52
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test status: new
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test updating: 0
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test on
2021-01-08 08:43:35.538 TPLinkHS110 HS110_Test decode_json: ok
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test decode_json: ok
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test decode_json: ok
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test active_mode: none
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test alias: Test
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test err_code: 0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test icon_hash:
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test led_off: 0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test next_action: HASH(0x4917be8)
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test on_time: 0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test relay_state: 0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test rssi: -58
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test status: new
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test updating: 0
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test off
2021-01-08 08:43:36.371 TPLinkHS110 HS110_Test decode_json: ok


Soll ich noch weitere Logs erzeugen?

//

Das ist eine andere Steckdose als die oben. Ich hatte die zurück geschickt, um einen Hardwaredefekt auszuschließen. Bei dieser habe ich absichtlich kein Software-Update gemacht.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 08 Januar 2021, 18:36:36
Bitte vor dem On/Off mal das "verbose" Attribut für Dein Device auf 5 setzen.
Da sollte deutlich mehr an Logging-Informationen angezeigt werden
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 09 Januar 2021, 11:46:17
Das habe ich vorher schon getan und jetzt noch einmal gecheckt, scheinbar hat es jetzt aber doch funktioniert ;)

2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test active_mode: none
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test alias: Test
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test err_code: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test icon_hash:
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test led_off: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test next_action: HASH(0x46565c0)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test on_time: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test relay_state: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test rssi: -49
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test status: new
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test updating: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test off
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test active_mode: none
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test alias: Test
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test err_code: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test icon_hash:
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test led_off: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test next_action: HASH(0x47abba0)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test on_time: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test relay_state: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test rssi: -55
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test status: new
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test updating: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test off
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test active_mode: none
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test alias: Test
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test err_code: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test icon_hash:
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test led_off: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test next_action: HASH(0x47ad1f8)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test on_time: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test relay_state: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test rssi: -52
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test status: new
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test updating: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test off
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test active_mode: none
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test alias: Test
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test err_code: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test icon_hash:
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test led_off: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test next_action: HASH(0x43ab6d0)
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test on_time: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test relay_state: 1
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test rssi: -55
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test status: new
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test updating: 0
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test on
2021-01-09 11:44:58.161 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test decode_json: ok
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test active_mode: none
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test alias: Test
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test dev_name: Smart Wi-Fi Plug With Energy Monitoring
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test deviceId: 80069D47071F088D865AFA509FF121FA1DA8665A
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test err_code: 0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test feature: TIM:ENE
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test hwId: 06D9793BF7C4C3E37A386CB6C5D4A929
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test hw_ver: 4.0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test icon_hash:
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test latitude_i: 514595
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test led_off: 0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test longitude_i: 119690
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test mac: E4:C3:2A:2C:E3:3F
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test mic_type: IOT.SMARTPLUGSWITCH
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test model: HS110(EU)
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test next_action: HASH(0x4655d38)
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test oemId: BC7DF59F436483CD3D8396111011B83E
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test on_time: 0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test relay_state: 0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test rssi: -53
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test status: new
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test sw_ver: 1.0.4 Build 191111 Rel.143500
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test updating: 0
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test off
2021-01-09 11:44:58.862 TPLinkHS110 HS110_Test decode_json: ok


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 09 Januar 2021, 13:30:27
Kannst Du mal im Modul schauen, wie die ersten 4 Zeilen des Modules aussehen und diese hier posten!?

Ich meine diesen Part:

################################################################
# $Id: 24_TPLinkHS110.pm 21645 2020-04-12 09:11:23Z vk $
#
#  Release 2020-04-12
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 09 Januar 2021, 15:49:46
root@81e8de770d97:/opt/fhem# cat ./FHEM/24_TPLinkHS110.pm | head -n 4
################################################################
# $Id: 24_TPLinkHS110.pm 19532 2019-06-02 06:38:05Z vk $
#
#  Release 2019-05-31 SendCommand2


Aha, ich sehe schon, dass das eine alte Version ist.
Ich nutze fhem mit dem offiziellen Docker-Image. Fehlt da vielleicht das Update drin oder muss ich das manuell aktualisieren?

fhem:
    image: fhem/fhem:latest


root@raspberrypi:/opt/fhem/docker# docker-compose pull fhem
Pulling fhem ... done
root@raspberrypi:/opt/fhem/docker# docker-compose up -d
docker_fhem_1 is up-to-date
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 09 Januar 2021, 21:07:51
Das Modul ist im FHEM-Repository up-to-date und auch das Docker-Image (ich verwende auch Docker) sollte es enthalten.
Das ist sehr komisch.

Hier gibt es das aktuelle Modul:

https://github.com/kettenbach-it/FHEM-TPLink-HS110
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 10 Januar 2021, 01:21:31
Ich habe den Container einmal vernichtet und frisch gepullt:

root@raspberrypi:/opt/fhem/docker# doc stop && doc rm -f && yes | docker system prune -a --volumes && doc up -d && doc exec fhem cat ./FHEM/24_TPLinkHS110.pm | head -n 4
Stopping docker_fhem_1 ... done
Going to remove docker_fhem_1
Removing docker_fhem_1 ... done
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all volumes not used by at least one container
  - all images without at least one container associated to them
  - all build cache

Are you sure you want to continue? [y/N] Deleted Images:
untagged: fhem/fhem:latest
untagged: fhem/fhem@sha256:75973596e008dd3f1dd88c92abce9d644d326302817917fa867b6f48241e40b8
deleted: sha256:85af1223416b39e78d77c91f7fa35cbbe9dedda4031ee8aa3d3f2366510819cf
deleted: sha256:80f64f602147a66c6ec7c18f0b60207a939f3d850798c3ed197e542431163de9
deleted: sha256:480096afdef5f2c66b983e51f96d54f2375e922d070caca4f2f7c477e00e4b97
deleted: sha256:69622e1e300fefeca7fb1fef41f9738e132a9722c0b3b636b217579ee82b620c
deleted: sha256:86465334a93ec1b89243e6e166e36c0a3875380e48dcd6051b79e1b8e43db3f3
deleted: sha256:7adf15a0ec1508097db3aff1151dc7516797501aeabe59f99414a0514641ec41
deleted: sha256:6d2cee745772d5afe8eea401a786c3978898924b72e5e82187f97b72c5e4ebfc
deleted: sha256:62f52e1679a9108e74f103dd3dfc1e16f96a51afe017c2767fd18d58f533c9d9
deleted: sha256:24cbf67494a92b5e4531a57df01b20a9008f509a15a73a2fdf054a97ac66f8ca
deleted: sha256:68ff9fc844f93ef466d66f9d212ca34a9a2e1497008a05c993238e4eb9af1139
deleted: sha256:f52c859a64b6962a95f371754a7fcc65922262b3a71da7ed94a3a3330c52b561
deleted: sha256:4453e2c480ed2cea09240cde5ee8ef06a4b26666d2c8cbccc3ffbdd6b043a5a9
deleted: sha256:82544df279011c5ae4c248d7081c8bea38f15ef3eae3890f7e226d5bc71a2ff3
deleted: sha256:55221c3e13f68f78a319ef8b526411760b346308da6fc5a01738aed02722b79c
deleted: sha256:475d3a38ae6f47f385a15de8fa730acd7c3b62de5a1f23306abc3cdebd5584ba
deleted: sha256:aae879272b7f56ff6222bd8ac4377ac6648a68fa5416a6b08e3911c7d7f73431
deleted: sha256:48a94f296076b031618544a1c90387bd780918448907094f2525b41aa5661dcf
deleted: sha256:352c3217a0e0b0e937d6373aa2cb511332147a65124f83758697692add99b313

Total reclaimed space: 1.403GB
Pulling fhem (fhem/fhem:latest)...
latest: Pulling from fhem/fhem
ebde10b25101: Pull complete
f591c25c1b7a: Pull complete
36b17dac7d72: Pull complete
ba5d7392f8d2: Pull complete
4a66da5bae34: Pull complete
227c6149b98e: Pull complete
fde861b149d5: Pull complete
3b7595832102: Pull complete
b5a63e62d178: Pull complete
e0865e2c305a: Pull complete
b4b5fe054902: Pull complete
28fb8432ab02: Pull complete
32ccab69f84f: Pull complete
f71d771135d7: Pull complete
190bcec24dad: Pull complete
f81d398c588a: Pull complete
990e6a3ad8a4: Pull complete
Digest: sha256:75973596e008dd3f1dd88c92abce9d644d326302817917fa867b6f48241e40b8
Status: Downloaded newer image for fhem/fhem:latest
Creating docker_fhem_1 ... done
################################################################
# $Id: 24_TPLinkHS110.pm 19532 2019-06-02 06:38:05Z vk $
#
#  Release 2019-05-31 SendCommand2



Das war auf meinem Raspberry Pi 4.

Ich habe den Container auf meinem Laptop (amd64) ausgeführt und siehe da:

root@laptop:/tmp/fhem# doc exec fhem cat ./FHEM/24_TPLinkHS110.pm | head -n 4

################################################################
# $Id: 24_TPLinkHS110.pm 21645 2020-04-12 09:11:23Z vk $
#
#  Release 2020-04-12


Das sieht für mich so aus, als wäre das Image für die Architektur armv8 (müsste das sein) nicht aktuell? Hast du fhem auf einem RPi laufen?

// zumal alle Module 2019 das letzte Update erhalten haben zu scheinen. :O

Ich habe zudem mal ein paar Informationen aus der Oberfläche angehangen:

Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 10 Januar 2021, 10:08:02
Ok, Kommando zurück!
Es gab einen Fehler beim mounten in meiner Konfiguration. Ich habe versehentlich die Module in ein Volume ausgelagert. So kann das natürlich nichts werden :-\
Mein Fehler, tut mir leid :(
Trotzdem ganz lieben Dank für die Hilfe! :)
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 10 Januar 2021, 19:20:12
Geht's denn jetzt?

Tip: Du musst nur die fhem.cfg auf ein Volume legen (Symlink). Der Rest gehört ins Image. Dann passiert sowas nicht.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 11 Januar 2021, 13:35:10
Ja, jetzt läuft es :)

Ich hatte mich an dem Beispiel hier orientiert: https://github.com/fhem/fhem-docker/blob/dev/docker-compose.yml
Dort wird der komplette fhem-Ordner in das Volume gepackt.

Ich hatte nun versucht, notwendige Ordner und Dateien (fhem/.config/, fhem/.ssh/, fhem/fhem.cfg, fhem/fhem.cfg.bak, fhem/log/, fhem/restoreDir/, fhem/www/) in ein volume auszulagern, jedoch wurde mein TelegramBot dann nach jedem Neustart entfernt.

Das war der Moment, in dem ich gemerkt habe, dass man einfach "update all" eingeben kann - und zack - alles aktuell.  ;D
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 11 Januar 2021, 19:14:42
Super, dass es läuft.

Zitat von: -kw am 11 Januar 2021, 13:35:10
Ich hatte mich an dem Beispiel hier orientiert: https://github.com/fhem/fhem-docker/blob/dev/docker-compose.yml
Dort wird der komplette fhem-Ordner in das Volume gepackt.

Das Beispiel ist total Unsinn und stellt das Docker-Konzept komplett auf den Kopf. Alles ausser de fhem.cfg gehört in das Image und nicht ins Volume.

Ich baue mit einem Dockerfile mein eigenes Image und lade ist meine private Registry.
Wenn ich eine neue Version von FHEM starten will, baue ich das Image. Bis auf die fhem.cfg und ein paar Dingen im "vk" Folder wird alles neu erzeugt.

Hier steht wie das geht:


➜ volker@volkers-mbp ~/PycharmProjects/dockerfiles/fhem > cat Dockerfile
FROM fhem/fhem:latest
COPY pre-start.sh /
RUN chmod a+x /pre-start.sh



➜ volker@volkers-mbp ~/PycharmProjects/dockerfiles/fhem > cat pre-start.sh
#!/bin/bash
ln -s /opt/fhem/vk/99_myUtils.pm /opt/fhem/FHEM/99_myUtils.pm
# More personal links go here




version: '3.7'
services:
  fhem:
    image: eu.gcr.io/kettenbach-it/fhem:20200521
    build: .
    container_name: fhem
    restart: always
    networks:
      default:
        ipv4_address: 192.168.11.131
    volumes:
      - /opt/fhem/fhem.cfg:/opt/fhem/fhem.cfg
      - /opt/fhem/db.conf:/opt/fhem/db.conf
      - /opt/fhem/log:/opt/fhem/log
      - /opt/fhem/restoreDir:/opt/fhem/restoreDir
      - /opt/fhem/vk:/opt/fhem/vk
      - /opt/fhem/FhemUtils:/opt/fhem/FhemUtils
    environment:
      FHEM_UID: 0
      FHEM_GID: 6061
      TIMEOUT: 10
      RESTART: 1
      TELNETPORT: 7072
      TZ: Europe/Berlin
      APT_PKGS: "vim less libio-socket-timeout-perl libio-socket-multicast-perl ow-shell libownet-perl libwww-curl-perl"
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: -kw am 11 Januar 2021, 20:10:14
Mystisch, db.conf und FhemUtils habe ich gar nicht. Ist aber nicht weiter schlimm, ich habe mir jetzt mit dem Update-Befehl geholfen. Ich danke dir. :)
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 11 Januar 2021, 20:23:22
6x TP-Link HS110 zu verkaufen!

Da ich nach und nach aus FHEM aussteige, brauche ich ab sofort meine HS110 TP110 für die ich mein Modul 24_TPLinkHS110 entwickelt habe, nicht mehr.
Es handelt sich um 5x um die Hardwareversion 1.0 und 1x um die Version 3.0

Alle diese HS110 waren nie mit der Cloud verbunden. Daher ist noch die ursprüngliche Software darauf und die funktioniert daher einwandfrei mit FHEM 24_TPLink und ggf. auch anderen Systemen.

Die 6 Stück mit HW 1 haben die Firmware 1.0.8 Build 151101 Rel.24452 und sind hier zu finden: https://www.ebay-kleinanzeigen.de/s-anzeige/smart-wlan-plug-tplink-hs110-hw-v1-0-funktioniert-mit-fhem-co/1631159647-168-4906

Die HW 3 hat die Firmware 1.4.3 Build 171009 Rel.104144 und ist hier zu finden: https://www.ebay-kleinanzeigen.de/s-anzeige/smart-wlan-plug-tplink-hs110-hw-v3-0-funktioniert-mit-fhem-co/1631169709-168-4906

Früher oder später wäre es vermutlich auch sinnvoll, wenn es noch einen weiteren Maintainer für den Code geben würde, der sich hier finden:
https://github.com/kettenbach-it/FHEM-TPLink-HS110

Wer dazu Lust hat, kann sich gerne melden.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 16 Januar 2021, 11:50:30
Die TPLink HS110 sind weg
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Coachi am 14 Februar 2021, 10:06:07
Hallo,

ich bin Fhem Neuling und versuche gerade eine HS100 zu integrieren. Bei dem Versuch mit "define WLAN_Steckdose_1 TPLinkHS110 192.168.7.144" bekomme ich die Meldung "Cannot load module TPLinkHS110" von Fhem zurück.
Die Abhängigkeiten IO::Socket::SSL und IO::Socket::INET habe ich nachinstalliert.

Wie kann ich denn weiter vorgehen um dem Fehler auf die Schliche zu kommen?

Viele Grüße
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: pc1246 am 14 Februar 2021, 12:33:12
Moin
Und herzlich willkommen im Forum!
Ist Dein fhem aktuell? Wobei ich gerade mal nachgesehen habe, das Modul ist schon ca 4 Jahre im Repository!
Da kann ich nur eine Schreibfehler vermuten!
Sind Deine Zitate kopiert, oder getippt?
Nutze bitte die Raute (#) ueber den Smilies wenn Du Code einfuegst! Das macht es allen einfacher!
Gruss Christoph
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 15 Februar 2021, 08:55:22
Zitat von: Coachi am 14 Februar 2021, 10:06:07
Hallo,

ich bin Fhem Neuling und versuche gerade eine HS100 zu integrieren. Bei dem Versuch mit "define WLAN_Steckdose_1 TPLinkHS110 192.168.7.144" bekomme ich die Meldung "Cannot load module TPLinkHS110" von Fhem zurück.
Die Abhängigkeiten IO::Socket::SSL und IO::Socket::INET habe ich nachinstalliert.

Wie kann ich denn weiter vorgehen um dem Fehler auf die Schliche zu kommen?

Viele Grüße

Sind die Perl-Module JSON und Data__Dumper installiert?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Coachi am 15 Februar 2021, 20:14:00
Hallo,
sorry für die Verspätung, ich bekomme noch keine Benachrichtigung bei einem Beitrag

Ich konnte das Problem gestern noch lösen indem ich die besagten Perl-Module nochmal installiert habe. Vermutlich habe ich beim ersten mal beim installieren was falsch gemacht. War eig fast klar das es das Modul ja schon länger gibt und ja auch funktioniert...

Danke trotzdem für eure Rückmeldungen
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ReviloEgros am 03 März 2021, 02:21:08
Hi,

mal eine kurze Frage zu den gemessenen Energiewerten. Vergleiche ich die Kasa App mit den Daten aus FHEM, habe ich ein riesiges ? über dem Kopf.

FHEM und Kasa zeigen beide bei power den selben Wert, nur alles andere ist irgendwie anders.

daily_total in FHEM bei 0.001, Kasa 0.00kWh
daily_average in FHEM 0.724333333333333, Kasa bei 7 Tagen 1.30kWh und bei 30 Tagen 1.18kWh
monthly_total in FHEM 2.173, Kasa bei 30 Tagen 35.3kWh.

Wie errechnet das Modul die Verbrauchsdaten und in welcher Einheit sind sie. Wie kommt diese Differenz zwischen Kasa und Modul zu stande bzw. was muss ich die umrechnen, um auf die tatsächlichen Werte zu kommen. Oder sind die Werte die das Modul liefert die tatsächlichen und die Kasa App errechnet was anderes?

Ich würde gerne den Verrbauch loggen um die Kosten zu berechnen, nur dazu müsste ich erst einmal wissen, was genau das Modul da anzeigt.

Hier mal ein List von dem Device:
Internals:
   DEF        192.168.188.21
   FUUID      5c4dc69e-f33f-59c6-8250-3e3d7a7ef8e93b22
   HOST       192.168.188.21
   INTERVAL   60
   NAME       Trockner
   NEXTUPDATE Wed Mar  3 02:16:12 2021
   NR         91
   STATE      on
   TIMEOUT    1
   TYPE       TPLinkHS110
   READINGS:
     2021-03-03 02:15:12   active_mode     none
     2021-03-03 02:15:12   alias           Trockner
     2021-03-03 02:15:12   current         0.032185
     2021-03-03 02:15:12   daily_average   0.724333333333333
     2021-03-03 02:15:12   daily_total     0.001
     2021-03-03 02:15:12   decode_json     ok
     2021-03-03 02:15:12   dev_name        Wi-Fi Smart Plug With Energy Monitoring
     2021-03-03 02:15:12   deviceId        800641F264509XXXXXX4D5962D207F62194DXXXX
     2021-03-03 02:15:12   err_code        0
     2021-03-03 02:15:12   feature         TIM:ENE
     2021-03-03 02:15:12   fwId            851E8C7225C322XXXXXXA3AFDACDXXXX
     2021-03-03 02:15:12   hwId            45E29DA8382494XXXXXX88B52A0BXXXX
     2021-03-03 02:15:12   hw_ver          1.0
     2021-03-03 02:15:12   icon_hash       
     2021-03-03 02:15:12   latitude        XX.XXXXXX
     2021-03-03 02:15:12   led_off         0
     2021-03-03 02:15:12   longitude       XX.XXXXXX
     2021-03-03 02:15:12   mac             XX:XX:XX:XX:XX:XX
     2021-03-03 02:15:12   model           HS110(EU)
     2021-03-03 02:15:12   monthly_total   2.173
     2021-03-03 02:15:12   oemId           3D341ECE302XXXXXX9E31CE2430XXXX
     2021-03-03 02:15:12   on_time         3426879
     2021-03-03 02:15:12   power           0.473554
     2021-03-03 02:15:12   relay_state     1
     2021-03-03 02:15:12   rssi            -57
     2021-03-03 02:15:12   state           on
     2021-03-03 02:15:12   sw_ver          1.1.4 Build 170417 Rel.145118
     2021-03-03 02:15:12   time            2021-3-3 2:15:12
     2021-03-03 02:15:12   total           49.14
     2021-03-03 02:15:12   type            IOT.SMARTPLUGSWITCH
     2021-03-03 02:15:12   updating        0
     2021-03-03 02:15:12   voltage         233.311815
   helper:
     bm:
       TPLinkHS110_Set:
         cnt        136
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        03.03. 01:58:12
         max        0.00559401512145996
         tot        0.383682489395142
         mAr:
           HASH(0x5616a2133848)
           Trockner
           ?
Attributes:
   disable    0
   event-on-change-reading power,state
   group      Geräte
   icon       scene_clothes_dryer
   interval   60
   room       08_Hauswirtschaft


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: gramtoc am 23 Juni 2021, 16:28:22
Hallo,

habe mir kürzlich das Model KP115 über Amazon zugelegt. Eigentlich mit Energieanzeige. Wird auch in der KASA-App angezeigt. Hab es normal angelegt. Schalten geht, jedoch fehlt mir das Reading 'power'. Kann man da was machen?

Gruß
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: gramtoc am 11 Juli 2021, 16:54:08
Keiner eine idee?
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: keymaster am 18 August 2021, 17:02:40
Habe mal den Code etwas angepasst. So werden auch die Verbrauchswerte des KP115 angezeigt. Ist etwas quick an dirty geworden.
Die Abfrage des Model wurde um den KP115 erweitert. Da die Hardwareversion des KP115 leider 1 ist, passt dies mit dem Hardwaremapping nicht zusammen. Der KP115 benutzt die Ausgabe des HS110 V2. Somit wird nun vor der Auswahl des hw_mapping nochmals das Model aus der JSON gelesen. Ist die Ausgabe "KP115(EU)" wird die Variable $hm_ver auf 2.0 gesetzt. Somit passt dann auch die Auswahl des richtigen Mappings.
Eventuell werde ich das ganze noch mal etwas sauberer umschreiben.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: WhyTea am 26 August 2021, 19:22:18
Hallo
Da ich bei mir umfangreiche Umbaumaßnahmen durchgefürt habe und nun alles schön Unterputz ist gebe ich meine HS110EU V3 ab.
Es sind 3 voll funktionsfähige und 1 die etwas zwischert/pfeifft aber ansonsten funktioniert.

Ich würde die 3 für 5€ pro Stück + Versand verkaufen. Wenn jemand alle drei kauft lege ich die eine pfeifende kostenlos dabei. ;-)

Bei Interesse einfach ne PM.

Gruß
Daniel
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 20 September 2021, 21:10:46
Zitat von: keymaster am 18 August 2021, 17:02:40
Habe mal den Code etwas angepasst.
...
Somit passt dann auch die Auswahl des richtigen Mappings.
Eventuell werde ich das ganze noch mal etwas sauberer umschreiben.

Hast du nochmal drüber geschaut und es sauber gemacht? ;-)
Funktioniert deine Version mit gemischten
HS100/110 und KP115?

Ich will meine HS1x0 nicht austauschen.


Christian
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: dulan_menace am 21 September 2021, 18:48:07
Zitat von: ChrisH am 20 September 2021, 21:10:46
Hast du nochmal drüber geschaut und es sauber gemacht? ;-)
Funktioniert deine Version mit gemischten
HS100/110 und KP115?

Ich will meine HS1x0 nicht austauschen.


Christian

hey,

also hab auch das TPLinkHS110.pm angepasst...
Version im Anhang...

mit der Version funktioniert HS110 HS100 und KP115
hab mir jetzt aber den Code von keymaster nicht angeschaut lest sich aber als hätte er das selbe gemacht wie ich...

meine Änderung
- Zeile 199 - 206
- Zeile 253 - 259

LG.
Erwin
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 29 September 2021, 17:52:14
Funktioniert auch bei mir fuer beide wie es scheint.

Sollen Wir (Du oder ich) einen pull request daraus machen?

Christian
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 25 Oktober 2021, 19:00:39
PR wäre sehr gut.
Ich nehme diese gerne auf https://github.com/kettenbach-it/FHEM-TPLink-HS110 entgegen.
Was ich nicht leisten kann (und will, weil es mittelfristig zu schlechter Software führt) ist hier im Forum Code-Schnipsel austauschen.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 28 Oktober 2021, 08:32:32

Noch ein Hinweis: ich reagiere hier in diesem Forum - wenn überhaupt - dann nur mit bis zu mehreren Tagen Verzögerung.
Für akute Bugs oder eigene Code Beiträge (in Form von Pull-Requests) reagiere ich auf Github schneller.
Allgemeinen User-Support werde ich aber weder dort noch hier leisten, da sich 99% aller Probleme mit dem Modul durch das Lesen dieses Threads lösen lassen und die restlichen 1% von anderen User beantwortet werden können.


Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 28 Oktober 2021, 08:34:30
Und noch ein Hinweis: wenn jemand Module hier aus diesem Thread einsetzt, so werden diese beim nächsten Update mit der alten Version überschrieben.
Daher sollten diese wie beschrieben per PullRequest über den Github in das offizielle Repository eingepflegt werden.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 02 November 2021, 17:29:11
Ich habe gestern den ersten KP115 eingebaut und muss feststellen das mir (mindestens) 2 Werte fehlen:

current:
power:

beide sind 0. In der KASA App sind aktuell >1800Watt angezeigt. Ideen wie ich da troubleshoote?



EDIT: nachdem ich angefangen habe im Modul rumzuedieren und mir eine LOG3 Zeile reingepackt habe geht es.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 06 November 2021, 12:09:33
Und jetzt fehlen Power und Current schon wieder.


Christian
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 07 November 2021, 08:38:10
Das kommt vermutlich daher, dass die Patches nicht an mich ins Github übermittelt wurden sondern hier im Forum verbreitet werden.
Pech!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 07 November 2021, 18:20:51
Oh Mann. Danke.   :-[

Ich hab vor ein paar Tagen einen OS Update aller meiner Rechner laufen lassen dabei ist wohl auch eine neue fhem Version reingerutscht.

Ich mach den Pull Request dann doch bald.

Christian.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: ChrisH am 09 November 2021, 09:34:16
Zitat von: ChrisH am 07 November 2021, 18:20:51

Ich mach den Pull Request dann doch bald.


PR ist erstellt. Ich hoffe das passt so, das ist mein zweiter PR und der erste Pull Request ohne Unterstuetzung.

Christian
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 09 November 2021, 12:56:12
PR ist gemerged und ab morgen auch im SVN
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 29 November 2021, 11:42:32
Hat eigentlich jemand die KP105 schon mit dem Modul probiert?
Die gibt's grad bei Amazon um knapp EUR 10,-; die HS100/HS110 sind de facto ja nicht mehr erhältlich.

Da die KP115 nun angeblich funktioniert, würd' ich davon ausgehen, dass die KP105 ebenfalls läuft.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 01 Dezember 2021, 13:49:41
Zitat von: TheTrumpeter am 29 November 2021, 11:42:32
Hat eigentlich jemand die KP105 schon mit dem Modul probiert?
Die gibt's grad bei Amazon um knapp EUR 10,-; die HS100/HS110 sind de facto ja nicht mehr erhältlich.

Da die KP115 nun angeblich funktioniert, würd' ich davon ausgehen, dass die KP105 ebenfalls läuft.
Ich beantwort' die Frage mal selbst, nachdem die Amazon-Lieferung vor einigen Minuten eingetroffen ist...

Funktioniert, Modell meldet sich als "KP105(EU)" und lässt sich problemlos schalten.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: fhem@supergut am 16 Dezember 2021, 10:53:46
Danke für die gute Arbeit. HS110, eingerichtet, funktioniert. Super!
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: TheTrumpeter am 11 Juli 2022, 16:34:00
Habe seit kurzem 2 weitere Steckdosen (1x HS110 und 1x HS100) im Einsatz und bei der Gelegenheit festgestellt, dass sie immer wieder keine aktuellen Daten liefern...

Habe nun etwas genauer draufgeschaut und einen möglichen Zusammenhang mit meiner Fritz.Box (bzw. einem der WLAN-Extender) festgestellt.
Insgesamt sind dzt. 5 Steckdosen dauerhaft im Einsatz. 2 davon sind unauffällig und mit dem Extender im Keller verbunden. Die 3 auffälligen Steckdosen sind alle mit dem Extender in der Garage verbunden. Habe nun bei Problemen immer nachgeschaut, ob die Steckdosen, wenn sie keine Readings mehr liefern, noch verbunden sind. Die Fritz.Box sagt, dass sie verbunden sind und dass die IP-Adresse ,,gerade" genutzt wurde. (Die Fritz.Box zeigt in der Detailansicht der Geräte an, wann die IP-Adresse zuletzt genutzt wurde. Die Uhrzeit war immer höchstens 1 Minute alt, wenn ich draufgeschaut habe.)
Über Ping waren die Steckdosen aber nicht erreichbar und auch die Kasa-App hat sie nicht angezeigt. Wenn ich dann das betroffene Gerät aus der Fritz.Box ,,gelöscht" habe, d.h. in der Detailansicht des Geräts die ,,Einstellungen zurückgesetzt" habe, hat sich das Gerät ein paar Sekunden später wieder verbunden und auch in FHEM wurden wieder aktuelle Werte angezeigt. Ausserdem hat die Kasa-App das Gerät dann wieder angezeigt.

Hat das schon jemand ausprobiert (gibt in anderen Routern sicher ähnliche Einstellungen) oder bin ich der Einzige, der (wieder?) Verbindungsprobleme hat?
(Am gleichen WLAN-Extender habe ich 2 weitere Geräte permanent verbunden, von denen 1 komplett unauffällig ist und 1 nur alle paar Wochen mal kleinere ,,Aussetzer" hat, die aber auch eine andere Ursache haben könnten.)

Ach ja, die Geräte wurden zwar mit der Kasa-App eingerichtet (mir ist kein anderer Weg bekannt ihnen das WLAN und das Passwort ,,beizubringen"), dürfen aber nicht ,,nach-Hause-telefonieren" und in der Kasa-App bin ich auch nicht ,,angemeldet".
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: jnewton957 am 18 Dezember 2022, 13:25:19
gelöscht
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: CBSnake am 28 Februar 2023, 16:01:58
Moin,

auch wenn Volker hier nicht mehr regelmäßig liest versuche ich es zuerst hier :-)

Bei mir läuft FHEM auf einem Server mit Debian 10 (Buster), die 2 x HS110 taten bis vor kurzem klaglos ihren Dienst. Auf dem Server mach ich regelmäßig Updates und ich vermute bei einem hat es dann wohl was "zerschossen" ich kann die HS110 zwar lesen, Verbrauch etc. aber nicht mehr schalten.

Der Log ist voll von:

2023.02.28 00:03:16.410 1: TPLinkHS110: steckdose_08 Get failed - Couldn't connect to 192.168.222.64:9999: IO::Socket::INET: connect: timeout

Die hier erwähnten Pakete hab ich nochmal geprüft, alle installiert.
Wo könnte ich mit der Fehlersuche weitermachen?

Viele Grüße
Achim
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 04 März 2023, 08:22:13
Guten Morgen,

ich lese hier durchaus regelmäßig. Aber nur einmal pro Woche. Ich beantworte aber nicht jede Frage, da viele sich durch Nachlesen im Forum oder Googlen beantworten lassen. Ferner rate ich dazu, zu schaltbaren Zwischensteckern zu wechseln, auf denen Tasmota läuft und die dann per MQTT gesteuert werden.

Die Fehlermeldung bedeutet, dass FHEM den Stecker über das Netzwerk nicht erreichen kann. Du wirst die Stecker auch nicht Pingen können, vermute ich.

Ursachen können Firewalls, Switches oder die Stecker selbst sein. Weniger dass hier besprochene Modul.

Gruß
Volker
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: CBSnake am 04 März 2023, 10:22:44
Moin Volker,

doch pingen geht, eben probiert, interessanterweise gehen 3 von 4 Pakete aber dabei verloren ;-)
Auslesen geht ja auch, Verbrauch usw. wird erfasst nur schalten geht leider nicht mehr :-(

Viele Grüße
Achim
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 11 März 2023, 08:26:39
Bei einem so hohen Packetloss es ist kein Wunder, dass das nicht richtig funktioniert. Das Netzwerk hat ein erhebliches Problem.
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: CBSnake am 11 März 2023, 09:05:21
Moin,

ich hab eben mal ne kleine Ping-Orgie gemacht. Auffällig ist halt, GHoma, Shelly, Sonoff antworten sofort und 4 mal, TPLink geht manchmal, manchmal geht garnichts oder nur der erste Ping und der zweite dritte und vierte nicht mehr :-(
Titel: Antw:24_TPLinkHS110.pm: Support für TPLink HS100/HS110 v1/2/3 Steckdosen
Beitrag von: Volker Kettenbach am 12 März 2023, 13:12:06
Vlt. ist auch die TPLink defekt