diff --git a/source/_components/alarm_control_panel.elkm1.markdown b/source/_components/alarm_control_panel.elkm1.markdown
new file mode 100644
index 00000000000..89a57e26fe4
--- /dev/null
+++ b/source/_components/alarm_control_panel.elkm1.markdown
@@ -0,0 +1,22 @@
+---
+layout: page
+title: "Elk-M1 Alarm Control Panel"
+description: "Instructions how to integrate Elk M1 alarm control panel."
+date: 2018-10-07 00:00
+sidebar: true
+comments: false
+sharing: true
+footer: true
+logo: elkproducts.png
+ha_release: 0.81
+ha_category: Alarm
+ha_iot_class: "Local Push"
+---
+
+The `elkm1` platform allows you to control your [Elk-M1](https://www.elkproducts.com/m1_controls.html).
+
+An Elk-M1 area (also known as partition) is represented as an `alarm_control_panel`.
+
+
+Full configuration details can be found on the main [Elk-M1 component](/components/elkm1/) page.
+
diff --git a/source/_components/binary_sensor.xiaomi_aqara.markdown b/source/_components/binary_sensor.xiaomi_aqara.markdown
index 6f33659f78b..e782c1e9e9a 100644
--- a/source/_components/binary_sensor.xiaomi_aqara.markdown
+++ b/source/_components/binary_sensor.xiaomi_aqara.markdown
@@ -35,6 +35,7 @@ The requirement is that you have setup the [`xiaomi aqara` component](/component
| Aqara Wireless Switch (Single) | 86sw1 | WXKG03LM | off (always) | `click` | `click_type` | `single` |
| Aqara Wireless Switch (Double) | 86sw2 | WXKG02LM | off (always) | `click` | `click_type` | `single`, `both` |
| Cube | cube | MFKZQ01LM | off (always) | `cube_action` | `action_type`, `action_value` (rotate) | `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swing`, `alert`, `free_fall`, `rotate` (degrees at action_value) |
+| Vibration Sensor | vibration | DJT11LM | off (always) | `xiaomi_aqara.movement` | `movement_type` | `vibrate`, `tilt`, `free_fall` |
### {% linkable_title Automation examples %}
@@ -308,3 +309,32 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac
service: light.turn_off
entity_id: light.gateway_light_34xxxxxxxx13
```
+
+#### {% linkable_title Vibration Sensor %}
+
+This automation toggles the living room lamp on vibration/tilt.
+
+```yaml
+- alias: Turn on Living Room Lamp on vibration
+ trigger:
+ platform: event
+ event_type: xiaomi_aqara.movement
+ event_data:
+ entity_id: binary_sensor.vibration_xxxx000000
+ movement_type: vibrate
+ action:
+ service: light.toggle
+ data:
+ entity_id: light.living_room_lamp
+- alias: Turn on Living Room Lamp on tilt
+ trigger:
+ platform: event
+ event_type: xiaomi_aqara.movement
+ event_data:
+ entity_id: binary_sensor.vibration_xxxx000000
+ movement_type: tilt
+ action:
+ service: light.toggle
+ data:
+ entity_id: light.living_room_lamp
+```
diff --git a/source/_components/elkm1.markdown b/source/_components/elkm1.markdown
new file mode 100644
index 00000000000..7e6bdb540ed
--- /dev/null
+++ b/source/_components/elkm1.markdown
@@ -0,0 +1,253 @@
+---
+layout: page
+title: "Elk-M1 Controller"
+description: "Instructions to setup the Elk-M1 controller."
+date: 2018-10-07 00:00
+sidebar: true
+comments: false
+sharing: true
+footer: true
+logo: elkproducts.png
+ha_release: 0.81
+ha_category: Hub
+ha_iot_class: "Local Push"
+---
+
+The Elk-M1 is a home security and automation controller that is capable of alarm control panel functions and automation.
+
+The Elk-M1 controller is manufactured by [Elk Products](https://www.elkproducts.com).
+
+## {% linkable_title Configuration %}
+
+To integrate Elk-M1 controller with Home Assistant, add the following
+section to your `configuration.yaml` file:
+
+```yaml
+# Example configuration.yaml entry
+elkm1:
+ host: elk://IP_ADDRESS
+```
+
+{% configuration %}
+host:
+ description: Connection string to Elk of the form `://[:port]`. `` is `elk` for non-secure connection, `elks` for secure connection, and `serial` for serial port connection. `` is IP address or domain or for `serial` the serial port that the Elk is connected to. Optional `` is the port to connect to on the Elk, defaulting to 2101 for `elk` and 2601 for `elks`.
+ required: true
+ type: string
+username:
+ description: Username to login to Elk. Only required if using `elks` connection method.
+ required: false
+ type: string
+password:
+ description: Password to login to Elk. Only required if using `elks` connection method.
+ required: false
+ type: string
+temperature_unit:
+ description: The temperature unit that the Elk panel uses. Valid values are `C` and `F`.
+ required: false
+ type: string
+ default: F
+area:
+ description: Elk areas to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+counter:
+ description: Elk counters to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+keypad:
+ description: Elk keypads to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+output:
+ description: Elk outputs to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+setting:
+ description: Elk settings to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+task:
+ description: Elk tasks to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+thermostat:
+ description: Elk thermostats to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+plc:
+ description: Elk PLC lights to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+zone:
+ description: Elk zones to include in Home Assistant.
+ required: false
+ default: All included.
+ type: map
+ keys:
+ enabled:
+ description: Enable this configuration section.
+ type: boolean
+ required: false
+ default: true
+ include:
+ description: List to include in the form of either `` or `-` where `` is a postive integer or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: All included.
+ exclude:
+ description: List to exclude in the form of either `` or `-` where `` is a number or a X10 housecode. See configuration below for examples of ranges.
+ type: list
+ required: false
+ default: None excluded.
+{% endconfiguration %}
+
+Example configuration of the above:
+```yaml
+elkm1:
+ host: elks://IP_ADDRESS
+ username: USERNAME
+ password: PASSWORD
+ area:
+ exclude: [5-8]
+ zone:
+ exclude: [11-16, 19-192, 199-208]
+ plc:
+ include: [a1-d16, 192]
+ exclude: [b12-d5]
+```
diff --git a/source/_components/xiaomi_aqara.markdown b/source/_components/xiaomi_aqara.markdown
index d98517498f1..5c6fa1016ba 100644
--- a/source/_components/xiaomi_aqara.markdown
+++ b/source/_components/xiaomi_aqara.markdown
@@ -40,6 +40,7 @@ The `xiaomi_aqara` component allows you to integrate [Xiaomi](http://www.mi.com/
- Gateway (Light, Illumination Sensor, Ringtone play)
- Intelligent Curtain
- Water Leak Sensor
+- Vibration Sensor
- Battery
#### {% linkable_title Unsupported Devices %}
diff --git a/source/_lovelace/sensor.markdown b/source/_lovelace/sensor.markdown
new file mode 100644
index 00000000000..d1d1b49e0bd
--- /dev/null
+++ b/source/_lovelace/sensor.markdown
@@ -0,0 +1,79 @@
+---
+layout: page
+title: "Sensor Card"
+sidebar_label: Sensor
+description: "The sensor card gives you information about the sensor state"
+date: 2018-10-07 10:28 +00:00
+sidebar: true
+comments: false
+sharing: true
+footer: true
+---
+
+The sensor card gives you a quick overview of your sensors state with an optional graph to visualize change over time.
+
+
+
+ Screenshot of the sensor card.
+
+
+{% configuration %}
+type:
+ required: true
+ description: sensor
+ type: string
+entity:
+ required: true
+ description: Entity id of `sensor` domain
+ type: string
+icon:
+ required: false
+ description: The card icon
+ type: string
+name:
+ required: false
+ description: The card name
+ type: string
+graph:
+ required: false
+ description: Type of graph `none` or `line`
+ type: string
+unit:
+ required: false
+ description: The unit of measurement
+ type: string
+height:
+ required: false
+ description: Height of the graph
+ type: integer
+ default: 100
+line_width:
+ required: false
+ description: Width of the line stroke
+ type: integer
+ default: 5
+line_color:
+ required: false
+ description: Color of the line stroke
+ type: string
+accuracy:
+ required: false
+ description: Amount of data points on the graph
+ type: integer
+ default: 10
+hours_to_show:
+ required: false
+ description: Hours to show in graph
+ type: integer
+ default: 24
+{% endconfiguration %}
+
+## {% linkable_title Example %}
+
+```yaml
+- type: sensor
+ entity: sensor.illumination
+ name: Illumination
+ height: 75
+ line_color: "#3498db"
+```
diff --git a/source/images/lovelace/lovelace_sensor.png b/source/images/lovelace/lovelace_sensor.png
new file mode 100644
index 00000000000..5b5f850ebf2
Binary files /dev/null and b/source/images/lovelace/lovelace_sensor.png differ
diff --git a/source/images/supported_brands/elkproducts.png b/source/images/supported_brands/elkproducts.png
new file mode 100644
index 00000000000..3f026c21b0e
Binary files /dev/null and b/source/images/supported_brands/elkproducts.png differ