Безумный дом: делаем проточные фильтры воды умными

01 октября 2019, 07:07
1600x_image.png?1569775146

Вступление

Привет, друзья! 

Многие из нас воодушевляются, увидев на видео или где-то в статье какую-то электронную поделку для дома, или даже просто идею того, что можно самому сделать руками. Но часто возникает множество вопросов по тому, как конкретно это собрать самому. А раз мы говорим об электронной поделке, возникает еще и вопрос - а можно ли её интегрировать в "Умный дом"? 

Проведя не один вечер за обдумыванием этих вопросов и возможных вариантов реализации, и, наконец, доведя некоторые из поделок до успешной реализации, после отбраковки многочисленных прототипов, я решил поделиться с Вами своими наработками. Эта статья открывает цикл статей по DIY поделкам, ориентированным на интеграцию в "Умный дом" на базе системы Home Assistant. 

Мне нравится, когда вещи, которые меня окружают и которыми я пользуюсь, доставляют эстетическое удовольствие и имеют продуманную инженерную конструкцию. Поэтому, собирая очередную поделку, я уделяю много внимания двум этим аспектам, иногда доделывая или переделывая ту конструкцию, что была исходно предложена автором исходной идеи для поделки. Это отнимает много сил и времени, но позволяет получить в итоге такую вещь, которая уже не выглядит как поделка и похожа на готовый продукт.

Что мы собираем?

Для получения питьевой воды я использую проточный мембранный фильтр обратного осмоса, позволяющий практически полностью очистить воду от каких бы то ни было химических, биологических и механических примесей. Подобные фильтры имеют две особенности: ограниченный ресурс мембраны обратного осмоса, выражающийся в литрах отфильтрованной воды, и необходимость слива значительной части проточной воды для ограничения нагрузки мембраны и её постоянной промывки.

В рамках умного дома возникло желание автоматизировать учет расхода ресурса мембраны и доли потерь воды в ходе ее фильтрации. В итоге, был собран агрегат, состоящий из счетчиков воды ("сырой" и "питьевой"), блока съёма данных и беспроводной передачи в Home Assistant, и дэшборда в самом Home Assistant.

Железо

Для сборки нам понадобятся:

1600x_image.png?1569785728

В качестве счётчика используем проточный пластиковый сенсор потока YF-S402B, рассчитанный на быстросъёмное подключение типовой 6 мм пластиковой трубки проточного фильтра. Внутри счётчика - крыльчатка с подключенным датчиком Холла, срабатывающим при её вращении. 

Кроме того, в счётчике установлен резистор ограничения тока сигнального вывода, позволяющий подключать его напрямую на входной вывод ESP8266 при питании счётчика от 5В.

Данный счётчик рассчитан на работу с потоком воды от 0.3 до 6 л/мин, т.е. в данный диапазон как раз укладываются средние значения потока как фильтруемой, так и отфильтрованной воды. По спецификации счётчик выдает 2280 импульсов на один литр проходящей через него воды.

Собираем

Подключаем счётчики к проточному фильтру следующим образом:

  • Первый счетчик - в разрыв трубки между фильтром предварительной очистки и предфильтром (т.е. до мембраны). Лучше ставить его после предварительной очистки воды, а не непосредственно на вводе воды, чтобы уменьшить загрязнение счётчика и избежать его отказа или снижения точности.
  • Второй - в разрыв трубки между мембраной и финальным картриджем солевого обогащения или, если он не используется, то между мембраной и краном чистой воды.

1600x_image.png?1569787450

Подключаем

Теперь подключаем счётчики к ESP8266 с помощью соединителей DuPont по следующей схеме:

1600x_image.png?1569787450

Счётчик "сырой" воды -> NodeMCU: 

  • Красный провод -> 3.3V, 
  • Чёрный провод -> GND, 
  •  Жёлтый провод -> GPIO4 (D2). 

 Счётчик "питьевой" воды -> NodeMCU: 

  • Красный провод -> 3.3V, 
  • Чёрный провод -> GND, 
  • Жёлтый провод -> GPIO0 (D3).

NodeMCU имеет 3 вывода 3.3V и 4 GND, благодаря чему можно раздельно подключить оба счётчика. Несмотря на то, что они рассчитаны, по умолчанию, на питание 5В, они прекрасно работают от 3.3В. Саму плату запитываем напрямую от блока питания 5В, через разъём платы MicroUSB.

