Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Кондиционер Ballu: hvac_modes только off и auto #514

Open
PiratesGhost opened this issue Jun 19, 2024 · 3 comments
Open
Labels
enhancement New feature or request

Comments

@PiratesGhost
Copy link

Кондиционер Ballu Discovery (BSVI-09HN8). Это завод TCL, насколько я разобрался.
Добавлен в УДЯ через интеграцию HOMMYN, используется официальный стик HOMMYN HDN/WFN-02-01.

История похожая на #432 и #366
В hvac_modes присутствуют только off и auto. Остальные параметры, которые вроде как и являются режимами HVAC, отображены в пресетах. С этим жить можно, управляется в ХА корректно, единственная проблема в том, что карточка термостата отображается куцо, т.е. имеет только статусы выкл и авто (при любом активном режиме работы).

Состояние объекта:

hvac_modes: auto, off
min_temp: 16
max_temp: 30
target_temp_step: 1
preset_modes: cool, heat, fan_only, dry, auto, quiet, turbo, eco
current_temperature: 19
temperature: 16
preset_mode: auto
friendly_name: Кондиционер
supported_features: 401

Описание устройства из yandex.ru/quasar/iot/device/*** :

 "name": "Кондиционер",
                    "type": "devices.types.thermostat.ac",
                    "icon_url": "https://avatars.mds.yandex.net/get-iot/icons-devices-devices.types.thermostat.ac.svg/orig",
                    "capabilities": [
                        {
                            "reportable": true,
                            "retrievable": true,
                            "type": "devices.capabilities.on_off",
                            "state": {
                                "instance": "on",
                                "value": false
                            },
                            "parameters": {
                                "split": false
                            }
                        },
                        {
                            "reportable": true,
                            "retrievable": true,
                            "type": "devices.capabilities.range",
                            "state": {
                                "instance": "temperature",
                                "value": 16
                            },
                            "parameters": {
                                "instance": "temperature",
                                "name": "температура",
                                "unit": "unit.temperature.celsius",
                                "random_access": true,
                                "looped": false,
                                "range": {
                                    "min": 16,
                                    "max": 30,
                                    "precision": 1
                                }
                            }
                        },
                        {
                            "reportable": true,
                            "retrievable": true,
                            "type": "devices.capabilities.mode",
                            "state": {
                                "instance": "swing",
                                "value": "auto"
                            },
                            "parameters": {
                                "instance": "swing",
                                "name": "направление воздуха",
                                "modes": [
                                    {
                                        "value": "auto",
                                        "name": "Авто"
                                    },
                                    {
                                        "value": "vertical",
                                        "name": "Вертикальный"
                                    },
                                    {
                                        "value": "horizontal",
                                        "name": "Горизонтальный"
                                    },
                                    {
                                        "value": "stationary",
                                        "name": "Статичный"
                                    }
                                ]
                            }
                        },
                        {
                            "reportable": true,
                            "retrievable": true,
                            "type": "devices.capabilities.mode",
                            "state": {
                                "instance": "work_speed",
                                "value": "low"
                            },
                            "parameters": {
                                "instance": "work_speed",
                                "name": "скорость работы",
                                "modes": [
                                    {
                                        "value": "auto",
                                        "name": "Авто"
                                    },
                                    {
                                        "value": "low",
                                        "name": "Низкая"
                                    },
                                    {
                                        "value": "medium",
                                        "name": "Средняя"
                                    },
                                    {
                                        "value": "high",
                                        "name": "Высокая"
                                    },
                                    {
                                        "value": "quiet",
                                        "name": "Тихий"
                                    },
                                    {
                                        "value": "turbo",
                                        "name": "Турбо"
                                    }
                                ]
                            }
                        },
                        {
                            "reportable": true,
                            "retrievable": true,
                            "type": "devices.capabilities.mode",
                            "state": {
                                "instance": "thermostat",
                                "value": "auto"
                            },
                            "parameters": {
                                "instance": "thermostat",
                                "name": "термостат",
                                "modes": [
                                    {
                                        "value": "cool",
                                        "name": "Охлаждение"
                                    },
                                    {
                                        "value": "heat",
                                        "name": "Нагрев"
                                    },
                                    {
                                        "value": "fan_only",
                                        "name": "Вентиляция"
                                    },
                                    {
                                        "value": "dry",
                                        "name": "Осушение"
                                    },
                                    {
                                        "value": "auto",
                                        "name": "Авто"
                                    },
                                    {
                                        "value": "quiet",
                                        "name": "Тихий"
                                    },
                                    {
                                        "value": "turbo",
                                        "name": "Турбо"
                                    },
                                    {
                                        "value": "eco",
                                        "name": "Эко"
                                    }
                                ]
                            }
                        }
                    ],
                    "properties": [],
                    "item_type": "device",
                    "skill_id": "b8deb65b-d522-4f02-8f65-52ccdd195bff",
                    "room_name": "Комната",
                    "status_info": {
                        "status": "online",
                        "reportable": true,
                        "updated": 1718753653.209784
                    },
                    "state": "online",
                    "created": "2024-06-16T20:56:14Z",
                    "parameters": {
                        "device_info": {
                            "manufacturer": "Ballu",
                            "model": "Discovery",
                            "hw_version": "",
                            "sw_version": "1.12"
                        }
                    }
                },
                {

В УДЯ карточка кондиционера выглядит так:

ballu_udy

В качестве дополнительной информации:

Нижний блок (Скорость работы) в ХА по умолчанию не передавался. Передался после добавления work_speed в configuration.yaml

yandex_station:
  include:
  - name: Кондиционер
    capabilities: [ "thermostat", "temperature", "work_speed", "swing" ] 

Режимы "Эко", "Тихий" и "Турбо" из нижнего блока запараллелены с верхним блоком, т.е. при нажатии в одном месте меняются и там и там.

В общем полазил тут по веткам, но где что можно подправить в моей инсталяции не нашёл - вроде как всё и так соответствует.
Повторюсь, отображается и управляется в ХА всё корректно, я насоздавал кнопки, которые дёргают соответствующие службы и вполне себе доволен собой :) но если есть какой-то способ корректно передать hvac_modes, чтобы отобразить карточку термостата по феншую, так сказать, буду признателен за помощь.

@zif91
Copy link

zif91 commented Jul 11, 2024

подпишусь на ветку.. такой же кондицинер

@AlexxIT AlexxIT added the enhancement New feature or request label Jul 13, 2024
@AlexxIT AlexxIT self-assigned this Jul 13, 2024
@AlexxIT
Copy link
Owner

AlexxIT commented Jul 13, 2024

Хорошее описание проблемы, со всей полезной информацией. Займусь, как будет время

@AlexxIT
Copy link
Owner

AlexxIT commented Jul 14, 2024

Проблема в наличии режимов quiet, turbo и eco. ХА не поддерживает такие hvac_modes.
Поэтому компонент поместил их в preset_modes. Там можно использовать произвольные имена режимов.

@AlexxIT AlexxIT removed their assignment Jul 14, 2024
AlexxIT added a commit that referenced this issue Jul 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants