fhempy: Tuya Cloud

Begonnen von dominik, 30 Juli 2021, 21:36:48

Vorheriges Thema - Nächstes Thema

Heiner

ich versuche gerade fhempy ans laufen zu bringen um mein Tuya einzubinden und scheitere leider.

Ich habe auf meinem PI zunaechst Python 3.7 installiert mit
Code: [Auswählen]
sudo apt install python3 python3-pip python3-dev libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libglib2.0-dev libdbus-1-dev bluez libbluetooth-dev
sowie ein
Code: [Auswählen]
sudo cpan Protocol::WebSocket
ausgefuehrt.

Dann in fhem mein updatefile erweitert
Code: [Auswählen]
update add https://raw.githubusercontent.com/dom...
und das update durrchgefuehrt
ein
Code: [Auswählen]
define local_pybinding BindingsIo Python

erzeugt zwar auch ein Pytonbinding_15733 der auch active ist,
aber  leider bekomme ich  nicht den "opened" status im neu definierten "local_pybinding"

fhempy_log meldet:
Unable to install package fhempy>=0.1.12: Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-9ja41_su/websockets/

Was kann ich tun? Danke fuer die Hilfe
Heiner
--------------------------------
fhem auf Pi3+
CUL 868MHz, Signalduino 434MHz, HM-CFG-USB
HM, THZ, Kostal, Somfy, Conbee, Pytonbinding, FritzBox, FTUI, MQTT2

dominik

Mach bitte mal ein manuelles Install

sudo -u fhem bash
pip3 install --upgrade fhempy

Poste dann den Output von pip3 bitte.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Hallo, ich habe hier ein Smart PIR sensor und er erkennt die Bewegung, aber von 10  Bewegungen kommt vielleicht mal eine  state Änderung bei Fhem an.

Hier die Daten:

READINGS:
     2021-09-17 17:14:41   active_time     1615490051
     2021-09-17 17:14:44   battery_state   middle
     2021-09-17 17:14:41   biz_type        0
     2021-09-17 17:14:41   category        pir
     2021-09-17 17:14:41   create_time     1604331696
     2021-09-17 17:14:41   icon            https://images.tuyaeu.com/smart/icon/ay1536023421083D2Q1d/156402198180ba176223b.jpg
     2021-09-17 17:14:41   ip              xx. xx. xx. xx
     2021-09-17 17:14:41   local_key       95c510682117187e
     2021-09-17 17:14:41   lon             13.0040561
     2021-09-17 17:14:41   name            Bewegungsmelder
     2021-09-17 17:14:41   online          on
     2021-09-17 17:14:41   owner_id        7466747
     2021-08-29 11:02:07   pir             pir
     2021-09-17 17:14:41   product_id      wqz93nrdomectyoz
     2021-09-17 17:14:41   product_name    Smart PIR sensor
     2021-09-17 17:17:44   state           nomotion
     2021-09-17 17:14:41   sub             off
     2021-09-17 17:14:41   time_zone       +01:00
     2021-09-17 17:14:41   uid             eu1574577924220XZPD4
     2021-09-17 17:14:41   update_time     1615490053
     2021-09-17 17:14:41   uuid            20401777d8bfc0da957b

dominik

Kann es sein, dass die nicht erkannten Events innerhalb von 3 Minuten waren? Der Sensor selbst liefert nämlich kein nomotion, das setze ich nach 180s.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Zitat von: Superposchi am 13 September 2021, 08:33:58
Das ist Schade, aber dann muss ich wohl oder Übel damit leben.

Der Ventilator und der Diffusor sind ja prinzipiell zwei verschiedene Geräte die nur durch zusammenstecken über die gleiche Stromquelle betrieben werden.
Warum sie in der SmartLift-App als ein Gerät angezeigt werden ist mir unklar. Darum mal die Frage ob es möglich wäre manuell ein zweites Device für einen Diffusor mit der gleichen IP zu erstellen und damit eventuell die Funktionen des Diffusors doch ansteuern zu können.

Ist etwas abstrakt gedacht, aber da ich nicht weiß wie die Tuya-Devices in Fhem erstellt und gesteuert werden (vor allem wie und wo die Auswahl des Gerätetyps festgelegt wird) dachte ich, ich frage einfach mal den Schöpfer des Moduls.

Die Devices kommen direkt vom Tuya Server. Ob es 1 oder 2 Devices sind liegt nur an der Definition bei Tuya. Du könntest die 2 Devices mit einem Dummy oder so kombinieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Zitat von: dominik am 17 September 2021, 18:44:59
Kann es sein, dass die nicht erkannten Events innerhalb von 3 Minuten waren? Der Sensor selbst liefert nämlich kein nomotion, das setze ich nach 180s.

Wenn der state nomotion ist dann heißt doch für mich es ist keine Bewegung erkannt. Wieso wird nicht auf motion geschaltet? Wie setzte ich den zurück?

dominik

Sorry, habe mich oben vertippt. Ich setze Motion für 180s und danach, wenn kein neues Motion kommt, wird auf nomotion gesetzt. Es ist also sichergestellt, dass auf jede Motion reagiert wird.

