At My Wits End - SmartThings MQTT Bridge

So I need a little help here if anyone has some insight.

I’m trying to install docker so that I can install the mqtt bridge. After some trial and error I got docker installed:

pi@raspberrypi:/opt $ sudo docker info                                          
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 1.10.3
Storage Driver: overlay
 Backing Filesystem: extfs
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 4.4.13-v7+
Operating System: Raspbian GNU/Linux 8 (jessie)
OSType: linux
Architecture: armv7l
CPUs: 4
Total Memory: 862.1 MiB
Name: raspberrypi
ID: INS7:7XF7:52EJ:LXJ2:VALK:GMBW:GYLF:GESI:EU6X:NDBO:XO7W:QCEC
Debug mode (server): true
 File Descriptors: 11
 Goroutines: 20
 System Time: 2016-07-29T00:27:01.213193681-05:00
 EventsListeners: 0
 Init SHA1: 0db326fc09273474242804e87e11e1d9930fb95b
 Init Path: /usr/lib/docker/dockerinit
 Docker Root Dir: /var/lib/docker
WARNING: No swap limit support
WARNING: No cpu cfs quota support
WARNING: No cpu cfs period support
WARNING: No cpuset support

I tried installing the mqtt bridget but I get the following:

docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.

One thing led to another and I checked the status of mosquitto and got this:

pi@raspberrypi:/opt $ mosquitto -v
1469769780: mosquitto version 1.4.9 (build date 2016-07-28 07:26:16-0500) starting
1469769780: Using default config.
1469769780: Opening ipv4 listen socket on port 1883.
1469769780: Error: Address already in use

In my configuration.yaml file is this:

mqtt:
  broker: 127.0.0.1
  port: 1883
  client_id: home-assistant-1
  username: pi
  password: raspberry

I am not sure where to even start and know nothing about docker so I am just sitting here spinning my wheels and thought perhaps posting here would result in some info that would help out. I don’t understand why mosquitto is reporting the address already in use.

Oh, yeah, I realize that is the default login and password set up. I will get around to changing that once I have everything settled. It was just easier to use the default for now until I get all the set up and configurations done.

Home Assistant has its own MQTT broker which starts up if no external broker is specified in the config. If you add the relevant config for MQTT and restart HA and Mosquitto (in that order) it should bind properly as the port shouldn’t be in use.

With regards to the SmartThings-MQTT-Bridge, I’ve also tried adding it to docker running on an RPi2 and I got the same error. From what I’ve read it’s because it has been compiled for x86 and not ARM, so the binaries aren’t compatible.

I don’t know how to re-compile for RPi so I’ve resorted to using virtual switches in the SmartThings IDE and passing those through to Home Assistant via IFTTT.

Thank you @kbray. I’m beginning to think it might be better and easier to just by a ZWave and Zigbee USB stick and plug those in can work from there. This has been a bit more of a convoluted process than I would have liked. I love what HA has done and is doing, but it is a bit more involved than I had planned on.

Just curious; I see you’re running on a Pi - why would you use Docker instead of the all in one installer?

Well, in trying to follow the installation instructions for the SmartThings mqtt bridge, that is how it was recommended to set that up. Is that not the correct way in which to do so? I searched and could not find anything that led me to believe there was native bridging from HA to my SmartThings hub.

I don’t have any ZWave or Zigbee USB dongles as my home automation is currently all through SmartThings. Since I have both ZWave and Zigbee devices, it seemed that bridging between HA and SmartThings was the wise way to go. Is there something else I should be considering?

OK, thanks for clarifying. I was just reading this blog post - not sure if these were the instructions you were referring to:

But they only speak of running the bridge in Docker. It does look rather convoluted!

This thread may be of some help, though it looks like there are some timing issues with starting this on boot if the network isn’t fully initialized before it launches.