[RELEASE] Home Assistant Device Bridge (HADB)

All new version 2 now available!

Features

  • This version subscribes only to events you select from the list of entities within the Home Assistant Device Bridge app. The version 2.x driver no longer listens to all events, thus significantly reducing the CPU load on your Hubitat Elevation hub.

  • After upgrading, you must open the app and press the Done button.

IMPORTANT: The Home Assistant Device Bridge version 2.0 app is now mandatory. The version 2.0 driver will no longer operate as standalone.

--

Introducing Home Assistant Device Bridge (HADB)

The truth about home automation is, there isn't a perfect hub.

Shocked? You shouldn't be.

Build something from parts designed by committee and you have the indecisive IoT industry. It's not the fault of companies like Hubitat or open source efforts like Home Assistant that have been trying to assemble these disparate bits into one cohesive solution. It's a noble goal to bring it all under a single platform, but industry fragmentation, combined with the rapid Build > Promote > Decommission cycle have continued to make it very difficult for any one company or group to completely get ahead of the curve. The Hubitat team have added an incredible number of compatible devices, but there are still some cloud integrations, Zigbee and certain other devices that are not yet compatible with Hubitat Elevation, or the necessary apps and drivers to make them compatible have yet to be created.

Home Assistant has been around for many years and the open source community has built a large list of cloud integrations and support for low cost Zigbee devices such as Xiaomi Aqara and Mijia, IKEA, and Tuya. There's no reason not to combine this capacity for cloud integrations and low cost devices with Hubitat Elevation’s powerful and easy to use automations. Best of all, you never have to touch YAML :nauseated_face:

Table of contents

  1. Building Bridges
  2. Requirements
  3. Installation
  4. Setup
    a. HA Long-Lived Access Token
  5. Advanced options
  6. Troubleshooting
  7. Submitting new device support requests

Building Bridges

Fortune smiled upon us all when @ymerj took the initiative and built a fantastic foundation for @ogiewon, @tomw, and @stephack to add their excellent contributions to create Home Assistant Device Bridge. With this driver and app combination, Hubitat Elevation owners can now take advantage of the available device integrations from Home Assistant, and combine them with the easier to use automation and powerful capabilities found in Hubitat Elevation.

  • No virtual devices required

  • No Home Assistant automations needed :grinning:

  • No MQTT broker needed

  • No individual device setup needed

  • No custom firmware flashing

  • Devices from Home Assistant appear in Hubitat Elevation, fully functional and ready for use in automations.

