mirror of
https://github.com/andvikt/mega_hacs.git
synced 2025-12-12 17:44:28 +05:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9322f9cae1 | ||
|
|
52ace90600 | ||
|
|
8738a936fe | ||
|
|
2490e09748 | ||
|
|
e134a874fa |
@@ -1,6 +1,6 @@
|
|||||||
[bumpversion]
|
[bumpversion]
|
||||||
current_version = 1.1.0b1
|
current_version = 1.0.10b2
|
||||||
parse = (?P<major>\d+)(\.(?P<minor>\d+))(\.(?P<patch>\d))(?P<release>[bf]*)(?P<build>\d*)
|
parse = (?P<major>\d+)(\.(?P<minor>\d+))(\.(?P<patch>\d+))(?P<release>[bf]*)(?P<build>\d*)
|
||||||
commit = True
|
commit = True
|
||||||
tag = True
|
tag = True
|
||||||
serialize =
|
serialize =
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import voluptuous as vol
|
|||||||
|
|
||||||
from homeassistant.const import (
|
from homeassistant.const import (
|
||||||
CONF_NAME, CONF_DOMAIN,
|
CONF_NAME, CONF_DOMAIN,
|
||||||
CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE, CONF_DEVICE_CLASS, CONF_PORT, CONF_UNIQUE_ID
|
CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE, CONF_DEVICE_CLASS, CONF_PORT
|
||||||
)
|
)
|
||||||
from homeassistant.core import HomeAssistant, ServiceCall
|
from homeassistant.core import HomeAssistant, ServiceCall
|
||||||
from homeassistant.helpers.service import bind_hass
|
from homeassistant.helpers.service import bind_hass
|
||||||
@@ -49,13 +49,6 @@ LED_LIGHT = \
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
ENCODER = \
|
|
||||||
{
|
|
||||||
vol.Optional('int', description='int порт'): int,
|
|
||||||
vol.Required('scl', description='scl порт'): int,
|
|
||||||
vol.Optional('sync_to', description='entity_id с которым синхронизироваться'): str,
|
|
||||||
}
|
|
||||||
|
|
||||||
CUSTOMIZE_PORT = {
|
CUSTOMIZE_PORT = {
|
||||||
vol.Optional(CONF_SKIP, description='исключить порт из сканирования', default=False): bool,
|
vol.Optional(CONF_SKIP, description='исключить порт из сканирования', default=False): bool,
|
||||||
vol.Optional(CONF_INVERT, default=False): bool,
|
vol.Optional(CONF_INVERT, default=False): bool,
|
||||||
@@ -118,7 +111,6 @@ CONFIG_SCHEMA = vol.Schema(
|
|||||||
CUSTOMIZE_PORT,
|
CUSTOMIZE_PORT,
|
||||||
CUSTOMIZE_DS2413,
|
CUSTOMIZE_DS2413,
|
||||||
),
|
),
|
||||||
vol.Optional('encoders'): {str: ENCODER}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ async def validate_input(hass: core.HomeAssistant, data):
|
|||||||
class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
|
class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
|
||||||
"""Handle a config flow for mega."""
|
"""Handle a config flow for mega."""
|
||||||
|
|
||||||
VERSION = 24
|
VERSION = 25
|
||||||
CONNECTION_CLASS = config_entries.CONN_CLASS_ASSUMED
|
CONNECTION_CLASS = config_entries.CONN_CLASS_ASSUMED
|
||||||
|
|
||||||
async def async_step_user(self, user_input=None):
|
async def async_step_user(self, user_input=None):
|
||||||
|
|||||||
@@ -566,6 +566,9 @@ class MegaD:
|
|||||||
elif cfg.pty == '4' and cfg.m == '2':
|
elif cfg.pty == '4' and cfg.m == '2':
|
||||||
# scl исключаем из сканирования
|
# scl исключаем из сканирования
|
||||||
continue
|
continue
|
||||||
|
elif cfg.pty is None and nports < 30:
|
||||||
|
# вроде как это ADC на 328 меге
|
||||||
|
ret['sensor'][port].append(dict())
|
||||||
elif cfg.pty in ('3', '2', '4'):
|
elif cfg.pty in ('3', '2', '4'):
|
||||||
http_cmd = 'get'
|
http_cmd = 'get'
|
||||||
if cfg.d == '5' and cfg.pty == '3':
|
if cfg.d == '5' and cfg.pty == '3':
|
||||||
|
|||||||
@@ -15,5 +15,5 @@
|
|||||||
"@andvikt"
|
"@andvikt"
|
||||||
],
|
],
|
||||||
"issue_tracker": "https://github.com/andvikt/mega_hacs/issues",
|
"issue_tracker": "https://github.com/andvikt/mega_hacs/issues",
|
||||||
"version": "v1.1.0b1"
|
"version": "v1.0.10b2"
|
||||||
}
|
}
|
||||||
27
docs/yaml.md
27
docs/yaml.md
@@ -204,33 +204,6 @@ mega:
|
|||||||
{% if m in [0, 1] %}d{% endif %}
|
{% if m in [0, 1] %}d{% endif %}
|
||||||
```
|
```
|
||||||
|
|
||||||
### encoders
|
|
||||||
Настройки енкодеров. Енкодер состоит из нескольких портов, поэтому энкодеры настраиваются в отдельном блоке. Настроенный
|
|
||||||
енкодер создает в вашем интерфейсе несколько объектов:
|
|
||||||
|
|
||||||
- **light.<encoder_id>**: это rgb-свет, отвечает за светодиод енкодера
|
|
||||||
- **sensor.<encoder_id>**: это текущее значение енкодера [0..255]
|
|
||||||
|
|
||||||
Пример:
|
|
||||||
```yaml
|
|
||||||
mega:
|
|
||||||
megaid1:
|
|
||||||
encoders:
|
|
||||||
some_encoder_id: # придумывайте любой
|
|
||||||
int: 6
|
|
||||||
scl: 30
|
|
||||||
sync_to: light.some_light
|
|
||||||
```
|
|
||||||
|
|
||||||
!!! note ""
|
|
||||||
- **int** (integer): номер порта-прерывания. Если не указать, сервер не будет реагировать на изменения.
|
|
||||||
- **scl** (integer): номер scl-порта, используется для управления подсветкой и синхронизации состояния
|
|
||||||
- **sync_to** (str): entity_id, с которым синхронизирвоать состояние. Синхронизация работает только в
|
|
||||||
одну сторону: а именно, когда вы меняете яркость объекта в интерфейсе, соответсвующая настройка "пробрасывается" на
|
|
||||||
контроллер. Обычно этого достаточно, тк управление самим светом лучше реализовать штатными средствами контроллера,
|
|
||||||
но в случае, если вы хотите так же управлять яркостью света с помощью енкодера+HA, то нужно использовать автоматизацию,
|
|
||||||
для вашего удобства есть шаблон, который можно установить по кнопке ниже:
|
|
||||||
|
|
||||||
## Параметры интеграции
|
## Параметры интеграции
|
||||||
### allow_hosts {: #allow_hosts }
|
### allow_hosts {: #allow_hosts }
|
||||||
Отвечает за список хостов, с которых интеграция "слушает" сообщения. По умолчанию, в этот список
|
Отвечает за список хостов, с которых интеграция "слушает" сообщения. По умолчанию, в этот список
|
||||||
|
|||||||
Reference in New Issue
Block a user