Собираем прошивку

Прошивку ESP8266 собираем на базе ESPHome. Создаём новый проект в ESPHome 'drink_filter', вставляем текст прошивки ниже:

#===============================================================================
# Счетчик питьевой воды
# NodeMCU ESP8266
#===============================================================================
substitutions:
  device_name: drink_filter
#===============================================================================  
esphome:
  name: ${device_name}
  platform: ESP8266
  board: nodemcuv2
# Настройки Wi-Fi
wifi:
  networks:
    - ssid: !secret wifi_ssid
      password: !secret wifi_pass
  manual_ip:
    static_ip: !secret drink_filter_ip
    gateway: !secret gateway_ip
    subnet: !secret subnet_mask
  reboot_timeout: 0s    
# Отключаем лог
logger:
  baud_rate: 0
api: # Enable Home Assistant API
  password: !secret api_pwd
  reboot_timeout: 0s      
ota: 
  password: !secret drink_filter_ota_pwd
web_server:
  port: 80
#===============================================================================
time: # Время берем из Home Assistant
  - platform: homeassistant
    id: homeassistant_time
#===============================================================================
binary_sensor:
  - platform: status
    name: "state_${device_name}"
#===============================================================================
sensor:
  - platform: wifi_signal # Уровень Wi-Fi сигнала положительным числом
    name: "status_${device_name}"
    update_interval: 60s 
    filters:
      - lambda: return x * (-1);
#------------------------------------------------------------------------------    
  - platform: uptime # Время работы после последней перезагрузки
    name: "uptime_${device_name}"
#------------------------------------------------------------------------------
  - platform: pulse_counter # Сенсор "питьевой" воды
    name: "drink_water_${device_name}"
    id: id_drink_water
    pin: D3
    update_interval: 15s # Время обновления важно оставить таким 
    unit_of_measurement: л
    filters: # Коэффициент 0.25 из-за обновления 4 раза в мин, 2145 - количество тиков счётчика на литр воды
      - lambda: |-
          static float total_drink_value = 0.0;
          total_drink_value += x * 0.25 / 2145;
          return total_drink_value;         
#------------------------------------------------------------------------------          
  - platform: pulse_counter # Сенсор "сырой" воды
    name: "raw_water_${device_name}"
    id: id_raw_water
    pin: D2
    update_interval: 15s # Время обновления важно оставить таким 
    unit_of_measurement: л
    filters: # Коэффициент 0.25 из-за обновления 4 раза в мин, 2145 - количество тиков счётчика на литр воды
      - lambda: |-
          static float total_raw_value = 0.0;
          total_raw_value += x * 0.25 / 2145;
          return total_raw_value; 
#===============================================================================
switch:
  - platform: restart # Переключатель перезагрузки устройства
    name: "restart_${device_name}"      

Несмотря на указанное в спецификации счётчика значение 2280 импульсов на литр воды, путём измерения, я получил чуть меньшее значение 2145. Со значением 2280 счётчик слегка занижает объем проходящей воды. Вы можете оставить предложенные выше значения или подобрать точные, путём калибровки вашего экземпляра.

Компилируем прошивку, заливаем в ESP8266 и проверяем работу собранного устройства через его Web-интерфейс.

Если вы хотите получать максимально точные данные, необходимо произвести калибровку счётчиков. Калибровка выполняется следующим образом:

  1. Включаете подачу воды с таким потоком, как вы обычно наливаете питьевую воду
  2. Набираете в емкость воду в течение ровно 1 минуты
  3. Ждете 15-20 секунд, пока показания счетчика в Home Assistant перестанут изменяться
  4. Взвешиваете налитую в ёмкость воду

Итоговый коэффициент, который необходимо будет указать в прошивке вместо числа 2145, вычисляется по следующей формуле (вспоминаем дроби, дамы и господа):

1600x_image.png?1569876486

Где Кновый - это реальное количество импульсов на литр. Кстарый - предыдущее значение, которое в начальной прошивке равняется 2145.

Вносите коэффициент в прошивку и перезаливаете ESP8266.

Добавляем счётчики в Home Assistant

