myQ

Will there be an update from SimpleCommands for myQ? My account will no longer “link”. Hopefully so! 😀
12

Comments

330 comments
  • Thank you Salam, SwiftyRox, et al!  I noticed there were some minor changes to the skill creation steps.  I had 3 garage doors to set up so I documented any changes to the Salam's original instructions:

    If you have more than one garage door to control, I recommend using the free Notepad++.  You can open each code file in a separate tab that will stay there (when reopening the program) until removed.

    1. Get the code (makes things easier).
      1. Go to https://github.com/spenwall/myq-alexa
      2. Click the green "Code" button and click Download ZIP.
      3. Unzip the downloaded file.
    2. Go to the developer page (If you don’t have an Amazon Developer Account, follow the instructions HERE).
      1. The Alexa Developer Console: https://developer.amazon.com/alexa/console/ask
    3. Create a skill
      1. Click the Create Skill button. 
      2. On the “Create a new skill” page, enter/select the following...
        1. Skill name: Enter a name for your skill. E.g., "MyQ Garage Door", “MyQ Garage Left”, “MyQ Garage Right”
        2. Primary locale: English (US) (this is the default)
        3. Choose a model to add to your skill: ‘Custom’ (this is the default)
        4. Choose a method to host your skill's backend resources: ‘Alexa-hosted (Node.js)’ (this is the default)
        5. Click the "Create skill" button at the top right of the page.
    4. On the “Choose a template to add to your skill” page, leave the ‘Start from Scratch’ template selected and click on the “Continue with template” button.  This will take about a minute to create the skill.
    5. Add Interaction Model.  At this point, you'll be on the Custom Skill Builder page.  On the menu on the left side of the page:
      1. Click >Invocations | Skill Invocation Name. Under "Skill Invocation Name", enter the name with which you will invoke your skill.  E.g., "garage door", “garage left”, “garage right”
      2. Click >Interaction Model | JSON Editor.
      3. Open the alexa.json file (downloaded in step 1).  In Notepad++, use the File | Open… menu to open the file in its own tab.  Select all the text in the file (Ctrl-A) and copy (Ctrl-C).
      4. In the JSON Editor, Select all the text in the editor (Ctrl-A) and paste (Ctrl-V) to replace all the text in the editor with the text from alexa.json.
      5. You may optionally change the invocation name to something like "garage door" or “garage left” by editing line 4 in the editor by replacing the default “my garage.”
      6. Click the "Build Model" button at the top of the editor.
    6. Add the Code
      1. Click on the word Code at the top of the page.
      2. Index.js should open automatically but if not, double-click on index.js in the list of files on the left.
      3. As above, open the downloaded file "index.js" and copy all the text from the file (Ctrl-A, Ctrl-C).  Then replace the text in the editor (Ctrl-A, Ctrl-V).
      4. In the editor, on lines 8 & 9, enter your email & password for your MyQ account.
      5. Change the index number for your garage door in line 28.  The index numbers seem to be assigned to your garage doors by alphabetical order (how they are listed in your app) starting with “0.”  For example, if you have 3 garage doors named “Garage Left”, “Garage Center”, and “Garage Right,” the index numbers will be 1, 0, and 2 respectively.  
      6. Click the Save button above the editor on the right.
      7. On the list of files at the left side of the page, double-click on package.json.
      8. As above, open the downloaded file "package.json" and copy all the text from the file (Ctrl-A, Ctrl-C).  Then replace all the text in the editor (Ctrl-A, Ctrl-V).
      9. If you changed the "invocationName" in step 4, you'll edit line 2 in the editor and type the same name in. For example, if you changed the invocation name to the following:
        1. "invocationName": "garage door",
        2. Then you'll need to change line 2 to the following:
        3. "name": "garage-door",
        4. (Note that it's the same name, but all spaces are replaced with hyphens.)
      10. Click the Save button at the top right of the page above the editor.
    7. Deploy
      1. Hit the Deploy button at the top right of the page and let it build.
    8. Test
      1. Click on the word Test at the top of the page.
      2. Next to "Test is disabled for this skill," select "Development" in the drop-down box.
      3. In the "Type or click and hold the mic" button, enter a command like "Ask [invocation name] to open" (you can also use a mic or Alexa device to say this command).  You should hear your garage door open.
    9. Use it on Alexa

    At this point, your skill is attached to your Amazon account. All Alexa devices that are registered to this account automatically have access to this skill. You can say the following commands:

    • "Alexa ask [invocation name] to open"
    • "Alexa ask [invocation name] to close"
    • "Alexa ask [invocation name] status"

    You can see your skill by...

    • Open the Alexa app.
    • Go to Skills & Games
    • Click on Your Skills.
    • At the top, where it has boxes for Enabled, Updated, etc, scroll the boxes to the left until you see Dev and touch that box.
    • You should see your new MyQ Garage Door skill.

    Your skill is in Developer mode which means it's private.  It has not been published to the Skills section of Alexa so nobody else can get to it.  Make sure that you do not go into the Distribution section and Distribute your skill.  That would enable others to open and close your garage door!

    Finally, if you want to create a Routine in Alexa, the actual skill will not be available because it's in Developer mode.  So for the Action, instead of using a Skill, you'll need to use a Custom Action and type in "Ask garage door to open".  It works fine.

    I hope this helps (even if it was a bit long).

     

    0
  • I was going through my email and came across this from 10/1/2020.  They sent an email the last time this broke.  I think it is telling that we are almost at three weeks without SC integration and no communication.  My gut tells me MyQ slammed the door hard on SC and deadbolted it 5 times.

     

    We wanted to send out an update to explain the Garage Door control outage that began yesterday afternoon.  The integration api we use to gain status and control garage doors has changed and the legacy model has been deprecated.  Bad news is that some of you will suffer an outage of up to 24 hours.  Good news is that we have updated our platform to communicate and control your garage door and gate devices with the updated api.  The new api does offer some additional security enhancements so you should feel better about this integration and the short TTL token based method that is used to control your devices.

     

    We are currently running a process that will update all of your SimpleCommands connected garage door and related devices to support the new api.  This process is complete for approximately 50% of our users and we expect that the process will continue for the next many hours and that by midnight ET all users will be upgraded.  The initial process will fix gates and doors, accessory items should be complete by end of day tomorrow.

     

    NOTE:  If you have deleted and re-added your garage items you will need to reset any schedule(s) and rebuild any routines that you had prior to deleting the integration.  If you have not deleted your items you should be up and running now or as soon as our process completes.

     

    If you would like any more help or have questions about SimpleCommands please feel free to respond to this email! We're here to help.

     

    0
  • Thanks for the custom skill code.  I have a question.  I have 3 doors.  One is a new one with a built-in hub and I can control that one with line 28 set to 0 reference.  My other 2 doors are on a different hub as it's driving older openers.  When I change the reference in line 28 to 1 I get door undefined.  Does anyone know how to get to the doors on my second hub?

    edited:  I figured this out by console logging the device call,  turns out in my situation 0 is the new wifi opener, 1 is the gateway to the old style hub, 2 is the hub itself and 3 and 4 are my doors.   thanks again for this code!

    0
  • So I can now authenticate - but the garage door isn’t showing up as an “item”, even though I’m successful in adding the door. Anyone else noticing this too?

     

    Edit: It says any connection attempt is successful, even though it isn’t. 

    0
  • Go back and look at the 'authentication'. It never really happened.(You can add it back a million times, it doesn't actually authenticate.

     

    0
  • David Murray: "I have a question, I followed the shortcut and got Siri working as I already mentioned but when the shortcuts complete for both open and close - Siri just says “done “. Where as the (Now broken!) Sc routine would have Siri saying “ your garage door is now opening” or “your garage door is now closing”. Does anyone know how to edit the shortcut to have Siri say these rather than “done” ? Any help would be really appreciated"

    Try this new shortcut it provides the proper responses. I just have to figure out if I can automate this to close when I leave and open when I arrive.

    https://www.reddit.com/r/shortcuts/comments/dbjjy1/ios_13_versions_of_my_improved_shortcuts_to/ 

    0
  • Brand new release for another Apple shortcut to control MyQ https://routinehub.co/shortcut/9797/ 

     

    0
  • Out of curiosity I check to see if the SC/MyQ connection is fixed. It now says connection successful but MyQ is not added and on the Home Screen.

    The skill we created is working great.

    0
  • The skill works great.   Quick question on a "second" garage door, the skill will open/close the "first" door no matter what I do.. I have change the serial number in line 28 to 0-5, I even left the number blank but it always open/close the "first" door.   I think there is something I'm missing in the code (besides line 28, serial number) that needs set to force it to see the second door?   Any suggestions, advice is greatly appreciated.

    Thanks

    - BW 

    0
  • JimWin, do I understand correctly, if more than one garage door, one has to create a skill for each with the proper substitutions?

    0
  • I followed the instructions on creating a skill. I can get the garage door to open but not close. I’ve deleted and setup the skill several times and still can’t get it to close. I followed
    Salam Dahbour directions step by stepp. Any ideas?

    1
  • I have the same issue my door will open and report a status but will not close! any help would be greatly appreciated.

    1
  • I get garage door is undefined.   I did exactly what was laid out and did it twice (deleted the one, started over).  Any ideas Zook33Salam Dahbour?

    0
  • Yes, it will give me the choice to open, status, close and I will say open. But when I want to close, it will say it has multiple things with that name. I don't know what to do.

     

    0
  • Brad Cromwell

    Are you controlling 1 door or multiple? I got mine to work switching these around my first door was 1 and second was 2. hope that helps

    Sometimes the garage door is defined not as the first door in the list of devices sent back from myQ. If you are having trouble try changing line 28.

    return result.devices[1].serial_number;
    

    to

    return result.devices[0].serial_number;
    
    1
  • Dedra Davis Try typing the exact command that you started with. then do close or status. let me know if yours closes.

    0
  • Pete,

    I’ve switched line 28 to 0 and back to 1 and back to 0 several times. I just can’t for the life me figure out what went wrong. Also keeps telling me I have more than one named garage door.

    0
  • I am controlling only 1 door.

    0
  • When I asked to close it says "A few things share garage door"

    0
  • Dedra Davis  are you using the MYQ hub or a opener with myq built in?  I'd guess a hub and if that the case chances are you change line 28 to 2 or 3 or 4.   just keep trying them

    0
  • What were your results when you ran it in test mode by "typing" the Ask Alexa command....Did it do all three in test mode? 

    1
  • There is a far simpler and easier way than trying to configure Mq garage door and simple commands and Alexa. I purchased Switchbot on Amazon and the Switchbot hub. Total price for the two is $70. I had the switchbot  which is a very small box with 3m foam tape which adheres to the Myq garage door remote controller.  The switchbot pairs with the hub which connects to the internet and then to  the Alexa skill. Then you just create an Alexa routine to open the garage and a routine to close the garage. So whenever you say Alexa open the garage the switchbot has a little motorized  arm that comes out and presses down on the MyQ garage door opener controllers button to either open the garage or to close it. The whole setup takes less than three or four minutes to have it all up and working.

    0
  • for those of you that a struggling to get the right value for line 28 here is a way to figure out the right value.   

    just before line 28, add this line. console.log(result.devices);

    looks like this:

    Then hit the save and deploy button.   then do a test, no different than described above.  After the test go back to the Code tab.

    On the ribbon for this page you will see "Cloudwatch logs". Click on that.

    you will see a screen like this:

    Click on the first entry

    you will then see a screen like this:

    Click on the second arrow and it will open up the results with a list of all your devices,  it will look something like this:

    in the list there will be a href: entry for each device in you myq network.  the first device is device 0, in my case its named garage(See red arrow).  keep scrolling down and counting href: entries until you find the door your trying to control and that will be the number you put on line 28.

    Now don't forget when you put the right number in line 28 to delete the console.log line you added earlier.

    Hope this helps

    1
  • Thank you all! I will try what you Charlie. I’m so burnt out, if this does not work then I will go with Kip’s idea.

    0
  • I forgot to ask, am I inserting a new line or typing over line 28?

    0
  • Swiftyrox, I did not type anything in the test. After I did deploy I went to test and then just said ‘Alexa open garage door”. Then she asks “What would you like to do, open, status or close” I said open and it opens. But doesn’t close. She will say “ Few things share garage door, which one do I want”

    0
  • I'll assume you created a routine then with the "Ask Alexa To..." custom command. If you haven't done that, then you're basically cold-calling the skill...so techincially it's an "Ask Alexa To..." verbal command until you create a routine with a custom phrase like "Alexa, Open the Garage".....

    No routine...then you have to say it like "Alexa, ask garage door to open"

    1
  • I didn’t create a routine. I just follow the steps Salam wrote. Then when time to do test I just spoke into the mic in the developer “ Alexa open garage door” it opened. There must be some steps I’m
    missing. So when I go to the test in developer, I have to type something in the test?

    0
  • I’m not a programmer but I’m good with instructions.

    0
  • If you haven't created a routine....you can simply say "Alexa, open the garage".....you must "Ask" alexa to run the command/actioin.....I've attached a screenshot as to how it should be typed and "spoken"...

    0

Please sign in to leave a comment.

Didn't find what you were looking for?

New post