Skip to content
This repository has been archived by the owner on May 8, 2020. It is now read-only.

FYI: Chamberlain/MyQ is Still Broken #7

Closed
trilidar opened this issue Oct 23, 2016 · 20 comments
Closed

FYI: Chamberlain/MyQ is Still Broken #7

trilidar opened this issue Oct 23, 2016 · 20 comments

Comments

@trilidar
Copy link

trilidar commented Oct 23, 2016

I have a Chamberlain (with separate MyQ hub) and this unfortunately didn't fix my issue.

Open/Close report states are still useless (door can be open and it thinks it's closed, Siri 'open the garage' opens the door, but 'close the garage' does nothing).

I'd like to thank the dev for working on this, but at this point I really wish Chamberlain/Apple would just get their crap together and give me a working solution.

@luisiam
Copy link
Owner

luisiam commented Oct 23, 2016

Shorten your longPoll and shortPoll settings. Add newAccessory.context.log(thisDoorState); to
https://github.com/luisiam/homebridge-liftmaster2/blob/master/index.js#L368

Restart homebridge. Open and close the garage door and check the log

@trilidar
Copy link
Author

trilidar commented Oct 24, 2016

I put this in the exact place as instructed; however Homebridge just crashes now:

[10/23/2016, 7:59:54 PM] Homebridge is running on port 51826.
[10/23/2016, 7:59:54 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 7:59:55 PM] [MyQ] Error 'TypeError: newAccessory.context.log is not a function'
[10/23/2016, 7:59:55 PM] [MyQ] Error: Couldn't find a MyQ door device.
[10/23/2016, 7:59:55 PM] [MyQ] Missing MyQ Device ID

Thanks, but I'm beginning to think this is just beyond my ability/patience. I've been screwing with this for the better part of this weekend and I'm basically nowhere (and I work in IT).

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

My bad. Please put self.log(thisDoorState); instead of newAccessory.context.log(thisDoorState);

If you decided to give up, it's your choice. But if you are willing to stick with me, I believe we can make it working. It's been working for a lot of people already, including my self. The problem is that there's never an official API for MyQ and we really need the community's help to make it working for everyone.

@trilidar
Copy link
Author

Thanks, but that made no changes.

I can open the door; however it shows closed and telling it to close does nothing.

Basically, I have to tell it to open to open and open to close it.

Asking status always returns closed whether closed or open.

Home also shows the same; however this time it clearly showed 'Opening' while opening (but the state immediately changes to closed).

@trilidar trilidar reopened this Oct 24, 2016
@trilidar
Copy link
Author

My fault, didn't mean to close.

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

I know it's not fixing anything yet. I just need the log to see what's the state reported by the server.

@trilidar
Copy link
Author

I think the state's 2:

[10/23/2016, 8:21:30 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 8:21:30 PM] 2
[10/23/2016, 8:21:31 PM] [MyQ Home] State was successfully set to Open.
[10/23/2016, 8:21:36 PM] 2

Which I assume is closed?

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

Can you please add self.log(device); on
https://github.com/luisiam/homebridge-liftmaster2/blob/master/index.js#L313

and post your log afterwards?

@trilidar
Copy link
Author

ChildrenMyQDeviceIds: '',
UpdatedBy: 'System',
UpdatedDate: '2014-10-10T20:29:48.16',
ConnectServerDeviceId: '251666549' }
[10/23/2016, 8:43:20 PM] 2

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

