Драйвер MegaD-328

Fork me on GitHub

MegaD/328 это устройство, которое разрабатывалось сообществом сайта ab-log.ru специально для Умного Дома. Оно позволяет решать очень многие задачи в домашней автоматизации и может стать одним из ключевых элементов системы Умный Дом. Устройство ориентировано, прежде всего, на тех людей, которые заинтересованы в создании интеллектуального дома своими руками, однако оно может также представлять интерес и для интеграторов, монтажных организаций.

Речь идет об устройстве MegaD-328 с закрепившемся на форуме именем “Мегадевайс”. Слово “мега” имеет двойной смысл. С одной стороны это говорит о широких возможностях устройства, с другой стороны указывает на применяемый в модуле микропроцессор Atmega328.

Подробную документацию по MegaD-328 можно найти здесь: http://www.ab-log.ru/smart-house/ethernet/megad-328

Информация

Текущая версия MegaD/328 Драйвер
Требования  -/-
Разработчик bluefox
Ключевые слова MegaD-328
Github https://github.com/ioBroker/ioBroker.megad
Платформа  javascript/Node.js
Лицензия MIT

megad-328-kit

Настройки

  • IP Адрес устройства: IP адрес MegaD-328;
  • MegaD Имя: Имя MegaD-328 устройства для идентификации сообщений о смене состояния порта от MegaD-328, например “DevA”. Если имя не задано, то для этих целей будет использоватся номер инстанции драйвера.;
  • ioBroker веб-порт: Порт на котором ioBroker разворачивает веб сервер для приёма сообщений от MegaD-328. MegaD-328 не поддерживает на данный момент порты отличные от 80. Значение по умолчанию: 80.
  • Интервал опроса (сек): инетрвал опроса портов в секундах;
  • MegaD-328 Пароль: пароль для доступа на MegaD-328 (максимально 3 символа). Значение по умолчанию: “sec”;
  • Интервал для длинного нажатия (мс): если отжатие после нажатия кнопки произошло позже указанного интервала, то сгенерируется длинное нажатие;
  • Интервал двойного нажатия (мс): если между нажатиями пройдет меньше указанного времени, то сгенерируется двойное нажатие;

В сетевых настройках MegaD-328 можно сконфигуририровать IP-адрес ioBroker. При каждом нажатии на кнопку MegaD-328 сообщает ioBroker (restAPI) номер сработавшего входа.

Выглядит запрос примерно следующим образом: http://192.168.0.250/0/?pt=7

Порты

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

  • Имя: имя порта. Исползуется в ioBroker для создание объектов;
  • Вход: является ли порт входом (true) или выходом(false);
  • Переключатель: Может ли порт быть в положениях ВКЛ и ВЫКЛ (в этом случае значение TRUE) или он просто используется для сигнализирования нажатия на кнопку (FALSE);
  • Цифровой: Цифровой или аналоговый порт. ioBroker ожидает значени с аналогового порта в промежутке от 0 до 255.
  • Множитель: множитель для значения аналогового порта.
  • Сдвиг: сдвиг для значения аналогового порта.
  • Длинное нажатие: если активировано, то порт будет генерировать событие “длинное нажатие” в объекте port_long (Порт должен быть цифровым и иметь тип “Переключатель”)
  • Двойное нажатие: если активировано, то порт будет генерировать событие “double click” в объекте port_double

Для выхода:
MegaЗначение = (ioBrokerЗначение - Сдвиг) / Множитель;

Для входа:
ioBrokerЗначение = MegaЗначение * Множитель + Сдвиг;

Например, что бы получить интервал значений от 100 до 500 нужно установить сдиг 100 и множитель 400.

Только аналоговые порты принимают во внимание Множитель и Сдвиг.

Порядок портов очень важен. Порт в первой колонке таблицы ассоциируется с портом P0 на MegaD-328. Порт в колонке 14 с P13.