diff --git a/homeassistant/components/frontend/__init__.py b/homeassistant/components/frontend/__init__.py
index b2f50148bd3f7ed8113df98bd1f23db0931badf8..1fbfe94bb0d2f066db9b5a70314e45d0dcf604ae 100644
--- a/homeassistant/components/frontend/__init__.py
+++ b/homeassistant/components/frontend/__init__.py
@@ -24,7 +24,7 @@ from homeassistant.core import callback
 from homeassistant.helpers.translation import async_get_translations
 from homeassistant.loader import bind_hass
 
-REQUIREMENTS = ['home-assistant-frontend==20180330.0']
+REQUIREMENTS = ['home-assistant-frontend==20180401.0']
 
 DOMAIN = 'frontend'
 DEPENDENCIES = ['api', 'websocket_api', 'http', 'system_log']
diff --git a/homeassistant/components/homekit/util.py b/homeassistant/components/homekit/util.py
index 2fa2ebd396ab3e655fa4d4beef08486da1949929..af2c74d9c3c665f075d4ba61e4f4f1c5b541e223 100644
--- a/homeassistant/components/homekit/util.py
+++ b/homeassistant/components/homekit/util.py
@@ -36,6 +36,7 @@ def validate_entity_config(values):
 def show_setup_message(bridge, hass):
     """Display persistent notification with setup information."""
     pin = bridge.pincode.decode()
+    _LOGGER.info('Pincode: %s', pin)
     message = 'To setup Home Assistant in the Home App, enter the ' \
               'following code:\n### {}'.format(pin)
     hass.components.persistent_notification.create(
diff --git a/homeassistant/components/light/mqtt_json.py b/homeassistant/components/light/mqtt_json.py
index 25212e45c601710ce88265322a6e66b66c1a37c3..20e49e40bae9a444add9f530e30503a4c9b5b0e5 100644
--- a/homeassistant/components/light/mqtt_json.py
+++ b/homeassistant/components/light/mqtt_json.py
@@ -129,6 +129,8 @@ class MqttJson(MqttAvailability, Light):
         self._retain = retain
         self._optimistic = optimistic or topic[CONF_STATE_TOPIC] is None
         self._state = False
+        self._rgb = rgb
+        self._xy = xy
         if brightness:
             self._brightness = 255
         else:
@@ -307,20 +309,22 @@ class MqttJson(MqttAvailability, Light):
 
         message = {'state': 'ON'}
 
-        if ATTR_HS_COLOR in kwargs:
+        if ATTR_HS_COLOR in kwargs and (self._rgb or self._xy):
             hs_color = kwargs[ATTR_HS_COLOR]
-            brightness = kwargs.get(
-                ATTR_BRIGHTNESS, self._brightness if self._brightness else 255)
-            rgb = color_util.color_hsv_to_RGB(
-                hs_color[0], hs_color[1], brightness / 255 * 100)
-            xy_color = color_util.color_hs_to_xy(*kwargs[ATTR_HS_COLOR])
-            message['color'] = {
-                'r': rgb[0],
-                'g': rgb[1],
-                'b': rgb[2],
-                'x': xy_color[0],
-                'y': xy_color[1],
-            }
+            message['color'] = {}
+            if self._rgb:
+                brightness = kwargs.get(
+                    ATTR_BRIGHTNESS,
+                    self._brightness if self._brightness else 255)
+                rgb = color_util.color_hsv_to_RGB(
+                    hs_color[0], hs_color[1], brightness / 255 * 100)
+                message['color']['r'] = rgb[0]
+                message['color']['g'] = rgb[1]
+                message['color']['b'] = rgb[2]
+            if self._xy:
+                xy_color = color_util.color_hs_to_xy(*kwargs[ATTR_HS_COLOR])
+                message['color']['x'] = xy_color[0]
+                message['color']['y'] = xy_color[1]
 
             if self._optimistic:
                 self._hs = kwargs[ATTR_HS_COLOR]
diff --git a/homeassistant/components/sensor/mysensors.py b/homeassistant/components/sensor/mysensors.py
index 3876b260dfcfeb6e1808e60ff118a0cc23453bae..66c36a8d9b1781739eb89860f7d642a4672171b3 100644
--- a/homeassistant/components/sensor/mysensors.py
+++ b/homeassistant/components/sensor/mysensors.py
@@ -81,5 +81,6 @@ class MySensorsSensor(mysensors.MySensorsEntity):
             TEMP_CELSIUS if self.gateway.metric else TEMP_FAHRENHEIT)
         sensor_type = SENSORS.get(set_req(self.value_type).name, [None, None])
         if isinstance(sensor_type, dict):
