- Saved searches
- Use saved searches to filter your results more quickly
- License
- fsaris/home-assistant-awox
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- Francisco Dorado
- Control of RST01BL Bluetooth Light Bulb with Home Assistant
- Summary
- Prerequisites
- How to use
- Turn On
- Turn Off
- RGB Color
- Examples
- LED BLE
- Configuration
- Help us to improve our documentation
- Управление освещением через BLE Mesh
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
AwoX mesh light integration for Home Assistant
License
fsaris/home-assistant-awox
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
please consider to switch to a dedicated ESP32 module with https://github.com/fsaris/EspHome-AwoX-BLE-mesh-hub it’s more stable then this HA integration
AwoX MESH control component for Home Assistant
Control your AwoX, Eglo, . bluetooth lights from Home Assistant
Work is based on the python-awox-mesh-light Python package created by @leiaz to control AwoX mesh lights bulbs.
- Bluethoot devices that use the ble.tlmesh protocol
(when adding your devices check the logs and check for the type of your device, when it starts with .ble.tlmesh.light* it probably supported)Tested with following lights:
(Tested with firmware v2.2.x but should work with all >= v1.2.4 )- Eglo (120) RGBW spots ( ESpot_120 HW v4.3)
- LED strip 3m (HW v4.0 and v4.3)
- LED strip 5m (HW v4.3)
- ECeil_G60 (HW v4.0)
- EPanel_120 (HW v4.0)
- EPanel_600 (HW v4.0)
- Eglo Fueva-C RGB CCT
- Eglo Crossling RGBW Spot ( ETriSpot 85 HW 4.31, firmware 2.2.6)
- Eglo Crossling RGBW Spot ( ESpot 170 HW 4.30, firmware 2.2.6)
- Eglo Connect Plug Plus (on/off support over Bluetooth)
- Supports RGBW mesh lights and plugs (plug only on/off for now)
- Uses the AwoX app credentials to access the AwoX server to download light info during initial setup
Your Home Assistant system needs to have access to a bluetooth device to access the lights.
Further it requires pybluez to be installed. On Debian based installs, run
sudo apt install bluetooth libbluetooth-dev
(already part of Home Assistant Operating System / HassOS)
Make sure that at least 1 device/light is in bluetooth range of your Home Assistant server.
Install with HACS (recommended)
- Add AwoX as custom repository.
- Go to: HACS -> Integrations -> Click menu in right top -> Custom repositories
- A modal opens
- Fill https://github.com/fsaris/home-assistant-awox in the input in the footer of the modal
- Select integration in category select box
- Click Add
- Install this platform by creating a custom_components folder in the same folder as your configuration.yaml, if it doesn’t already exist.
- Create another folder awox in the custom_components folder. Copy all files from custom_components/awox into the awox folder.
- In Home Assistant click on Configuration
- Click on Integrations
- Click on + Add integration
- Search for and select AwoX MESH control
- Enter you username and password you also use in the AwoX Smart Control app
- The system will download you light list and add them to Home Assistant
- Once the system could connect to one of the lights your lights will show up as available and can be controlled from HA
- Enjoy
- Add option to refetch/update devices from AwoX Smart Control account
- Finish support adding lights without AwoX Smart Control account (full local support)
- Add support for plug power monitoring (currently do not own such a device, maybe you can sponser me one so I can try to add support for it)
- Add support for ble.zigbee devices (if possible)
Make sure that at least 1 device/light is in bluetooth range of your Home Assistant server.
If you run into issues during setup or controlling the lights please increase logging and provide them when creating an issue:
Add custom_components.awox: debug to the logger config in you configuration.yaml :
logger: default: error logs: custom_components.awox: debug
Francisco Dorado
Java & Spring Backend (+10 years experience). Cloud with AWS. Architecture oriented.
Francisco DoradoFollow Software Architect at sngular.com in Seville. Specialised in backend technologies based in the Java ecosystem. Currently working on Microservices using Spring Framework and AWS Cloud technologies
Control of RST01BL Bluetooth Light Bulb with Home Assistant
Summary
This project provides to be a guide for the control of the RST01BL bluetooth light bulb and its integration with Home Assistant
Prerequisites
We need to follow the next steps before use the bluetooth bulb.
- Identify the bulb address (XX:XX:XX:XX:XX:XX). You can use NRF Connect o similar.
- Install the pexpect library, ‘sudo pip install pexpect’.
- Install gatttool
How to use
Turn On
> sudo python start-light.py XX:XX:XX:XX:XX:XX
> gatttool -I > connect XX:XX:XX:XX:XX:XX > char-write-cmd 0x0043 CC2333 > quit
Turn Off
> sudo python stop-light.py XX:XX:XX:XX:XX:XX
> gatttool -I > connect XX:XX:XX:XX:XX:XX > char-write-cmd 0x0043 CC2433 > quit
RGB Color
We’ll use 14 hex digits to change the color following the next pattern:
- The XX XX XX indicates the values of R(Red) G(Green) B(Blue) in HEX. So if we want a red color we should indicate the value FF0000
- The YY indicates if we want color (F0) or white ligth (0F). If we choose the white ligth value (F0) the XX XX XX value will be ignored.
Examples
char_write_cmd 0x0043 CC2333
LED BLE
Integrates multiple brands of Bluetooth Low Energy LED devices into Home Assistant.
Configuration
Adding LED BLE to your Home Assistant instance can be done via the user interface, by using this My button:
If the above My button doesn’t work, you can also perform the following steps manually:
- Browse to your Home Assistant instance.
- Go to Settings > Devices & Services.
- In the bottom right corner, select the Add Integration button.
- From the list, select LED BLE.
- Follow the instructions on screen to complete the setup.
This integration works with devices that identify with the following names:
- LEDnet (except LEDnetWF models)
- BLE-LED
- LEDBLE
- Triones
- LEDBlue
- Dream
- QHM
- AP
These devices have been sold under many brands, including:
- ALED
- AVERYSHOP
- BLE-LED
- EPBOWPT
- HaoDeng (some models)
- Happy Lighting
- hun hun
- ILC
- LEDBlue
- LED BLE
- Magic Blue
- MCWOFI
- PHOPOLLO
- RESHAKE
- REYSURPIUS
- SUPERNIGHT
- Triones
- Zengee
- YONEDA
- Zerproc
Help us to improve our documentation
The LED BLE integration was introduced in Home Assistant 2022.9, and it’s used by 497 active installations. Its IoT class is Local Polling.
Управление освещением через BLE Mesh
Обзор возможностей BLE модуля JDY-10 на базе TLSR8266 с прошивкой поддерживающий mesh сети.
Дома есть несколько источников декоративного освещения из светодиодных гирлянд хочется включать их по расписанию или событиям таким как на пример закат солнца.
Возможно конечно на ум придет фраза “вот так, с помощью нехитрых приспособлений буханку хлеба можно превратить в троллейбус… Но зачем?”. На самом деле проект просто just a fun
После изучения темы, из методов решения задачи появились следующие:
- ZigBee Нет возможности управлять устройством напрямую, для работы устройства необходим координатор что усложняет отладку, скорее всего придется прошивать контролер нетривиальным способом.
- WiFi Самое распространенное решение в этом сегменте ESP8266. Контролер даже не требует никаких доработок можно взять любое из готовых решений к примеру ESPHome. Но увы WiFi это не про работу от батареек.
- BLE Существует множество различных контроллеров, дорогих и дешевых, уже готовых к работе и не совсем. Простая и доступная отладка с любого устройства имеющего bluetooth и консоль. Есть возможность использовать батарейки как источник питания.
В итоге выбор пал на BLE контролер TLSR8266 а конкретнее на версию JDY-10. Его можно приобрести по цене 2-3$ вместе с доставкой и уже относительно готовой к эксплуатации прошивкой. Прошивка из коробки умеет подавать ток на 4 вывода, а так же поддерживает 5 управляющих кнопок, то есть 4 для управления каждым выводом и пятая с функцией включить/выключить всё. Есть 3 режима работы, стандартный описанный выше, режим управления RGB светодиодами и режим Low Energy когда контролер постоянно находится в спячке и передает в сеть только команды нажатия кнопок. Размер платы 18.7mm на 13mm.
И так начнем, для первичной настройки нам понадобиться подключить контролер к компьютеру так как AT команды он воспринимает только через выводы RX-TX, для этого можно использовать либо UART адаптер, либо Arduino. Для выполнения AT команд к контроллеру не должно быть активных bluetooth соединений, иначе он преходить в режим прозрачной передачи и команды не выполнятся.
По неизвестной причине при скорости обмена выше 19200 контролер выдает мусор.
Установить изменить скорость общения контролера с внешним миром можно командой:
После её выполнения и перезагрузки всё нормализуется.
Важный аспект, что для работы в MESH сети у всех устройств должно быть одинаковые имена и идентификатор сети, а для работы с конкретным устройством используется short address. Задаем настройки исходя из данного принципа:
AT+NETIDC0C1C2C3C4C5 — Имя сети 123456789ABC
AT+NAMEStar Light — Имя устройства Star Light
AT+MADDR01 — Короткий адрес устройства 01
На этом настройка завершена, переходим установке контролера в источник освещения, им является обыкновенная китайская светодиодная гирлянда.
Бывают культурные варианты с платой, бывают просто с припаянными проводами и резистором прямо к выключателю, но в любом случае кроме корпуса и контактов элементов питания нам ничего не пригодится.
Припаиваем питание через резистор, чтобы не спалить контролер. Плюс светодиодов подключаем к пину E5, к B0 подключим кнопку. В итоге получим следующую картину:
Как же теперь управлять данным девайсом? Весьма просто, подключиться к контролеру через bluetooth любым терминалом, передать следующую управляющую последовательность в HEX формате:
И сказать ёлочка гори, ну или можно не говорить.
Давайте разберем, что это значит
FB — Говорит о том, что это команда для управления
01 — Короткий адрес нашего светильника
E7 — Команда управления GPIO
01 — Включить, в случае выключения будет 00
Всё вполне понятно, кроме как скоре всего короткого адреса, в чем собственно его суть. Напомню, что как выше отмечал одна из особенностей конкретной реализации контролера это возможность работы в MESH сетях, то есть каждый пакет передаётся как широковещательный. В итоге если в нашей сети несколько устройств мы можем передать команда абсолютно на любое, а уже исходя из короткого адреса команда будет обработана конкретным девайсом. Так же предусмотрена возможность короткий адрес на FF в таком случае команду обработают все устройства находящиеся в сети. Таким способом мы получаем возможность управлять группами светильников. По этому же принципу обрабатывается нажатие кнопок, то есть кнопка нажатая на одном из светильников включает их все, данное поведение работает по умолчанию, в случае если необходима иная логика её можно настроить AT командами.
Конечно же управлять освещением через терминал как-то не юзерфредли, поэтому для этого разработал плагин под Home Assistant, получив тем самым работу по событиям и расписанию
Если решите повторить то плагин и документацию к контроллеру можете найти по ссылке https://github.com/svmironov/blemesh
Код строго не судите, это первое приложение написанное мной на Python.