Hubitat is to Z-Wave What This Would be to Bluetooth?

Hoping I don't get into any trouble by asking this here. I'm at least asking in the most off-topic portion of the forums here.

I know Hubitat is primarily a Z-wave controlling hub. I know we have various drivers that manage to squeeze direct control over Wifi of devices too, but primarily, it's a single hub to control a network of Z-wave devices in your home, and it does it well.

As I look over my collection of devices, I see many have Bluetooth as a control method. My coffee machine has a Bluetooth "Smart" connector. My Govee light strips can use Wifi, but I tend to distrust them and I see they can be controlled via Bluetooth alone...with the app on a phone. Even my Soma Tilt blind controllers are devices which have a hub, but the hub and phone app connect to each individual controller using Bluetooth.

Are there any hubs out there, or in the works, that focus on being a Swiss army knife of drivers to control devices via Bluetooth, just as Hubitat has done with Z-wave? I get that BT has some more restrictive limitations (no mesh of devices, more limited distance), but couldn't some of those even be taken care of by having a network of BT hubs?

Sorry if I really don't know what I'm talking about. Likely I don't. I feel such a thing would exist already if not for some inherent problem I'm just not seeing.

First, I'd note that Hubitat does Z-Wave and Zigbee, in addition to some LAN and cloud integrations that you mentioned. The Z-Wave and Zigbee protocols are pretty standardized up to high levels of the layer architecture, meaning interoperability is generally easy (particularly for Z-Wave but generally also for the most popular home-automation-focused Zigbee profiles). With Z-Wave for example, pretty much any Z-Wave controller can turn an arbitrary Z-Wave switch on or off, set a level, etc., even if it doesn't know anything specific about the device. Zigbee isn't much farther behind (though some manufacturers do odd things sometimes).

You might note that the LAN integration Hubitat does have, like Sonos or Hue Bridge, rely on well-documented APIs (Hue Bridge) or standards (e.g., DLNA for Sonos). These devices tend to be more varied, which is why most require some specific app/driver compared to the slew of "Generic Zigbee..." and "Generic Z-Wave..." drivers you'll find built into the platform, but they can still be made to work if the manufacturer allows it. (Some don't--e.g., Wyze has no local or documented/open cloud API, though some have reverse-engineered something, and you can also route things through their "official" cloud partners like Alexa or IFTTT.)

Bluetooth is similar: the protocol is standardized, but what you do on top of it--similar to the Ethernet and Wi-Fi devices above--is not. The few I've seen that could work with Hubitat do so via a manufacturer-specific Bridge/gateway (e.g., SwithBot), usually Bluetooth to Wi-Fi or Ethernet. But direct connection poses significant difficulty for Hubitat, beyond just the lack of a built-in Bluetooth radio. I'm not aware of any "smart" Bluetooth manufacturers that advertise such interoperability--often they'll only work with the manufacturer's particular app on a supported mobile OS, and if we're lucky, we'll get something like the aforementioned bridges/gateways (which themselves may or may not have an open API or, even better, a local one; sometimes they just add out-of-home control through, again, only the manufacturer's ecosystem). Those are probably anyone's best shot on any platform for the moment.

It's also why I generally avoid such devices. :smiley:

4 Likes

I use Avi-on to control my Bluetooth switches.

Here's a out of the box suggestion, there is a project called OpenMQTTGateway (like Tasmota) that can use the bluetooth feature of the ESP32 chip/board to send and receive bluetooth transmissions and publish/subscribe to MQTT.

I experimented with it recently and I was able to get it to listen to a BLE beacon (BlueCharms) that had a button on it that modified the transmitted ibeacon transmission. I was attempting to use it as a controllable arrival sensor/fob. It worked and I was able to take the MQTT messages in Node-Red to do what I wanted but the range was insufficient for my needs even with multiple ESP32s running openmqttgateway around my location.

Before you buy anything, there is a free app for Android (called KBeacon) that you can use to scan for the bluetooth messages without the need for an ESP32/OMG or MQTT broker. You can use KBeacon to see if you can "listen" for the bluetooth messages that are being sent by your devices when you activate their various functions and then if you can isolate the differences you can use OMG/MQTT/Node-Red to "clone" the device controller and link it to Hubitat via the maker-api.

Example: Hubitat virtual switch (coffemaker "on") --> maker-api --> node-red --> MQTT --> OMG/ESP32 --> bluetooth msg --> coffemaker turns on.

Note: You may/will receive lots of other bluetooth beacon transmissions from nearby bluetooth devices that are not yours. Smartwatches, environmental sensors, wireless speakers, passing vehicles so you may have difficulty isolating the messages your interested in.

This is basically the way and similar to what Home Assistant is doing with, I believe they call them, "Bluetooth Proxies."