Requirements

  1. Hubitat Elevation hub :grin:

  2. Home Assistant (This isn't difficult to get setup for our goal of simply importing devices).

  3. The Home Assistant Device Bridge App (Required with HADB 2.x)

  4. The Home Assistant Device Bridge Driver

  5. If you prefer, you can also get the Home Assistant Device Bridge driver and app from the community built Hubitat Package Manager.

NOTE: This driver uses the Generic Component Drivers built into Hubitat Elevation. If the Generic Component Drivers do not exist on Hubitat, you may request a custom driver, but there are no guarantees this will be possible. We therefor must emphasize that specialized or complicated devices may require a more direct solution than this integration was ever intended for.

Installation

If you've never installed an app, then you're obviously not currently using Hubitat Package Manager. You can either learn to do that first, or you can simply install the Home Assistant Device Bridge Driver and App.

How to install a custom driver in Hubitat Elevation

How to install a custom app in Hubitat Elevation

Setup

    Step 1 - Enter the IP address of Home Assistant and the Long-Lived Access Token (see instruction below)

* How to create a Long-Lived Access Token in Home Assistant

  1. Press on your user account in Home Assistant
    Screen Shot 2021-03-03 at 6.51.37 PM

  2. Scroll down to the bottom and select CREATE TOKEN
    Screen Shot 2021-03-03 at 6.52.15 PM

  3. Name your token (This can be any name you want.) and then press OK.
    Screen Shot 2021-03-03 at 7.48.13 PM

  4. Copy the token. It isn't accessible after creating it, so if you forget to record it somewhere and need it again later, just delete the old one and create a new token for use in Home Assistant Device Bridge.
    Screen Shot 2021-03-03 at 7.48.49 PM

    Step 2 - Press Discover and select devices to poll Home Assistant for a list of compatible entities.

    Step 3 - If you want to select all entities from Home Assistant, and then just de-select a few that you don't want to have on your Hubitat Elevation hub, you should enable the Toggle All On/Off checkbox and disable the few devices you don't want. All the selected devices will be available for import to Hubitat. If you decide that's not what you want, then just uncheck the Toggle All On/Off checkbox.
  • NOTE: Deselecting a device from the list will not delete the corresponding child devices from the devices list of your Hubitat Elevation hub. You will have to either delete each child device manually, or you can use the button Remove all child devices that are not currently selected (use carefully)


    Step 4 - Confirm and adjust which devices should be imported. You can adjust this later if you make a mistake or change your mind.

    Step 5 - Press Done. In your list of Hubitat drivers, you will see the Home Assistant Device Bridge parent device (or the custom name you set in the app). When the device state updates, compatible entities from Home Assistant will allow creation of child devices on your Hubitat Elevation hub.

IMPORTANT: Devices will appear automatically when a change occurs the first time after selecting them for import to Hubitat. A device will not be added to the list of child devices under the Home Assistant Device Bridge parent driver, until a change occurs on the device.

Example: A motion sensor will not appear in the list of devices on Hubitat until it is triggered for the first time after selecting it in the list of available entities from Home Assistant.

  • NOTE: Only devices that currently have a Generic Component device driver in Hubitat Elevation, and are also listed in the table below as compatible with Home Assistant Device Bridge will be imported to Hubitat Elevation.

Example of imported child devices (each will appear on first activity after selecting them for Import to Hubitat)

Screen Shot 2021-03-03 at 8.41.35 PM

Device types that can be imported by Home Assistant Device Bridge

Cover

    Device Type Generic Component Driver
    Curtain Generic Component Window Shade
    Garage Door Generic Component Garage Door Control
    Shade Generic Component Window Shade

Devices

    Device Type Generic Component Driver
    Climate Generic Component Thermostat
    Device Tracker Generic Component Contact Sensor
    Fan Generic Component Fan Control
    Input Boolean Generic Component Switch
    Light Generic Component Dimmer
    Lock Generic Component Lock
    Switch Generic Component Switch

Sensors

    Device Type Generic Component Driver
    Battery Generic Component Battery
    Energy Generic Component Energy Meter
    Environment Generic Component Carbon Dioxide Sensor
    Environment Generic Component Radon Sensor
    Environment Generic Component Volatile Organic Compounds Sensor
    Humidity Generic Component Humidity Sensor
    Illuminance Generic Component Illuminance Sensor
    Power Generic Component Power Meter
    Pressure Generic Component Pressure Sensor
    Temperature Generic Component Temperature Sensor
    Time Generic Component TimeStamp Sensor
    Voltage Generic Component Voltage Sensor

Binary Sensors

    Device Type Generic Component Driver
    Door Generic Component Contact Sensor
    Garage Door Generic Component Contact Sensor
    Lock Generic Component Contact Sensor
    Moisture Generic Component Water Sensor
    Motion Generic Component Motion Sensor
    Moving Generic Component Acceleration Sensor
    Opening Generic Component Contact Sensor
    Presence Generic Component Presence Sensor
    Smoke Generic Component Smoke Detector
    Vibration Generic Component Acceleration Sensor
    Window Generic Component Contact Sensor
    After import, devices joined to Home Assistant will be available for control from Hubitat Elevation, and can be used in Hubitat apps and Rule Machine rules, just as you would any other locally joined device.
  • NOTE: This integration adds devices from Home Assistant using their Entity ID. Button devices do not create Entities in Home Assistant and cannot be imported to Hubitat Elevation. If you want to use a button device that cannot be joined directly to Hubitat, you should check out the Hubitat Integration from @jason0x43. It does the opposite of this integration and imports Hubitat devices to Home Assistant. With Jason's integration, you can create Hubitat virtual switches and share them with HA. Next, you would create an automation for each button in HA, so when a button on the device joined to HA is pressed, that will activate the virtual switch in Hubitat.

Administration Option

Remove all child devices that are not currently selected (use carefully)

This is a cleanup method. Please use it carefully, as it will remove all of the HADB specific child devices from your Hubitat Elevation hub that are not selected in the list of devices to include.

Troubleshooting

IMPORTANT: Devices will appear automatically when a change occurs the first time after selecting them for import to Hubitat. A device will not be added to the list of child devices under the Home Assistant Device Bridge parent driver, until a change occurs on the device.

Example: A motion sensor will not appear in the list of devices on Hubitat until it is triggered for the first time after selecting it in the list of available entities from Home Assistant.

Submitting new device support requests

IMPORTANT: Home Assistant Device Bridge is intended to support very simple devices and sensors. Locks and thermostats have been really painful to get working reliably. We therefor must emphasize that specialized or complicated devices may require a more direct solution than this integration was ever intended for.

  1. Please enable logging on the parent virtual device
  2. Actuate your device (i.e. Open and Close, or Turn ON and Turn OFF, etc.).
  3. Include these debug logs with your request so we can analyze the information sent by Home Assistant through the Home Assistant Device Bridge driver (This information is essential in determining if your requested device can be added to Home Assistant Device Bridge).
54 Likes

Very nice write-up! Thank you for doing this!!

5 Likes

This is an awesome write up and app and set of drivers.

I had started using this (just) then I had the unfortunate happen, it was fast once all devices I wanted were added, and nice and smooth.

The ConBee on my deCONZ went some sort of mental :crazy_face: (lost its channel and all my lights, maybe I just overworked it), so I have had to ditch it :cry:

So I've had to move all lights to my C7 (I got so fed up with the Hue bridge). Once I replace the dead stick, I'll be back here to try it again. :+1:

2 Likes

So I've had to move all lights to my C7 (I got so fed up with the Hue bridge)

I thought this was not recommended as HUE does not conform fully to Zigbee and causes issue on the mesh. If it works it would be nice to lose the hub.

1 Like

If you have only Hue lights, no problem. They repeat for themselves just fine. So with a second controller that has all your other Zigbee devices, and this driver bringing them back into HE, you'd have no conflicts.

I didn't want to mess with having to run deCONZ on a Pi or PC, so I went with the built in ZHA integration that @stephack is also using and that works great. I've no need to import devices to anywhere but an HE hub, and I can do that on multiple hubs by either installing the driver on each hub, or using Hub Mesh.

2 Likes

You can run it from within HA, no need for another PI :smiley:
Its in the Add on store, and then you add Integration as per normal.
You can browse to Phoscon, and also VNC to deCONZ.

This is how I had it set up, and was working really well. Until said Conbee took a nose dive :cry:
It was also much easier to deal with Groups rather than that bloody yaml!!

I didn't have much choice, as I needed lights and wasn't reinstalling the Hue if I could get away with it.

I have all my ZHA devices on Hub 1, and ZLL on my C7, even a few Xiaomi wireless switches, all working quite well.

That said, I haven't migrated all my Z-wave to the C7 yet, so anything could (and probably) will happen. I'm holding off pulling the trigger on a Conbee II for now, I'll see how this continues. The only downside is, my Osram bulbs will have nothing of the C7, they aren't picked up at all. Luckily, I had some spare INNR bulbs, and they connected with zero issues.

1 Like

Yes, I read that, but also read advice that it's not as stable as having it on a separate computer. :man_shrugging:

Are you sure it's the ConBee that is pooched or is it deCONZ?
Groups on HA mean nothing to me personally and YAML can bite me. I'm literally using this as a Zigbee coordinator and not much else. I do have a few simple HA automations so I can sync my Lutron Connected Bulb Remotes back to HE using @jason0x43 's integration, and I've moved my Sonos over because my Symfonisk knob kept dropping off HE and doesn't drop off the ConBee 2. Other than that, I'm not using HA for anything else at this time.

I tried my hand a YAML and it SUCKS. No bloody way I'm dealing with maintaining that. So far, nothing I've done needs it.

1 Like

I'm not finding the YAML too bad, and hopefully a one time thing (unless they break things).

I'm fairly sure it was the stick at fault, it changed channel all on its own, and wouldn't be changed either, even after a full reset. I did consider using one of my HE sticks, but it recommended flashing it first. At that point I went back to the C7 to add the bulbs lol.

My Bruv has a Conbee 2, and that's working great in the manner mine was, that said he only has a handful of devices, as he's just started.

And no one needs any knob to be dropping off!! :smiley:

1 Like

Hang on to your knobs, for sure.

1 Like

Ouch. I just migrated all my devices from my Nortek stick to Conbee2 during the Christmas break. Very happy with it (using ZHA btw). However, if I was starting over I would have definitely considered one of the 2 coordinators that Tube is offering:

I did buy the Tube router and it's working very well and allowed me to remove 3 of my Iris outlets that were there only to stabilize my mesh. I plan to remove a few more Irus devices but I'm doing it slowly so I don't destabilize my existing mesh.

The Tube coordinators connect directly to the network (z2m) so it can be placed in a prime location away from other noisy devices. Worth a look if you might be starting over.

Edit: I edited the line to remove "connect via USB option" I mentioned above as I believe that was inaccurate.

3 Likes

Oh wow now that's a gorgeous little box!! Wonder if he ships to UK :slight_smile: (if and when he gets more!).

I considered taking one of my Xbee 3's off HE and sticking that on HA, still might yet as I've been more than happy with them repeating on HE. They don't look as nice as those, but they aren't too bad, if I say so myself :smiley:

1 Like

He does..someone asked just the other day.

1 Like

@ogiewon (accidentally :joy:) pointed me to this. Not that he was holding out or anything. :wink:
Only thing that stopped me from returning my ConBee 2 and switching to it (other than being out of stock and under high demand) there's no real benefit for me personally. Small house, so range issues are easily overcome with Trådfri outlets or repeaters. Already using my Xbee for the distant devices in my backyard. And there's only anecdotal evidence that the Tube coordinator works with Xiaomi, which is the primary value of any of this for me.

But the router does sound great. I'm torn between recommending this vs @iharyadi 's devices for repeating. His devices do indeed work great with Xiaomi. An antenna added to them would give as much or more value than the Tube router in my opinion (although I don't know how many devices are supported off hand). Iman's devices are also proven with HE and although there's technically no reason the Tube router wouldn't work well on HE, it's unproven. For sure anything other than a coordinator specifically to work with HA for using this driver needs to be compatible with HE and Xiaomi for me personally.

Having said all that, for HA repeating, that looks like a great option if you're in the US. If you're outside the US like I am, the cost and possible duty make that too close in cost to an Xbee to really benefit from a purchase of the router. The coordinator and people's results I'll be watching closely though. :wink:

1 Like

:joy: Put an Xbee in a round 3D printed container and close the lid. You'll never be able to tell.

2 Likes

I need it in a bigger box :joy:

1 Like

That looks like the same size (distance from antenna to micro USB. Just not round.

1 Like

Lol...yeah he replied to the wrong PM. The post was meant for me.

It works perfectly with my Aqara leak sensors.

Can't say that but I know someone that might be able to test the theory at some point down the line :wink:

I definitely will be watching. If I ever decide to move from my Conbee2 (which is unlikely any time soon...like I said, I'm very happy with it atm) that's likely my next move. Mainly because I'm interested in zigbee2mqtt...I like the concept of decoupling zigbee radio from a hub. Opens up so many options.

1 Like

Now accepting orders locally in the UK? :rofl:
Royski router

2 Likes