Myq componenet issues

For those that have installed the MyQ garage component. I was able to get HASS to show the entitiy id :group.all_garage_doors. I can even see the garage open\close actions but i can’t seem to get it to show up on the HASS front end. Not sure what I’m missing.

1 Like

I think you forgot to put the entitiy id of the group in the group section
you can look at this https://home-assistant.io/components/group/

hope that helps :slight_smile:

Greetz Mark

I went through and added group.all_garage_doors to the correct tab and it still isn’t showing up. The weird thing is that the group entity showed up by it’s self. I never created a group called all garage doors.

Do your open and close commands work? Mine do not. Also, I cannot determine how to get the current status of the door.

No they don’t. I’m working on adding a wink hub to get it to work.

add - garage_door.garage_door_opener or - garage_door.name_of_garage_door to the list of entities in groups.yaml

I’ve tried your suggestions but nothing seems to show in the UI. I’ve even tried garage_door.myq to see if that would work but didn’t.

Looking at the log it looks like the component is loading but I’m not seeing it in the UI. I’m not sure if it’s a component issue or user error.

Now I didn’t create a new garage door group only added the entity garage_door.garage_door_opener\ garage_door.name_of_garage_door to the configuration yaml.

I figured out the problem. The actual code for the myq component either has an old ID reference or the original author had things named in a very specific way.

See my comment here: https://github.com/home-assistant/home-assistant/pull/1961/commits/deaaf1687aee1d2050892ce4da7cf114aed5cd96#r67625639

As soon as I changed that, the garage_door.garage_door started showing up and I can open/close the door from within HASS.

I hope this helps you.


Also, side note: Using a Wink hub will only let you monitor the status. Wink does not implement the open/close functionality for whatever reason, so you will not be able to open/close the door using a Wink implementation of it.

1 Like

I think that did it. I changed VGDO to GarageDoorOpener and now i see the Garage Door Button in the UI.I’ll have to wait to test it when I get home tonight but it’s a good start. Thank you for your help!

Played around with this a bit since I installed a LiftMaster Internet Gateway today.
Here’s what I did to get this working:

  1. Added the APP_ID for the LiftMaster iOS device, and commented out the one for the Chamberlain.

    APP_ID =
    “JVM/G9Nwih5BwKgNCjLxiFUQxQijAebyyg8QUHr7JOrP+tuPb8iHfRHKwTmDzHOu”

    “Vj8pQggXLhLy0WHahglCD4N1nAkkXQtGYpq2HrHD7H1nvmbT55KqtN6RSF4ILB%2Fi”

  2. Changed the MyQDeviceTypeName as identified by @goyney from VGDO to GarageDoorOpener

         if device['MyQDeviceTypeName'] == 'GarageDoorOpener':
    
  3. I removed the bit of code that parses through the desc looking for ‘Garage Door Opener’ and just returned what was found to be GarageDoorOpener. So that section with update from (2) above looks like:

    if device[‘MyQDeviceTypeName’] == ‘GarageDoorOpener’:
    garage_doors.append(device[‘DeviceId’])
    return garage_doors

Basically, I have 2 garage doors, and I gave them unique names (didn’t leave the “Garage Door Opener” default name. Therefore, this script didn’t pick up my garage doors. Once I removed that additional search, both doors were found! Not sure why this additional check was needed. Garage doors are opening and closing as expected in HA.

IF I could actually program, I would:

  • Provide support for all of the MyQ openers: Chamberlin, Liftmaster, or Craftmaster. The only thing different between them are the 3 different APP_IDs and I think Craftmaster has a slightly different URL (craftmaster… instead of myexternal… or something trivial like that).

  • Set the garage_door name based based on the name given in the app: Pull the desc attribute “Value” (which is the custom name used to identify the opener in the MyQ app)

1 Like

I changed VGDO to GarageDoorOpener but still don’t see the button in the UI.

A new group was created in the States page but set to HIDDEN and I cannot change it to SHOW.
Does someone know how to fix it ?

What I see now in the States page
Entitie
group.all_garage_doors
State
unknown
Attributes
auto: true entity_id: friendly_name: all garage doors hidden: true

@diogos88 Did you name your garage door(s) something other than the default in the MyQ app? If so, you’ll need to make the change I suggested in step 3 above.

My garage door opener is Garage Door Opener

I changed the condition to

for device in devices:
    if device['MyQDeviceTypeName'].find('Garage') != -1:
        garage_doors.append(device['DeviceId'])

Now it works flawlessly.

1 Like

Hey folks, I’m getting a SecurityToken error when I try to load MyQ:

6-08-19 23:31:48 homeassistant.components.garage_door: Error while setting up platform myq
Traceback (most recent call last):
File “/srv/hass/hass_venv/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py”, line 98, in _setup_platform
discovery_info)
File “/srv/hass/hass_venv/lib/python3.4/site-packages/homeassistant/components/garage_door/myq.py”, line 33, in setup_platform
in myq.get_garage_doors())
File “/srv/hass/hass_venv/lib/python3.4/site-packages/homeassistant/components/garage_door/myq.py”, line 103, in get_garage_doors
devices = self.get_devices()
File “/srv/hass/hass_venv/lib/python3.4/site-packages/homeassistant/components/garage_door/myq.py”, line 88, in get_devices
self._logged_in = self.login()
File “/srv/hass/hass_venv/lib/python3.4/site-packages/homeassistant/components/garage_door/myq.py”, line 81, in login
self.security_token = auth[‘SecurityToken’]
KeyError: ‘SecurityToken’

