Laxilef / OTGateway

OpenTherm gateway for HomeAssistant
GNU General Public License v3.0
135 stars 20 forks source link

FAQ #7

Closed Balaganoff closed 8 months ago

Balaganoff commented 10 months ago
  1. Какая логика в подключении датчиков,
    • Экспериментально я выяснил так: External - это датчик непосредственно подключенный к ESP Boiler - ?? Manual - это внешний датчик, привязываемый через автоматизацию Home Assistant. Не совсем понят смыл ручной регулировки. Зачем это сделано? Ведь при просмотре со смартфона можно нечаянно установить неверную температуру и нарушить логику работы.

Я правильно понял или где-то можно подробнее прочитать?

Laxilef commented 10 months ago

External - внешний DS18B20 или аналог, который физически подключен Boiler - съем с котла по opentherm. Некоторые котлы позволяют подключать датчик внешней температуры или имеют датчик на приточке Manual - для передачи температуры контроллеру через автоматизацию, например с zigbee датчика, который висит на улице Сбить можно, но автоматизация должна потом все равно установить реальную температуру.

Проводные датчики хоть и предпочтительнее, но не всегда есть возможность прокладывать провода. Например, если ремонт уже сделан :)

Первое время внешнюю температуру я устанавливал вообще с погоды, в HA есть компонент Weather, потом перешёл на DS18B20 с будкой стивенсона.

Balaganoff commented 10 months ago

Manual - для передачи температуры контроллеру через автоматизацию, например с zigbee датчика, который висит на улице Сбить можно, но автоматизация должна потом все равно установить реальную температуру.

А зачем это это реализовано ? Если все равно установится реальная температура. Мое - мнение ручная регулировка лишняя и вводит в заблуждение.

Balaganoff commented 10 months ago

Шаг изменения температуры отопления в 1градус - это слишком грубо. Порог температурной чувствительности человека по разным источникам считается 0.2-0.4 градуса. Измерять мы можем с точностью 0.1. Почему-бы не использовать эту возможность?

В аналогичных теморегуляторах устанавливается с точностью от 0.1 до 0.5 градуса. (зависит от производителя)

Laxilef commented 10 months ago

Для climate.opentherm_heating установлен шаг 0.5 градуса.

А зачем это это реализовано ? Если все равно установится реальная температура. Мое - мнение ручная регулировка лишняя и вводит в заблуждение.

А как вы хотите передавать температуру с zigbee датчика? Без сущности number это несколько сложнее, не все разберутся. В Readme есть примеры автоматизаций для передачи контроллеру температуры внутри и снаружи помещения с любых датчиков, добавленных в HA.

Фактически, number.opentherm_indoor_temp и number.opentherm_outdoor_temp не предназначены для редактирования человеком, они создаются для изменения значения из автоматизаций HA. Например у вас есть zigbee датчик sensor.outdoor_temp, с помощью такой автоматизации вы сможете передать контроллеру значение этого датчика:

  alias: Set boiler outdoor temp
  description: ""
  trigger:
    - platform: state
      entity_id:
        - sensor.outdoor_temp
    - platform: time_pattern
      seconds: /30
  condition: []
  action:
    - if:
        - condition: template
          value_template: "{{ has_value('number.opentherm_outdoor_temp') and (states('sensor.outdoor_temp')|float(0) - states('number.opentherm_outdoor_temp')|float(0)) | abs | round(2) >= 0.01 }}"
      then:
        - service: number.set_value
          data:
            value: "{{ states('sensor.outdoor_temp')|float(0)|round(2) }}"
          target:
            entity_id: number.opentherm_outdoor_temp
  mode: single

Примерно такой же автоматизацией можно передавать контроллеру indoor_temp с какого-нибудь zigbee датчика или группы датчиков внутри дома.

Balaganoff commented 10 months ago

Есть какой-то канал общения кроме гитхаба ? Форум или телеграмм ?

Laxilef commented 10 months ago

@Balaganoff, пока только тут и на форуме baxi

bigbrother72 commented 10 months ago

Для climate.opentherm_heating установлен шаг 0.5 градуса.

пытался поменять в publishClimateHeating()

doc[F("temp_step")] = 0.1;
doc[F("target_temp_step")] = 0.1;

Не помогает. Только на один градус шаг регулировки. А мне например 21 градус холодно, а 22 градуса уже жарко

Balaganoff commented 10 months ago