I actually need the log prior to that as well. It should starts with something like
[10/23/2016, 5:46:09 PM] { MyQDeviceId: xxxxxxx,

@trilidar
Copy link
Author

Any way to take this offline?

There's quite a bit of info I'm uncomfortable posting in-the-blind (email, SN, device ID).

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

You can always email me at luisiam@gmail.com

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

You can also remove those sensitive information. I just want to know the whole structure of the object.

@trilidar
Copy link
Author

trilidar commented Oct 24, 2016

[10/23/2016, 9:09:15 PM] Homebridge is running on port 51826.
[10/23/2016, 9:09:16 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 9:09:16 PM] { MyQDeviceId: 95xxxx,
ParentMyQDeviceId: 95xxxx,
MyQDeviceTypeId: 7,
MyQDeviceTypeName: 'VGDO',
RegistrationDateTime: '2014-10-10T20:29:48.16',
SerialNumber: 'CG084301xxxx',
UserName: 'myusername',
UserCountryId: 0,
Attributes:
[ { MyQDeviceTypeAttributeId: 135,
Value: 'True',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'online',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 108,
Value: 'CG084301xxxx',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'name',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 118,
Value: '2',
UpdatedTime: '1477163685533',
IsDeviceProperty: false,
AttributeDisplayName: 'doorstate',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2016-10-22T19:14:45.5331715Z' },
{ MyQDeviceTypeAttributeId: 120,
Value: 'Home',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'desc',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 126,
Value: '201789110',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'gatewayID',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 131,
Value: '0',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'dpsnocommstate',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 132,
Value: '0',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'dpsbatterystate',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 136,
Value: '1',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'isunattendedopenallowed',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 137,
Value: '1',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'isunattendedcloseallowed',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 146,
Value: '0',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'myqmonitormode',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' },
{ MyQDeviceTypeAttributeId: 116,
Value: '1',
UpdatedTime: '1412990988160',
IsDeviceProperty: false,
AttributeDisplayName: 'numdpsdevices',
IsPersistent: false,
IsTimeSeries: false,
IsGlobal: false,
UpdatedDate: '2014-10-10T20:29:48.16' } ],
ChildrenMyQDeviceIds: '',
UpdatedBy: 'System',
UpdatedDate: '2014-10-10T20:29:48.16',
ConnectServerDeviceId: '251666549' }
[10/23/2016, 9:09:16 PM] 2

@trilidar
Copy link
Author

[10/23/2016, 9:21:56 PM] Homebridge is running on port 51826.
[10/23/2016, 9:21:56 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 9:22:01 PM] [MyQ Home] Getting current state: Closed.
[10/23/2016, 9:22:27 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 9:22:28 PM] [MyQ Home] State was successfully set to Open.
[10/23/2016, 9:22:44 PM] [MyQ] Logged in with MyQ user ID 0
[10/23/2016, 9:22:45 PM] [MyQ Home] State was successfully set to Open.

This shows that door was CLOSED, I set to OPEN (state changed), but then to close it again its state is OPEN again.

The entire time it was OPEN, Home reported as CLOSED.

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

I believe something went wrong with the state reporting and conversion. HomeKit always reports the state as closed. Therefore, you can never close the garage door since HomeKit thinks that it's always closed.

Can you install with the following command:
npm install -g git+https://github.com/luisiam/homebridge-liftmaster2.git#419e22ba9121d28ae8b095e843b18546541798bf

Restart homebridge afterwards. Have the garage door closed, open the garage door. Post the log afterwards. Thanks.

@trilidar
Copy link
Author

trilidar commented Oct 24, 2016

Cannot run (presented with the following errors):

npm ERR! node v6.8.1
npm ERR! npm v3.10.8
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access

npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! { Error: EACCES: permission denied, access '/usr/local/lib/node_modules'
npm ERR! at Error (native)
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'access',
npm ERR! path: '/usr/local/lib/node_modules' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! Please include the following file with any support request:
npm ERR! /home/pi/npm-debug.log

I'm on RPi3 logged in as Pi.

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

Did you use sudo for all the npm install? If you have been using sudo, you need to add sudo at the beginning as well

@trilidar
Copy link
Author

I did and this didn't change anything (same as before: always shows state of CLOSED and have to tell it to OPEN to open and OPEN to close).

Thanks for your time, but I officially give up. Nothing is worth this this many wasted hours (especially this).

I appreciate all the devs work on projects like this, but I work IT (and have for 25y) and couldn't get this working after wasting over 20h on it. I honestly cannot imagine someone non-IT literate ever getting something like this working (and that's a problem, because nothing should be this hard/impossible to deploy).

Again, ultimate fault/blame lies with both Apple (for their lack of Homekit 'seriousness') and Chamberlain (for their non-existent Homekit implementation).

@luisiam
Copy link
Owner

luisiam commented Oct 24, 2016

Well, I am still pinpointing the problem. I still need to log for troubleshooting. Anyways, it's your choice.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants