Hauptmenü

Tapo110

Begonnen von Sepp, 15 September 2024, 11:10:18

Vorheriges Thema - Nächstes Thema

Sepp

Hallo
habe eine frage wie ich die Tapo P110 in fhem bekomme :(
habe die versucht
define AU.Garten_Teich TPLinkHS110 192.168.178.131
meldung kein Modul habe es aber drin 24_TPLinkHS110.pm

Perl-Modul: IO::Socket::INET
Perl-Modul: IO::Socket::Timeout
auch das hab ich gemacht
vieleicht kann mir jemand helfen

passibe

Kannst du bitte mal die genaue Fehlermeldung posten, die FHEMWeb dir ausgibt, wenn du das device hinzufügen willst?
Eventuell auch irgendwelche Logeinträge, die generiert werden.

Danke!

Sepp

Erstmal Danke und das ist die Meldung:
Cannot load module TPLinkHS110

Und das steht im log

2024.09.15 18:54:15 1: reload: Error:Modul 24_TPLinkHS110 deactivated:
 Can't locate IO/Socket/Timeout.pm in @INC (you may need to install the IO::Socket::Timeout module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkHS110.pm line 37.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 37.

2024.09.15 18:54:15 0: Can't locate IO/Socket/Timeout.pm in @INC (you may need to install the IO::Socket::Timeout module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkHS110.pm line 37.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkHS110.pm line 37.

2024.09.15 18:55:11 2: (Shelly_HttpResponse:err) Device Teich has Error '192.168.178.106: No route to host (113) :: /status'
2024.09.15 18:55:11 2: (Shelly_HttpResponse:err) Device AlarmAU.WerkstattTuer has Error '192.168.178.96: No route to host (113) :: /status'

passibe

Ok ja, also die module fehlen.
Welches Betriebssystem nutzt du?
Für das nachinstallieren von Modulen am besten immer APT und nicht CPAN nutzen, also einfach "<Modulname> <Betriebssystem> package" googeln und dann das installieren.

Bei debian z.B. libio-socket-timeout-perl, also
sudo apt update && sudo apt install libio-socket-timeout-perl

Sepp

#4
Ist alles auf einem Raspi 5
er hat es  aber es geht noch nicht
log
2024.09.15 19:19:19 1: Anlage: Can't connect to 192.168.178.35:60128: Illegal seek
2024.09.15 19:19:19 1: Anlage: Can't connect to 192.168.178.35:60128: 192.168.178.35: No route to host (113)

2024.09.15 19:27:12 3: CallMonitor device opened
2024.09.15 19:27:12 1: Anlage: Can't connect to 192.168.178.35:60128: Illegal seek
2024.09.15 19:27:12 1: Anlage: Can't connect to 192.168.178.35:60128: 192.168.178.35: No route to host (113)
2024.09.15 19:27:12 2: AttrTemplates: got 264 entries
2024.09.15 19:27:44 3: TPLinkHS110: AU.Garten_Teich Set <on> called
2024.09.15 19:27:44 1: TPLinkHS110: AU.Garten_Teich Set failed - Couldn't connect to 192.168.178.131:9999: IO::Socket::INET: connect: Connection refused

2024.09.15 19:27:46 3: TPLinkHS110: AU.Garten_Teich Set <off> called
2024.09.15 19:27:46 1: TPLinkHS110: AU.Garten_Teich Set failed - Couldn't connect to 192.168.178.131:9999: IO::Socket::INET: connect: Connection refused

passibe

Läuft nicht unter Docker oder?

Sicher, dass die IP-Adresse von der Steckdose stimmt? Hast du eine statische IP vergeben? Kannst du die Steckdose pingen?
Kannst du mal ip route show ausführen und das hier posten?

Sepp

#6
Ip passt
Die Meldung in fhem: Unknown command ip, try help
Und bei State 3 fragezeichen???

passibe

Sorry, das ip-Kommando nicht in FHEM, sondern direkt über z.B. SSH.
(Oder wenn in FHEM, dann in Anführungszeichen und dann im Log schauen, der Output steht dann dort. Aber tbh lieber einfach über SSH.)

Sepp

#8
default via 192.168.178.1 dev wlan0 proto dhcp src 192.168.178.120 metric 600
192.168.178.0/24 dev wlan0 proto kernel scope link src 192.168.178.120 metric 60

aber bei STATE kommen die 3???

passibe

Ah, ich sehe du hast oben noch ein paar Logs hinzugefügt. Ok. "Connection refused" ist jetzt natürlich eine andere Fehlermeldung.

Aber ok, ich glaube ich verstehe jetzt – der Fehler liegt ganz wo anders: Du versuchst gerade die P110-Steckdose mit dem HS110-Modul zu steuern. Das geht nicht, weil P110 – zumindest soweit ich das überblicken kann – gar nicht lokal steuerbar ist, sondern das alles über den TP-Link-Account geht (deshalb auch connection refused, weil die Steckdose nichts bereitstellt, zu dem sich FHEM connecten könnte).

Du brauchst vermutlich dieses Modul: https://github.com/eisenfunk/24_TPLinkP100 (siehe auch hier).

Sepp

Habe ich gemacht und nun steht dies im log
2024.09.15 22:58:25 1: reload: Error:Modul 24_TPLinkP100 deactivated:
 Can't locate Crypt/Random/Seed.pm in @INC (you may need to install the Crypt::Random::Seed module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 84.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 84.

2024.09.15 22:58:25 0: Can't locate Crypt/Random/Seed.pm in @INC (you may need to install the Crypt::Random::Seed module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 84.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 84.

passibe

Dann wie oben erklärt das Paket suchen und per apt installieren.

Sepp


Genau da hänge ich kannst du mir sagen wie oder wo ich das Paket finde das es auch richtig ist
wäre dir echt dankbar

passibe

Wie gesagt, Modulname, Distribution und "package" googeln.
Hier also "Crypt::Random::Seed raspbian package".
Raspbian basiert auf debian, also am besten direkt nach Debian googeln – geht aber auch wenn man nur Raspbian eingibt.

Dann das Suchergebnis wählen, das "Details of package ..." als Überschrift hat, das ist meistens das erste. In diesem Fall wäre das diese Seite: https://packages.debian.org/sid/libcrypt-random-seed-perl

Dann hat man den Paketnamen, den man mit apt installieren kann.

Da fällt mir gerade ein: Alternativ kann man (geht evtl. sogar schneller als mit Google) einfach apt search Crypt::Random::Seed in der Kommandozeile (also über SSH, nicht über FHEM) eingeben, dann bekommt man auch das jeweilige Paket (hier zwar auch noch als falschen Treffer libbytes-random-secure-perl, aber das ist ja recht gut erkennbar, dass das nicht das richtige ist, weil der Name gar nicht passt).

Sepp


Also hab jetzt alles versucht komme einfach nicht zurecht werde wohl auf die P110 verzichten jedesmal wenn ich das einspiele sudo apt-get install libcrypt-random-seed-perl (denke es ist richtig) kann ich auf fhem nicht mehr zugreifen und musste es neu aufsetzen.
Aber trotzdem vielen Dank das du mir Helfen woltest aber ich lass es lieber.

Prof. Dr. Peter Henning

Zitatkann ich auf fhem nicht mehr zugreifen und musste es neu aufsetzen
Ersteres passiert ja manchmal. Aber warum dann "neu aufsetzen"? Das könnte man mit Sicherheit anders beheben, und dabei den Fehler gleich mit eliminieren.

LG

pah

Sepp

Klar kann man das
wenn man sich auskennt aber so eine Aussage bringt mich sicherlich nicht weiter immerhin hättest mir ja auch helfen können und nicht pah zu schreiben
Hätte mich auch interessiert was ich falsch gemacht habe :-\

passibe

PAH sind nur seine Initialen, das ist nicht abwertend gemeint.

Aber:
Weil wir nicht in deinen Computer schauen können, können wir auch nicht wissen, was schiefgelaufen ist – du müsstest dann z.B. Logeinträge von FHEM selbst posten, wenn es nicht startet, oder z.B. über journalctl -fu fhem.service herausfinden, was dein System sagt, wenn es versucht, FHEM nach der Paketinstallation zu starten.

Pakete deinstallieren geht übrigens mitsudo apt autoremove <PAKETNAME>und falls du auch Konfigurationsdateien dieser Pakete löschen willst mitsudo apt autoremove --purge <PAKETNAME>(kann man aber auch einfach googeln).

Also Troubleshooting wäre: Paket installieren, fhem neustarten, wenn es nicht klappt, Logeinträge anschauen (sowohl von FHEM selbst, als auch vom systemd-Service über journalctl), googeln oder ChatGPT fragen, was Logeinträge bedeuten, dann ggfs. Paket wieder deinstallieren und schauen was passiert, falls du dann immer noch nicht an die Ursache gekommen bist, hier posten.

Prof. Dr. Peter Henning


Sepp

Hallo
hab mal weiter nachgelesen und es könnte auch and der neuen Firmware Version liegen (wo ich ja total machtlos bin)
 P110
#    hw_ver 1.0
#    fw_ver 1.1.6 Build 221114 Rel.203339
#           1.2.3 Build 230425 Rel.142542
-----------------------------------------------
Meins
P110

#    fw_ver 1.3.1 Build 240621 Rel.162045
-----------------------------------------------------------------------

und ich hatte jetzt diese Meldung im Log :

2024.09.17 09:25:38 1: reload: Error:Modul 24_TPLinkP100 deactivated:
 Can't locate Crypt/Random/Seed.pm in @INC (you may need to install the Crypt::Random::Seed module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 84.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 84.

2024.09.17 09:25:38 0: Can't locate Crypt/Random/Seed.pm in @INC (you may need to install the Crypt::Random::Seed module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 84.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 84.

passibe

Huch, aber das ist doch die gleiche Fehlermeldung, die sagt, dass das Modul nicht installiert ist.

Hast du es denn installiert?
Was sagt
dpkg -s libcrypt-random-seed-perl
Falls da steht not installed, dann installieren und nach den oben genannten Troubleshooting-Schritten vorgehen, falls FHEM nicht mehr startet.

Sepp

das sagt ssh
dpkg -s libcrypt-random-seed-perl
dpkg-query: package 'libcrypt-random-seed-perl' is not installed and no informat                                                                             ion is available
also müsste ich das so instalieren?

sudo apt-get install libcrypt-random-seed-perl
wäre das so richtig
Danke an passibe (Pakete deinstallieren geht übrigens) mit

passibe

Ja, genau.
sudo apt-get install libcrypt-random-seed-perlund dann FHEM neustarten.

Sepp

Denke das es am Module da meine Steckdosen die hat fw_ver 1.3.1 Build 240621 Rel.162045 wie ich oben vermutet habe   
jetzt im log nichts mehr aber in fhem steht immer
Unknown module TPLinkP110

hab auf github schon die neueste pm installiert die geht nur wie oben beschrieben bis ver 1.1.6 Build 221114 Rel.203339

passibe

Wenn da steht unknown module, dann hat das erstmal nichts mit der Firmware zu tun, sondern dann ist das TPLinkP100-Modul entweder nicht richtig installiert oder nicht richtig angegeben.
Entsprechend lässt sich auch keine Aussage darüber treffen, ob das an der Firmware-Version liegt. Da steht übrigens auch:
# Tested version 0.4 on:
# P115, P110, P100 with all newer firmware versions

Ansonsten:
Das Modul heißt TPLinkP100 nicht TPLinkP110 – versuch es mal mit
define AU.Garten_Teich TPLinkP100 192.168.178.131 [benutzername] [passwort]

Sepp

Habs Versucht wieder Cannot load module TPLinkP100


passibe

Ok und im Log steht sonst nichts?

Was sagt:
ls -la /opt/fhem/FHEM/24_TPLinkP100.pmFalls da steht no such file or directory, dann nochmal aus GitHub runterladen und in das Verzeichnis kopieren und dann die Berechtigungen entsprechend setzen:
sudo chmod 644 /opt/fhem/FHEM/24_TPLinkP100.pm
sudo chown fhem:dialout /opt/fhem/FHEM/24_TPLinkP100.pm
Auch unabhängig davon prüfen, ob die Berechtigungen stimmen und ggfs. anpassen.

Sepp

Bei
ls -la /opt/fhem/FHEM/24_TPLinkP100.pm
kommt dann das:

-rwxrwxrwx 1 michael michael 22467 Sep 17 09:24 /opt/fhem/FHEM/24_TPLinkP100.pm

also ist doch normal alles ok?

passibe

Ja, eigentlich schon. Aber wie gesagt, lieber die Berechtigungen noch richtig setzen, siehe oben (sollte hier aber nicht dazu führen, dass es das Modul nicht laden kann, weil du hast es auf 777 (rwxrwxrwx) stehen).
Aber irgendwas müsste da eigentlich im Log auftauchen ...

Sepp

2024.09.17 13:07:03 1: reload: Error:Modul 24_TPLinkP100 deactivated:
Can't locate Crypt/Mode/CBC.pm in @INC (you may need to install the Crypt::Mode::CBC module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 86.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 86.

2024.09.17 13:07:03 0: Can't locate Crypt/Mode/CBC.pm in @INC (you may need to install the Crypt::Mode::CBC module) (@INC contains: ./lib ./FHEM . /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl ./FHEM/lib) at ./FHEM/24_TPLinkP100.pm line 86.
BEGIN failed--compilation aborted at ./FHEM/24_TPLinkP100.pm line 86.

das steh jetzt im log

passibe

Achso, sorry. Jetzt raffe ich es erst, der meckert jetzt über ein anderes fehlendes Modul als vorher. Du brauchst jetzt noch das Crypt::Mode::CBC Modul.
Vorgehensweise wie oben. Googeln oder apt search und dann mit apt installieren.

Falls weitere solcher Fehlermeldungen auftauchen, genauso vorgehen.

Sepp