Как я 1000 дней пользовался OpenHAB, а затем перешел на Home Assistant
Однажды в 2016 году мне потребовалось настроить удаленный сбор показаний счетчиков в квартире. К текущему моменту (январь 2020 года) там внедрена комплексная домашняя автоматизация с возможностью перекрытия воды и полного удаленного обесточивания (и обратного включения) электроэнергии.
В статье расскажу об опыте управления OpenHAB 1.х и 2.х и Home Assistant, а также приведу свои конфигурации.
В 2016 году у меня был двухлетний опыт работы с Z-Wave и контроллерами VeraLite/VeraEdge. Но хотелось попробовать что-то более доступное по ценам и я остановился на проводном исполнительном устройстве MegaD-328 (сейчас это MegaD-2561). С программным хабом определиться было сложнее, список был велик.
OpenHAB 1.х
В итоге практически случайным образом выбор пал на OpenHAB. OpenHAB — это программный хаб для интеграции различных систем и технологий домашней автоматизации в единое решение, которое позволяет использовать общие правила автоматизации и предлагает унифицированные пользовательские интерфейсы. Написан на Java.
Отличительные особенности OpenHAB:
Я использовал OpenHAB 1000 дней (с августа 2016 года по июль 2019 года или
2 года 11 месяцев) и мой первый интерфейс выглядел совсем неказисто:

Моя самая первая версия интерфейса управления в августе 2017 года на базе OpenHAB 1.х только с датчиками без исполнительных устройств
Полные конфигурации OpenHAB 1.8.3, в том числе items, persistence, rules, sitemaps, transform выложены на GitHub.

Интерфейс управления на базе OpenHAB 1.х, перед переходом на OpenHAB 2.х в начале 2017 года
OpenHAB 2.х
В марте 2017 года вышел OpenHAB 2.х и я с некоторым трудом переехал на него:

Мой интерфейс управления OpenHAB 2.х в апреле 2017 года
Тогда же решил сделать автоматизацию света с минимальным ценником. Что и было реализовано за весну/лето 2017 года при помощи реле Wifi IoT Relay Board Based on ESP8266 и Sonoff Basic WiFi Wireless Switch с прошивкой Tasmota, установленных в распределительных коробках увеличенного размера.
После этого панель управления приобрела уже более законченный вид:
Панель управления OpenHAB 2.2.0
Количество включенных ламп считалось и выводилось на отдельной вкладке “Управление освещением”:
Управление Wifi IoT Relay Board Based on ESP8266 и Sonoff Basic WiFi Wireless Switch в OpenHAB 2.2.0
Управление счетчиками воды и электричества в OpenHAB 2.2.0
Полные конфигурации OpenHAB 2.2.0, в том числе items, persistence, rules, sitemaps, transform выложены на GitHub.
Home Assistant
Я пользовался OpenHAB практически 1000 дней, но в июле 2019 решил попробовать что-то другое. Не хочу ругать OpenHAB, но если сейчас оглянуться назад, то в Home Assistant, например, гораздо проще запрограммировать правила чем в OpenHAB. Также интеграции в OpenHAB мне показались не все рабочие. Какие-то вещи в Home Assistant сделать элементарно, например добавить камеры, а в OpenHAB вообще невозможно. Интерфейс Home Assistant мне показался более чем дружественным, всё буквально парой кликов через веб-интерфейс можно сделать.
На мой взгляд Home Assistant и OpenHAB очень схожи в философии развития, но по итогу я остался на Home Assistant.
Home Assistant — это ПО с открытым кодом для автоматизации умного дома, делающее ставку на локальное управление и конфиденциальность. Развивается трудом открытого сообщества энтузиастов и отлично подходит для работы на Raspberry Pi или локальном сервере. Написан на Python.
Уже к 1 августа 2019 года я полностью переехал на Home Assistant. Это выглядело так:
Мой интерфейс Home Assistant
Больше полугода (до января 2020 года) я использую Home Assistant не только в этой квартире, но и на других объектах. И до сих пор нисколько не разочаровался.
Интерфейс Home Assistant в мобильном телефоне
Моя текущая конфигурация Home Assistant выложена на GitHub.
Не хочу ругать OpenHAB, ведь я пользовался им почти три года, но Home Assistant своей простотой для конечного пользователя приглянулся мне больше, хотя возможности систем сопоставимы.
Мои конфигурации выложены на GitHub:
Автор: Михаил Шардин,
30 января 2020 г.
OpenHAB — стань программистом собственного жилища
Дом — это машина для жилья
В этом посте я расскажу об opensource проекте домашней автоматизации openHAB.
openHAB переводится как «Open Home Automation Bus«. Это значит, что он нацелен на создание универсальной платформы для объединения всей домашней «умной» техники в единую систему управления.
Что же это дает на практике? Под катом я расскажу о том, как с помощью этого решения можно создать настоящий интернет вещей в своем доме.
Что такое «единая платформа домашней автоматизации»?
Направление умных домов развивается уже давно. За это время появилось множество различных поставщиков «умного» оборудования (освещение, RGB подсветки, термостаты, приводы для штор/жалюзи, разнообразные датчики и т.п.) Все они работают на разных протоколах (проводных и беспроводных).
В результате, пользователь, желающий автоматизировать свое жилище, должен выбирать между продуктами от различных производителей. В конечном итоге ему приходится пользоваться разными системами (пульты, приложения) для контроля разных устройств. Вдобавок, задача создания полноценного интернета вещей (когда устройства могут быть связаны в единую цепь и управляться все вместе в результате каких-либо условий и событий) становится очень сложной.
Чем поможет openHAB
openHAB реализует единую шину, т.е. позволяет объединить все устройства с разными протоколами в единую сеть, абстрагируя пользователя от каждого конкретного протокола. Таким образом, можно пользоваться единственным средством управления (скажем, приложением на смартфоне) и реализовать сколь угодно сложную логику взаимосвязи между устройствами.
Что отличает проект openHAB от аналогов?
Во-первых, он развивается уже довольно давно и уже сейчас готов к полноценному использованию. По своему личному опыту (впервые я начал работать с этой системой около года назад) могу сказать, что его освоение занимает совсем немного времени. И после этого он работает действительно так, как заявлено в описании.
Сейчас разработчики трудятся уже над вторым поколением платформы, основанной на специализированном фреймворке Eclipse SmartHome.
Во-вторых, это проект с открытым исходным кодом. А это значит, что весь код создается программистами со всего мира, которые заинтересованы в теме интернета вещей и создания единой системы умного дома. Этот код доступен в репозитории GitHub.
В-третьих, в результате открытости уже сейчас openHAB поддерживает около 50 (пятидесяти!) различных протоколов «умных» устройств. Среди них ZWave, KNX, EnOcean, системы мультимедиа типа Sonos, кинотеатр XBMC, Samsung SmartTV и многие-многие другие. Это, в свою очередь, дает возможность пользователю выбирать устройства для своего дома по самым разнообразным параметрам, практически не ограничиваясь возможностями всей платформы.
Как это работает?
openHAB — это специальный сервер, который может работать на любом компьютере под управлением любой ОС (вы даже можете использовать RaspberryPi). Вся установка заключается в распаковывании дистрибутива сервера и установке Java машины. Далее начинается процесс настройки и созидания.
openHAB — это очень гибкий конструктор. Основанный на технологии OSGi, он позволяет конфигурировать каждый отдельный плагин (Binding) «налету», не перезагружая весь сервер.
Плагин (биндинг) в openHAB — это то самое связующее звено между конкретным протоколом устройства и единой системой openHAB. Пользователь может добавить в свою инсталяцию openHAB только те плагины, которые нужны именно ему. Например, если у вас есть только ZWave и Phillips Hue, то вам понадобятся только два биндинга.
После настройки связи между каждым устройством и соответствующим биндингом система сможет общаться с ним посредством простых команд, абстрагированных от конкретного протокола. Скажем, для включения/выключения есть команды ON/OFF, для открытия/закрытия UP/DOWN и т.д.
В дальнейшем, используя только такие абстрактные команды, можно будет создавать очень сложные сценарии и, что называется, программировать собственный дом.
Настройка item-ов и binding-ов
Каждое «умное» устройство в доме должно быть сконфигурировано в openHAB как один или несколько item-ов. Они описываются в специальном файле в директории configuration/items. Вот пример одного такого item-а
Dimmer Light_GF_Living_Table «Table» (GF_Living, Lights)
Здесь описан один item с именем Light_GF_Living_Table и типом Dimmer. Т.е. это некое устройство, которое может быть диммировано (включено, выключено или изменить свое значение в диапазоне от 0 до 100). Как правило, диммерами являются различные световые приборы, но также это может быть диммируемая розетка, или что-либо еще.
Важно понимать, что item в конфигурации не обязан быть отдельным устройством. Скажем, я мог бы сконфигурировать диммер для управления только одной функцией какого-либо более сложного устройства, например, громкости домашнего кинотеатра или мощностью работы конвекторов. Вот пример использования диммера для управления громкостью:
Dimmer Volume «Volume [%.1f %%]»
Как видите, openHAB дает возможность использовать разные item-ы как элементы управления для всего, что подходит под какие-либо критерии (в данном случае, что-то должно уметь включаться, выключаться и принимать значение от 0 до 100).
Имя item-а дает возможность привязывать к нему элементы UI в конфигурации пользовательского интерфейса (sitemap) и обращаться к нему в коде ваших скриптов и правил (об этом чуть дальше).
В общем случае, синтаксис описания item-а таков
Подробное описание каждого типа и список возможных команд представлен на странице Explanation-of-Items
Биндинг связывает item с каким-то конкретным устройством (или его функцией). Это нужно для того, чтобы openHAB преобразовывал абстрактные команды типа On/Off в конкретные сообщения нужного протокола, а также правильно интерпретировал сообщения от устройства. Вот пример KNX биндинга для простого переключателя:
Switch Light_GF_Living_Table «Table» (GF_Living, Lights) < knx="1/0/15+0/0/15" >
Пользовательский интерфейс
Здесь openHAB предлагает довольно интересный способ построения UI «на лету» с помощью файлов описания sitemap. В директории configuratnios/sitemaps лежат файлы, в которых нужно описать то, как должен выглядеть пользовательский интерфейс (а точнее, его layout) для управления теми устройствами, которые мы описали в items. Вот простейший пример
Здесь UI состоит только из одного «фрейма» (не путать с фреймами в терминах HTML), в котором есть 4 элемента (два слайдера для управления диммерами, выбор цвета для подсветки, простой переключатель). Список всех возможных элементов интеофейса можно найти на странице Sitemaps.
Программируем «умный дом»
И сразу пример простого правила:
При поступлении команд increase/decrease с диммера Volume срабатывает простое правило Volume control, которое увеличивает или уменьшает громкость системы, на которой работает opеnHAB сервер.
Вот еще один пример:
Здесь при включении системы каждое устройство в группе Lights включается в 30 процентах случаев.
Однажды у меня была проблема в том, как управлять KNX подсветкой RGB. Мне нужно было преобразовать данные от единственного элемента UI Colorpicker в 3 сообщения (каждое для своего порта в RGB подсветке).
При этом в sitemap отображается только один элемент Colorpicker
В итоге правило, преобразующее данные от Colorpicker в команды на каждый из диммеров выглядит вот так
Да, изменение в исходнике правила также приведет к его автоматической перезагрузке без перезапуска. Подробности о возможностях правил и скриптов, а также множество примеров можно найти на странице Rules
Триггеры
Освоить Xtend в рамках описания логики умного дома несложно. Главное понимать цель, которую хочется достичь в результате работы правила или скрипта и возможности самих устройств.
В итоге
openHAB дает действительно интересную возможность своими силами запрограммировать «умный дом», не ограничивая себя в выборе устройств и тех протоколов, на которых они работают.
Здесь я постарался очень кратко рассказать о самом основном, что несет нам весь проект. По моему личному опыту могу сказать, что автоматизация с openHAB, конечно же, не лишена недостатков, но все же превращается в очень увлекательное занятие.
Если у вас возникнут вопросы или пожелания по теме следующей статьи, с удовольствием готов более полно раскрыть какую-либо сторону использования openHAB.
Система автоматизации помещений (Умный дом) openHAB
В качестве вступления
История появления openHAB
openHAB (расшифровывается как open Home Automation Bus) ведёт свою историю с далёкого 2010 года, когда он был инициирован Каем Крейцером, в качестве открытой платформы для автоматизации зданий и помещений. Тогда практически не существовало подобных открытых и доступных решений, да и вообще, понятие “Умный Дом” было скорее модным базвордом, чем тем, что можно потрогать руками или за доступные деньги поставить в свой дом или квартиру.
Сейчас кажется, что ведь это естественно, как может быть иначе? Но, повторюсь, тогда это был своего рода прорыв, позволивший идеям Умного Дома стать гораздо ближе к народным массам и позволить “соскочить” с навязываемого корпорациями “бренд-лока”.
Интересно, что внутренняя архитектура openHAB, по сути, предвосхитила модные сейчас решения для УД на базе MQTT, когда устройства шлют события и изменения статусов в один общий асинхронный канал, где на них могут реагировать другие устройства, триггеры, срабатывать сценарии и т.д. Нельзя сказать, что openHAB это изобрёл: в промышленных и корпоративных приложениях асинхронная шина событий применялась уже давно, но сама концепция в контексте интеграции всего и вся в Умном Доме показала себя настолько хорошо, что так или иначе применяется сейчас везде.
Итак, «ближе к телу», каков ты на ощупь, openHAB?
Поддержка устройств и технологий
Вот краткий перечень поддерживаемых биндингов (в openHAB так называются плагины, обеспечивающие взаимодействие с внешним миром и другими компонентами), что называется “их там есть”:
Amazon Alexa, Asterisk, Astro (астрономические исчисления), Bluetooth, Comfo Air, CUPS, Daikin, digitalSTROM, DMX512, eKey, Enocean, Epson Projector, Exec (вызов и выполнение команд OS), Fritz!Box, Fritz AHA, GPIO, HDAnywhere, Heatmiser, HomeMatic, HTTP, IHC / ELKO, Innogy, INSTEON Hub, IRTrans, KNX, Koubachi, LCN Building Management, Leviton/HAI Omnilink, Loxone, MAX!Cube, MiLight, Modbus TCP и RTU, MPD, MQTT, Nest, Netatmo, Network Health, Nibe Heatpump, Nikobus, Novelan/Luxtronic Heatpump, NTP, One-Wire, Onkyo AV Receiver, Open energy monitor, OpenPaths, OpenSprinkler, OSGi Configuration Admin, Philips Hue, Piface, Pioneer AV receiver, PLC-BUS, Plex, Plugwise, Prowl, PulseAudio, Pulseaudio Server, Pushover, RFXCOM, Samsung TV, Serial, SNMP, Somfy URTSI II, Sonos, Souliss, Squeezebox, Swegon ventilation, System Info, TCP/UDP, Tellstick, TinkerForge, Tivo, Twitter, VDR, Wake-on-LAN, XBMC, Xively, xPL, Xiaomi, Yeelight, Z-Wave, ZigBee.
openHAB также имеет поддержку Dropbox, Google Calendar / CalDAV, есть голосовой движок TTS. Пользователям также доступно бесплатное облако myopenHAB.org для взаимодействия вашего УД с внешним миром, через сторонние API (например, IFTTT или управления системой извне, если нет возможности настроить свой VPN или просто лень).
Алло, Алекса/Алиса
Что касается голосовых ассистентов (очень трендовая сейчас тема), то в openHAB уже давно есть поддержка для Google Assistant и Amazon Alexa. Пока нет нативной поддержки Алисы от Яндекс, но используя связку с MQTT и плагин yandex2mqtt от Яна Янина (@munrexio ), всё прекрасно работает и с ней (и даже ощутимо быстрее, чем через Google Home!).
«Хочу ещё!»
А ещё у openHAB есть нативные приложения как для iOS / Android, так и для десктопных систем, либо можно пользоваться сторонними типа Imperihome.
Потому у меня хоть и возникает иногда желание чего-то нового, красивого и “чтоб мышкой в один клик”, но всё равно, нагулявшись на стороне, в итоге возвращаешься к openHAB.
Документация и поддержка
Целевая аудитория
openHab в этом контексте находится где-то посередине, позволяя пользоваться одновременно несколькими официальными (!) GUI и, при необходимости или желании, описать всё руками через файлы конфигурации.
Для меня openHAB стал агрегатором и единым пунктом для добавления гаджетов в УД, благодаря огромному количеству плагинов и базе данных различных типов устройств и производителей. Как пример, большинство устройств на Z-Wave или Zigbee являются мульти-устройствами, когда в одном корпусе может присутствовать и несколько различных датчиков, и несколько управляемых вводов/выводов. Во многих альтернативных системах это превращается в ад, когда добавив одно устройство, ты получаешь 5 или 7 разных. В openHAB же они определяются корректно и создаются как единые устройства, что очень удобно и упрощает жизнь.
А имея в связке с openHAB его конструктор дашбордов HabPanel, брокер MQTT и систему для продвинутого скриптинга и автоматизации Node Red, я практически перекрыл все возникающие в моём умном доме задачи и свою постоянную тягу к экспериментам (но Sprut Hub я всё же попробую! 🙂
Теперь о минусах. Ну да, как без них?
Заключение или «кому оно подойдёт?»
Как итог, кому бы я советовал эту систему:
Среди спонсоров и активных сторонников openHAB и основанных на нём продуктов такие компании, как KNX, Enocean, Insteon, Deutsche Telekom, HomeMatic и даже сам консорциум Z-Wave (впрочем, после приобретения Silabs, они активно начали развивать собственные решения).
В конце 2020 года вышло большое обновление OpenHAB с версии 2 до версии 3. Как утверждают разработчики, OpenHAB 3 стал более простым, современным и функциональным.
Не так давно я уже писал про установку OpenHAB 2, но с выходом третьей версии решил обновить статью, заодно посмотреть какие отличия появились в сравнении со второй линейкой.
OpenHAB можно ставить на различные ОС, для Raspberry Pi есть готовая отдельная сборка OpenHABian, в комлекте которой есть всё необходимое для работы: SSH, Samba, Frontail, доступ к файловой системе.
Установка OpenHABian
Развернутая система после установки занимает более 4Гб, карты памяти на 16Гб должно хватить под систему, базу и дополнительно устанавливаемые пакеты.
По окончании работы программы Etcher вставляем flash карту в Raspberry Pi, подключаем питание, ждем завершения установки. Подключение внешних периферийных устройств не требуется, периодически проверяем в web браузере доступность адреса: http://raspberry_ip_address:8080. На Raspberry Pi 3 B+ установка заняла около часа.
В меню System Settings устанавливаем:
Пароль пользователя изменяется сразу после изменения, остальные настройки применяются после перезагрузки Raspberry Pi.
Открываем в web браузере страницу:
В OpenHAB 3 полностью переработали пользовательский интерфейс, теперь при первом запуске необходимо установить учетную запись администратора и выполнить первоначальные настройки:
В мастере первоначальной настройки указываем часовой пояс:
Указываем местоположение, можно выбрать установив точку на интерактивной карте:
Первоначальная настройка OpenHAB 3 завершена:
Знакомство с OpenHAB 3
OpenHAB 3 избавился от лишних интерфейсов, теперь используется единый интерфейс с семантическими моделями. Семантическая модель подразумевает под собой то, что все элементы должны иметь семантический тэг, который позволяет OpenHAB понять, что представляет из себя элемент.
Теперь на домашней странице элементы автоматически отображаются только если в них указан семантический тэг.
В разделе оборудование устройства объединены по семантическим тэгам. К сожалению тэг «Розетка» отсутствует.
Для вызова Frontail, интерфейса Basic UI и OpenHAB Panel появилась кнопка быстрого доступа.
OpenHAB 3 становится проще и понятнее для пользователей, теперь правило можно создавать, используя графический интерфейс, который сильно уменьшает возможность допущения ошибок:
А вот код этих правил написан на YAML, синтаксис которого на любителя.
Скрипты теперь можно создавать при помощи интерактивного блочного режима, ECMAScript или Rule DSL.
Домашняя автоматизация с openHAB: освещение и удаленное управление обогревателями. Часть 1
Моя прошлая статья была о выборе ламп освещения для жилой мастерской. В этот раз расскажу про реализацию домашней автоматизации в том же помещении. Мастерская отапливается двумя электрическими обогревателями. Хотелось удаленно их включать, чтобы не приезжать в холодное помещение. И еще хотелось поддерживать заданную температуру, до этого при изменении температуры на улице приходилось каждый раз крутить «термостаты» обогревателей. Ну и управление освещением, датчик открытия двери и т.д.
Оглавление
Часть 2
Управление обогревателями
Термодатчики
Хранение данных
Графики
Удаленное управление
Впечатления от OpenHAB
Persistence
Интерфейсы
Мониторинг
Вступление
Хардвер я использовал вполне стандартный, местами не оптимальный, про него особенно интересны замечания и рекомендации.
Выбор софта частично сделан с целью попробовать незнакомые инструменты, к примеру, таким образом для хранения данных вабрана InfluxDB
После беглого поиска open-source решений для домашней автоматизации был выбран OpenHAB, довольно зрелый инструмент с модульной архитектурой, кроме того, он активно развивается. Про него уже есть статья на хабре, рекомендую ее посмотреть тем кто захочет использовать OpenHAB.
Еще можно взглянуть на демо-интерфейс.
Я опишу хардверную часть моего решения и попутно приведу выдержки из конфигурации OpenHAB.
Вот какие Bindings я использую:
| Название | Применение |
|---|---|
| xmpp | Получаю сообщения от OpenHAB |
| Получение оповещений на почту | |
| networkhealth | Мониторинг доступности хостов в сети |
| myopenhab | Удаленный доступ к OpenHAB |
| onewire | Получение от owserever данных термодатчиков |
| http | Взаимодействие с HTTP API |
| freetts | Синтез речи |
| jpa | Сохранение данных в PostgreSQL |
| db4o | Сохранение данных в db4o |
| influxdb | Сохранение данных в influxdb |
Про xmpp подробнее: этот биндинг дает возможность получать сообщения в гугл-чате(или другом Jabber-аккаунте) и использовать чат как консоль для отправки команд OpenHAB. Команды начинающиеся с ‘>’ будут выполнены и результат вернется в ответном сообщении. Мне это пригодилось для отладки при написании Rules. Далее в тексте примеры команд OpenHAB начинаются с символа ‘>’.
Конфигурация OpenHAB, скрипты для выключателей и т.д. доступны в репозитории homeAutomationExample
Общее описание
Компоненты системы:
На картинке веб-интерфейс OpenHAB
Сразу было понятно, что кроме веб-интерфейса надо сделать несколько физических выключателей, т.к. пользоваться веб-интерфейсом не всегда удобно.
Сначала я думал сделать беcпроводные выключатели, но доступные по цене и надежные варианты не нашел, возможно сейчас уже есть из чего выбрать, но тогда я решил использовать Ethernet.
По возможности делал так, чтобы компоненты системы общались между собой по протоколу HTTP.
Он выбран из-за простоты, прозрачности и привычности. Как альтернативу рассматривал MQTT, но понадобился бы софт для сервера, так как OpenHAB может быть только клиентом.
Нагрузка управляется с помощью реле, сейчас их семь штук. От каждого реле идет отдельная жила кабеля, то есть для трех управляемых розеток используется 4-х жильный кабель(три для фазы и одна жила для ноля).
Все потребители постоянного тока подключены к одному компьютерному блоку питания.
Про безопасноть и контроль доспупа: в OpenHAB можно добавить пользователей и запретить анонимный доступ, но я этого не делал. Сейчас любой хост моей локальной сети имеет доступ к веб-интерфейсу OpenHAB и к другим устройствам доступным по HTTP.
Управление нагрузкой
Так можно избежать кратковременного включения реле при включении Arduino.
У всех реле, кроме одного, используется нормально-разомкнутый контакт(NO, Normally Open), чтобы по умолчанию вся нагрузка была выключена, например после временного отключения электричества. Исключение сделано для диодной ленты — она подключена к нормально-замкнутому контакту, для аварийного освещения.
В целом Arduino + Ehernet Shield работают без проблем, перебои были только когда я включил их мониторинг из OpenHAB. Есть предположение что OpenHAB открывал keepalive соединение и из-за этого другие соединения не устанавливалсь.
А еще есть неприятный момент в работе Ethernet Shield:
ПРОБЛЕМА:
Ehernet Shield не работает после включения питания Arduino, а только после ресета. Как я понял, это проблема первой версии шилда на чипе w5100. Вот возможный вариант решения.
Исходники API для Arduino в репозитории minimalArduinoWebApi.
Вот пример запроса состояния пина 40, к которому подключено реле управляющее одной из ламп:
Текст ответа будет ON или OFF.
Итак, есть HTTP API включения света и розеток, теперь надо как-то использовать его из OpenHAB. Каждый пин, к которому подключено реле, добавлен в конфигурацию OpenHAB как выключатель через http binding.
Например, вот описание пина 40 из файла main.items:
Тут определяется Switch с именем Light_1, входящий в группы Lights и DayLights:
(Группы в OpenHAB удобно использовать, например, чтобы выключить весь свет или взять среднее с температурных датчиков.)
(Переносы строк добавлены для удобства чтения, в таком виде работать не будет.)
Строка >[ON:… определяет запрос, который выполнит OpenHAB при получении Light_1 команды ON.
То есть если в консоль отправить:
то OpenHAB отправит запрос PUT 192.168.2.15/pins/40/ON.
Кроме консоли управлять Light_1 можно через REST API самого OpenHAB.


