После перезагрузки устройства, добавляем его через интеграцию в Home Assistant:

  • Меню -> Настройки -> Интеграции -> Добавить -> ESPHome 

Далее, указываете IP устройства и его API пароль, заданный с помощью !secret api_pwd в прошивке. После этого, в Home Assistant появятся сенсоры sensor.raw_water_drink_filter и sensor.drink_water_drink_filter, отображающие расход воды в литрах, но сбрасывающиеся при потере питания ESP8266. Для того, чтобы данные не терялись и была возможность смотреть расход за вчерашний день, месяц и год, используем компонент Home Assistant Utility Meter:

utility_meter: 
  raw_water_yearly: # Годовое потребление сырой воды
    source: sensor.raw_water_drink_filter
    cycle: yearly
    tariffs:
      - single  
  drink_water_yearly: # Годовое потребление питьевой воды
    source: sensor.drink_water_drink_filter
    cycle: yearly
    tariffs:
      - single  
  raw_water_monthly: # Месячное потребление сырой воды
    source: sensor.raw_water_drink_filter
    cycle: monthly
    tariffs:
      - single  
  drink_water_monthly: # Месячное потребление питьевой воды
    source: sensor.drink_water_drink_filter
    cycle: monthly
    tariffs:
      - single  
  raw_water_daily: # Дневное потребление сырой воды
    source: sensor.raw_water_drink_filter
    cycle: daily
    tariffs:
      - single  
  drink_water_daily: # Дневное потребление питьевой воды
    source: sensor.drink_water_drink_filter
    cycle: daily
    tariffs:
      - single  

Для отображения расхода за вчерашний день, добавляем соответствующие template sensors:

sensor: 
  - platform: template
    sensors:
      raw_water_yesterday: # Расход сырой воды (вчера)
        friendly_name: Расход сырой воды (вчера)
        icon_template: mdi:gauge
        unit_of_measurement: 'л'
        value_template: "{{ state_attr('sensor.raw_water_daily_single', 'last_period') | float }}"      
      drink_water_yesterday: # Расход питьевой воды (вчера)
        friendly_name: Расход питьевой воды (вчера)
        icon_template: mdi:gauge
        unit_of_measurement: 'л'
        value_template: "{{ state_attr('sensor.drink_water_daily_single', 'last_period') | float }}"

Наводим красоту

Добавим в Home Assistant названия сенсоров и иконки:

homeassistant:
  customize:
    sensor.raw_water_yearly_single:
      friendly_name: Расход сырой воды (год)
      unit_of_measurement: л
      icon: mdi:chart-histogram
    sensor.drink_water_yearly_single:
      friendly_name: Расход питьевой воды (год)
      unit_of_measurement: л         
      icon: mdi:chart-histogram
    sensor.raw_water_monthly_single:
      friendly_name: Расход сырой воды (этот месяц)
      unit_of_measurement: л
      icon: mdi:counter
    sensor.drink_water_monthly_single:
      friendly_name: Расход питьевой воды (этот месяц)
      unit_of_measurement: л         
      icon: mdi:counter
    sensor.raw_water_daily_single:
      friendly_name: Расход сырой воды (сегодня)
      unit_of_measurement: л
      icon: mdi:gauge
    sensor.drink_water_daily_single:
      friendly_name: Расход питьевой воды (сегодня)
      unit_of_measurement: л         
      icon: mdi:gauge            

И, финальный шаг - добавляем все наши сенсоры в интерфейс Home Assistant - в lovelace:

views:
- title: Счетчики воды
  id: counters
  icon: mdi:water-pump
  cards:
  - type: entities # Фильтры воды
    title: Фильтры воды
    show_header_toggle: false
    entities:
      - sensor.raw_water_daily_single
      - sensor.drink_water_daily_single
      - type: divider
      - sensor.raw_water_yesterday
      - sensor.drink_water_yesterday
      - type: divider
      - sensor.raw_water_monthly_single
      - sensor.drink_water_monthly_single
      - type: divider      
      - sensor.raw_water_yearly_single
      - sensor.drink_water_yearly_single

В итоге, получаем такой дэшборд в Home Assistant:

1600x_image.png?1569790995

Осталось упаковать плату в корпус и готово!


Все новости мира умных домов - t.me/SprutAI_News

