Hi, I am a new Home Assistant user and am wondering if you are still interested in creating a Hallo Home integration. I am in the process of understanding what you have done and how Home assistant works. I am not a Python expert but have done system programming for the last 30 years before retiring. I have gone through the API reference and made it work on curl successfully. Now I am going to dig into the developers documentation of home assistant and try to successfully dive into the development pratices.
Speaking of Halo Home… what is the overall impression of the lights and platform. I am in the market for some smart 4" CCT downlights and Halo Home seems to be one of the few available… but not a fan of Bluetooth for control.
I have 15 of these units installed in my home. They seem to work fine and the app provided implements Groups, Scenes and Time of day schedules. I would like to get these fixtures into HomeAssist. I am currently trying to educate/learn what is there. It has been quite difficult to understand what I need to do to use the existing code and experiment with it. I have spent my life doing system administration, just not with what is here. A large project for a newbie to this to get educated…
Thanks for this integration. Now that HA has added full bluetooth support and btproxies, is there any possibility of adapting this integration for direct ble control of the halo lights without the need for a bridge?
Hi, I noticed this integration today and wanted to give it a try. I’ve downloaded and configured the custom component, but when starting HA it gives the following error:
This error originated from a custom integration.
Logger: homeassistant.config_entries
Source: custom_components/halo/init.py:46
Integration: Halo
First occurred: 9:00:28 AM (1 occurrences)
Last logged: 9:00:28 AM
Error setting up entry Halo for halo
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/config_entries.py”, line 387, in async_setup
result = await component.async_setup_entry(hass, self)
File “/config/custom_components/halo/init.py”, line 46, in async_setup_entry
hass.config_entries.async_setup_platforms(entry, PLATFORMS)
AttributeError: ‘ConfigEntries’ object has no attribute ‘async_setup_platforms’
Can someone point me in the right direction?
I’ll take a look at resolving soon
Regarding Bluetooth, probably not something I’ll be working on, but feel free to contribute
Resolved in fix deprecated async_setup_platforms (#1) · futbolpal/home-assistant-halo@d030c85 · GitHub
I downloaded the lastest from git today and am getting this error at startup.
2023-09-21 21:15:03.020 ERROR (MainThread) [homeassistant.setup] Error during setup of component halo
File “/config/custom_components/halo/init.py”, line 33, in async_setup
This error originated from a custom integration.
Logger: homeassistant.setup
Source: custom_components/halo/init.py:33
Integration: halo
First occurred: 9:15:03 PM (1 occurrences)
Last logged: 9:15:03 PM
Error during setup of component halo
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/setup.py”, line 288, in _async_setup_component
result = await task
^^^^^^^^^^
File “/config/custom_components/halo/init.py”, line 33, in async_setup
CONF_USERNAME: config[CONF_USERNAME],
~~~~~~^^^^^^^^^^^^^^^
TypeError: list indices must be integers or slices, not str
Anyone else with this problem or just me?
I received an email earlier this week with the information below:
HALO Home Hardware Discontinuation
Effective immediately!
Due to supply chain challenges, we’re no longer able to manufacture HALO Home products. Effective immediately HALO Home hardware is being discontinued. Remaining inventory will be available until depletion. As of this notice, returns (RMAs) will be accepted through December 1, 2023.
We will continue to support the app, cloud infrastructure, and our existing users for the next 5 years. We remain committed to providing the best possible service during this transition period.
The growing portfolio of HALO Smart Lighting Connected by WiZ Pro and standard HALO fixtures will remain alternatives for the HALO Home offering.
If you have any questions about the discontinuation of HALO Home, please don’t hesitate to contact our customer service team. Thank you for your understanding and support.
For anyone still interested; I have successfully reverse engineered the BLE protocol, which combined with the work from GitHub - nkaminski/csrmesh: Reverse engineered bridge implementation of the CSRMesh BTLE protocol and GitHub - nayaverdier/halohome: A python library to control Eaton HALO Home Smart Lights now let me control devices, groups etc locally suing BLE. My plan is to build out a fully functioning light bridge for Avi-on (the underlying tech) and Home Assistant.
As to the messaging from HALO Home; it is true that they are discontinuing the product line, but I’ve been in touch with Avi-On, and they do not have any plans to discontinue the residential infra. The Avi-on app is still maintained.
Still, I am hoping to also come up with a plan for initializing the mesh locally, and adding and removing devices directly without the use of their app. Though worst case, I also have the API’s the app relies on and could substitute in my own backend if need be.
@futbolpal, I’ll take a stab at simply adding the bt logic into your project - is it still operational?
As promised; GitHub - oyvindkinsey/avionmqtt: MQTT/BLE bridge for Avi-on based lights provides a fully bidirectional bridge between Home Assistant and the Avi-on platform (which powers Halo Home, various GE branded lights and more).
@oyvind , this is absolutely great. THANK YOU! I have a large investment in the Avi-On/Halo lights, and I have been concerned about this since they discontinued the line. (Enough to get a dozen spares).
I tested this evening on an RPI Zero 2W , and I am able to start controlling my lights and groups. I have some issues that i will take to the github issues, however it is a great start.
@oyvind bridge has been rock solid for 5 days. I have it running on a Raspberry Pi Zero 2W and have had no issues with it through my testing. Simple to install and other than some changes i made to the Pi OS so that it reduces sd-card writes, it was ready to go in just a few minutes.
I think it has all but eliminated my need for the RAB, and now having the ability to use automations to set scenes and circadian based color temps without turning on the lights is great.
There is still a benefit to set the groupings natively within AVI-On app as the synchronization is instantaneous across the lights in the group. Using helper groups to group in HA, if you have more than a couple of lights in the group , there is a delay as each light is set from HA individually vs. some sort of mesh sync that happens with the native groups. But if Avi-On ever goes down I tested 32 lights in a HA helper group and it worked well enough .
Awesome!
I’ll replace the prints with logger statements, that will keep the service from thrashing the disk.
The long term plan is to implement all the key features such as adoption and group management, so that the system could be brought fully offline.
Log spew is now fixed in v1.3.9 - Use logger instead of print to avoid log spew. The log level is con… · oyvindkinsey/avionmqtt@188cfc4 · GitHub
Did you use the service installer provided? It’s the first time I’ve created anything like this (and first python project tbh), so I have just been piecing things together based on what worked for me.
I did use the install script and it worked! I THINK once its a service, systemd will intercept the stdout and put them in the journald. For my appliance Pi’s, i usually put /var/log in tmpfs and set journald to volatile with a more limited storage amount (32MB). That itself almost eliminates the writes to the sdcard. Thank you for the logger change, this should also allow syslog i think as well.
Thank you for your hard work on this! I have been looking for over a year for a solution to control the color temp without turning the lights on and off. This made be more valuable than all the physical lights! (act quite dumb without something like this) I can’t wait to try this out! How exactly would someone a bit new to custom things like this implement your solution?
You need a Linux host with Bluetooth, it can be a VM with Ubuntu,or something like a Raspberry Pi with Raspian. Then simply run the setup script shown in the readme on the GitHub repo, edit the settings, and start the service.