diff --git a/homeassistant/components/binary_sensor/enocean.py b/homeassistant/components/binary_sensor/enocean.py
index 631ed0021e18d7c6511d84f3f33d4812c8b07a85..bd68a232f220b56051442b55c44a885d6d85b4c6 100644
--- a/homeassistant/components/binary_sensor/enocean.py
+++ b/homeassistant/components/binary_sensor/enocean.py
@@ -20,7 +20,7 @@ DEPENDENCIES = ['enocean']
 DEFAULT_NAME = 'EnOcean binary sensor'
 
 PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
-    vol.Required(CONF_ID): cv.string,
+    vol.Required(CONF_ID): vol.All(cv.ensure_list, [vol.Coerce(int)]),
     vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
     vol.Optional(CONF_SENSOR_CLASS, default=None): SENSOR_CLASSES_SCHEMA,
 })
diff --git a/homeassistant/components/light/enocean.py b/homeassistant/components/light/enocean.py
index ce65d8cc0411aaf0e2940e7c5e2716089b2c3422..e24aca4902ddf17d2f08990b1431d0aa808e6eaf 100644
--- a/homeassistant/components/light/enocean.py
+++ b/homeassistant/components/light/enocean.py
@@ -26,8 +26,9 @@ DEPENDENCIES = ['enocean']
 SUPPORT_ENOCEAN = SUPPORT_BRIGHTNESS
 
 PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
-    vol.Required(CONF_ID): cv.string,
-    vol.Required(CONF_SENDER_ID): cv.string,
+    vol.Optional(CONF_ID, default=[]): vol.All(cv.ensure_list,
+                                               [vol.Coerce(int)]),
+    vol.Required(CONF_SENDER_ID): vol.All(cv.ensure_list, [vol.Coerce(int)]),
     vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
 })
 
diff --git a/homeassistant/components/sensor/enocean.py b/homeassistant/components/sensor/enocean.py
index e998b5c9c46b90f5c8157f5bc0f9520eee9a4a28..009718dd720887efe9bd169bcc9792e0ce171231 100644
--- a/homeassistant/components/sensor/enocean.py
+++ b/homeassistant/components/sensor/enocean.py
@@ -20,7 +20,7 @@ DEFAULT_NAME = 'EnOcean sensor'
 DEPENDENCIES = ['enocean']
 
 PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
-    vol.Required(CONF_ID): cv.string,
+    vol.Required(CONF_ID): vol.All(cv.ensure_list, [vol.Coerce(int)]),
     vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
 })
 
diff --git a/homeassistant/components/switch/enocean.py b/homeassistant/components/switch/enocean.py
index 71bd180ad10d5d0ce4bbc8f6dbeb1dee5260b75e..ead5d789bbd8c50f38539006b1798155366716b1 100644
--- a/homeassistant/components/switch/enocean.py
+++ b/homeassistant/components/switch/enocean.py
@@ -20,7 +20,7 @@ DEFAULT_NAME = 'EnOcean Switch'
 DEPENDENCIES = ['enocean']
 
 PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
-    vol.Required(CONF_ID): cv.string,
+    vol.Required(CONF_ID): vol.All(cv.ensure_list, [vol.Coerce(int)]),
     vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
 })