ST & Linear’s GD00Z-1 Z-Wave garage door controller

Great apps! But would you modify the app to treat departure and arrival separately? It would be nice to have ability to close door on departure, but not to open on arrival and vice versa.

@schwark - thanks for the app!

Having said that - I’m a little disappointed in SmartThings in relation to what I refer to as “consumer ready”. I spent quite a lot of time on trying to find a hub that would work with my Windows Phone, wife’s Android and son’s IOS . I only found a few and SmartThings seemed to to be the top AND it did not use proprietary devices. Got the hub, had to contact support because I loaded the app before buying the hub (ST support is superb!), thought i had my head wrapped around the way the app was structured and started installing devices. Garage door was at the top of the list. I can code. I repair electronics. I was not looking to do this in my leisure so I decided to go with the GD00Z because it was a complete solution. What I found was that it wasn’t fully implemented by ST. I thought maybe its a new device and they need time. After looking around here I see that it seems a lot of things are not “officially” supported and you are expected to code your own apps or device types. While I appreciate the ability to do this I don’t want to do it on what I consider the basics.

In short add my name in support of adding the GD00Z as a device that can be automated like a relay or switch.


@schwark or anyone else that is good at coding. can you please check this code and help me fix it if need be? I revised schwark’s code for people with relay+contact sensor. the code i have below i wanted to also make it so I don’t have notifications pushed, and would rather have message sent to certain phone number, so if anyone can help me i would be very appreciative. Thank you

here is the link to my code.

I wasn’t happy with the current state of the “z-wave garage door opener.” In particular, it really irritated me that it wasn’t showing up as a shortcut in “doors & locks.” (It also bothered me that it didn’t seem to refresh it’s own status on it’s own.)

So, having absolutely no experience with groovy (even though I was born in the 70’s and that really sounds like a 70’s term), and really having no clue what I was doing, I did what any developer does: I started tinkering.

First, created a new device type based on the existing z-wave garage door opener and added a polling capability and a poll() method. The method just duplicates the code in the exiting refresh() method. Saved it, published to myself, and changed my device type. It seems to work. nice.

Next, I tried to figure out what I’d need to do in order to make it look like ST’s (odd) impression of a garage door opener. It appears that the shortcut code depends on there being a “switch”, so I blindly added a “switch” capability, and on/off methods (that duplicate the open/close methods that already existed.) Save/publish, and nothing broke. :wink:

Fired up the android app, went into “doors & locks”, tapped the ‘gear’ icon, and added a “door.” The key seemed to be adding a “open and close it remotely” selection (and then selecting the garage door device that now had a “switch” capability.) Once I did that, exited the android app and came back… suddenly I had what APPEARS to be a valid and functional shortcut.

Sadly, this isn’t quite done yet. While it might work, I get the impression from the ST ide docs that I need to have attributes for on/off. In particular, it has “Switch – [“on”,“off”]”

I have no idea how to add that attribute (and have it actually reflect the open/close state of the door.) I tried looking in the “z-wave switch” device type code to get an idea of what’s needed, but the only places I’m finding something that might be what I need to do are in the “simulator” section (and I don’t care about simulating a garage door), and in the tiles definitions (and I don’t want an on/off tile - I’m good with the open/opening/closed/closing tile.)

So, given the z-wave garage door opener device type code, how can I grant the code a “Switch – [“on”,“off”]” attribute?

Once I have that answer, I’d be happy to make this device type available to others…

Take care

[quote=“garyd9, post:81, topic:1175”]
…and functional shortcut
[/quote]Or maybe not. The icon shows up in doors/locks, and it’ll show the current status okay, but for some reason tapping on the icon in there doesn’t do what I expect. In fact, it changes between open/closing/stopped/opening/stopped, but doesn’t appear to be sending ANY commands to the device type code.

Is the ST Doors&Locks module code is floating around somewhere that I could look at to try and figure this out?

(Oh, and I did get the on/off switch states working, but it doesn’t seem to matter.)

ST / @duncan , I realize that after 6 months of not finishing this device that you likely never will. However, can you please help me out to get it done myself?


Thanks Gary! This is great.

Before I purchase a Linear GD00Z or the Iris garage door controller I need a few answers from an expert:

Are these two items exactly the same ?
Is this setup fully functional?


