Исследуем TOMZN TOMPD-63SW

С этого модуля и начиналось мое знакомство с компонентом tuya в ESP Home, но что-то пошло не так, поэтому для более разностороннего опыта и начал переделывать DGC-63T. Основные моменты по работе с компонентом уже расписал в той статье, так что в этой — только описание datapoint’ов и результатов переделки.

В этом модуле все значения сенсоров отдаются в виде отдельных datapoint’ов:

  • 116 / 117 / 118 — основной измеритель: напряжение (в сотнях мВ) / ток (в мА) / мощность (Вт).
  • 105 / 104 — частота (*10) и power factor (*1000).
  • 1 — посчитанная энергия (в десятках Вт*ч)
  • 15 — ток утечки (в мА).
  • Управление реле идет через datapoint 16.
Карта datapoint

[12:10:12.600][C][tuya:041]: Tuya:
[12:10:12.600][C][tuya:056]: Datapoint 16: switch (value: OFF)
[12:10:12.600][C][tuya:060]: Datapoint 19: string value (value: 1234)
[12:10:12.622][C][tuya:054]: Datapoint 17: raw (value: 04.01.00.1E)
[12:10:12.623][C][tuya:054]: Datapoint 18: raw (value: 01.01.00.28.03.01.01.0E.04.01.00.AA (12))
[12:10:12.623][C][tuya:058]: Datapoint 1: int value (value: 23)
[12:10:12.624][C][tuya:058]: Datapoint 15: int value (value: 0)
[12:10:12.638][C][tuya:054]: Datapoint 6: raw (value: 09.01.00.00.1E.00.00.00 (8))
[12:10:12.639][C][tuya:058]: Datapoint 104: int value (value: 1000)
[12:10:12.639][C][tuya:058]: Datapoint 105: int value (value: 500)
[12:10:12.640][C][tuya:058]: Datapoint 116: int value (value: 2305)
[12:10:12.650][C][tuya:058]: Datapoint 117: int value (value: 30)
[12:10:12.651][C][tuya:058]: Datapoint 118: int value (value: 0)
[12:10:12.651][C][tuya:056]: Datapoint 11: switch (value: OFF)
[12:10:12.651][C][tuya:058]: Datapoint 13: int value (value: 0)
[12:10:12.651][C][tuya:064]: Datapoint 9: bitmask (value: 0)
[12:10:12.662][C][tuya:074]: Product: '{"P":"u0cxoxtfelys3ufx","v":"1.0.0","m":1,"mt":10,"n":0,"low":0}'

[свернуть]

Из нераспознанных остаются 11 и 13-й datapoint.

А проблема на данный момент заключается в том, что контроллер отдает данные при запуске и изредка — потом. «Изредка» — это, например, раз в 5 минут.

Пример обновления