Any idea what the issue is?

I would guess that you’ve go the wrong APP_ID (line 40) and possibly HOST_URI (line 44 I think).

There are 3 types of garage doors that work with MyQ: LiftMaster, Chamberlin, and Craftmaster. The only difference (as far I can tell) to make them work is each has it’s own APP_ID and HOST_URI.

See my post above to get it working for LiftMaster or Chamberlain, and do a search on Google for the appropriate APP_ID/HOST_URI combo if you have Craftmaster. Should be straightforward to resolve, if this is the error.

Ok, I stopped being lazy and compiled for anyone who is interested:

Craftmaster:
APP_ID: eU97d99kMG4t3STJZO/Mu2wt69yTQwM0WXZA5oZ74/ascQ2xQrLD/yjeVhEQccBZ HOST_URI: craftexternal.myqdevice.com

LiftMaster:
APP_ID: JVM/G9Nwih5BwKgNCjLxiFUQxQijAebyyg8QUHr7JOrP+tuPb8iHfRHKwTmDzHOu HOST_URI: myqexternal.myqdevice.com

Chamberlain:
APP_ID: Vj8pQggXLhLy0WHahglCD4N1nAkkXQtGYpq2HrHD7H1nvmbT55KqtN6RSF4ILB%2Fi HOST_URI: myqexternal.myqdevice.com

(Note I only tested the LiftMaster because that’s all I’ve got!)

1 Like

I really appreciate the reply. So I’ve got a LiftMaster, but I’ve now tried all three APP_ID/HOST_URI combos, all give the same error. I’ve tried changing my password to something shorter, on the off chance, it was getting truncated somewhere.

I know with some other cloud services, I’ve had to enable developer mode with the 3rd party website. Is there a need for that here?

In the configuration.yaml, I have the “name” value set to GarageDoorOpener, which is what I’ve named the actual door within the iOS app. I also made the other modifications you had suggested:

  1. Changed the MyQDeviceTypeName as identified by @goyney from VGDO to GarageDoorOpener
    if device['MyQDeviceTypeName'] == 'GarageDoorOpener':
  1. I removed the bit of code that parses through the desc looking for
    ‘Garage Door Opener’ and just returned what was found to be
    GarageDoorOpener. So that section with update from (2) above looks like:

if device[‘MyQDeviceTypeName’] == ‘GarageDoorOpener’:
garage_doors.append(device[‘DeviceId’])
return garage_doors

But I’m still getting the same error. What am I missing?

Note that I’m running HA from an RPI3, in case that somehow has some bearing. I believe I have the myq file in the correct location, since before dropping it where it is, the HA logs just complained they couldn’t load the component at all.

And again, I can’t thank you enough for your help. I’m a big fan of the stability and customization in HA, but the learning curve from SmartThings has been…steep. Hoping to get the garage working again ASAP so the wife can go back to taking the automation for granted :wink:

Also, when running this:
https://myqexternal.myqdevice.com/Membership/ValidateUserWithCulture?appId=Vj8pQggXLhLy0WHahglCD4N1nAkkXQtGYpq2HrHD7H1nvmbT55KqtN6RSF4ILB%2Fi&securityToken=null&username=account_username&password=account_password&culture=en

From here

I get a respOnes, with what appears to be a valid token

Perhaps the problem is in your configuration.yaml? Be sure the username and passwords are within quotes:

 - platform: myq
   name: Garage Door
   username: "[email protected]"
   password: "blahblahblah"

They weren’t, but I just put them in quotes and I’m getting the same error.

Our myq.py files should be basically identical, right? Would you be willing to share yours so I can diff it with mine and make sure I didn’t somehow grab something incorrect from github?