Цель: Включать свет над аквариумом при обнаружении движения в коридоре.
zigbee2mqtt/motion_sensorzigbee2mqtt/fish_usb_releyzigbee2mqtt/motion_sensor/presence== 1 (движение обнаружено)zigbee2mqtt/fish_usb_reley/set payload: {"state_l3": "ON"}Причина: Python-скрипт mqtt_to_mysql.py неправильно обрабатывал булевые значения из MQTT:
true → записывалось как '1' ✅false → тоже записывалось как '1' ❌ (из-за ошибки в логике)Решение: Исправлен код скрипта:
if isinstance(value, bool):
value_to_save = "1" if value else "0"
else:
value_to_save = value
Теперь false → '0', и правило срабатывает только при реальном движении.
id в таблице sensor_data → исправлено изменением логики SQL-запроса.in_progress) не работала из-за отсутствия столбца в БД → временно отключена.При приближении к домику — свет над аквариумом включается автоматически. Через 30 секунд после исчезновения движения — гаснет. Всё работает стабильно.
Комментарии
Пока нет комментариев. Будьте первым!