Yes. It is exactly the same. But you can get GD00Z for less money from Amazon. And I would of think twice before buy this device at all. Seems to me that Z-way switch plus on/off sensor can do a better job. The problem with GDZ000 that after power loss it goes into unknown state and you will have to open a close garage door to reset status. So you definitely need to use some sort of UPS with GD00Z.

@Kooltaco I agree with murzik. I’ve done some research on the linear gd004 all in one garage controllers and they really are not fully compatible(at least without addition of device type custom made for it), thus i went for a relay + orientation sensor (such as ST multi or Ecolink tilt) because this setup is fully supported by ST. I even emailed ST support because i was concerned that eventually the native setup of relay + orientation sensor would be tossed for the all in one Garage controllers like linear GD004 and my response from ST described that the relay + orientation sensor setup is not going away at all, and they are working on providing official support for garage controllers like Linear GD004. My setup consists of 3 garage doors, each door has 1 ecolink tilt sensor and 1 mimolite relay sensor and this setup has worked wonderfully.

Here’s a custom device type for the GD00Z-4 which provides support for some of the missing features:

Does your device type solves issue with “unknown” state after device loses power?

It works here in our labs but one needs to either manually “refresh it” or wait for a while to refresh itself. It isn’t instantaneous as that’s the way the device is built.
Key points to note:

  1. Make sure the sensor is working (we had some trouble with the alignment, it was at a slight angle when mounting to at first we couldn’t get it “recognize”). After fixing the mounting angle it detected the position
  2. After a power failure you need to force the unit to reset/resync itself with the sensor. Two way, hit refresh and it can take about 5 minutes to complete the syncing process or wait for about 15 minutes and it’ll refresh itself over time

Hi Gary,
I am trying to pair Linear GD00Z-1 with ST. I used your code and created a new Device type.
I tried creating a device from IDE and used the new device type, it showed up under Things on my phone but with Unknown status.
Here’s what I have done so far -

  1. Installed sensor on the door as per the instructions
  2. Connected the controller to Garage door opener’s Pushbutton and Common terminals
  3. Powered up the controller
    5)Reset the controller.
  4. Implemented New device type (from your code)

I also, tried your suggestion of trying to add the device from “Door & Locks” -Add A door - But I get stuck step where it asks me for sensor and it can’t find a sensor.

I am obviously doing something wrong!


I added mine from the Android App just using the Generic Add new device after installing the new device type to the ide using Gary’s code.

On the app…
(+) -> “Connect New Device”

Are you close enough to your hub for include ?
I did this before mounting the device in my garage so I could have it sitting closer than 3 ft from the ST hub. Typically you need to be very close to the hub to add devices. You can of course always bring the hub out to the unit if you have a plug and network connection available ( or really long cables :slight_smile: )

Ensure that the device is using the proper device type.

(OMG, the ide is INCREDIBLY slow right now for me… it’s taking 5+ minutes just to load the “my devices” page!!!)

From the IDE, select “my devices” and check the “Type” column. If it’s not using the device type you added, click the “display name” for the device, “edit”, and change the device type.

If the new device type isn’t showing in the list, you didn’t install the device type properly.

So, you are suggesting that I unmount the IRIS controller from Garage door opener, bring it near ST hub, plug it in and then add the device by using the phone app -> (+) -> Connect New Device?
I can try that.

@garyd9 -
From IDE, I deleted the device and created a new device and made sure I selected device type - “My Z-Wave Garage Door Opener” - (your code)
It still shows up on the Phone’s ST app under Things - and shows up as “UNKOWN” and Open and Close links doesn’t work…

Also,In the device property, for the new device I added the “Zigbee Id” and “Device Network Id” are blank. Is this correct?

That was what I had to do. How are you adding it. Are you using “+New Device” from the IDE or adding from the app ? I would add from the mobile app

I think adding from the ide is for devices which are not zwave or zigbee. for example my Solar Panel Monitoring device needed to be added like this because it is a web based interface.

At least that is my understanding. I would listen to @garyd9 advice over mine :smile:

@Ron - I tried both “+New Device” from IDE and also from Mobile App. However, I didn’t try bringing the controller close to ST hub and then try from Mobile app. I will do that tonight.
I will see what advice does @garyd9 has for me and try that as well. Thank you both!