[12:10:16.525][D][tuya:335]: Datapoint 11 update to OFF
[12:10:16.525][D][tuya:343]: Datapoint 13 update to 0
[12:10:16.526][D][tuya:343]: Datapoint 15 update to 0
[12:10:16.552][D][sensor:131]: 'Leakage Current': Sending state 0.00000 mA with 0 decimals of accuracy
[12:10:16.553][D][tuya:343]: Datapoint 104 update to 1000
[12:10:16.555][D][sensor:131]: 'PF': Sending state 1.00000 with 1 decimals of accuracy
[12:10:16.556][D][tuya:343]: Datapoint 105 update to 500
[12:10:16.556][D][sensor:131]: 'Frequency': Sending state 50.00000 with 1 decimals of accuracy
[12:10:16.556][D][tuya:327]: Datapoint 6 update to 09.00.00.00.1E.00.00.00 (8)
[12:10:17.551][D][tuya:343]: Datapoint 1 update to 23
[12:10:17.565][D][sensor:131]: 'Total Energy': Sending state 0.23000 kWh with 2 decimals of accuracy
[12:10:17.575][D][tuya:335]: Datapoint 11 update to OFF
[12:10:17.575][D][tuya:343]: Datapoint 13 update to 0
[12:10:18.527][D][tuya:343]: Datapoint 15 update to 0
[12:10:18.541][D][sensor:131]: 'Leakage Current': Sending state 0.00000 mA with 0 decimals of accuracy
[12:10:19.581][D][tuya:343]: Datapoint 104 update to 1000
[12:10:19.582][D][sensor:131]: 'PF': Sending state 1.00000 with 1 decimals of accuracy
[12:10:19.600][D][tuya:343]: Datapoint 105 update to 500
[12:10:19.601][D][sensor:131]: 'Frequency': Sending state 50.00000 with 1 decimals of accuracy
[12:10:19.601][D][tuya:343]: Datapoint 116 update to 2303
[12:10:19.617][D][sensor:131]: 'Voltage': Sending state 230.30000 V with 1 decimals of accuracy
[12:10:19.618][D][tuya:343]: Datapoint 117 update to 30
[12:10:19.618][D][sensor:131]: 'Current': Sending state 0.03000 A with 2 decimals of accuracy
[12:10:19.618][D][tuya:343]: Datapoint 118 update to 0
[12:10:19.627][D][sensor:131]: 'Power': Sending state 0.00000 W with 1 decimals of accuracy
[12:10:20.621][D][tuya:347]: Datapoint 19 update to 1234
[12:10:21.154][D][tuya:327]: Datapoint 17 update to 04.01.00.1E
[12:10:21.155][D][tuya:327]: Datapoint 18 update to 01.01.00.28.03.01.01.0E.04.01.00.AA (12)
[12:15:14.669][D][tuya:347]: Datapoint 19 update to 1234
[12:15:15.187][D][tuya:327]: Datapoint 17 update to 04.01.00.1E
[12:15:15.188][D][tuya:327]: Datapoint 18 update to 01.01.00.28.03.01.01.0E.04.01.00.AA (12)
[12:15:17.614][D][tuya:343]: Datapoint 1 update to 23
[12:15:17.614][D][sensor:131]: 'Total Energy': Sending state 0.23000 kWh with 2 decimals of accuracy
[12:15:17.614][D][tuya:335]: Datapoint 11 update to OFF
[12:15:17.614][D][tuya:343]: Datapoint 13 update to 0
[12:15:18.563][D][tuya:343]: Datapoint 15 update to 0
[12:15:18.575][D][sensor:131]: 'Leakage Current': Sending state 0.00000 mA with 0 decimals of accuracy
[12:15:19.619][D][tuya:343]: Datapoint 104 update to 1000
[12:15:19.633][D][sensor:131]: 'PF': Sending state 1.00000 with 1 decimals of accuracy
[12:15:19.634][D][tuya:343]: Datapoint 105 update to 500
[12:15:19.634][D][sensor:131]: 'Frequency': Sending state 50.00000 with 1 decimals of accuracy
[12:15:19.645][D][tuya:343]: Datapoint 116 update to 2301
[12:15:19.658][D][sensor:131]: 'Voltage': Sending state 230.10001 V with 1 decimals of accuracy
[12:15:19.674][D][tuya:343]: Datapoint 117 update to 30
[12:15:19.674][D][sensor:131]: 'Current': Sending state 0.03000 A with 2 decimals of accuracy
[12:15:19.685][D][tuya:343]: Datapoint 118 update to 0

[свернуть]

При этом показания на дисплее меняются в реальном времени. Поэтому и взялся за второй модуль — посмотреть, будет ли там такая же проблема или нет. Выходит, что общая логика в порядке — возможно, какая-то проблема конкретно с тем экземпляром модуля или я что-то еще не учел. Буду экспериментировать дальше.

Конфиг для ESP Home

Update: чуть поисследовал изменение настроек. Меняются только DP 17 и 18.

«Datapoint 17 update to 04.01.00.1E» — 2 последних байта — это настройка предела по току утечки (LC) — 30 mA в примере.

Datapoint 18 update to 01.01.[00.28].03.01.[01.13].04.01.[00.AA] (12): в переводе это 40 / 275 / 170. Соответственно, это настройки по току (CH) / верхний порог напряжения (Uh) и нижний порог (Ul).

DP 9 при нажатии кнопки «тест» становится 0X000008, при этом в обычном режиме там 00000000 (независимо от того, включено реле или нет).

Свич по адресу 11 — что-то непонятное. При включении — выключается реле (если было включено), блокируется дальнейшее включение и не работает кнопка «Тест». При этом DP 9 становится в состояние «0X010000″. Если попытаться включить/выключить основное реле — флаг в DP 9 сбрасывается (т.е., значение становится 00000000).

Добавить комментарий