Moin,
danke, dass Du dich dem so schnell annimmst.
Zitat von: dominik am 11 Oktober 2022, 19:35:31
Hi,
keep_connected gibt es bei tuya_cloud und tuya nicht.
Aber gab es mal.
Changelog:
v0.1.31 (2021-01-27)
Feature
tuya: Add keep_connected attr (b2c1ca4)
Deswegen bin ich nur drauf gekommen.
Zitat von: dominiktuya_cloud: Leider ist die Verbindung zur tuya Cloud sehr schlecht. Es passiert immer wieder, dass die Werte nicht aktualisiert werden. Das Problem liegt in dem Fall aber nicht an fhempy, das müsste tuya mal in Griff bekommen. Die Kollegen beim Home Assistant haben das gleiche Problem.
tuya: Ich empfehle die Verwendung von diesem Modul und nicht die tuya_cloud Variante! add_ele wird auch bei tuya_local ausgelesen, besser gesagt, es werden alle DPs ausgelesen die zur Verfügung stehen. Die Aktualisierung ist bei mir auch über Wochen stabil. Poste mal das list von dem Device (bitte API KEY/SECRET mit xxx ersetzen).
tuya_cloud hab ich nur, so ist meine Planung, um einfacher an den local_key zu kommen, weil ich keine Lust habe, jedesmal dafür die tuya-Wolke aufzumachen. Oder ich guck es in hass nach, aber in fhem ists einfacher ;-) (In hass hab ich auch tuya_local, das holt wenigstens die Verbrauchswerte, denn das offizielle Cloud-Modul liefert die Daten nicht. Egal, geloggt wird es eh in fhem, hass ist nur für den WAF)
Hier mal eins der Devices, die immer wieder aufhören:
Internals:
DEF tuya bhqkxecq6o5qkc52 bfe8435163de9e6864jnts 10.23.103.2 local_key 3.3 xxx xxx
DEVICEID bfe8435163de9e6864jnts
FHEMPYTYPE tuya
FUUID 63431d57-f33f-2b54-50ef-160e5493cc2e07c7
FVERSION 10_fhempy.pm:0.182830/2019-01-16
IODev pyBinding
NAME tuya_local_bfe8435163de9e6864jnts
NR 516
PYTHONTYPE tuya
STATE on
TYPE fhempy
CHANGED:
cur_voltage: 230.6
online: 1
Helper:
DBLOG:
cur_voltage:
logdb:
TIME 1665505426.75438
VALUE 229.4
READINGS:
2022-10-11 15:22:20 active_time 1665154938
2022-10-11 16:23:42 add_ele 0.047
2022-10-11 15:22:20 biz_type 0
2022-10-11 15:22:20 category cz
2022-10-11 15:22:20 countdown_1 0.0
2022-10-11 15:22:20 create_time 1665154938
2022-10-11 15:23:46 cur_current 0.0
2022-10-11 15:23:46 cur_power 0.0
2022-10-11 19:23:46 cur_voltage 230.6
2022-10-11 15:22:20 dp_21 1
2022-10-11 15:22:20 dp_22 630
2022-10-11 15:22:20 dp_23 31437
2022-10-11 15:22:20 dp_24 17991
2022-10-11 15:22:20 dp_25 2310
2022-10-11 15:22:20 dp_26 0
2022-10-11 15:22:20 icon smart/icon/bay1603247053327gtRW/f0615f7985374fe0bb0504e3f34bfb42.png
2022-10-11 15:22:20 id bfe8435163de9e6864jnts
2022-10-11 15:22:20 ip xxx
2022-10-11 15:22:20 lat xxx
2022-10-11 15:22:20 light_mode relay
2022-10-11 15:22:20 local_key local_key
2022-10-11 15:22:20 lon xxx
2022-10-11 15:22:20 model F1s202-EU
2022-10-11 15:22:20 name Waschmaschine
2022-10-11 19:23:46 online 1
2022-10-11 15:22:20 owner_id 42820982
2022-10-11 15:22:20 product_id bhqkxecq6o5qkc52
2022-10-11 15:22:20 relay_status on
2022-10-11 18:11:39 state on
2022-10-11 15:22:20 sub 0
2022-10-11 15:22:20 time_zone +02:00
2022-10-11 15:22:20 uid eu1637841506751N6VpJ
2022-10-11 15:22:20 update_time 1665154950
2022-10-11 15:22:20 uuid uuid
args:
tuya_local_bfe8435163de9e6864jnts
fhempy
tuya
bhqkxecq6o5qkc52
bfe8435163de9e6864jnts
10.23.103.2
local_key
3.3
xxx
xxx
argsh:
Attributes:
DbLogExclude .*
DbLogInclude cur_voltage,cur_current,cur_power,add_ele
alias Waschmaschine
devStateIcon {my $light = ReadingsVal($name,"state","off"); my $power = ReadingsVal($name,"cur_power","unknown"); my $current = ReadingsVal($name,"cur_current","unknown"); my $voltage = ReadingsVal($name,"cur_voltage","-100"); "<a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\">".FW_makeImage($light)."</a><div>Verbrauch: $power W / Strom: $current mA / Spannung: $voltage V</div>"}
dp_01 switch_1
dp_09 countdown_1
dp_17 add_ele
dp_18 cur_current
dp_19 cur_power
dp_20 cur_voltage
dp_38 relay_status
dp_39 light_mode
group tuya
icon scene_washing_machine
room Küche,fhempy
tuya_spec_functions [{'code': 'switch_1', 'dp_id': 1, 'type': 'Boolean', 'values': {}, 'desc': 'switch 1'}, {'code': 'countdown_1', 'dp_id': 9, 'type': 'Integer', 'values': {'unit': 's', 'min': 0, 'max': 86400, 'scale': 0, 'step': 1}, 'desc': 'countdown 1'}, {'code': 'relay_status', 'dp_id': 38, 'type': 'Enum', 'values': {'range': ['power_off', 'power_on', 'last']}, 'desc': 'relay status'}, {'code': 'light_mode', 'dp_id': 39, 'type': 'Enum', 'values': {'range': ['relay', 'pos', 'none']}, 'desc': 'light mode'}]
tuya_spec_status [{'code': 'switch_1', 'dp_id': 1, 'type': 'Boolean', 'values': {}}, {'code': 'countdown_1', 'dp_id': 9, 'type': 'Integer', 'values': {'unit': 's', 'min': 0, 'max': 86400, 'scale': 0, 'step': 1}}, {'code': 'add_ele', 'dp_id': 17, 'type': 'Integer', 'values': {'unit': 'kwh', 'min': 0, 'max': 50000, 'scale': 3, 'step': 100}}, {'code': 'cur_current', 'dp_id': 18, 'type': 'Integer', 'values': {'unit': 'mA', 'min': 0, 'max': 30000, 'scale': 0, 'step': 1}}, {'code': 'cur_power', 'dp_id': 19, 'type': 'Integer', 'values': {'unit': 'W', 'min': 0, 'max': 50000, 'scale': 1, 'step': 1}}, {'code': 'cur_voltage', 'dp_id': 20, 'type': 'Integer', 'values': {'unit': 'V', 'min': 0, 'max': 5000, 'scale': 1, 'step': 1}}, {'code': 'relay_status', 'dp_id': 38, 'type': 'Enum', 'values': {'range': ['power_off', 'power_on', 'last']}}, {'code': 'light_mode', 'dp_id': 39, 'type': 'Enum', 'values': {'range': ['relay', 'pos', 'none']}}]
Das Listing ist, mit bearbeiten und diesen Text tippen, etwa 10 Minuten alt. Man beachte, dass da seit 19:23:46 keine Daten mehr kommen, übrigens (zufällig?) genau vier Stunden, nachdem die Spülmaschine ausgeschaltet wurde (vergleiche 15:23:46 cur_power).
add_ele kann nicht stimmen, denn seit 15:23 ist der Verbraucher aus. Es sei denn, die Steckdose misst sich selbst mit, denn der Wert kam eine Stunde nach der Ausschaltung...
Das gleiche Gerät aus der Cloud zeigt, dass es durchaus neuere Daten für add_ele und curr_.* gibt:
Internals:
DEF tuya_cloud tuya_cloud_connector bf8b92a1674a161e3d7taa
DEVICEID bf8b92a1674a161e3d7taa
FHEMPYTYPE tuya_cloud
FUUID 63406de8-f33f-2b54-deda-a34bfe22a5d167cb
FVERSION 10_fhempy.pm:0.182830/2019-01-16
IODev pyBinding
NAME Spuelmaschine_bf8b92a1674a161e3d7taa
NR 512
PYTHONTYPE tuya_cloud
STATE on
TYPE fhempy
Helper:
DBLOG:
add_ele:
logdb:
TIME 1665506930.84879
VALUE 0.001
cur_current:
logdb:
TIME 1665506930.84879
VALUE 0.0
cur_power:
logdb:
TIME 1665506930.84879
VALUE 0.0
cur_voltage:
logdb:
TIME 1665520508.27624
VALUE 232.2
READINGS:
2022-10-11 17:08:49 active_time 1665155011
2022-10-11 18:48:50 add_ele 0.001
2022-10-11 17:08:49 biz_type 0
2022-10-11 17:08:49 category cz
2022-10-11 18:48:50 countdown_1 0.0
2022-10-11 17:08:49 create_time 1665155011
2022-10-11 18:48:50 cur_current 0.0
2022-10-11 18:48:50 cur_power 0.0
2022-10-11 22:35:08 cur_voltage 232.2
2022-10-11 17:08:49 icon https://images.tuyaeu.com/smart/icon/bay1603247053327gtRW/f0615f7985374fe0bb0504e3f34bfb42.png
2022-10-11 17:08:49 id bf8b92a1674a161e3d7taa
2022-10-11 17:08:49 ip xxx
2022-10-11 17:08:49 lat xxx
2022-10-11 18:48:50 light_mode relay
2022-10-11 17:08:49 local_key xxx
2022-10-11 17:08:49 lon xxx
2022-10-11 17:08:49 model F1s202-EU
2022-10-11 17:08:49 name Spuelmaschine
2022-10-11 17:08:49 online on
2022-10-11 17:08:49 owner_id xxx
2022-10-11 17:08:49 product_id bhqkxecq6o5qkc52
2022-10-11 17:08:49 product_name Antela Smart Plug
2022-10-11 18:48:50 relay_status power_on
2022-10-11 18:48:50 state on
2022-10-11 17:08:49 sub off
2022-10-11 17:08:49 time_zone +02:00
2022-10-11 17:08:49 uid eu1637841506751N6VpJ
2022-10-11 17:08:49 update_time 1665155063
2022-10-11 17:08:49 uuid xxx
args:
Spuelmaschine_bf8b92a1674a161e3d7taa
fhempy
tuya_cloud
tuya_cloud_connector
bf8b92a1674a161e3d7taa
argsh:
Attributes:
DbLogExclude .*
DbLogInclude cur_voltage,cur_current,cur_power,add_ele
alias Spülmaschine
devStateIcon {my $light = ReadingsVal($name,"state","off"); my $power = ReadingsVal($name,"cur_power","unknown"); my $current = ReadingsVal($name,"cur_current","unknown"); my $voltage = ReadingsVal($name,"cur_voltage","-100"); "<a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\">".FW_makeImage($light)."</a><div>Verbrauch: $power W / Strom: $current mA / Spannung: $voltage V</div>"}
group tuya_cloud
icon scene_washing_machine
room fhempy
Wenn man z.B. die Spannung in ein SVG loggt, fällt auf, dass das Device scheinbar in eine Art "hibernate" fällt, wenn der Verbraucher ausgeschaltet ist. Kurz nachdem die Spülmaschine ausgeschaltet wurde, werden die Abstände zwischen der Messwerten deutlich länger, siehe anliegendes Bild. Rot ist power und grün ist voltage. Durchgezogen ist local, gepunktet ist cloud.
Zitat von: dominik###README_HELP_STRING### ist vorübergehend, da ich Probleme mit der Websocket Verbindung zwischen fhem und fhempy hatte. Sobald das behoben ist, gibt es auch wieder die Help.
Gut zu wissen, denn soweit ich weiß, gibt es sonst soweit keine Doku, oder?