Не помогает. Только на один градус шаг регулировки. А мне например 21 градус холодно, а 22 градуса уже жарко

Я для себя нашел выход - через автоматизаию пихаю нужное значение в number.opentherm_heating_target - тогда воспринимает половину градуса и работает по этому значению. Правда на карточке объекта округляет. Вот пример установки 24.5 и ночной 22. ( такие высокие значения т.к. датчик пока стоит у котла) изображение

RYZHOP commented 10 months ago

А можешь скинуть файл .yaml со всеми настроенными датчиками.

Laxilef commented 10 months ago

Попробуйте mini-climate-card, через HACS ставится. Конфиг:

type: custom:mini-climate
entity: climate.opentherm_heating
target_temperature:
  step: 0.5
secondary_info:
  type: hvac-action
  source:
    idle: Бездействие
    heating: Нагрев
fan_mode:
  hide: true
hvac_mode:
  hide: true
  source:
    heat:
      name: Включено
    'off':
      name: Выключено
buttons:
  boost:
    icon: mdi:rocket-launch-outline
    location: bottom
    state:
      attribute: preset_mode
      mapper: 'state => (state == ''boost'' ? ''on'': ''off'')'
    toggle_action: >
      (state, climate_entity) => this.call_service('climate', 'set_preset_mode',
      { entity_id: climate_entity.entity_id, preset_mode:
      (this.toggle_state(state) == 'on' ? 'boost' : 'none') })
  heat:
    icon: mdi:power
    location: bottom
    state:
      mapper: 'state => (state == ''heat'' ? ''on'': ''off'')'
    toggle_action: >
      (state, entity, climate_entity) => this.call_service('climate',
      'set_hvac_mode', { entity_id: climate_entity.entity_id, hvac_mode:
      (this.toggle_state(state) == 'on' ? 'heat' : 'off') })
Balaganoff commented 10 months ago

Попробуйте mini-climate-card, через HACS ставится. Да. регулирует с шагом 0.5 Правда на основной карточке округляет, что не очень красиво ;) opentherm

Balaganoff commented 10 months ago
type: custom:mini-climate
entity: climate.opentherm_heating

После этого наверное надо добавить: name: Отопление

Laxilef commented 10 months ago

В стандартной карточке шаг будет работать на версии 1.3.2, обновитесь.

Rolex48 commented 10 months ago

Подскажите почему минимальный порог кривой "N" с 0.3 ? Есть возможность начинать с 0.1? (дело в том что отопление тёплыми полами котлом без подмеса в диапазоне 25-40°)

"N - heating curve coefficient. The coefficient is selected individually, depending on the insulation of the room, the heated area, etc. Range: 0.3...10, default: 0.7, step 0.01"

Laxilef commented 10 months ago

Через HA можете установить любое значение от 0.001 до 5. В документации исправлю.

filipjurik commented 9 months ago

Hi, I have one question. Would it be possible to control the modulation level ?

Laxilef commented 9 months ago

Hi, @filipjurik no, the modulation is controlled by the boiler software. Openterm supports limiting the modulation level. But not all boilers support this function.

filipjurik commented 9 months ago

Being able to limit the modulation would help me quite a bit. My boiler starts the flame and modulates to 50% and does not have time to adjust the modulation to maintain the temperature of the water in the heating, so the flame goes out. The boiler cycles. I would need to start it with 10-20% modulation and add it later as needed. How i do this?

thank you for you reply

Laxilef commented 9 months ago

I will try to add this setting in the next version. But, if I’m not mistaken, this parameter can be changed through the boiler’s engineering menu.

filipjurik commented 9 months ago

Thank you for your response. yes, it is possible to change the maximum allowed heating power in the boiler, but I only need to change it in certain cases. I already have it set to 50%, but I need to temporarily set it to less.

Laxilef commented 8 months ago

@filipjurik, this feature will appear in release 1.4.0, but now it is already in the master branch. Pls test it.

filipjurik commented 8 months ago

Thanks, I'll test it and let you know if it works

hello, I installed it, I can set the maximum modulation, but it doesn't work on my boiler.

edit: sorry, I'm not a programmer and I don't know where to look for it. What OT message ID do you send to set the maximum modulation?

github-actions[bot] commented 8 months ago

This issue is stale because it has been open 15 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] commented 8 months ago

This issue was closed because it has been stalled for 5 days with no activity.