-
Notifications
You must be signed in to change notification settings - Fork 20
myq chamberlain garage opener not working with homekit #109
Comments
Control of chamberlain garage openers is no longer supported by wink API, it’s been restricted by chamberlain to only work in the Wink app. The only way to get it working with HomeKit - is to purchase the Chamberlain MyQ Home Bridge. https://www.chamberlain.com/ca/myq®-home-bridge/p/MYQ-G0303-SP |
I suggest hiding the garage door in your wink config (following the hide_groups guide) and installing the chamberlain plugin for homebridge. It works great for me. |
Good to know about that |
@christensonautohome I've tried homebridge-chamberlain without success before. I'm trying again with the same error: ` any ideas? |
figured it out! for some reason the api or servers may have been down. I actually had to re setup my chamberlain garage door opener from scratch to get it all back. after that I was getting the "found mulitple devices" error. I finally realized that the numbers it was spitting out were the numbers I needed to put in for the 'DiviceId'. it spit out 4 different numbers. process of elimination I chose it on my 3rd try! it was the number that was most unique from the 4. hope this helps the next guy! thanks! |
Sorry, I am no longer actively maintaining this project. I am no longer using Wink, and do not have the time or resources to dedicate more to ongoing maintenance. |
after connecting the smart garage opener to wink I do get the 'Garage Door' in homekit, but, when I try to open/close it through homekit it does not respond and in homebridge I get this:
`[2018-8-24 12:08:34] [Wink] Failed to update device: Garage Door (garage_door/145198) { StatusCodeError: 400 - {"data":null,"errors":["Unable to apply desired_state"],"pagination":{}}
at new StatusCodeError (/usr/lib/node_modules/homebridge-wink3/node_modules/request-promise-core/lib/errors.js:32:15)
at Request.plumbing.callback (/usr/lib/node_modules/homebridge-wink3/node_modules/request-promise-core/lib/plumbing.js:104:33)
at Request.RP$callback [as _callback] (/usr/lib/node_modules/homebridge-wink3/node_modules/request-promise-core/lib/plumbing.js:46:31)
at Request.self.callback (/usr/lib/node_modules/homebridge-wink3/node_modules/request/request.js:185:22)
at emitTwo (events.js:126:13)
at Request.emit (events.js:214:7)
at Request. (/usr/lib/node_modules/homebridge-wink3/node_modules/request/request.js:1161:10)
at emitOne (events.js:116:13)
at Request.emit (events.js:211:7)
at IncomingMessage. (/usr/lib/node_modules/homebridge-wink3/node_modules/request/request.js:1083:12)
name: 'StatusCodeError',
statusCode: 400,
message: '400 - {"data":null,"errors":["Unable to apply desired_state"],"pagination":{}}',
error:
{ data: null,
errors: [ 'Unable to apply desired_state' ],
pagination: {} },
options:
{ baseUrl: 'https://api.wink.com',
strictSSL: true,
json: true,
method: 'PUT',
uri: '/garage_doors/145198/desired_state',
body: { desired_state: [Object], nonce: 1000005 },
headers:
{ 'User-Agent': 'Manufacturer/Apple-iPhone10_1 iOS/11.2.6 WinkiOS/6.7.0.19-production-release (Scale/2.00)',
Authorization: 'Bearer _UMadVjWHV8B_giIdqQOXP_KjPOIx-qh' },
callback: [Function: RP$callback],
transform: undefined,
simple: true,
resolveWithFullResponse: false,
transform2xxOnly: false },
response:
IncomingMessage {
_readableState:
ReadableState {
objectMode: false,
highWaterMark: 16384,
buffer: [Object],
length: 0,
pipes: null,
pipesCount: 0,
flowing: true,
ended: true,
endEmitted: true,
reading: false,
sync: true,
needReadable: false,
emittedReadable: false,
readableListening: false,
resumeScheduled: false,
destroyed: false,
defaultEncoding: 'utf8',
awaitDrain: 0,
readingMore: false,
decoder: null,
encoding: null },
readable: false,
domain: null,
_events:
{ end: [Array],
close: [Array],
data: [Function],
error: [Function] },
_eventsCount: 4,
_maxListeners: undefined,
socket:
TLSSocket {
_tlsOptions: [Object],
_secureEstablished: true,
_securePending: false,
_newSessionPending: false,
_controlReleased: true,
_SNICallback: null,
servername: 'api.wink.com',
npnProtocol: undefined,
alpnProtocol: false,
authorized: true,
authorizationError: null,
encrypted: true,
_events: [Object],
_eventsCount: 9,
connecting: false,
_hadError: false,
_handle: null,
_parent: null,
_host: 'api.wink.com',
_readableState: [Object],
readable: false,
domain: null,
_maxListeners: undefined,
_writableState: [Object],
writable: false,
allowHalfOpen: false,
_bytesDispatched: 375,
_sockname: null,
_pendingData: null,
_pendingEncoding: '',
server: undefined,
_server: null,
ssl: null,
_requestCert: true,
_rejectUnauthorized: true,
parser: null,
_httpMessage: [Object],
_idleNext: null,
_idlePrev: null,
_idleTimeout: -1,
[Symbol(asyncId)]: 2015,
[Symbol(bytesRead)]: 543 },
connection:
TLSSocket {
_tlsOptions: [Object],
_secureEstablished: true,
_securePending: false,
_newSessionPending: false,
_controlReleased: true,
_SNICallback: null,
servername: 'api.wink.com',
npnProtocol: undefined,
alpnProtocol: false,
authorized: true,
authorizationError: null,
encrypted: true,
_events: [Object],
_eventsCount: 9,
connecting: false,
_hadError: false,
_handle: null,
_parent: null,
_host: 'api.wink.com',
_readableState: [Object],
readable: false,
domain: null,
_maxListeners: undefined,
_writableState: [Object],
writable: false,
allowHalfOpen: false,
_bytesDispatched: 375,
_sockname: null,
_pendingData: null,
_pendingEncoding: '',
server: undefined,
_server: null,
ssl: null,
_requestCert: true,
_rejectUnauthorized: true,
parser: null,
_httpMessage: [Object],
_idleNext: null,
_idlePrev: null,
_idleTimeout: -1,
[Symbol(asyncId)]: 2015,
[Symbol(bytesRead)]: 543 },
httpVersionMajor: 1,
httpVersionMinor: 1,
httpVersion: '1.1',
complete: true,
headers:
{ 'cache-control': 'no-cache, no-store, max-age=0, must-revalidate',
'content-type': 'application/json; charset=utf-8',
expires: 'Fri, 01 Jan 1990 00:00:00 GMT',
pragma: 'no-cache',
'strict-transport-security': 'max-age=31536000',
vary: 'Accept-Encoding',
'x-content-type-options': 'nosniff',
'x-frame-options': 'SAMEORIGIN',
'x-request-id': 'dcfa90d8-7818-45a2-9eaa-e085a1e44f8f',
'x-runtime': '0.043948',
'x-xss-protection': '1; mode=block',
'content-length': '72',
connection: 'Close' },
rawHeaders:
[ 'Cache-Control',
'no-cache, no-store, max-age=0, must-revalidate',
'Content-Type',
'application/json; charset=utf-8',
'Expires',
'Fri, 01 Jan 1990 00:00:00 GMT',
'Pragma',
'no-cache',
'Strict-Transport-Security',
'max-age=31536000',
'Vary',
'Accept-Encoding',
'X-Content-Type-Options',
'nosniff',
'X-Frame-Options',
'SAMEORIGIN',
'X-Request-Id',
'dcfa90d8-7818-45a2-9eaa-e085a1e44f8f',
'X-Runtime',
'0.043948',
'X-XSS-Protection',
'1; mode=block',
'Content-Length',
'72',
'Connection',
'Close' ],
trailers: {},
rawTrailers: [],
upgrade: false,
url: '',
method: null,
statusCode: 400,
statusMessage: 'Bad Request',
client:
TLSSocket {
_tlsOptions: [Object],
_secureEstablished: true,
_securePending: false,
_newSessionPending: false,
_controlReleased: true,
_SNICallback: null,
servername: 'api.wink.com',
npnProtocol: undefined,
alpnProtocol: false,
authorized: true,
authorizationError: null,
encrypted: true,
_events: [Object],
_eventsCount: 9,
connecting: false,
_hadError: false,
_handle: null,
_parent: null,
_host: 'api.wink.com',
_readableState: [Object],
readable: false,
domain: null,
_maxListeners: undefined,
_writableState: [Object],
writable: false,
allowHalfOpen: false,
_bytesDispatched: 375,
_sockname: null,
_pendingData: null,
_pendingEncoding: '',
server: undefined,
_server: null,
ssl: null,
_requestCert: true,
_rejectUnauthorized: true,
parser: null,
_httpMessage: [Object],
_idleNext: null,
_idlePrev: null,
_idleTimeout: -1,
[Symbol(asyncId)]: 2015,
[Symbol(bytesRead)]: 543 },
_consuming: true,
_dumped: false,
req:
ClientRequest {
domain: null,
_events: [Object],
_eventsCount: 5,
_maxListeners: undefined,
output: [],
outputEncodings: [],
outputCallbacks: [],
outputSize: 0,
writable: true,
_last: true,
upgrading: false,
chunkedEncoding: false,
shouldKeepAlive: false,
useChunkedEncodingByDefault: true,
sendDate: false,
_removedConnection: false,
_removedContLen: false,
_removedTE: false,
_contentLength: null,
_hasBody: true,
_trailer: '',
finished: true,
_headerSent: true,
socket: [Object],
connection: [Object],
_header: 'PUT /garage_doors/145198/desired_state HTTP/1.1\r\nUser-Agent: Manufacturer/Apple-iPhone10_1 iOS/11.2.6 WinkiOS/6.7.0.19-production-release (Scale/2.00)\r\nAuthorization: Bearer _UMadVjWHV8B_giIdqQOXP_KjPOIx-qh\r\nhost: api.wink.com\r\naccept: application/json\r\ncontent-type: application/json\r\ncontent-length: 48\r\nConnection: close\r\n\r\n',
_onPendingData: [Function: noopPendingOutput],
agent: [Object],
socketPath: undefined,
timeout: undefined,
method: 'PUT',
path: '/garage_doors/145198/desired_state',
_ended: true,
res: [Circular],
aborted: undefined,
timeoutCb: null,
upgradeOrConnect: false,
parser: null,
maxHeadersCount: null,
[Symbol(outHeadersKey)]: [Object] },
request:
Request {
domain: null,
_events: [Object],
_eventsCount: 5,
_maxListeners: undefined,
strictSSL: true,
method: 'PUT',
uri: [Object],
body: '{"desired_state":{"position":0},"nonce":1000005}',
headers: [Object],
readable: true,
writable: true,
explicitMethod: true,
_qs: [Object],
_auth: [Object],
_oauth: [Object],
_multipart: [Object],
_redirect: [Object],
_tunnel: [Object],
_rp_resolve: [Function],
_rp_reject: [Function],
_rp_promise: [Object],
_rp_callbackOrig: undefined,
callback: [Function],
_rp_options: [Object],
setHeader: [Function],
hasHeader: [Function],
getHeader: [Function],
removeHeader: [Function],
localAddress: undefined,
pool: [Object],
dests: [],
__isRequestRequest: true,
_callback: [Function: RP$callback],
proxy: null,
tunnel: true,
setHost: true,
originalCookieHeader: undefined,
_disableCookies: true,
_jar: undefined,
port: 443,
host: 'api.wink.com',
path: '/garage_doors/145198/desired_state',
_json: true,
httpModule: [Object],
agentClass: [Object],
agent: [Object],
_started: true,
href: 'https://api.wink.com/garage_doors/145198/desired_state',
req: [Object],
ntick: true,
response: [Circular],
originalHost: 'api.wink.com',
originalHostHeaderName: 'host',
responseContent: [Circular],
_destdata: true,
_ended: true,
_callbackCalled: true },
toJSON: [Function: responseToJSON],
caseless: Caseless { dict: [Object] },
read: [Function],
body: { data: null, errors: [Array], pagination: {} } } }
`
any ideas??
I've also tried installing the liftmaster/liftmaster2 and chamerlain plugins with no luck. keep getting errors about duplicate devices, though I only have one.
is there a newer version of wink3? how do i check my version and upgrade?
thanks in advance!
The text was updated successfully, but these errors were encountered: