Closed NikDevx closed 3 years ago
Добрый день! Так не задумано, обновление должно работать и при выключенном устройстве. Можете, пожалуйста, собрать debug логи?
DEBUG=miio-api* homebridge -D
2021-04-09T09:45:21.344Z miio-api:192.168.0.35:8vvj26d6 <-
0000 21 31 00 20 00 00 00 00 12 c8 33 a3 00 02 a0 e1
0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
2021-04-09T09:45:21.346Z miio-api:192.168.0.35:8vvj26d6 <- Packet {
deviceId: 315110307,
timestamp: 172257,
checksum: <Buffer 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00>,
data: <Buffer >,
unknown: 0
}
2021-04-09T09:45:21.357Z miio-api:192.168.0.35:xvd4j085 -> {
id: 1183551673,
method: 'get_prop',
params: [
'power', 'child_lock',
'humidity', 'led_b',
'mode', 'depth',
'dry', 'limit_hum',
'temperature'
]
}
2021-04-09T09:45:21.360Z miio-api:192.168.0.35:xvd4j085 -> Packet {
deviceId: 315110307,
timestamp: 172257,
checksum: <Buffer 8e 3e 76 04 97 3c 1f 25 83 9d 52 d6 f4 be 7a 93>,
data: <Buffer 8b ab ad ef fd dd 0a f9 32 5e 17 5f 03 84 ea da 50 ec e7 07 6b ea 58 81 ad 01 43 48 e7 bc 21 2a 71 77 7f b0 16 c4 d7 fb 1f a4 a8 fc 59 f4 40 f6 82 6b ... 94 more bytes>,
unknown: 0
}
2021-04-09T09:45:21.361Z miio-api:192.168.0.35:xvd4j085 #1 ->
0000 21 31 00 b0 00 00 00 00 12 c8 33 a3 00 02 a0 e1
0010 8e 3e 76 04 97 3c 1f 25 83 9d 52 d6 f4 be 7a 93
0020 8b ab ad ef fd dd 0a f9 32 5e 17 5f 03 84 ea da
0030 50 ec e7 07 6b ea 58 81 ad 01 43 48 e7 bc 21 2a
0040 71 77 7f b0 16 c4 d7 fb 1f a4 a8 fc 59 f4 40 f6
0050 82 6b e6 f0 57 4a bd f8 9f 2b 3a 5f 45 ea 4a 52
0060 6d fc 89 c1 f5 76 6e a3 b3 72 a7 2e 83 f2 40 67
0070 39 17 68 f4 c0 c5 de a0 72 9a 9f 84 9b 86 af c7
0080 ae 21 1c aa a8 2c 32 91 a9 3c 47 cb 14 8c 15 cc
0090 90 55 e1 85 85 c1 1d d1 0c e0 0f 9d 95 b7 4b 60
00a0 81 7c bf 41 f0 c5 0e 53 88 cd 38 06 99 c6 93 dc
2021-04-09T09:48:17.471Z miio-api:192.168.0.35:2gzb4zhy <- Packet {
deviceId: 315110307,
timestamp: 172433,
checksum: <Buffer 58 60 cc 1a 2f 77 f2 39 45 ce 20 8c 63 39 88 9a>,
data: <Buffer 75 f6 6c 71 8f 8b c9 21 f6 7f 72 02 07 0a 7b ed 9b 3a ff dc 3e 2c fb 70 eb db 60 07 65 9e a1 be 56 55 94 89 c2 83 27 0e f0 55 f4 60 a1 2a 98 08 7b ab ... 30 more bytes>,
unknown: 0
}
2021-04-09T09:48:17.473Z miio-api:192.168.0.35:2gzb4zhy <- {
result: [
'off', 'off', 61,
0, 'high', 58,
'off', 68, 24.8
],
id: 2547692990
}
У меня не установлен пакет miio-api. Может в этом причина?
У меня не установлен пакет miio-api. Может в этом причина?
Он прописан в зависимостях, должен автоматом ставиться. По логам видно, что он есть.
Можете побольше логов собрать при выключенном устройстве и файлом прикрепить?
При выключенном состоянии показывает всегда от 56 до 62% влажность, как по дефолту. После включения уже 42%, что в целом норма, так проверял другим датчиком.
Лог после включения
2021-04-09T09:53:17.305Z miio-api:192.168.0.35:13kkzabd -> {
id: 253536832,
method: 'get_prop',
params: [
'power', 'child_lock',
'humidity', 'led_b',
'mode', 'depth',
'dry', 'limit_hum',
'temperature'
]
}
2021-04-09T09:53:17.307Z miio-api:192.168.0.35:13kkzabd -> Packet {
deviceId: 315110307,
timestamp: 172689,
checksum: <Buffer fb 32 db 17 1b b3 91 88 88 60 e2 a7 7d 87 08 36>,
data: <Buffer 61 65 74 d2 ae 82 06 a0 1e eb 54 98 90 55 fa c7 85 56 8a 72 1a 39 38 5f d1 87 d5 14 ee 81 dc ff 19 de c0 4e 3c fc 51 97 ef e3 88 df a4 da 32 ee b8 2e ... 94 more bytes>,
unknown: 0
}
2021-04-09T09:53:17.308Z miio-api:192.168.0.35:13kkzabd #1 ->
0000 21 31 00 b0 00 00 00 00 12 c8 33 a3 00 02 a2 91
0010 fb 32 db 17 1b b3 91 88 88 60 e2 a7 7d 87 08 36
0020 61 65 74 d2 ae 82 06 a0 1e eb 54 98 90 55 fa c7
0030 85 56 8a 72 1a 39 38 5f d1 87 d5 14 ee 81 dc ff
0040 19 de c0 4e 3c fc 51 97 ef e3 88 df a4 da 32 ee
0050 b8 2e f5 41 f1 82 4d 37 cd 2a 1e 2d 15 ee a5 0e
0060 72 d2 c7 d6 21 93 01 91 2d eb a1 0c 75 74 ee f6
0070 45 4f d6 f8 f6 03 df cf 7a a2 56 75 80 8a 3f db
0080 5f cf 8c 74 3b 5c 66 83 3c 1e 88 e7 ae e5 7d e1
0090 55 40 04 fe 5f b6 ea 0e b5 2f 0b f9 c0 17 93 a4
00a0 c8 04 b4 17 7a c4 8e 44 40 f4 66 2f a6 82 53 8e
2021-04-09T09:53:17.529Z miio-api:192.168.0.35:13kkzabd <-
0000 21 31 00 70 00 00 00 00 12 c8 33 a3 00 02 a2 bd
0010 36 c3 ad 7b 80 07 97 6c 8d 54 e2 eb 89 44 38 3e
0020 2f 0c 8f 1e 05 39 89 93 25 af fa b6 05 05 c0 d1
0030 7c 79 4d fe 7e 40 0b 8a 8f e9 7f 40 77 b8 2a b7
0040 13 d4 b0 34 e6 2a dc 1f 43 fb 82 87 ae a5 ad aa
0050 cf 40 66 fa de c9 bf 1b 19 23 5d 27 9b 9b 55 b3
0060 29 2c 1a fc a6 e1 9a e5 cc b0 cf 56 cb 5e d2 1c
2021-04-09T09:53:17.530Z miio-api:192.168.0.35:13kkzabd <- Packet {
deviceId: 315110307,
timestamp: 172733,
checksum: <Buffer 36 c3 ad 7b 80 07 97 6c 8d 54 e2 eb 89 44 38 3e>,
data: <Buffer 2f 0c 8f 1e 05 39 89 93 25 af fa b6 05 05 c0 d1 7c 79 4d fe 7e 40 0b 8a 8f e9 7f 40 77 b8 2a b7 13 d4 b0 34 e6 2a dc 1f 43 fb 82 87 ae a5 ad aa cf 40 ... 30 more bytes>,
unknown: 0
}
2021-04-09T09:53:17.531Z miio-api:192.168.0.35:13kkzabd <- {
result: [
'on', 'off', 42,
0, 'high', 60,
'off', 68, 24.7
],
id: 253536832
}
Выключил и уже 56% влажность Хотя по факту 41-42%
2021-04-09T09:56:17.305Z miio-api:192.168.0.35:kr8fnc0c -> {
id: 2278791088,
method: 'get_prop',
params: [
'power', 'child_lock',
'humidity', 'led_b',
'mode', 'depth',
'dry', 'limit_hum',
'temperature'
]
}
2021-04-09T09:56:17.307Z miio-api:192.168.0.35:kr8fnc0c -> Packet {
deviceId: 315110307,
timestamp: 172853,
checksum: <Buffer bc 2d 41 4c f3 57 58 ee d6 86 01 51 9f 5e eb 75>,
data: <Buffer 47 b0 77 73 b0 f5 e4 c6 28 db b4 de e0 fb be e1 74 92 44 ac 72 78 99 4d 55 81 86 ed f2 df 13 7a 30 0d 26 94 4c 01 e9 4a 2e 56 a9 d5 b2 e3 7e 50 2c 5a ... 94 more bytes>,
unknown: 0
}
2021-04-09T09:56:17.308Z miio-api:192.168.0.35:kr8fnc0c #1 ->
0000 21 31 00 b0 00 00 00 00 12 c8 33 a3 00 02 a3 35
0010 bc 2d 41 4c f3 57 58 ee d6 86 01 51 9f 5e eb 75
0020 47 b0 77 73 b0 f5 e4 c6 28 db b4 de e0 fb be e1
0030 74 92 44 ac 72 78 99 4d 55 81 86 ed f2 df 13 7a
0040 30 0d 26 94 4c 01 e9 4a 2e 56 a9 d5 b2 e3 7e 50
0050 2c 5a aa 4f 99 d7 ed 96 ca 52 ff 1d c5 92 4e c7
0060 50 e6 9e 8c 42 a9 6e ca 79 c7 cf 63 04 95 ae 5e
0070 d0 06 66 c9 92 70 59 3b 7c bb 8e aa 1d e1 c0 1f
0080 d5 74 e8 19 62 52 5f b5 03 2e 79 f8 ac 9d 37 64
0090 84 12 e3 4b a1 81 a1 32 59 ec d1 87 2a d2 ef 59
00a0 32 1f 82 7a bc 6b 1a f5 27 a6 60 90 86 76 7b 27
2021-04-09T09:56:17.473Z miio-api:192.168.0.35:kr8fnc0c <-
0000 21 31 00 70 00 00 00 00 12 c8 33 a3 00 02 a3 71
0010 b9 77 d3 fe aa b4 d4 44 dd 6e b7 7c 48 95 9a 27
0020 75 f6 6c 71 8f 8b c9 21 f6 7f 72 02 07 0a 7b ed
0030 7c 83 b1 50 c8 26 d5 34 c7 6a d7 df e2 1f 48 e0
0040 0d eb ff 24 fc a2 14 1f 78 c2 ea 8e 49 14 92 1c
0050 4f 8f 9e 6b 30 f6 93 5f 87 1d ba f0 39 14 b2 da
0060 d7 46 bb 07 7a 76 5b 96 2a 00 27 68 82 c9 41 fa
2021-04-09T09:56:17.474Z miio-api:192.168.0.35:kr8fnc0c <- Packet {
deviceId: 315110307,
timestamp: 172913,
checksum: <Buffer b9 77 d3 fe aa b4 d4 44 dd 6e b7 7c 48 95 9a 27>,
data: <Buffer 75 f6 6c 71 8f 8b c9 21 f6 7f 72 02 07 0a 7b ed 7c 83 b1 50 c8 26 d5 34 c7 6a d7 df e2 1f 48 e0 0d eb ff 24 fc a2 14 1f 78 c2 ea 8e 49 14 92 1c 4f 8f ... 30 more bytes>,
unknown: 0
}
2021-04-09T09:56:17.475Z miio-api:192.168.0.35:kr8fnc0c <- {
result: [
'off', 'off', 56,
0, 'high', 58,
'off', 68, 24.6
],
id: 2278791088
}
У меня не установлен пакет miio-api. Может в этом причина?
Он прописан в зависимостях, должен автоматом ставиться. По логам видно, что он есть.
Можете побольше логов собрать при выключенном устройстве и файлом прикрепить?
Да, сейчас сделаю.
miio-api судя по логам работает. Только похоже, debug-логи в самом homebridge не включились, флаг -D
попал в переменную окружения ... custom env: {"DEBUG":"miio-api* homebridge -D"}
debug-логи в самом homebridge не включились, флаг
-D
попал в переменную окружения... custom env: {"DEBUG":"miio-api* homebridge -D"}
Сорри, не заметил Сейчас исправлю и новый лог отправлю.
Также заметил, что после выключения увлажнителя, свет не выключается.
И влажность не изменяется или изменяется с опозданием на датчике влажности. Изменяется только в реальном времени влажность в увлажнителе.
Новый лог
Спасибо! Кажется, понял в чем проблема, постараюсь в выходные поправить
Спасибо! Кажется, понял в чем проблема, постараюсь в выходные поправить
Спасибо! Ожидаю
Добрый день Еще неправильно отображает уровень воды в homebridge
[10.04.2021, 07:47:33] [homebridge-mi-humidifier] This plugin generated a warning from the characteristic 'Water Level': characteristic was supplied illegal value: number 104.16666666666667 exceeded maximum of 100. See https://git.io/JtMGR for more info.
Исправляется в zhimi-cab1.js
в 28 строке заменил на toChar: (it) => Math.min(it / 1.2, 100),
Выложил новый релиз, апдейты для датчиков теперь должны работать.
Добрый день Еще неправильно отображает уровень воды в homebridge
[10.04.2021, 07:47:33] [homebridge-mi-humidifier] This plugin generated a warning from the characteristic 'Water Level': characteristic was supplied illegal value: number 104.16666666666667 exceeded maximum of 100. See https://git.io/JtMGR for more info.
Исправляется в
zhimi-cab1.js
в 28 строке заменил наtoChar: (it) => Math.min(it / 1.2, 100),
Про это в #84, в новом релизе тоже пофиксил
Благодарю!
До сих пор остается баг со светом при выключенном увлажнителе.
Благодарю!
До сих пор остается баг со светом при выключенном увлажнителе.
Проблема с датчиками осталась... Некорректно отображает показания в выключенном состоянии. При включенном состоянии влажность правильно отображается (47% к примеру), а после выключении сразу становится 54% и постепенно повышается.
Добавляю новый лог homebridge.log
Проблема с датчиками осталась... Некорректно отображает показания в выключенном состоянии. При включенном состоянии влажность правильно отображается (47% к примеру), а после выключении сразу становится 54% и постепенно повышается.
Добавляю новый лог homebridge.log
Не думаю, что тут я смогу что-то сделать, так как проблема в прошивке увлажнителя. Плагин просто забирает с него показатели влажности. По логам видно, что эти значения приходят с увлажнителя. Видимо, в прошивке есть какая-то поправка для влажности, когда устройство включено.
Понял. Спасибо.
А можно ли как-то делать запросы через miio, когда увлажнитель выключен?
Понял. Спасибо.
А можно ли как-то делать запросы через miio, когда увлажнитель выключен?
Да, конечно. Если питание включено, то через miio можно делать запросы
А можешь подсказать пример запроса через curl для получения данных с датчика влажности? Пожалуйста
И можно ли как-то отключить CurrentRelativeHumidity
?
Чтобы влажность с увлажнителя вообще не подтягивалась
А можешь подсказать пример запроса через curl для получения данных с датчика влажности? Пожалуйста
curl'ом не получится, там свой протокол поверх UDP. Можно использовать miiocli.
pip3 install python-miio
miiocli airhumidifiercb1 --ip <ip> --token <token> status
Либо можно использовать библиотеку, которую этот плагин использует:
npm install -g miio-cli
miio-cli -a <ip> -t <token> get_prop '["humidity"]'
И можно ли как-то отключить
CurrentRelativeHumidity
? Чтобы влажность с увлажнителя вообще не подтягивалась
Нет, сейчас возможности отключить CurrentRelativeHumidity
нет
А можешь подсказать пример запроса через curl для получения данных с датчика влажности? Пожалуйста
curl'ом не получится, там свой протокол поверх UDP. Можно использовать miiocli.
pip3 install python-miio miiocli airhumidifiercb1 --ip <ip> --token <token> status
Либо можно использовать библиотеку, которую этот плагин использует:
npm install -g miio-cli miio-cli -a <ip> -t <token> get_prop '["humidity"]'
Благодарю!
Добрый день. Отдельное спасибо за плагин, очень много времени сэкономлено!
Теперь к сути проблемы. Это так задумано, что не работает updateInterval если устройство выключено или это баг?
Недавно реализовывал функцию Polling в своём плагине для другого увлажнителя и очистителя. И у меня даже при выключенном аксессуаре и закрытом homekit обновляет данные датчиков.