Остались вопросы? Мы в Telegram - t.me/soprut

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. Вячеслав Фетисов (Ziracul)

    а ты хакер братец, спасибо за статью

  2. (Shadow)
    (Shadow) 13 дней назад
    Стоит наверно добавить счетчик по расходу картриджей и уведомление о их смене.
  3. Антон Киселёв (Whilser)
    Антон Киселёв (Whilser) 13 дней назад

    Отличная статья, продолжай в том же духе! Сам давно хочу сделать такую штуку, даже все купил, но руки так и не доходят 😁

  4. (Brain)
    (Brain) 13 дней назад

    Эх, буржуи нас бы убили за такое расточительство ) 
    Получается на 1 литр чистой воды мы отправляем в канализацию 4-5 литров.
    Но, здоровье важнее. 
    Будем собирать. Спасибо!

    • Владислав Масенков (Spirit)

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

      • (Brain)
        (Brain) 13 дней назад

        Согласен, но в любом случае один осмос пить не стоит. Без необходимых солей кости в прах превратятся )
        Сам использую осмос от atoll но только для чай/кофе/супы. Вода же для питья - бутилированная.

        • Владислав Масенков (Spirit)

          Чистый осмос пить однозначно не стоит. Но с минерализатором - никаких ограничений. Я в статье упомянул, что минерализатор используется. К бутилированной воде все больше вопросов у экспертов возникает. Слишком много пластика в воде + фенолы и прочие радости от тары.

  5. (cpsskipper)
    (cpsskipper) 13 дней назад

    Делал аналогично для проточных фильтров (на входе) по показаниям счетчиков. Фильтр тонкой очистки считается из рекомендации производителя о замене раз в год.

    1000x_image.png?1569917410


    • (Qwerty123)
      (Qwerty123) 9 дней назад

      Поделитесь опытом, очень интересно, как раз затеял переделку санузла со всеми потрохами!

    • Владислав Масенков (Spirit)

      Поделись конфигом, интересно

        • Владислав Масенков (Spirit)
          Владислав Масенков (Spirit) отредактировано 8 дней назад

          Конфиг с яндекса не открывается, видимо, уже потерся. Интересно, как отсыл в ук сделан, как раскрывающиеся списки в ловеласе и как ресурс подсчитывается.

          Напиши в личку.

          • (cpsskipper)
            (cpsskipper) отредактировано 7 дней назад

            Раскрывающийся список:
            https://github.com/thomasloven...
            Ресурс считается на основе показаний счетчиков. При нажатии кнопки "Заменить" запоминается показание соответствующего счетчика воды. В дальнейшем считается разница между текущим показанием счетчика и запомненным. Для холодной воды 20м3, для горячей 12м3 (рекомендация производителя) Как оказалось это какой-то смешной ресурс, у меня он закончился через 2 мес... Ресурс фильтра тонкой очистки считается аналогично, только вместо расхода воды - количество прошедших со дня замены дней. 
            Конфиг отправки письма в УК отправил на почту

  6. Владислав Масенков (Spirit)
    Владислав Масенков (Spirit) отредактировано 13 дней назад

    Год производители и для мембран рекомендуют, но как говорится, из соображений "в среднем по больнице", поскольку у массового пользователя других достоверных ориентиров нет. Но кто-то по 10-15л воды в день пьет, а у кого-то не больше 2л выходит (в чатах обсуждали активно). А разница - в 5 раз получается! Так что с расчетом ресурса, если это возможно, лучший вариант. 

    По дэшборду - спасибо за предложенный вариант, обязательно добавлю второй частью статьи.

  7. Алексей Рожанков (arozjankov)
    Мегакруто! А можно ли купить готовое устройство, чтобы тупо его подключить?

  8. (Adrey)
    (Adrey) отредактировано 8 дней назад

    Никто не пробовал на выходе чистовой воды (после 5 ступени:1,2,3 мембрана, постфильтр) поставить не только счётчик но и измеритель качества воды(tds). На али он есть совместно со счетчиком. Стоит ~450.
    И ещё я всегда переживаю на счёт протечки(хотя если в первые сутки не обнаружишь, то можно спать спокойно), поэтому всегда хотел поставить управляемый кран на вход до 1 фильтра. И ещё после 5 ступени поставить прерыватель(управляемый «кран» 150 руб. ) для слива воды, когда в отпуске. Т.е подавать команду раз в неделю сливать пол бака, чтобы потом не промывать(оставив кран предварительно открытым). Особенно если уезжаешь на 2-3 недели.

    • Владислав Масенков (Spirit)

      По пунктам:

      1) Насчет TDS не уверен, что он точно/адекватно показывать будет в проточной воде. Есть подозрение, что контакты быстро зарастут и показания уплывут. Но попробовать можно. Кинь пример ссылки.

      2) Протечки - вопрос отдельный. Не стоит нагружать систему фильтрации не свойственным ей функциям. Просто добавляешь еще датчик протечки к имеющейся системе против протечек и ставишь его на пол рядом с фильтром.

      3) Тоже прихожу к выводу, что автопролив системы нужен, иначе за 2 недели бак протухнет совсем. Поскольку тут имеем дело уже с питьевым контуром, делать вывод в слив, как сделано до мембраны, уже нельзя. Есть риск из слива бактерии занести. Пока склоняюсь к варианту поставить в разрыв трубки, идущей на питьевой кран, электровентиль. Уезжаешь в отпуск - открываешь питьевой кран и запускаешь автоматизацию на вентиль. По умолчанию, он закрыт, но периодически открывается, спуская воду через питьевой кран. Кинь тоже ссылку на пример крана. 

      Попробую заказать и проверить обе доработки.

  9. (Adrey)
    (Adrey) 8 дней назад

    1) там есть несколько типов, отдельный tds, потом снимаемый, и уже со счетчиком. А есть целая система. 

    Ссылки:

    Отдельно tds и счётчик

    https://s.click.aliexpress.com/e/ceggSL1C

    Вся система Water Filter Controller Display+Solenoid Valve+Switch+Flow Sensor+TDS

    https://s.click.aliexpress.com/e/csADGOAq

    2) всё бы ничего, но у родителей соединение из стены начало капать, горячей воды(отсюда и скорость образования плесени), датчик не сработал конечно(даже несколько). Капал и сразу впитывался в дсп, и он распухал и всю влагу забирал. Уехали на дачу на недели 2-3, приехал я проверить как дела, захожу воняет сыростью, открываю, а там чёрная плесень на стенках под мойкой. Прям на дсп и на стене позади, пришлось всё выбрасывать и дезинфицировать. А капало то чуть-чуть.

    И ещё один момент, так как у нас воду отключают в доме раз в месяц точно, я бы хотел чтобы первый поток воды не шёл в фильтр, обычно там ржавчина...Вот тут кран вначале бы пригодился, до 1 фильтра. 

    3) Я тоже думал на счёт него, но тут недавно увидел на али соленоидный прерыватель для системы быстрого подключения. По умолчанию он закрыт, подаёшь, открыто, хотя когда свет отключат, воду не попьёшь, но так как у меня 2 крана(постфильтровая и минерализуемая воды), то можно на 1 повесть, без минерализатора. 

    Вот соленоидный

    https://s.click.aliexpress.com/e/cLRcfwxC

    Ещё какой:

    https://s.click.aliexpress.com/e/2snXLAK

    • Владислав Масенков (Spirit)
      Владислав Масенков (Spirit) отредактировано 7 дней назад

      1) Интересный вариант, он еще и температуру воды измеряет. Готовая система не так интересна, мы же про DIY говорим, руки чешутся.

      2) Капающую протечку, боюсь, никакой системой против протечек не поймать. Она, все таки, не панацея, а скорее вариант, чтобы не затопить соседей. Мелкие протечки не так страшны. Что делать с первой подачей ржавой воды, тоже пока не придумал, есть такая проблема.

      3) Про соленоиды в подаче воды слышал много негатива. Не так надежны, как запорные краны. Кроме того, для поддержания состояния требуют постоянного напряжения, это неправильная концепция для фильтра воды. Такой вариант только как аква-стоп для стиральной машинки подходит. Кран, думаю, вешать надо после минерализатора. За 2 недели он тоже протухнет, и его надо прокачивать. Надо искать вентиль с приводом на диаметр трубки.

      4) Вот еще, похоже, надо помпу ставить перед мембраной, поскольку цифры показывают соотношение 1:5 воды, а должно быть не хуже 1:3. Давления не хватает в водопроводе. Что-то типа такой 

      https://ru.aliexpress.com/item...

      • (Adrey)
        (Adrey) 7 дней назад

        1) Какой именно? Капался на али, нашёл аж разных 5 вариантов, где вместе, где раздельно, разных цветов))

        2) я думал на счёт этого, действия такие: как только срабатывает датчик, что воду отключили(тут или падает давление или вода идёт в обратку), то запирается подача воды в осмос. После или автоматически через какое-то время открывается(если вожу дали) или вручную, после прочистки..

        3) Да, читал что давление не выдерживает, пропускает или наоборот, постоянно уменьшает давление. Вариант с краном лучше конечно. Не находил кран с быстросъёмными. Придется кучу переходников городить..

        4) Если давление плохое, то да. Как раз в инструкции написано проверить соотношение. Для моего осмоса даже версия есть с повышением давления. У меня такой проблемы нет, наоборот, приходиться часто менять трубки и резинки, большое давление. После каждой замены по 3 часа мучаюсь облачившись салфетками))

        Кстати уф-лампу не стоит? Она не так дорого стоит, как раз решает проблему с бактериями. Я так и не поставил, вечно откладываю, уже 5 лет((

        • Владислав Масенков (Spirit)

          1) Как выберу, закажу - отпишусь.

          2) Надо на вход осмоса электроклапан ставить еще один. Но полностью проблему не решает, т.к. если никого нет дома и долго не было воды, все равно, при подаче воды на осмос на него потечет ржавчина из труб.

          3) Буду пока искать вентили на быстросъемный разъем. Должны же такие быть в природе.

          4) Что-то тезис о протечках при высоком давлении заставляет задуматься, может фиг с ним с соотношением 1:5, зато не протекает. Помпы, которые я смотрел, все высокое давление дают, боюсь, проблема будет повторяться.

          5) А куда УФ ставить? На входе/выходе/...? Где то есть статьи на эту тему?

          • (Adrey)
            (Adrey) 6 дней назад
            1)Ок
            2)Если нет никого дома и не будет ближайшее время, то можно через 6 часов(или через день-два, если в отпуске хозяева и мало квартир в доме) запустить после подачи воды например(ржавчина сольётся другими в доме). Даже если человек придёт быстрее - вода в баке есть же, хватит с запасом на суп и чайник)) Увидит уведомление и прочистит вручную через промывочный кран с фильтром(или сольёт ржавчину через обычный кран), включит осмос. А проще всего это запустить воду в осмос после подачи воды и предварительного прогона в автоматическом режиме промывочного крана с фильтром(вот как на фото). 
            1000x_image.jpg?15705444603) Тоже поищу
            4) Есть насос с подачей нужного давления на мембрану(в инструкции к моему осмосу так написано, у меня ещё Американский Pentec-Atol) или с регулировкой давления.
            5) Он ставится после всех постфильтров, грубо говоря перед краном, чтобы все бактерии "обесплодить". Уф-не убивает, а разрушает днк, останавливая размножение. В интернете есть статьи, также сейчас много обсуждений про титановую мембрану..Но не читал.
            Вот выдержки: Воздействие на микроорганизмы ультрафиолетовых лучей с длиной волны 260,5 нм позволяет уничтожить 99,9% микробов. Облучение происходит определенное количество времени, за которое микроорганизмы теряют способность к воспроизводству, вследствие разрушения структуры их ДНК. 
            Вот фото его:
            1000x_image.jpg?1570545552
К списку статей

Похожие статьи

04 сентября 2018, 12:14
Интеграция RGB ленты на ESP8266 с прошивкой tasmota в систему HomeBridge (HomeKit)
02 ноября 2018, 12:14
Кнопка звонка с уведомлениями в HomeKit
15 октября 2018, 09:05
Прошивка для Sonoff c нативным HomeKit
15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
01 октября 2018, 07:43
Нативный HomeKit на ESP8266
15 июня 2018, 12:13
Охранная система в гараж на ESP8266 с интеграцией в Apple HomeKit
24 августа 2018, 12:18
Пошаговая установка HomeAssistant
27 августа 2018, 10:14
Интегрируем ХА в HomeKit
02 октября 2018, 18:41
Установка SDK для компиляции прошивок под HomeKit