luisiam / homebridge-liftmaster2 Goto Github PK
View Code? Open in Web Editor NEWLiftMaster Plugin for HomeBridge (API 2.0): https://github.com/nfarina/homebridge
LiftMaster Plugin for HomeBridge (API 2.0): https://github.com/nfarina/homebridge
Looked it up, got nowhere; here is the error log. (Running macOS 10.14 Mojave).
2018-06-20T02_01_00_100Z-debug.log
Does this support the other MyQ accessories? I have both of these devices in addition to my Garage Door opener. They are supported by an OpenHAB module. But now that iOS 10 is released I'd prefer to use my Apple TV as my smart home hub.
luisiam,
Thank you so much for creating the LiftMaster2 plugin for the garage door opener integration with Homebridge. With my liftmaster (Assurelink) implementation at home, I also utilize the 823LM lights managed by the liftmaster gateway. Do you know if there is a way to manage those as well from the plugin? I did find an index.js file that was built for the MyQ plugin under API 1.0 of Homebridge that includes Light control but it does not work with the LiftMaster2 plugin.
Let me know if this could be possible?
Thanks,
shadjhansen
Using the MyQ Internet Gateway (http://www.chamberlain.com/smartphone-control-products/smartphone-connectivity/myq-internet-gateway).
The plugin works to open and close, but when I ask the status with "is the garage door opener closed" Siri responds with "Your Garage Door Opener is closing". The Pi clearly shows ""Garage Door Opener is closed".
I just upgraded my setup and installed version 2. The previous version did not do this. Any idea on resolving?
I'm getting this error when homebridge starts up:
[homebridge-liftmaster2.LiftMaster2] Please setup MyQ login information!
The credentials are in the config.json file, and are definitely correct (copied/pasted and was able to log into the site directly). I'm not able to find anything for it in the MyQ app, so I think the error isn't a false warning. The WeMo stuff still works just fine as well.
Here's my config:
{ "bridge": { "name": "Homebridge", "username": "XX:XX:XX:XX:XX:XX", "port": XXXXX, "pin": "XXX-XX-XXX" }, "platforms": [{ "platform": "BelkinWeMo", "name": "WeMo Platform" }, { "platform": "LiftMaster2", "name": "Liftmaster", "username": "[email protected]", "password": "xxxxxxxx" }] }
Any suggestions?
Hello,
Every few days or hours I get the following error in the homebridge.log file
[11/17/2016, 12:11:59 PM] [MyQ] Error 'Error: connect ECONNRESET 68.177.15.145:443' logging in to MyQ: undefined
[11/17/2016, 12:11:59 PM] [MyQ] Error: connect ECONNRESET 68.177.15.145:443
Eventually, the raspberryPi stops running the homebridge app. I force quit the homebridge app and restart it. It again works for several days or hours until another lockup.
Any ideas?
Thanks,
Joe
Sorry
Hello Everyone,
I have been using this plugin for nearly 6 months now, and suddenly I got this error:
[2018-10-5 00:54:14] Homebridge is running on port 51826.
undefined:1
SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse ()
at Request._callback (/usr/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/lib/node_modules/homebridge-liftmaster2/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-liftmaster2/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-liftmaster2/node_modules/request/request.js:1083:12)
at Object.onceWrapper (events.js:313:30)
My config is:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},
"description": "Homebridge",
"accessories": [],
"platforms": [
{
"platform": "LiftMaster2",
"username": "Redacted",
"password": "Redacted"
}
]
}
The JSON is valid according to JSON Lint
Node Version: v8.12.0
Did the Api change again I saw some other issues with the same problem no remedy so far...
I'm new to homebridge, but discovered this when I wanted to control my MyQ Garage Door with Siri and HomeKit. I have a Mac Mini at home that is always on. I installed homebridge and the "homebridge-liftmaster2" plugin on that computer without any issues. I then set up my "config.json" per the following:
{
"bridge": {
"name": "leblanc-homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},
"platforms": [{
"platform": "LiftMaster2",
"username": "XXXXX",
"password": "XXXXX"
}]
}
After setting everything up, I went to Terminal and typed in "homebridge". Everything appeared to work without issue. If I then quit Terminal (and therefore homebridge) and start homebridge again, I get the following error:
Homebridge is running on port 51826.
[1/5/2017, 4:05:12 PM] Logged in with MyQ user ID 0
[1/5/2017, 4:05:13 PM] Error 'Error: Cannot add a bridged Accessory with the same UUID as another bridged Accessory: b965638d-72fb-4744-b92d-80ce22e732dc'
[1/5/2017, 4:05:13 PM] undefined is removed from HomeBridge.
If I then go into my "~/.homebridge" folder and delete the "persist" folder and files in the "accessories" folder, and run homebridge again, it works without the above error. However, every time after the initial first start it gives me that error. Any ideas on why I am getting this error?
As a second issue, I have 2 garage doors hooked up through MyQ account. When homebridge logs into my account via Terminal, it never warns me that I have two garage doors and gives me each garage doors name and ID. I see with the "Liftmaster" plugin version 1, that it is supposed to do that. Any ideas on how to set up each garage door?
Also, I tried to view a homebridge log file to see if that tells me anything, but I couldn't find one that is supposedly located in my "/var/log/" folder. How do I see the log file for the errors?
Thanks in advance.
Hello ive recently setup home bridge with myq chamberlain garage door using the Liftmaster2 plugin.
Everything worked until I restarted my computer. After few hours of fiddling around, I was able to diagnose the problem. Thinking Im an expert now, Ive tried to add the Wemo plugin as I have 5 Wemo switches. That's when I thought, I should of just left it were it was. Long story short , I've removed the Wemo plugin but now the Liftmaster2 plugin would just stuck in utilizing platform accessory....... it only load the 1 platforms but no accessories....
here's my Config.jon :
{
"bridge": {
"name": "Homebridge",
"username": "xxxx",
"port": xxxxx,
"pin": "xxxx"
},
"description": "This is an example configuration file with one fake accessory and one fake platform. You can use this as a template for creating your own configuration file containing devices you actually own.",
"accessories": [],
"platforms": [{
"platform": "LiftMaster2",
"username": "xxxxxxl.com",
"password": "xxxxxx"
}
]
}
Any information would be greatly appreciated .. sorry again im new to this thank you for your patients.
Thank you @luisiam for getting the plugin working with your latest update. Much appreciated.
I am having one problem with the new update. I am having two accessories show up ("Garage Door" and "Garage Door Opener") in homekit when I only have one Garage Door MYQ device.
The "Garage Door Opener" appears to work just fine. The "Garage Door" does not work and just gives me the error below:
Error setting Garage Door state: {"ReturnCode":"312","ErrorMessage":"This garage door is only set up to have its status monitored. (312)","CorrelationId":"425f3d39-1791-47f0-ba2b-34a9c24a3869"}
I have tried clearing my cachedaccessories and completely removing homebridge-liftmaster2 and installing again. I am using the MYQ with the garage door sensor.
Any help would be great! Thank you in advance.
Would it be possible to add a release to GitHub with every version?
Seems like it's on 0.3.0 now, but because of the way NPM works a release is needed to bump the version from 0.1.0 on downstream systems.
If not, I am happy using the full GitHub URL to install.. just thought it might simplify things.
Thanks for putting this together.
CJ
I am going to apologize in advance, I am new to this. I am running home bridge on a raspberry pi and have been able to get Nest and WeMo working but I can't seem to get this installed.
Does this work on a raspberry pi? If so, why do I keep getting permission errors when installing?
Thanks in advance for anyone that helps!
"Open the garage door", "Open the garage", and "Open the garage door opener", all work well.
However, Siri will intercept anything short of "Close the garage door opener", and show me nearby bars with "garage" in their name. "Close the garage door opener" doesn't sound very natural.
Any suggestions? Also, is there an overview of available commands?
I am currently having an issue with the garage not closing on the first attempt. Siri would indicate that the action was completed but nothing happens. A second request to have Siri close the garage door seems to always solve the issue. Further, if I'm executing the command manually through the homekit app, the button just hangs on closing status with the door never actually closing. A quick tap to override with the open command followed by another tap to close the garage also solves the issue. I am currently using the default advanced configuration, with polling, listed on the readme. Thanks.
I am attempting to install the latest version of the homebridge-liftmaster2 plugin and I keep getting stuck at the same point. Has anyone else experinced something simliar?
pi@homebridge:~ $ sudo npm install -g --unsafe-perm git+https://github.com/luisiam/homebridge-liftmaster2.git
npm ERR! code 128
npm ERR! Command failed: /usr/bin/git submodule update -q --init --recursive
npm ERR! fatal: Could not change back to '/root/.npm/_cacache/tmp/git-clone-87127408': Permission denied
npm ERR!
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-07-17T17_04_07_039Z-debug.log
I'm having an issue with iOS 10 home app status.
I correctly get open and closed status that matches the actual garage door status.
However when the garage door is closed and I initiate opening it, the status in the home app shows "closing". When I initiate a close action the status shows "opening". In both cases the status will correctly show the final closed or open state.
Example: Garage door is closed. I then hit button in home app to open it. It shows "closing" status while it's actually opening. When done after a little while it shows correct status of "open". Any idea how to fix?
Thanks!
This error started recently...
undefined:1
<title>Request Rejected</title>Your request has been denied.SyntaxError: Unexpected token <
at Object.parse (native)
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:186:22)
at emitTwo (events.js:87:13)
at Request.emit (events.js:172:7)
at Request. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1081:10)
at emitOne (events.js:77:13)
at Request.emit (events.js:169:7)
at IncomingMessage. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1001:12)
at IncomingMessage.g (events.js:260:16)
When the door is opening it says closing and when closing says opening. Any idea on how to fix/is anyone else experiencing this?
Hi
I´ve added the Homebridge-liftmaster plugin and everything works perfectly until I restart homebridge. Then I get this error mesage and homebridge stops working.
(node:12490) UnhandledPromiseRejectionWarning: Error: Cannot add a bridged Accessory with the same UUID as another bridged Accessory: 68f738ff-6257-4cd3-9937-bca0aefb4e01
If I delete the contents of accesories folder (CachedAccessories) and restarts homebridge everything is up and running until next restart.
I verified .json and it should be fine. But for some reason restarting homebridge creates duplicate UUID´s Removing liftmaster plugin resolves the issue, so it has to be related.
"platforms": [
{
"platform": "FibaroHC2",
"name": "FibaroHC2",
"host": "******",
"username": "******",
"password": "******",
"pollerperiod": "2",
"securitysystem": "enabled",
"switchglobalvariables": "",
"thermostattimeout": "7200",
"enablecoolingstatemanagemnt": "off",
"doorlocktimeout": "0",
"IFTTTmakerkey": "",
"enableIFTTTnotification": "none"
},
{
"platform" : "verisure",
"name" : "Verisure",
"email": "******",
"password": "******",
"alarmCode": "******",
"doorCode": "******",
"pollInterval": "180"
},
{
"platform": "LiftMaster2",
"username": "******",
"password": "******",
"openDuration": 17,
"closeDuration": 25,
"polling": true,
"longPoll": 300,
"shortPoll": 25,
"shortPollDuration": 120,
"gateways": *****
}
]
Please assist
Robert
I have a Chamberlain garage door opener + MyQ WiFi bridge and one of the two devices (it's not clear which is which) is consistently showing a low battery warning in HomeKit, even though everything is plugged into the wall.
Hello, I have been using this plugin for almost half a year now, and I get this issue when running Homebridge:
pi@raspberrypi:~/.homebridge $ homebridge
[2018-10-6 19:48:04] Loaded config.json with 1 accessories and 1 platforms.
[2018-10-6 19:48:04] ---
[2018-10-6 19:48:04] Loaded plugin: homebridge-dummy
[2018-10-6 19:48:04] Registering accessory 'homebridge-dummy.DummySwitch'
[2018-10-6 19:48:04] ---
[2018-10-6 19:48:05] Loaded plugin: homebridge-liftmaster
[2018-10-6 19:48:05] Registering accessory 'homebridge-liftmaster.LiftMaster'
[2018-10-6 19:48:05] ---
[2018-10-6 19:48:05] Loaded plugin: homebridge-liftmaster2
[2018-10-6 19:48:05] Registering platform 'homebridge-liftmaster2.LiftMaster2'
[2018-10-6 19:48:05] ---
[2018-10-6 19:48:05] Loading 1 platforms...
[2018-10-6 19:48:05] [LiftMaster2] Initializing LiftMaster2 platform...
[2018-10-6 19:48:05] Loading 1 accessories...
[2018-10-6 19:48:05] [Lights] Initializing DummySwitch accessory...
[2018-10-6 19:48:05] [Lights] Setting switch to false
Setup Payload:
X-HM://0023ISYWY048N
Scan this code with your HomeKit app on your iOS device to pair with Homebridge:
Or enter this code with your HomeKit app on your iOS device to pair with Homebridge:
┌────────────┐
│ 031-45-154 │
└────────────┘
[2018-10-6 19:48:05] Homebridge is running on port 51826.
undefined:1
SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse ()
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:185:22)
at emitTwo (events.js:125:13)
at Request.emit (events.js:213:7)
at Request. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1161:10)
at emitOne (events.js:115:13)
at Request.emit (events.js:210:7)
at IncomingMessage. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1083:12)
at Object.onceWrapper (events.js:314:30)
My config is:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},
"description": "Homebridge",
"accessories": [{
"accessory": "DummySwitch",
"name": "Lights",
"stateful": true
}],
"platforms": [{
"platform": "LiftMaster2",
"username": "[email protected]",
"password": "password"
}]
}
(Removed Credentials)
I tried to remove and reinstall this plugin multiple times and tried to use LiftMaster(1) the original plugin .
I saw #15 and #18 which didn't help now.... I opened #38 a while ago and got this Raspberry Pi (3b) to fix it, and it did. I just rebooted the Pi to try and fix this to no avail. Any help is appreciated.
I'm trying to troubleshoot this error that I've gotten for a few weeks. Prior to this error, it worked fine for like a year. I can log in successfully with the same credentials from the webapp from the same IP, so it's I'm not 'blacklisted' entirely, possibly just for the API.
The error originally occurred while using the original homebridge-liftmaster plugin, so I upgraded to this one. I deleted my myQ account and recreated a new one, and I stil get this error. I tried renaming my "Garage Door Opener" to "Garage Door" inside the app, as recommended by some long obsolete advice on the net, to no avail.
Because the "Request Rejected" HTML is returned when JSON is expected, the parser chokes. Because this isn't trapped or caught, it puts homebridge in a crash-restart loop. Also, because it's processed in a callback, it's not immediately obvious to me which URL is failing, but I presume its the initial login.
Any idea what triggers a request to be denied? Power went out to my garage one day. Maybe homebride misbehaved and attempted repeated logins past some threshold? I guess I'll try to force my cable company to assign a new IP to my modem.
UPDATE: I managed to get my IP to change, and I'm still getting rejected, so it doesn't appear to be that.
[2/23/2017, 12:22:22 AM] Registering platform 'homebridge-liftmaster2.LiftMaster2'
[2/23/2017, 12:22:22 AM] ---
[2/23/2017, 12:22:22 AM] Loaded config.json with 12 accessories and 1 platforms.
[2/23/2017, 12:22:22 AM] ---
[2/23/2017, 12:22:22 AM] Loading 1 platforms...
[2/23/2017, 12:22:22 AM] Initializing LiftMaster2 platform...
[2/23/2017, 12:22:22 AM] Loading 12 accessories...
...
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
┌────────────┐
│XXX-XX-XXX │
└────────────┘
[2/23/2017, 12:22:23 AM] Homebridge is running on port 51826.
undefined:1
<html><head><title>Request Rejected</title></head><body>Your request has been denied.<br><br>[XXXX59538945582XXXX]</body></html>
^
SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse (<anonymous>)
at Request._callback (/opt/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/opt/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:186:22)
at emitTwo (events.js:106:13)
at Request.emit (events.js:191:7)
at Request.<anonymous> (/opt/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1081:10)
at emitOne (events.js:96:13)
at Request.emit (events.js:188:7)
at IncomingMessage.<anonymous> (/opt/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1001:12)
at IncomingMessage.g (events.js:291:16)
sejmann@mbp15-wired:~$```
I get the following error
[2/11/2017, 10:19:40 AM] Logged in with MyQ user ID 0
[2/11/2017, 10:19:41 AM] Error 'Error: EACCES: permission denied, open '/Users/server/.homebridge/accessories/cachedAccessories''
[2/11/2017, 10:19:41 AM] Error: Couldn't find a MyQ door device.
Any idea what the issue could be please?
The error is:
errorhub { Error: connect ECONNREFUSED 10.0.1.8:5222
at Object.exports._errnoException (util.js:1022:11)
at exports._exceptionWithHostPort (util.js:1045:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1087:14)
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
address: '10.0.1.8',
port: 5222 }
It's working great! Thanks. Is it possible to set it up as a security device which requires confirmation before using? Seems easy to accidentally tap the wrong icon and open the garage, especially when you're not home.
Thanks!
Typed in following command in terminal:
iMac-2017:~ xxxxxxxx$ npm install -g git+https://github.com/luisiam/homebridge-liftmaster2.git
RESPONSE:
pm ERR! git clone --template=/Users/xxxxxxxx/.npm/_git-remotes/_templates --mirror https://github.com/luisiam/homebridge-liftmaster2.git /Users/xxxxxxxxx/.npm/_git-remotes/git-https-github-com-luisiam-homebridge-liftmaster2-git-354ff2dc: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
npm ERR! Darwin 17.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g" "git+https://github.com/luisiam/homebridge-liftmaster2.git"
npm ERR! node v6.11.4
npm ERR! npm v3.10.10
npm ERR! code 1
Command failed: git clone --template=/Users/xxxxxxxxxx/.npm/_git-remotes/_templates --mirror https://github.com/luisiam/homebridge-liftmaster2.git /Users/xxxxxxx/.npm/_git-remotes/git-https-github-com-luisiam-homebridge-liftmaster2-git-354ff2dc
npm ERR! xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
npm ERR!
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! https://github.com/npm/npm/issues
npm ERR! Please include the following file with any support request:
npm ERR! /Users/xxxxxxxxxx/npm-debug.log
TAKEN OUT MY USER NAME(xxxxxxx) FOR PRIVACY
Currently running homebridge-chamberlain as accessory with config.json listed below:
OPENS AND CLOSES MYQ GARAGE HUB CONNECTED GARAGE BUT KEEPS SAYING:
"OPENING" allllll the time!!
CLICK IN HOME KIT AND IT CLOSES AND CLOSED STATE IS FINE...BUT OPENING OPENING OPEING even tho its done opening a long time ago!
{
"accessory": "Chamberlain",
"name": "Garage Door",
"username": "[email protected]",
"password": "xxxxxxxxxxx"
}
]
}
CANT INSTALL? WHY??
Running macOS High Sierra version 10.13 on an iMac (Retina 5K, 27-inch, 2017)
I have multiple garage doors in multiple homes. A way to specify which ones I actually want to show up would be very helpful.
This was working perfect for me until today.... Anyone else seeing this issue? Is the myq server down?
(node:78542) UnhandledPromiseRejectionWarning: FetchError: invalid json response body at https://myqexternal.myqdevice.com/api/v4/User/Validate reason: Unexpected token < in JSON at position 0
at /usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/node-fetch/lib/body.js:48:31
at process.internalTickCallback (internal/process/next_tick.js:77:7)
(node:78542) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:78542) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Grateful for any directions / instructions on how to use liftmaster2 platform to control more than one device. I installed one device, which works fine via homebridge and continues to do so after I added a second device (first was a garage door; second is a driveway gate). both garage door and driveway gate work reliably through myq liftmaster app. but homebridge does not recognize the second device - the gate. do i need to use deviceIDs in the config.json file or something? how would i find my deviceIDs?
Here's the pertinent part of my config file. Thanks in advance.
{ "platform": "LiftMaster2",
"username": "[email protected]",
"password": "xxxxxxxx"
}
Terminal states: "... [MyQ] Logged in with MyQ user ID 0"
Aug 18 08:10:51 raspberrypi homebridge[15911]: (node:15911) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): FetchError: invalid json response body at https://myqexternal.myqdevice.com/api/v4/UserDeviceDetails/Get reason: Unexpected token < in JSON at position 0
I keep getting an error when using this plugin:
undefined:1
<title>Request Rejected</title>Your request has been denied.
[4251746500036932579]
SyntaxError: Unexpected token <
at Object.parse (native)
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:188:22)
at emitTwo (events.js:87:13)
at Request.emit (events.js:172:7)
at Request. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1171:10)
at emitOne (events.js:77:13)
at Request.emit (events.js:169:7)
at IncomingMessage. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1091:12)
at IncomingMessage.g (events.js:260:16)
Hello,
I don't know if the Api supports this, but what if you could control the lights of the Garage. I doubt the api has the feature, but worth a shot!
Hello,
I have a very odd situation and I'm hoping you can help. My garage door is a swing-open, carriage-style garage door. It uses an extender arm connected to a lift master garage door opener.
The garage door opener itself works great and has been working well for a long time now. However, because of how the garage door opener is configured, when my garage door says its open, its actually closed and vice versa.
When I login into myQ to check whether the garage door is open or not, I have to mentally flip the status.
I think you may know where I'm going with this...
Could you provide me a modified code so that in the home app, the state and commands would go as reversed?
E.g: When myQ states garage is open, Home app shows the garage as closed. When I ask home app or Siri to open the garage, it sends the command to myQ to close the garage.
I tried to modify index.js file and make it so and was partially successful. I got the state to show as reversed by modifying section starting at line 311. But, I had issues giving commands.
I'm not good with js and I figured its easier to ask if you could modify other sections as necessary.
Thanks in advance!
Change to show I fixed this issue for anyone that may have it.
Man, I'm pulling my hair out. Trying to install the Liftmaster2 plugin on my Pi. Ive got the Pi running Docker with no other plugins installed. I've tried installing the plugin using this command:
npm install -save git+https://github.com/luisiam/homebridge-liftmaster2.git
And while installing it gives me this message, which isn't clear to me that it's even installed:
(node:16879) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead.
[email protected] node_modules/homebridge-liftmaster2
└── [email protected] ([email protected], [email protected])
I've also used the homebridge-config-ui-x plugin to access Homekit with the browser GUI. When I install the Liftmaster2 plugin there, I get this looping startup error:
Error: The requested platform 'LiftMaster2' was not registered by any plugin.
at API.platform (/usr/local/lib/node_modules/homebridge/lib/api.js:122:13)
at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:316:45)
at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:86:36)
at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:45:10)
at Object. (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (module.js:653:30)
at Object.Module._extensions..js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
I have modified my JSON Config file to accommodate the plugin and it looks like this:
{
"bridge": {
"name": "Homebridge",
"username": "CC:22:3D:E3:CE:30",
"port": 51826,
"pin": "031-45-154"
},
"description": "This is an example configuration file. You can use this as a template for creating your own configuration file containing devices you actually own.",
"accessories": [],
"platforms": [
{
"platform": "LiftMaster2",
"username": "redacted",
"password": "redacted"
}
]
}
As soon as I edit my JSON file to the above, the Homebridge Service ceases to run. But if I don't edit the JSON file then the service does run (albeit with no active plugin, so it does nothing).
I should also add, if it's not already completely apparent, that I'm a noob and am trying to troubleshoot this with limited knowledge.
Anyone see anything that I should be doing differently?
About once a day my homebridge server is crashing with the following in the error log:
undefined:1
undefined
^SyntaxError: Unexpected token u
at Object.parse (native)
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:237:21)
at self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:186:22)
at emitOne (events.js:82:20)
at Request.emit (events.js:169:7)
at Request.onRequestError (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:845:8)
at emitOne (events.js:77:13)
at ClientRequest.emit (events.js:169:7)
at TLSSocket.socketErrorListener (_http_client.js:259:9)
at emitOne (events.js:77:13)
at TLSSocket.emit (events.js:169:7)
at emitErrorNT (net.js:1250:8)
at doNTCallback2 (node.js:429:9)
at process._tickCallback (node.js:343:17)
Below is the configuration I have for homebridge-liftmaster2:
"platform": "LiftMaster2", "name": "Garage Door", "username": "*********", "password": "*******", "openDuration": 13, "closeDuration": 13, "polling": true, "longPoll": 30, "shortPoll": 5, "shortPollDuration": 120
Any help would be much appreciated. Thank you in advance. I am happy to try anything that would help resolve this.
liftmaster2 version 0.4.3 works great on MacBook running home bridge... but when I try to run it on raspberry pi zero W, I get the error below... removed it from Pi and reinstalled it and get same error... removed it from Mac and reinstalled it on pi same error... reinstalled it on Mac runs perfectly.... I'm missing something... any suggestions?? would love to get the last item working to utilize the pi as my low power bridge and free up my Mac... there is a closed thread regarding this however nothing suggested there has helped me.... also i should mention after the plugin is installed it shows @0.1.0
it doesnt show 4.3
this is what I get on my Pi zero running node 8.x.x#
<title>Request Rejected</title>Your request has been denied.[4251746506392562070] ^
SyntaxError: Unexpected token < in JSON at position 0
at JSON.parse ()
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:186:22)
at emitTwo (events.js:125:13)
at Request.emit (events.js:213:7)
at Request. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1163:10)
at emitOne (events.js:115:13)
at Request.emit (events.js:210:7)
at IncomingMessage. (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1085:12)
at Object.onceWrapper (events.js:314:30)
Running npm i homebridge-liftmaster2
installs the very old 0.1.0 version of this package that is no longer working. Could you publish the latest version of this package to npm for easier installation? Thank you in advance.
I was wondering if there can be support added for the Chamberlain flavored version of this plugin. Both versions seem to be identical except for some branding on the package.
I'm sure there's a lot of information missing here, but I don't really know where to go with this.
I have a liftmaster garage door and just installed the Chamberlain MyQ Smart Garage device a couple days ago. I've tried different homebridge plugins, and this one seemed to be the most recommended, so I've stuck with it, but the issue I'm talking about has been the same with all of them.
Hi there,
I recently pulled oznu's latest homebridge image for raspberry pi, but for some reason, it dumped all of my plugins. I re-installed the liftmaster2 plugin, and now my homebridge server seems to be stuck in a boot loop. Here's what my log file shows when I restart my homebridge server:
homebridge_1 | *** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
homebridge_1 | *** WARNING *** Please fix your application to use the native API of Avahi!
homebridge_1 | *** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node
homebridge_1 | *** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
homebridge_1 | *** WARNING *** Please fix your application to use the native API of Avahi!
homebridge_1 | *** WARNING *** For more information see http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister
homebridge_1 | [2018-1-29 17:03:13] Loaded plugin: homebridge-dummy
homebridge_1 | [2018-1-29 17:03:13] Registering accessory 'homebridge-dummy.DummySwitch'
homebridge_1 | [2018-1-29 17:03:13] ---
homebridge_1 | [2018-1-29 17:03:15] Loaded plugin: homebridge-liftmaster2
homebridge_1 | [2018-1-29 17:03:15] Registering platform 'homebridge-liftmaster2.LiftMaster2'
homebridge_1 | [2018-1-29 17:03:15] ---
homebridge_1 | [2018-1-29 17:03:16] Loaded plugin: homebridge-nest
homebridge_1 | [2018-1-29 17:03:16] Registering platform 'homebridge-nest.Nest'
homebridge_1 | [2018-1-29 17:03:16] ---
homebridge_1 | [2018-1-29 17:03:17] Loaded plugin: homebridge-platform-wemo
homebridge_1 | [2018-1-29 17:03:17] Registering platform 'homebridge-platform-wemo.BelkinWeMo'
homebridge_1 | [2018-1-29 17:03:17] ---
homebridge_1 | [2018-1-29 17:03:18] Loaded plugin: homebridge-config-ui-x
homebridge_1 | [2018-1-29 17:03:18] Registering platform 'homebridge-config-ui-x.config'
homebridge_1 | [2018-1-29 17:03:18] ---
homebridge_1 | [2018-1-29 17:03:18] Loaded config.json with 0 accessories and 3 platforms.
homebridge_1 | [2018-1-29 17:03:18] ---
homebridge_1 | [2018-1-29 17:03:19] Loading 3 platforms...
homebridge_1 | [2018-1-29 17:03:19] [WeMo Platform] Initializing BelkinWeMo platform...
homebridge_1 | [2018-1-29 17:03:19] [MyQ] Initializing LiftMaster2 platform...
homebridge_1 | [2018-1-29 17:03:19] [Nest] Initializing Nest platform...
homebridge_1 | [2018-1-29 17:03:19] [Nest] Fetching Nest devices.
homebridge_1 | [2018-1-29 17:03:19] Loading 0 accessories...
homebridge_1 | [2018-1-29 17:03:19] [WeMo Platform] Online: Living Room Lights [6038E0496D48]
homebridge_1 | [2018-1-29 17:03:19] [WeMo Platform] Online: Kitchen Lights [6038E04B2A04]
homebridge_1 | [2018-1-29 17:03:19] [WeMo Platform] Online: Kitchen Table Lights [149182D8C390]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Upstairs Christmas Lights [58EF68D9EE70]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Dining Room Lights [149182D865E4]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Front Room Lights [149182CCA07C]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Davids Lamp [6038E05BA710]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Front Room Christmas Lights [58EF68D9FCC8]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Playroom Lamp [6038E05BB254]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Front Porch and Garage Lights [149182505F6C]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Online: Main Floor Bathroom Lights [149182D88550]
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Living Room Lights - Get state: On
homebridge_1 | [2018-1-29 17:03:20] [WeMo Platform] Davids Lamp - Get state: On
homebridge_1 |
homebridge_1 | /homebridge/node_modules/homebridge-liftmaster2/index.js:249
homebridge_1 | var json = JSON.parse(body);
homebridge_1 | ^
homebridge_1 | SyntaxError: Unexpected token < in JSON at position 0
homebridge_1 | at JSON.parse ()
homebridge_1 | at Request._callback (/homebridge/node_modules/homebridge-liftmaster2/index.js:249:23)
homebridge_1 | at Request.self.callback (/homebridge/node_modules/request/request.js:186:22)
homebridge_1 | at emitTwo (events.js:126:13)
homebridge_1 | at Request.emit (events.js:214:7)
homebridge_1 | at Request. (/homebridge/node_modules/request/request.js:1163:10)
homebridge_1 | at emitOne (events.js:116:13)
homebridge_1 | at Request.emit (events.js:211:7)
homebridge_1 | at IncomingMessage. (/homebridge/node_modules/request/request.js:1085:12)
homebridge_1 | at Object.onceWrapper (events.js:313:30)
homebridge_1 | at emitNone (events.js:111:20)
homebridge_1 | at IncomingMessage.emit (events.js:208:7)
homebridge_1 | at endReadableNT (_stream_readable.js:1055:12)
homebridge_1 | at _combinedTickCallback (internal/process/next_tick.js:138:11)
homebridge_1 | at process._tickCallback (internal/process/next_tick.js:180:9)
Can somebody please help me fix this?
I'm getting the following error that crashes homebridge.
undefined:1
SyntaxError: Unexpected token < in JSON at position 0
at Object.parse (native)
at Request._callback (/home/pi/.nvm/versions/node/v6.9.1/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/home/pi/.nvm/versions/node/v6.9.1/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:186:22)
at emitTwo (events.js:106:13)
at Request.emit (events.js:191:7)
at Request. (/home/pi/.nvm/versions/node/v6.9.1/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1081:10)
at emitOne (events.js:96:13)
at Request.emit (events.js:188:7)
at IncomingMessage. (/home/pi/.nvm/versions/node/v6.9.1/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1001:12)
at IncomingMessage.g (events.js:291:16)
at emitNone (events.js:91:20)
at IncomingMessage.emit (events.js:185:7)
at endReadableNT (_stream_readable.js:974:12)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickCallback (internal/process/next_tick.js:98:9)
Started happening today. Is chamberlain now rejecting API access?
If i remove this plugin homebridge loads up fine.
I've been successfully running Homebridge on Raspberry Pi 3 using the Liftmaster2 npm. However, this past week, I have encountered an issue where Homebridge get stuck after loading the platform and can't get past the Initializing (see where Homebridge hangs below)
[LiftMaster2] Initializing platform accessory 'xxx Garage Door Opener (ID: xxxxxx)'...
I was wondering if anyone else has seen this issue and has a solution for it?
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.
get this error.. what can i do?
pi@raspberrypi:~ $ sudo npm install -g git+https://github.com/luisiam/homebridge-liftmaster2.git
npm ERR! code 128
npm ERR! Command failed: /usr/bin/git clone --depth=1 -q -b master https://github.com/luisiam/homebridge-liftmaster2.git /root/.npm/_cacache/tmp/git-clone-46588516
npm ERR! fatal: Konnte f�hrende Verzeichnisse von '/root/.npm/_cacache/tmp/git-clone-46588516' nicht erstellen.: Keine Berechtigung
npm ERR!
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2017-08-20T09_45_02_925Z-debug.log
pi@raspberrypi:~ $
The following happens when starting homebridge. Did a fresh sudo npm remove -g homebridge-liftmaster2 and homebridge, then reinstalled.
config.json follows the stdout section.
Looks like something changed on the MyQ side of things.
stdout:
[4/4/2017, 11:33:22 AM] Loaded plugin: homebridge-liftmaster2
[4/4/2017, 11:33:22 AM] Registering platform 'homebridge-liftmaster2.LiftMaster2'
[4/4/2017, 11:33:22 AM] ---
[4/4/2017, 11:33:22 AM] Loaded config.json with 0 accessories and 1 platforms.
[4/4/2017, 11:33:22 AM] ---
[4/4/2017, 11:33:22 AM] Loading 1 platforms...
[4/4/2017, 11:33:22 AM] Initializing LiftMaster2 platform...
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
┌────────────┐
│ REDACTED │
└────────────┘
[4/4/2017, 11:33:22 AM] Homebridge is running on port 51826.
undefined:1
<html><head><title>Request Rejected</title></head><body>Your request has been denied.<br><br>[5442595390864034645]</body></html>
^
SyntaxError: Unexpected token <
at Object.parse (native)
at Request._callback (/usr/local/lib/node_modules/homebridge-liftmaster2/index.js:249:23)
at Request.self.callback (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:188:22)
at emitTwo (events.js:87:13)
at Request.emit (events.js:172:7)
at Request.<anonymous> (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1171:10)
at emitOne (events.js:77:13)
at Request.emit (events.js:169:7)
at IncomingMessage.<anonymous> (/usr/local/lib/node_modules/homebridge-liftmaster2/node_modules/request/request.js:1091:12)
at IncomingMessage.g (events.js:260:16)
$ cat .homebridge/config.json
{
"bridge": {
"name": "Homebridge",
"username": "REDACTED",
"port": 51826,
"pin": "REDACTED"
},
"description": "Config file for Homebridge",
"platforms": [{
"platform": "LiftMaster2",
"username": "REDACTED",
"password": "REDACTED"
}]
}
Just setup LiftMaster2 via Homebridge. Open works successfully but when I try to close via Home app on iOS, it thinks it’s starting to close but the MyQ device just starts to beep repeatedly and flash the light.
I’ve got a Chamberlain B970
I had this working for several weeks and overnight I started getting the following error. Any idea what is causing it. I removed the liftmaster from the config.json file and homebridge with smartthings is working fine.
Loading 2 platforms...
[SmartThings] Initializing SmartThings platform...
[SmartThings] Fetching Smart Things devices.
Initializing LiftMaster2 platform...
undefined:1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.