New Homebridge Plug-in via MakerAPI

Question: did you install node via nvm? You can have several versions of node.js installed on one machine. It is pretty straight forward with nvm. If so, you could run GAR on the old one and use a more current one for Homebridge

No, this is not possible. The alarm system has 4 very distinct states (off, home, away and night) and these don’t translate very well to a different device type.

You could just use a virtual switch and virtual sensor combo that you turn on/off and get a notification via HomeKit when the state changes. That would also allow you to turn it on/off via HomeKit. It all really depends on what you are trying to achieve

Thanks. Let me explain the use case.

I have an existing alarm (Vista 20p) with wired sensors. I integrated it with Hubitat using AD2Pi. It works really well via the AD2Pi drivers/App. I then exposed all sensors to HomeKit via MakerApi (I use HomeKit exclusively for UI). It all works really well and I get near-instant notifications for all the sensors. The only thing I’m missing is the ability to arm/disarm from HomeKit and get “alarm triggered” notifications in HomeKit. I know that if you use HSM, MakerApi gives you a nice dedicated Alarm tile in HomeKit with a slider for different Arm levels, so I wanted to achieve the same thing but without adding HSM into the mix. I guess I can code the integration to HSM, but it’s just an unnecessary middle-man. I would have preferred to have a device I could tap into directly with my code. Hope this makes sense.

P.S. I can write some sort of a driver as well, but it doesn’t appear that there is a suitable set of capabilities for this. Can you share how you achieved the alarm device in HomeKit?

Maybe. It’s been a while. I believe so.

I’ve no idea how to tell it which version to use, but I’ll do some research into it. Might not have been a Homebridge issue after all. I found a broken rule, that had to do with a change I forgot to correct when I swapped contact sensors on my doors.

Why not just use the state change of HSM to trigger virtual switches? A simple RM rule can do this and it will give you the nice control you’re looking for in HomeKit, without having to fully utilize HSM.

Another option might be Nyckleharpa for the keypad.

Again, just using the keypad component to change HSM state, this triggering your virtual switches.

Thanks. Those are good suggestions, and I did consider doing something like this as a last resort. As a developer, I always try to avoid complex integrations. I’d be looking at:

Vista 20p->AD2Pi->Hubitat AD2Pi service->RM->HSM->MakerApi->HomeKit.

My OCD is kicking in strong imagining this many points of failure (neither of which are under my control).

I would much rather have:

Vista 20p->AD2Pi->Hubitat AD2Pi service->(my code)->MakerApi->HomeKit.

And now you understand why I am hesitant to do something “special” or “one off” for what you are tying to achieve ;/) I think @SmartHomePrimer idea of using HSM and reacting to those in Hubitat would be the cleanest solution

Yep totally understand. I wasn’t asking for you to add this feature, I was just wondering if there was something I could do myself to make this work. It doesn’t sound like there is. I think I’ll go with the alternatives suggested above.

No, there really isn't right now... I'll keep thinking about to see if I can find a way to have a clean interface without too much overlap and flags though...

1 Like

I'd still recommend to try to upgrade to the latest version of the plugin as it is technically fully supported by Hubitat now, no more backdoor unsupported feature stuff...

In a nutshell, you can install and run several versions of node with nvm
you could run a "nvm ls" to see which versions you have installed..... If you indeed did use nvm for your node installation.

I run all my node instances on a MacBook Pro

nvm works for MacOS too :slight_smile:

1 Like

I’ll look into it. Right now I just open a shell for each app and run it. I don’t care for auto-starts and the system is on a UPS so it’s stable.

Ok, so the driver has the Battery capability and it reports a battery of "null" (not 0) when there is no battery.... I have just updated the plugin to catch these. Can you update your plugin one more time and try it?

That did the trick! Thank you! It doesn't report low battery or have the exclamation icon anymore on the tile. It does show as "Powered Off" when I open the tile in Home app. I can live with that but could that be fixed by reporting 100 instead of 0?

Powered off is in regard to the fan switch in the thermostat tile. If you open the tile and scroll down, you see a switch there to activate the fan of the heating system. If you don't have a fan, than you can add the following to your config.json:

"excluded_attributes" : {
                "HUBITAT-DEVICE-ID" : [ "thermostatFanMode"]
            }

If you need help with where to add it, go here:
https://dantapps.github.io/
and build an example config.json for MakerAPI and select the checkbox for "Add Attribute Filter example" just make sure that in your config, you filter out the attribute thermostatFanMode

Hey @dan.t how come your website asks for my social number and a credit card? Just joking....seriously just joking.

I wanted to thank you for everything you've done here and if you have a donate link I'll gladly send you some beverage money.

1 Like

It's a security feature :rofl:
If you are seriously concerned about security, as everyone should, the code for that page is publicly hosted here: GitHub - danTapps/danTapps.github.io

Thanks Dan! That took care of it. The thermostat does have a fan that I always leave in "auto" mode but I guess that was coming across as turned off. I don't ever change the fan setting anyway so excluding the attribute works for me.