I’m not sure how to do this. I found the docker image but no idea what to do with it. Could someone point me to instructions or a YouTube video how to set this up on a rapsberrypi4b?
The command line I posted above worked to get the server started, but the variable don’t seem to be persistent. Did I do something wrong?
The CLI just keeps telling me “No MyQ Bridge found in Network.”
I’m not sure on the variable persistence issue. I use docker-compose personally, which makes the setup a single line on the cli to get things up and running. As for the issues of no devices found, i’ll have to defer to @brbeaird on that one.
I guess I missed the docker-compose option. Care to share your command line on that? My google eyes are very tired. It’s been a long day of frustration.
How to install docker on pi:
Docker on Raspberry Pi - Installation Guide | phoenixNAP KB
After you install docker follow the steps here, look at this section - Running the bridge server with Docker (recommended):
GitHub - brbeaird/SmartThings-MyQ-Edge: SmartThings/MyQ Integration via Edge
Create a text file, say myq.txt - Add the 2 entries and save:
MYQ_EMAIL=xxxxx@xxx.com
MYQ_PASSWORD=xxxxxxxx
Then execute something like below:
docker run -d --name=‘smartthings-myq-edge’ --net=‘host’ --env-file myq.txt brbeaird/smartthings-myq-edge
Thanks. I didn’t actually want dockerhub to pull the github readme, but I’ll fix this and deal with that later.
Maybe try something like this: https://www.simplilearn.com/tu
This is what I run:
docker run -d --name='smartthings-myq-edge' --net='host' -e 'MYQ_EMAIL'='myemail' -e 'MYQ_PASSWORD'='myPassword' 'brbeaird/smartthings-myq-edge'
I’m still working on getting the executable compiled on my pi - it has turned out to be more tricky than I expected.
Also, I think I’m going to end up moving the username/password piece to something that is set within SmartThings via device setting (discovery will eventually just add a myQ control device that would let you set the credentials, which would then auto create the devices after).
I have the same issue, I see its listening to port 8125, discovered family garagedoor and gateway, but that’s about it.
@bthrock Try this version. The -d
might be the key to get things to work as it will cause the container to run in the background as opposed to the current process.
That worked!!!
After running with -d --name --net now i can see details on the browser and I was able to add device in the app.
Thank you so much for the handholding !!
@bthrock Were you successful? I am seeing the same, I see the garage door discovered in logs but cannot find the devices or see garage doors under “No room assigned”.
Same here. In my container console, I see “discovered device family garagedoor: Garage Door” and “discovered device family gateway: Garage Door [Chamberlain Smart Garage Hub]” (each with a serial number) so I think the bridge server is working; but nothing about status shows up (tried opening it, nothing in the logs) and Scan Nearby doesn’t display any new devices.
Update: someone commented earlier that changing the container to bridge mode made a difference. I tried that (FWIW, I’m using ContainerStation on a QNAP NAS) and the device showed up right away. Probably works but it’s late here and I don’t want announcements chiming all over the house while I play with this so I’ll confirm in the morning…
for those looking to run the bridge server on windows as a service, I found a way to do it using a tool called nssm. (I couldn’t make it work using just the standard windows sc.exe utility)
download nssm (https://nssm.cc/release/nssm-2.24.zip) to the same folder as the bridge, then run ‘nssm install’ - select the path to the bridge .exe file and give the service a name. Note that you can also configure a log file in the IO section so oyu can redirect all console output there. Then click to create the service and start it.
One other item for windows users, you may have to right-click the file, choose properties, then check the unblock option before defender will let you run it. Lastly, you may have to add it as an allowed application in Windows firewall if you have it enabled.
@brbeaird this solution is excellent as always. One feature request I’d love to see: add a date/time timestamp to the console output of the bridge.
Also, I notice this new version of the driver doesn’t appear to be able to sync into Alexa when you have them linked like the old smart app version.
Wow, finally, there’s the recipe to the secret sauce! I could’ve saved a heck of a lot of time yesterday if that had been posted somewhere sooner. (It’s fine; I learned a few things along the way). Thank you. I’ll stop banging my head against the wall now.
Now, two more questions from a Docker noob:
- What is the proper command line to restart the MyQ server after a reboot?
- What is the best way to ensure the server run automatically after a reboot, etc.?
I rarely, if ever, reboot my RPi, but occasionally the power company does it as a free service.
Yes, the command line Brian provided above worked for me.
You can add --restart always
to that same run command to force it to restart itself on failure or any issue. The container should also restart on reboot.
Edit: corrected snippet above.
When I run the original command with --restart=always, I get this message:
docker: invalid reference format.
See ‘docker run --help’
My ignorance of all things Docker knows no bounds.
My guess is it’s not finding the config file period.
I’ve tried moving the exec and config files outside of the Applications folder. Same issue. I’ve tried removing the config file altogether - same message.
Also tried on two different Macs.
Syntax error on my part. --restart always
No = sign.
Edit - documentation url - Start containers automatically | Docker Documentation
try this…
Thanks. Taking a look.