Prüfe bitte, ob nach 5 Minuten der Sensor jedes Mal reagiert, weil der Sensor reagiert sicher auch nicht immer. Die meisten Sensoren reagieren 1x und warten dann 180s bevor sie wieder ein Signal senden wenn sich jemand bewegt.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Der Sensor reagiert genau alle 10 Sekunden, da leuchtet er auf. Wie setzte ich ihn auf Motion? Steh grad aufm Schlauch :)

dominik

Ok, wenn er alle 10s reagiert, sollte auch in FHEM das Reading bei Auslösung neu gesetzt werden (auf die Zeit schauen).
Wenn sich dann 180s nichts tut, setze ich auf nomotion.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Zitat von: dominik am 17 September 2021, 20:01:22
Ok, wenn er alle 10s reagiert, sollte auch in FHEM das Reading bei Auslösung neu gesetzt werden (auf die Zeit schauen).
Wenn sich dann 180s nichts tut, setze ich auf nomotion.
In Fhem bleibt es auch bei alles 10 Sekunden Bewegung auf nomotion.

dominik

Geht es auf motion wenn du 180s wartest und dann wieder auslöst?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Zitat von: dominik am 18 September 2021, 15:37:51
Geht es auf motion wenn du 180s wartest und dann wieder auslöst?
Ich glaub er hat sich mitnaweile eingefahren.

dominik

Wie meinst du das? Reagiert er jetzt richtig?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

barneybaer

Zitat von: dominik am 18 September 2021, 20:18:57
Wie meinst du das? Reagiert er jetzt richtig?
Jap, er reagiert nun, wenn er auf nomotion steht und schaltet dann auf motion.

Superposchi

ZitatDie Devices kommen direkt vom Tuya Server. Ob es 1 oder 2 Devices sind liegt nur an der Definition bei Tuya. Du könntest die 2 Devices mit einem Dummy oder so kombinieren.
Das ist mir aktuell zu hoch, da ich noch kein Verständnis für die Tuya Geräte habe. Ich sehe nur was in der SmartLife-App angezeigt wird, da ist es ein Gerät.

In Fhem funktioniert es im Moment sowieso nicht. Es kommen zwar keine Fehlermeldungen beim ausführen von Set-Anweisungen oder notify's oder DOIF's etc. doch es ändert sich auch kein state oder Reading mehr. Anbei ein Listing:
Internals:
   DEF        tuya_cloud tuya_cloud_connector bf75378cf6e13718e0rvcj
   DEVICEID   bf75378cf6e13718e0rvcj
   FUUID      611fbd2a-f33f-6c14-0202-490ffa51a4026dee
   FVERSION   10_PythonModule.pm:0.182830/2019-01-16
   IODev      local_pybinding
   NAME       unit_sz_ventilator
   NR         62
   PYTHONTYPE tuya_cloud
   STATE      off
   TYPE       PythonModule
   READINGS:
     2021-09-13 20:32:58   active_time     1627922506
     2021-09-13 20:32:58   biz_type        18
     2021-09-13 20:32:58   category        fs
     2021-09-13 20:32:58   create_time     1627922506
     2021-09-13 20:32:58   icon            https://images.tuyaeu.com/smart/icon/bay1579257011827QOvk/05cb05801c69fa7b6bdacda9c7f21196.png
     2021-09-13 20:32:58   id              bf75378cf6e13718e0rvcj
     2021-09-13 20:32:58   ip              88.152.251.43
     2021-09-13 20:32:58   lat             51.0582495
     2021-09-13 20:32:58   local_key       1982dec4e5f7c905
     2021-09-13 20:32:58   lon             6.1029283
     2021-09-13 07:45:56   mode            normal
     2021-09-13 20:32:58   name            Ventilator
     2021-09-13 20:32:58   online          off
     2021-09-13 09:12:28   oszillation     on
     2021-09-13 20:32:58   owner_id        23921647
     2021-09-13 20:32:58   product_id      6awobc9jfnlwvqtw
     2021-09-13 20:32:58   product_name    ARC Humidifier
     2021-09-22 05:43:12   state           off
     2021-09-13 20:32:58   sub             off
     2021-09-13 20:32:58   time_zone       +02:00
     2021-09-13 07:45:41   timer           off
     2021-09-13 20:32:58   uid             eu1610479166063muAw8
     2021-09-13 20:32:58   update_time     1631178387
     2021-09-13 20:32:58   uuid            fd0c8a9f78a36684
   args:
     unit_sz_ventilator
     PythonModule
     tuya_cloud
     tuya_cloud_connector
     bf75378cf6e13718e0rvcj
   argsh:
Attributes:
   alias      Ventilator
   devStateIcon on:ios-on-green off:ios-off
   group      Geräte
   icon       Ventilator_fett
   room       Wohnung->Schlafzimmer,fhempy
   verbose    1


Was muss ich denn tun um ein Tuya-Device selbst manuell anzulegen - könntest du den Vorgang eventuell mal beschreiben bitte.