Скрипт для управления сервоприводами отопления в квартире

Добрый день!

Прошу опытных пользователей посоветовать. Есть задача управлять сервоприводами батарей отопления в зависимости от желаемой температуры помещения.

Дано:

  1. WB6 + SprutHub - управление через HomeKit и Яндекс станцию.
  2. сервоприводы Oventrop Aktor 2tp 24V NO (двухпозиционный) ссылка
  3. модуль WBIO-DO-HS-8 ссылка
  4. датчики температуры Xiaomi Mi Temperature and Humidity Sensor (Zigbee)
  5. квартира, в которой включается отопление по велению градоначальника вместе со стартом отопительного сезона

Задача:

Написать скрипт, который выполнялся бы только в отопительный сезон, который бы подавал питание на сервопривод при достижении “уставной” температуры и перекрывал подачу теплоносителя.

Вопросы:

  1. Как понять скрипту, что отопительный сезон начался. Логично, что надо мерить температуру входа теплоносителя, но у меня разводка к батареям отопления реализована горизонтально под стяжкой. Плюс не понятно, чем мерить. Может быть кто-то посоветует решение?
  2. Через что реализовать ввод “уставной” температуры? Можно ли это как-то задавать через HomeKit? Если да, то как пробросить значение в скрипт?

То есть система отопления однотрубная и никакие ее части (байпаасы тоже в стяжке под батареями) недоступны? Вариант аккуратно просверлить/выштробить вручную кусочек стяжки в у стены (под плинтусом) и замуровать поближе к трубе датчик ds18b20 подключить который к W1-W2

Обычно используют https://github.com/hobbyquaker/homekit2mqtt
Посмотрите про “проброс” диммера:
https://sprut.ai/client/blog/799
То же самое. Создаем виртуальное устройство, его контрол “range” (движок) прокидываем в homekit. Ну и соответственно скрипт получает состояние (значение) контрола.

Навели на хорошую мысль, спасибо! У меня прокинута витая пара в коридор, поэтому попробую протянуть её до общего коллектора на лестнице и расположить датчик там.

Идея понятна, спасибо! Попробую разобраться :slight_smile:

Можете помочь с командами для установки homekit2mqtt.

При попытке установить через консоль выдает:

root@wirenboard-AKID2B52:~# npm install -g homekit2mqtt --unsafe-perm
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperj s/core, this package is dedicated to the legacy v1
/usr/bin/homekit2mqtt → /usr/lib/node_modules/homekit2mqtt/index.js

curve25519-n@1.5.0 install /usr/lib/node_modules/homekit2mqtt/node_modules/cur ve25519-n
node-gyp rebuild

gyp ERR! build error
gyp ERR! stack Error: not found: make
gyp ERR! stack at getNotFoundError (/usr/lib/node_modules/npm/node_modules/w hich/which.js:13:12)
gyp ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:6 8:19)
gyp ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:8 0:29)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/which.js:89:1 6
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/index.js:42:5
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
gyp ERR! stack at FSReqCallback.oncomplete (fs.js:168:21)
gyp ERR! System Linux 4.9.22-wb6
gyp ERR! command “/usr/bin/node” “/usr/lib/node_modules/npm/node_modules/node-gy p/bin/node-gyp.js” “rebuild”
gyp ERR! cwd /usr/lib/node_modules/homekit2mqtt/node_modules/curve25519-n
gyp ERR! node -v v12.19.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! curve25519-n@1.5.0 install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the curve25519-n@1.5.0 install script.
npm ERR! This is probably not a problem with npm. There is likely additional log ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-03-22T19_47_47_822Z-debug.log

Добрый день.
Написано же - отсутствует make.

apt install build-essential