diff --git a/homeassistant/components/binary_sensor/deconz.py b/homeassistant/components/binary_sensor/deconz.py
index d2ca9e7c5e8..b0728ad167c 100644
--- a/homeassistant/components/binary_sensor/deconz.py
+++ b/homeassistant/components/binary_sensor/deconz.py
@@ -127,6 +127,7 @@ class DeconzBinarySensor(BinarySensorDevice):
                 self._sensor.uniqueid.count(':') != 7):
             return None
         serial = self._sensor.uniqueid.split('-', 1)[0]
+        bridgeid = self.hass.data[DATA_DECONZ].config.bridgeid
         return {
             'connections': {(CONNECTION_ZIGBEE, serial)},
             'identifiers': {(DECONZ_DOMAIN, serial)},
@@ -134,4 +135,5 @@ class DeconzBinarySensor(BinarySensorDevice):
             'model': self._sensor.modelid,
             'name': self._sensor.name,
             'sw_version': self._sensor.swversion,
+            'via_hub': (DECONZ_DOMAIN, bridgeid),
         }
diff --git a/homeassistant/components/light/deconz.py b/homeassistant/components/light/deconz.py
index ff3fe609924..3fb6e1dff00 100644
--- a/homeassistant/components/light/deconz.py
+++ b/homeassistant/components/light/deconz.py
@@ -213,6 +213,7 @@ class DeconzLight(Light):
                 self._light.uniqueid.count(':') != 7):
             return None
         serial = self._light.uniqueid.split('-', 1)[0]
+        bridgeid = self.hass.data[DATA_DECONZ].config.bridgeid
         return {
             'connections': {(CONNECTION_ZIGBEE, serial)},
             'identifiers': {(DECONZ_DOMAIN, serial)},
@@ -220,4 +221,5 @@ class DeconzLight(Light):
             'model': self._light.modelid,
             'name': self._light.name,
             'sw_version': self._light.swversion,
+            'via_hub': (DECONZ_DOMAIN, bridgeid),
         }
diff --git a/homeassistant/components/sensor/deconz.py b/homeassistant/components/sensor/deconz.py
index 37fab727299..c66bda2bc1d 100644
--- a/homeassistant/components/sensor/deconz.py
+++ b/homeassistant/components/sensor/deconz.py
@@ -147,6 +147,7 @@ class DeconzSensor(Entity):
                 self._sensor.uniqueid.count(':') != 7):
             return None
         serial = self._sensor.uniqueid.split('-', 1)[0]
+        bridgeid = self.hass.data[DATA_DECONZ].config.bridgeid
         return {
             'connections': {(CONNECTION_ZIGBEE, serial)},
             'identifiers': {(DECONZ_DOMAIN, serial)},
@@ -154,6 +155,7 @@ class DeconzSensor(Entity):
             'model': self._sensor.modelid,
             'name': self._sensor.name,
             'sw_version': self._sensor.swversion,
+            'via_hub': (DECONZ_DOMAIN, bridgeid),
         }
 
 
@@ -227,6 +229,7 @@ class DeconzBattery(Entity):
                 self._sensor.uniqueid.count(':') != 7):
             return None
         serial = self._sensor.uniqueid.split('-', 1)[0]
+        bridgeid = self.hass.data[DATA_DECONZ].config.bridgeid
         return {
             'connections': {(CONNECTION_ZIGBEE, serial)},
             'identifiers': {(DECONZ_DOMAIN, serial)},
@@ -234,4 +237,5 @@ class DeconzBattery(Entity):
             'model': self._sensor.modelid,
             'name': self._sensor.name,
             'sw_version': self._sensor.swversion,
+            'via_hub': (DECONZ_DOMAIN, bridgeid),
         }
diff --git a/homeassistant/components/switch/deconz.py b/homeassistant/components/switch/deconz.py
index bd8167d89a0..f8911d65d98 100644
--- a/homeassistant/components/switch/deconz.py
+++ b/homeassistant/components/switch/deconz.py
@@ -92,6 +92,7 @@ class DeconzSwitch(SwitchDevice):
                 self._switch.uniqueid.count(':') != 7):
             return None
         serial = self._switch.uniqueid.split('-', 1)[0]
+        bridgeid = self.hass.data[DATA_DECONZ].config.bridgeid
         return {
             'connections': {(CONNECTION_ZIGBEE, serial)},
             'identifiers': {(DECONZ_DOMAIN, serial)},
@@ -99,6 +100,7 @@ class DeconzSwitch(SwitchDevice):
             'model': self._switch.modelid,
             'name': self._switch.name,
             'sw_version': self._switch.swversion,
+            'via_hub': (DECONZ_DOMAIN, bridgeid),
         }
 
 
diff --git a/tests/components/binary_sensor/test_deconz.py b/tests/components/binary_sensor/test_deconz.py
index c2d20bd47c8..5fd6e132e03 100644
--- a/tests/components/binary_sensor/test_deconz.py
+++ b/tests/components/binary_sensor/test_deconz.py
@@ -34,6 +34,7 @@ async def setup_bridge(hass, data, allow_clip_sensor=True):
     entry = Mock()
     entry.data = {'host': '1.2.3.4', 'port': 80, 'api_key': '1234567890ABCDEF'}
     bridge = DeconzSession(loop, session, **entry.data)
+    bridge.config = Mock()
     with patch('pydeconz.DeconzSession.async_get_state',
                return_value=mock_coro(data)):
         await bridge.async_load_parameters()
diff --git a/tests/components/light/test_deconz.py b/tests/components/light/test_deconz.py
index f52219beaa8..96f180505b8 100644
--- a/tests/components/light/test_deconz.py
+++ b/tests/components/light/test_deconz.py
@@ -55,6 +55,7 @@ async def setup_bridge(hass, data, allow_deconz_groups=True):
     entry = Mock()
     entry.data = {'host': '1.2.3.4', 'port': 80, 'api_key': '1234567890ABCDEF'}
     bridge = DeconzSession(loop, session, **entry.data)
+    bridge.config = Mock()
     with patch('pydeconz.DeconzSession.async_get_state',
                return_value=mock_coro(data)):
         await bridge.async_load_parameters()
diff --git a/tests/components/sensor/test_deconz.py b/tests/components/sensor/test_deconz.py
index f40ba631d94..ae9e75d6a41 100644
--- a/tests/components/sensor/test_deconz.py
+++ b/tests/components/sensor/test_deconz.py
@@ -49,6 +49,7 @@ async def setup_bridge(hass, data, allow_clip_sensor=True):
     entry = Mock()
     entry.data = {'host': '1.2.3.4', 'port': 80, 'api_key': '1234567890ABCDEF'}
     bridge = DeconzSession(loop, session, **entry.data)
+    bridge.config = Mock()
     with patch('pydeconz.DeconzSession.async_get_state',
                return_value=mock_coro(data)):
         await bridge.async_load_parameters()
diff --git a/tests/components/switch/test_deconz.py b/tests/components/switch/test_deconz.py
index f4aac63166f..7d2bea7a9fa 100644
--- a/tests/components/switch/test_deconz.py
+++ b/tests/components/switch/test_deconz.py
@@ -47,6 +47,7 @@ async def setup_bridge(hass, data):
     entry = Mock()
     entry.data = {'host': '1.2.3.4', 'port': 80, 'api_key': '1234567890ABCDEF'}
     bridge = DeconzSession(loop, session, **entry.data)
+    bridge.config = Mock()
     with patch('pydeconz.DeconzSession.async_get_state',
                return_value=mock_coro(data)):
         await bridge.async_load_parameters()