-            sensor_type = sensor_type.get(pres(self.child_type).name)
+            sensor_type = sensor_type.get(
+                pres(self.child_type).name, [None, None])
         return sensor_type
diff --git a/homeassistant/const.py b/homeassistant/const.py
index 3dce88820151e410223dc99b55f65847a5c6f9e6..a597c25d094dfddf31f2df36a7f3ac5a5bc0ade7 100644
--- a/homeassistant/const.py
+++ b/homeassistant/const.py
@@ -2,7 +2,7 @@
 """Constants used by Home Assistant components."""
 MAJOR_VERSION = 0
 MINOR_VERSION = 66
-PATCH_VERSION = '0'
+PATCH_VERSION = '1'
 __short_version__ = '{}.{}'.format(MAJOR_VERSION, MINOR_VERSION)
 __version__ = '{}.{}'.format(__short_version__, PATCH_VERSION)
 REQUIRED_PYTHON_VER = (3, 5, 3)
diff --git a/requirements_all.txt b/requirements_all.txt
index 7ac9bd5fd7e0b0002bb7711079c2351e598d3aa9..b2232eeb9e2388a81a5027d698845b889fceb41c 100644
--- a/requirements_all.txt
+++ b/requirements_all.txt
@@ -366,7 +366,7 @@ hipnotify==1.0.8
 holidays==0.9.4
 
 # homeassistant.components.frontend
-home-assistant-frontend==20180330.0
+home-assistant-frontend==20180401.0
 
 # homeassistant.components.homematicip_cloud
 homematicip==0.8
diff --git a/requirements_test_all.txt b/requirements_test_all.txt
index 33527a913a547f57b4030190740a88dd9fbd3612..8c01400f79e777f3c14be0d504419f5648417858 100644
--- a/requirements_test_all.txt
+++ b/requirements_test_all.txt
@@ -81,7 +81,7 @@ hbmqtt==0.9.1
 holidays==0.9.4
 
 # homeassistant.components.frontend
-home-assistant-frontend==20180330.0
+home-assistant-frontend==20180401.0
 
 # homeassistant.components.influxdb
 # homeassistant.components.sensor.influxdb
diff --git a/tests/components/light/test_mqtt_json.py b/tests/components/light/test_mqtt_json.py
index cfeffc93108fee5215cb5c7e0ac3ebc1edff7955..a183355fbb37963e1673938cc17c4cca8cae7768 100644
--- a/tests/components/light/test_mqtt_json.py
+++ b/tests/components/light/test_mqtt_json.py
@@ -334,6 +334,33 @@ class TestLightMQTTJSON(unittest.TestCase):
         self.assertEqual('colorloop', state.attributes['effect'])
         self.assertEqual(170, state.attributes['white_value'])
 
+        # Test a color command
+        light.turn_on(self.hass, 'light.test',
+                      brightness=50, hs_color=(125, 100))
+        self.hass.block_till_done()
+
+        self.assertEqual('test_light_rgb/set',
+                         self.mock_publish.async_publish.mock_calls[0][1][0])
+        self.assertEqual(2,
+                         self.mock_publish.async_publish.mock_calls[0][1][2])
+        self.assertEqual(False,
+                         self.mock_publish.async_publish.mock_calls[0][1][3])
+        # Get the sent message
+        message_json = json.loads(
+            self.mock_publish.async_publish.mock_calls[1][1][1])
+        self.assertEqual(50, message_json["brightness"])
+        self.assertEqual({
+            'r': 0,
+            'g': 50,
+            'b': 4,
+        }, message_json["color"])
+        self.assertEqual("ON", message_json["state"])
+
+        state = self.hass.states.get('light.test')
+        self.assertEqual(STATE_ON, state.state)
+        self.assertEqual(50, state.attributes['brightness'])
+        self.assertEqual((125, 100), state.attributes['hs_color'])
+
     def test_flash_short_and_long(self): \
             # pylint: disable=invalid-name
         """Test for flash length being sent when included."""