New Homebridge Plug-in via MakerAPI and Eventsocket



Dan thank you very much for this, I have a issue I hope you can help me with. I have a driver that is passing the status of a garage door the attributes "closed", "open", "closing" and "opening" work fine but when I pass "stopped" it does not work. I noticed that Hubitat does not have attribute "stopped" but has "unknown".

definition (name: "Virtual Garage Door2", namespace: "Jason", author: "Jason Brown") {
capability "Actuator"
capability "Door Control"
capability "Garage Door Control"

	command "opening"
	command "closing"
	command "stopped"

def open() {
log.debug "open()"
sendEvent(name: "door", value: "open")

def opening() {
log.debug "opening()"
sendEvent(name: "door", value: "opening")

def close() {
log.debug "close()"
sendEvent(name: "door", value: "closed")

def closing() {
log.debug "closing()"
sendEvent(name: "door", value: "closing")

def stopped() {
log.debug "stopped()"
sendEvent(name: "door", value: "stopped")


I can shed some light....

SmartThings and Hubitat's documentation for Garage Door devices is:


"Stop" isn't part of the specification. It would be a vendor specific "enhancement" in my opinion.


@JBrown: When you send this "stopped" event, does the "door" variable changed to "stopped" for the device? Homekit supports it, so I could add it, right now it is not implemented


The stopped event gets sent to homebridge, but homebridge freezes until I send a different event i.e. "open".


Give me a few minutes


No rush i’m Sure you have better things to do.


I just added the state stopped, however, the Home App doesn't react to it. I am going to do some digging to see if HomeKit actually supports it or not


I believe there is something for obstruction detected.


hmmm, yes, that is a different flag than the door state though.


The documentation says:

case stopped

The door is not moving, and is neither fully open nor fully closed.

So I should be able to set it without having an obstruction.....


How could I set that flag? I’m just trying to get a fifth state. I’m controlling my garage door opener with an esp8266 using two switches for open/close indications. If the door does not open/close in 30 seconds i’m considering it stuck.


I think I have to separate the Target Door State and Current Door State to get that working. Either way, it is a bit more than a simple one liner (as I originally thought). I am going to take a deeper look at it tomorrow. We should be able to come up with something. My first idea is to use the "unknown" state that the specification offers, this way I would stay compatible with the platform specification.



I just uploaded a new version of the plugin. The Garage Door Tile will now show an ! when the status of the door is unknown / stopped.

Looks like this:


Give it a try


Thank you Dan.


This is awesome! Thank you @dan.t for all of your work on this!!!

I’ve got it running on a Pi with DietPi that’s also running my PiHole and I’m very impressed. I have it set to auto run on Pi boot via systemctl. I’m not a dev so it took me a few hours to figure out how to get it all set up, but that is my own fault. I’m still learning...

Thank you, again!!! WAF went up a few notches due to this :slight_smile:


Will the HubConnect version update as well?


@dan.t I am about half way through reading this thread but thought I would as a question before I look at implementing this. I have no real interest in seeing my HE devices in the Home app but I would like a thermostat that I have in Home to show up in HE. Is that something this app is able to do?


Will make an update to that tomorrow


No, it is a one way street. You can add devices from hubitat to the home app but not the other way around


OK thanks.