Site updated at 2016-11-13 11:57:21 UTC

This commit is contained in:
Travis CI 2016-11-13 11:57:21 +00:00
parent 3bab881d0a
commit 18a1a7981c
1303 changed files with 223057 additions and 226 deletions

View file

@ -0,0 +1,237 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Getting started on Mobile - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Android/iOS instructions to add Home Assistant to your homescreen.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/android/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Getting started on Mobile">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/android/">
<meta property="og:type" content="website">
<meta property="og:description" content="Android/iOS instructions to add Home Assistant to your homescreen.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Getting started on Mobile">
<meta name="twitter:description" content="Android/iOS instructions to add Home Assistant to your homescreen.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Getting Started on Mobile
</h1>
</header>
<hr class="divider">
<p>Home Assistant is not available on the Play Store or App Store. Instead, Home Assistant leverages the new W3C <a href="https://w3c.github.io/manifest/">manifest.json</a> support, allowing mobile devices to add the “web app” to your homescreen as if it was native.</p>
<p>On Android:</p>
<ol>
<li>Open Chrome</li>
<li>Navigate to your Home Assistant instance</li>
<li>Tap on the Menu icon (three vertical bars)</li>
<li>Tap on Add to Homescreen</li>
<li>A dialog will popup; tap on Add</li>
</ol>
<p class="img" style="width:500px; margin-left: auto; margin-right: auto;">
<img src="/images/screenshots/android-homescreen-guide.gif" />
</p>
<p>On iOS:</p>
<ol>
<li>Open Safari</li>
<li>Navigate to your Home Assistant instance</li>
<li>Tap on the Share icon in the middle of the bottom toolbar</li>
<li>Tap on “Add to Home Screen”</li>
<li>A dialog will popup; tap on Add</li>
</ol>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/android.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a class='active' href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,267 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automation Actions - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Automations result in action.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-action/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automation Actions">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-action/">
<meta property="og:type" content="website">
<meta property="og:description" content="Automations result in action.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automation Actions">
<meta name="twitter:description" content="Automations result in action.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automation Actions
</h1>
</header>
<hr class="divider">
<p>The action of an automation rule is what is being executed when a rule fires. The action part follows the <a href="/getting-started/scripts/">script syntax</a> which can be used to interact with anything via services or events. For services you can specify the entity_id that it should apply to and optional service parameters (to specify for example the brightness).</p>
<p>You can also call the service to activate <a href="/components/scene/">a scene</a> which will allow you to define how you want your devices to be and have Home Assistant call the right services.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="c1"># Change the light in the kitchen and living room to 150 brightness and color red.</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">homeassistant.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">light.kitchen</span>
<span class="pi">-</span> <span class="s">light.living_room</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">brightness</span><span class="pi">:</span> <span class="s">150</span>
<span class="s">rgb_color</span><span class="pi">:</span> <span class="pi">[</span><span class="nv">255</span><span class="pi">,</span> <span class="nv">0</span><span class="pi">,</span> <span class="nv">0</span><span class="pi">]</span>
<span class="s">automation 2</span><span class="pi">:</span>
<span class="c1"># Notify me on my mobile phone of an event</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s">-00:30</span>
<span class="s">action</span><span class="pi">:</span>
<span class="c1"># Actions are scripts so can also be a list of actions</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">notify.notify</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="s">Beautiful sunset!</span>
<span class="pi">-</span> <span class="s">delay</span><span class="pi">:</span> <span class="s">0:35</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">notify.notify</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="s">Oh wow you really missed something great.</span>
</code></pre>
</div>
<p>Conditions can also be part of an action:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Enciende</span><span class="nv"> </span><span class="s">Despacho'</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sensor.mini_despacho</span>
<span class="s">to</span><span class="pi">:</span> <span class="s1">'</span><span class="s">ON'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">or</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">states.sun.sun.attributes.elevation</span><span class="nv"> </span><span class="s">&lt;</span><span class="nv"> </span><span class="s">4</span><span class="nv"> </span><span class="s">}}'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">states.sensor.sensorluz_7_0.state</span><span class="nv"> </span><span class="s">&lt;</span><span class="nv"> </span><span class="s">10</span><span class="nv"> </span><span class="s">}}'</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">scene.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">scene.DespiertaDespacho</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-action.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a class='active' href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,236 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automation Conditions - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Automations can test conditions when invoked.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-condition/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automation Conditions">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-condition/">
<meta property="og:type" content="website">
<meta property="og:description" content="Automations can test conditions when invoked.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automation Conditions">
<meta name="twitter:description" content="Automations can test conditions when invoked.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automation Conditions
</h1>
</header>
<hr class="divider">
<p>Conditions are an optional part of an automation rule and can be used to prevent an action from happening when triggered. Conditions look very similar to triggers but are very different. A trigger will look at events happening in the system while a condition only looks at how the system looks right now. A trigger can observe that a switch is being turned on. A condition can only see if a switch is currently on or off.</p>
<p>The available conditions for an automation are the same as for the script syntax. So see that page for a <a href="/getting-started/scripts-conditions/">full list of available conditions</a>.</p>
<p>Example of using condition:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Enciende</span><span class="nv"> </span><span class="s">Despacho'</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sensor.mini_despacho</span>
<span class="s">to</span><span class="pi">:</span> <span class="s1">'</span><span class="s">ON'</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">or</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">states.sun.sun.attributes.elevation</span><span class="nv"> </span><span class="s">&lt;</span><span class="nv"> </span><span class="s">4</span><span class="nv"> </span><span class="s">}}'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">states.sensor.sensorluz_7_0.state</span><span class="nv"> </span><span class="s">&lt;</span><span class="nv"> </span><span class="s">10</span><span class="nv"> </span><span class="s">}}'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">scene.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">scene.DespiertaDespacho</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-condition.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a class='active' href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,316 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Your First Automation - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Step by step guiding through making your first automation.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-create-first/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Your First Automation">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-create-first/">
<meta property="og:type" content="website">
<meta property="og:description" content="Step by step guiding through making your first automation.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Your First Automation">
<meta name="twitter:description" content="Step by step guiding through making your first automation.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Your First Automation
</h1>
</header>
<hr class="divider">
<p>Before we dive deeper into what every piece of automation <em>can</em> do, lets look at a simple automation rule: <strong>Turn on the lights when the sun sets</strong></p>
<p>In this example, we are defining a trigger to track the sunset and tell it to fire when the sun is setting. When this event is triggered, the service <code class="highlighter-rouge">light.turn_on</code> is called without any parameters. Because we specify no parameters, it will turn on all the lights.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="s">alias</span><span class="pi">:</span> <span class="s">Turn on light when sun sets</span>
<span class="s">initial_state</span><span class="pi">:</span> <span class="s">True</span>
<span class="s">hide_entity</span><span class="pi">:</span> <span class="s">False</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
</code></pre>
</div>
<p>Starting with 0.28 automation rules can be reloaded from the <a href="/components/automation/">frontend</a> and are shown by default. With <a href="/components/automation/"><code class="highlighter-rouge">hide_entity:</code></a> you can control this behaviour. Its very handy if you are working on your rules but when a rule is finished and you dont want to see that rule in your frontend, you can set <code class="highlighter-rouge">hide_entity:</code> to <code class="highlighter-rouge">True</code>. To set an automation to be disabled when HASS starts set <code class="highlighter-rouge">initial_state:</code> to <code class="highlighter-rouge">False</code>.</p>
<p>After a few days of running this automation rule, you come to realize that this automation rule is not good enough. It was already dark when the lights went on and the one day you werent home, the lights turned on anyway. Time for some tweaking. Lets add an offset to the sunset trigger and a condition to only turn on the lights if anyone is home.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="s">alias</span><span class="pi">:</span> <span class="s">Turn on light when sun sets</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s2">"</span><span class="s">-01:00:00"</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
</code></pre>
</div>
<p>Now youre happy and all is good. You start to like this automation business and buy some more lights, this time you put them in the bedroom. But what you now realize is that when the sun is setting, the lights in the bedroom are also being turned on! Time to tweak the automation to only turn on the living room lights.</p>
<p>The first thing you do is to look at the entities in the developer tools (second icon) in the app. You see the names of your lights and you write them down: <code class="highlighter-rouge">light.table_lamp</code>, <code class="highlighter-rouge">light.bedroom</code>, <code class="highlighter-rouge">light.ceiling</code>.</p>
<p>Instead of hard coding the entity IDs of the lights in the automation rule, we will set up a group. This will allow us to see the living room separate in the app and be able to address it from automation rules.</p>
<p>So we tweak the config to add the group and have the automation rule only turn on the group.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">group</span><span class="pi">:</span>
<span class="s">living_room</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">light.table_lamp</span>
<span class="pi">-</span> <span class="s">light.ceiling</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="s">alias</span><span class="pi">:</span> <span class="s">Turn on light when sun sets</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s2">"</span><span class="s">-01:00:00"</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.living_room</span>
</code></pre>
</div>
<p>Christmas is coming along and you decide to buy a remote switch to control the Christmas lights from Home Assistant. You cant claim to live in the house of the future if youre still manually turning on your Christmas lights!</p>
<p>We hook the switch up to Home Assistant and grab the entity ID from the developer tools: <code class="highlighter-rouge">switch.christmas_lights</code>. We will update the group to include the switch and will change our action. We are no longer able to call <code class="highlighter-rouge">light.turn_on</code> because we also want to turn on a switch. This is where <code class="highlighter-rouge">homeassistant.turn_on</code> comes to the rescue. This service is capable of turning any entity on.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">group</span><span class="pi">:</span>
<span class="s">living_room</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">light.table_lamp</span>
<span class="pi">-</span> <span class="s">light.ceiling</span>
<span class="pi">-</span> <span class="s">switch.christmas_lights</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="s">alias</span><span class="pi">:</span> <span class="s">Turn on light when sun sets</span>
<span class="s">hide_entity</span><span class="pi">:</span> <span class="s">True</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s2">"</span><span class="s">-01:00:00"</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">homeassistant.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.living_room</span>
</code></pre>
</div>
<h3><a class="title-link" name="learn-more" href="#learn-more"></a> Learn more</h3>
<ul>
<li><a href="/getting-started/automation-trigger/">Triggers</a></li>
<li><a href="/getting-started/automation-condition/">Conditions</a></li>
<li><a href="/getting-started/automation-action/">Actions</a></li>
<li><a href="/getting-started/automation-templating/">Templating</a> (advanced)</li>
</ul>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-create-first.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a class='active' href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,265 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automation Examples - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Some automation examples to get you started.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-examples/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automation Examples">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-examples/">
<meta property="og:type" content="website">
<meta property="og:description" content="Some automation examples to get you started.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automation Examples">
<meta name="twitter:description" content="Some automation examples to get you started.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automation Examples
</h1>
</header>
<hr class="divider">
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example of entry in configuration.yaml</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="c1"># Turns on lights 1 hour before sunset if people are home</span>
<span class="c1"># and if people get home between 16:00-23:00</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Rule</span><span class="nv"> </span><span class="s">1</span><span class="nv"> </span><span class="s">Light</span><span class="nv"> </span><span class="s">on</span><span class="nv"> </span><span class="s">in</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">evening'</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="c1"># Prefix the first line of each trigger configuration</span>
<span class="c1"># with a '-' to enter multiple</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s1">'</span><span class="s">-01:00:00'</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="c1"># Prefix the first line of each condition configuration</span>
<span class="c1"># with a '-'' to enter multiple</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">16:00:00'</span>
<span class="s">before</span><span class="pi">:</span> <span class="s1">'</span><span class="s">23:00:00'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">homeassistant.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.living_room</span>
<span class="c1"># Turn off lights when everybody leaves the house</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Rule</span><span class="nv"> </span><span class="s">2</span><span class="nv"> </span><span class="s">-</span><span class="nv"> </span><span class="s">Away</span><span class="nv"> </span><span class="s">Mode'</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_devices</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">not_home'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_off</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.all_lights</span>
<span class="c1"># Notify when Paulus leaves the house in the evening</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Leave</span><span class="nv"> </span><span class="s">Home</span><span class="nv"> </span><span class="s">notification'</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">zone</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">leave</span>
<span class="s">zone</span><span class="pi">:</span> <span class="s">zone.home</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">condition</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">20:00'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">notify.notify</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Paulus</span><span class="nv"> </span><span class="s">left</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">house'</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-examples.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,491 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automation Templating - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Advanced automation documentation using templating.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-templating/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automation Templating">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-templating/">
<meta property="og:type" content="website">
<meta property="og:description" content="Advanced automation documentation using templating.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automation Templating">
<meta name="twitter:description" content="Advanced automation documentation using templating.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automation Templating
</h1>
</header>
<hr class="divider">
<p>In Home Assistant 0.19 we introduced a new powerful feature: variables in scripts and automations. This makes it possible to adjust your condition and action based on the information of the trigger.</p>
<p>The trigger data made is available during <a href="/topics/templating/">template</a> rendering as the <code class="highlighter-rouge">trigger</code> variable.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entries</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">notify.notify</span>
<span class="s">data_template</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="pi">&gt;</span>
<span class="no">Paulus just changed from {{ trigger.from_state.state }}</span>
<span class="no">to {{ trigger.to_state.state }}</span>
<span class="s">automation 2</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">topic</span><span class="pi">:</span> <span class="s">/notify/+</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service_template</span><span class="pi">:</span> <span class="pi">&gt;</span>
<span class="no">notify.{{ trigger.topic.split('/')[-1] }}</span>
<span class="s">data_template</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="pi">{{</span> <span class="nv">trigger.payload</span> <span class="pi">}}</span>
</code></pre>
</div>
<h2><a class="title-link" name="important-template-rules" href="#important-template-rules"></a> Important Template Rules</h2>
<p>There are a few very important rules to remember when writing automation templates:</p>
<ol>
<li>You <strong><em>must</em></strong> use <code class="highlighter-rouge">data_template</code> in place of <code class="highlighter-rouge">data</code> when using templates in the <code class="highlighter-rouge">data</code> section of a service call.</li>
<li>You <strong><em>must</em></strong> use <code class="highlighter-rouge">service_template</code> in place of <code class="highlighter-rouge">service</code> when using templates in the <code class="highlighter-rouge">service</code> section of a service call.</li>
<li>You <strong><em>must</em></strong> surround single-line templates with double quotes (<code class="highlighter-rouge">"</code>) or single quotes (<code class="highlighter-rouge">'</code>).</li>
<li>It is advised that you prepare for undefined variables by using <code class="highlighter-rouge">if ... is not none</code> or the <a href="http://jinja.pocoo.org/docs/dev/templates/#default"><code class="highlighter-rouge">default</code> filter</a>, or both.</li>
<li>It is advised that when comparing numbers, you convert the number(s) to a <a href="http://jinja.pocoo.org/docs/dev/templates/#float"><code class="highlighter-rouge">float</code></a> or an <a href="http://jinja.pocoo.org/docs/dev/templates/#int"><code class="highlighter-rouge">int</code></a> by using the respective <a href="http://jinja.pocoo.org/docs/dev/templates/#list-of-builtin-filters">filter</a>.</li>
<li>While the <a href="http://jinja.pocoo.org/docs/dev/templates/#float"><code class="highlighter-rouge">float</code></a> and <a href="http://jinja.pocoo.org/docs/dev/templates/#int"><code class="highlighter-rouge">int</code></a> filters do allow a default fallback value if the conversion is unsuccessful, they do not provide the ability to catch undefined variables.</li>
</ol>
<p>Remembering these simple rules will help save you from many headaches and endless hours of frustration when using automation templates.</p>
<h2><a class="title-link" name="available-trigger-data" href="#available-trigger-data"></a> Available Trigger Data</h2>
<p>The following tables show the available trigger data per platform.</p>
<h3><a class="title-link" name="event" href="#event"></a> event</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">event</code>.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.event</code></td>
<td>Event object that matched.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="mqtt" href="#mqtt"></a> mqtt</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">mqtt</code>.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.topic</code></td>
<td>Topic that received payload.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.payload</code></td>
<td>Payload.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.qos</code></td>
<td>QOS of payload.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="numeric_state" href="#numeric_state"></a> numeric_state</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">numeric_state</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.entity_id</code></td>
<td>Entity ID that we observe.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.below</code></td>
<td>The below threshold, if any.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.above</code></td>
<td>The above threshold, if any.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.from_state</code></td>
<td>The previous <a href="/topics/state_object/">state object</a> of the entity.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.to_state</code></td>
<td>The new <a href="/topics/state_object/">state object</a> that triggered trigger.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="state" href="#state"></a> state</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">state</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.entity_id</code></td>
<td>Entity ID that we observe.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.from_state</code></td>
<td>The previous <a href="/topics/state_object/">state object</a> of the entity.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.to_state</code></td>
<td>The new <a href="/topics/state_object/">state object</a> that triggered trigger.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.for</code></td>
<td>Timedelta object how long state has been to state, if any.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="sun" href="#sun"></a> sun</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">sun</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.event</code></td>
<td>The event that just happened: <code class="highlighter-rouge">sunset</code> or <code class="highlighter-rouge">sunrise</code>.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.offset</code></td>
<td>Timedelta object with offset to the event, if any.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="template" href="#template"></a> template</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">template</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.entity_id</code></td>
<td>Entity ID that caused change.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.from_state</code></td>
<td>Previous <a href="/topics/state_object/">state object</a> of entity that caused change.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.to_state</code></td>
<td>New <a href="/topics/state_object/">state object</a> of entity that caused template to change.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="time" href="#time"></a> time</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">time</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.now</code></td>
<td>DateTime object that triggered the time trigger.</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="zone" href="#zone"></a> zone</h3>
<table>
<thead>
<tr>
<th>Template variable</th>
<th>Data</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">trigger.platform</code></td>
<td>Hardcoded: <code class="highlighter-rouge">zone</code></td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.entity_id</code></td>
<td>Entity ID that we are observing.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.from_state</code></td>
<td>Previous <a href="/topics/state_object/">state object</a> of the entity.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.to_state</code></td>
<td>New <a href="/topics/state_object/">state object</a> of the entity.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.zone</code></td>
<td>State object of zone</td>
</tr>
<tr>
<td><code class="highlighter-rouge">trigger.event</code></td>
<td>Event that trigger observed: <code class="highlighter-rouge">enter</code> or <code class="highlighter-rouge">leave</code>.</td>
</tr>
</tbody>
</table>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-templating.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a class='active' href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,346 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automation Trigger - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="All the different ways how automations can be triggered.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-trigger/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automation Trigger">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-trigger/">
<meta property="og:type" content="website">
<meta property="og:description" content="All the different ways how automations can be triggered.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automation Trigger">
<meta name="twitter:description" content="All the different ways how automations can be triggered.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automation Trigger
</h1>
</header>
<hr class="divider">
<p>Triggers are what starts the processing of an automation rule. It is possible to specify multiple triggers for the same rule. Once a trigger starts, Home Assistant will validate the conditions, if any, and call the action.</p>
<h3><a class="title-link" name="event-trigger" href="#event-trigger"></a> Event trigger</h3>
<p>Triggers when an event is being processed. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data to be present.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">MY_CUSTOM_EVENT</span>
<span class="c1"># optional</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">mood</span><span class="pi">:</span> <span class="s">happy</span>
</code></pre>
</div>
<p>For example, to carry out actions when Home Assistant starts, you can use <code class="highlighter-rouge">event_type: homeassistant_start</code>. See other events supported by Home Assistant <a href="https://home-assistant.io/topics/events/">here</a>.</p>
<h3><a class="title-link" name="mqtt-trigger" href="#mqtt-trigger"></a> MQTT trigger</h3>
<p>Triggers when a specific message is received on given topic. Optionally can match on the payload being sent over the topic.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">topic</span><span class="pi">:</span> <span class="s">living_room/switch/ac</span>
<span class="c1"># Optional</span>
<span class="s">payload</span><span class="pi">:</span> <span class="s1">'</span><span class="s">on'</span>
</code></pre>
</div>
<h3><a class="title-link" name="numeric-state-trigger" href="#numeric-state-trigger"></a> Numeric state trigger</h3>
<p>On state change of a specified entity, attempts to parse the state as a number and triggers if value is above and/or below a threshold.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sensor.temperature</span>
<span class="c1"># Optional</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">state.attributes.battery</span><span class="nv"> </span><span class="s">}}'</span>
<span class="c1"># At least one of the following required</span>
<span class="s">above</span><span class="pi">:</span> <span class="s">17</span>
<span class="s">below</span><span class="pi">:</span> <span class="s">25</span>
</code></pre>
</div>
<h3><a class="title-link" name="state-trigger" href="#state-trigger"></a> State trigger</h3>
<p>Triggers when the state of tracked entities change. If only entity_id given will match all state changes.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus, device_tracker.anne_therese</span>
<span class="c1"># Optional </span>
<span class="s">from</span><span class="pi">:</span> <span class="s1">'</span><span class="s">not_home'</span>
<span class="s">to</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="c1"># Alias for 'to'</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="c1"># If given, will trigger when state has been the to state for X time.</span>
<span class="s">for</span><span class="pi">:</span>
<span class="s">hours</span><span class="pi">:</span> <span class="s">1</span>
<span class="s">minutes</span><span class="pi">:</span> <span class="s">10</span>
<span class="s">seconds</span><span class="pi">:</span> <span class="s">5</span>
</code></pre>
</div>
<p class="note warning">
Use quotes around your values for <code class="highlighter-rouge">from</code> and <code class="highlighter-rouge">to</code> to avoid the YAML parser interpreting values as booleans.
</p>
<h3><a class="title-link" name="sun-trigger" href="#sun-trigger"></a> Sun trigger</h3>
<p>Trigger when the sun is setting or rising. An optional time offset can be given to have it trigger for example 45 minutes before sunset, when dusk is setting in.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">sun</span>
<span class="c1"># Possible values: sunset, sunrise</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="c1"># Optional time offset. This example is 45 minutes.</span>
<span class="s">offset</span><span class="pi">:</span> <span class="s1">'</span><span class="s">-00:45:00'</span>
</code></pre>
</div>
<h3><a class="title-link" name="template-trigger" href="#template-trigger"></a> Template trigger</h3>
<p>Template triggers work by evaluating a [template] on each state change. The trigger will fire if the state change caused the template to render true. This is achieved by having the template result in a true boolean expression (<code class="highlighter-rouge"><span class="p">{</span><span class="err">{</span><span class="w"> </span><span class="err">is_state('device_tracker.paulus',</span><span class="w"> </span><span class="err">'home')</span><span class="w"> </span><span class="p">}</span><span class="err">}</span></code>) or by having the template render true (example below).</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s2">"</span><span class="s">{%</span><span class="nv"> </span><span class="s">if</span><span class="nv"> </span><span class="s">is_state('device_tracker.paulus',</span><span class="nv"> </span><span class="s">'home')</span><span class="nv"> </span><span class="s">%}true{%</span><span class="nv"> </span><span class="s">endif</span><span class="nv"> </span><span class="s">%}"</span>
</code></pre>
</div>
<h3><a class="title-link" name="time-trigger" href="#time-trigger"></a> Time trigger</h3>
<p>Time can be triggered in many ways. The most common is to specify <code class="highlighter-rouge">after</code> and trigger at a specific point in time each day. Alternatively, you can also match if the hour, minute or second of the current time has a specific value. You can prefix the value with a <code class="highlighter-rouge">/</code> to match whenever the value is divisible by that number. You cannot use <code class="highlighter-rouge">after</code> together with hour, minute or second.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="c1"># Matches every hour at 5 minutes past whole</span>
<span class="s">minutes</span><span class="pi">:</span> <span class="s">5</span>
<span class="s">seconds</span><span class="pi">:</span> <span class="s">0</span>
<span class="s">automation 2</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="c1"># When 'after' is used, you cannot also match on hour, minute, seconds.</span>
<span class="c1"># Military time format.</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">15:32:00'</span>
<span class="s">automation 3</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="c1"># You can also match on interval. This will match every 5 minutes</span>
<span class="s">minutes</span><span class="pi">:</span> <span class="s1">'</span><span class="s">/5'</span>
<span class="s">seconds</span><span class="pi">:</span> <span class="s">0</span>
</code></pre>
</div>
<h3><a class="title-link" name="zone-trigger" href="#zone-trigger"></a> Zone trigger</h3>
<p>Zone triggers can trigger when an entity is entering or leaving the zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the <a href="/components/device_tracker.owntracks/">OwnTracks platform</a> as well as the <a href="/components/device_tracker.icloud/">iCloud platform</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">automation</span><span class="pi">:</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">zone</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">zone</span><span class="pi">:</span> <span class="s">zone.home</span>
<span class="c1"># Event is either enter or leave</span>
<span class="s">event</span><span class="pi">:</span> <span class="s">enter</span> <span class="c1"># or "leave"</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-trigger.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a class='active' href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,224 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Troubleshooting Automations - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Tips on how to troubleshoot your automations.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation-troubleshooting/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Troubleshooting Automations">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation-troubleshooting/">
<meta property="og:type" content="website">
<meta property="og:description" content="Tips on how to troubleshoot your automations.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Troubleshooting Automations">
<meta name="twitter:description" content="Tips on how to troubleshoot your automations.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Troubleshooting Automations
</h1>
</header>
<hr class="divider">
<p>You can verify that your automation rules are being initialized correctly by watching both the realtime logs (<code class="highlighter-rouge">homeassistant.log</code> in the configuration directory) and also the <a href="/components/logbook/">Logbook</a>. The realtime logs will show the rules being initialized (once for each trigger), example:</p>
<pre><code class="language-plain">INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rainy Day
INFO [homeassistant.components.automation] Initialized rule Rain is over
</code></pre>
<p>The Logbook component will show a line entry when an automation is triggered. You can look at the previous entry to determine which trigger in the rule triggered the event.</p>
<p><img src="/images/components/automation/logbook.png" alt="Logbook example" /></p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation-troubleshooting.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,274 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Automating Home Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Steps to help you get automation setup in Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/automation/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Automating Home Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/automation/">
<meta property="og:type" content="website">
<meta property="og:description" content="Steps to help you get automation setup in Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Automating Home Assistant">
<meta name="twitter:description" content="Steps to help you get automation setup in Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Automating Home Assistant
</h1>
</header>
<hr class="divider">
<p>When all your devices are set up, its time to put the cherry on the pie: automation. Home Assistant offers <a href="/components/#automation">a few built-in automations</a> but youll be using the automation component to set up your own rules, for the most part.</p>
<p>Home Assistant offers a wide range of automation configurations. In the next few pages,, well try to guide you through all the different possibilities and options. Besides this documentation, there are also a couple of people who have made their automations <a href="/cookbook/#example-configurationyaml">publicly available</a>.</p>
<h3><a class="title-link" name="automation-basics" href="#automation-basics"></a> Automation basics</h3>
<p>Before you can go ahead and create your own automations, its important to learn the basics. To explore these, lets have a look at the following example home automation rule:</p>
<div class="language-text highlighter-rouge"><pre class="highlight"><code>(trigger) When Paulus arrives home
(condition) and it is after sunset:
(action) Turn the lights in the living room on
</code></pre>
</div>
<p>The example consists of three different parts: a trigger, a condition and an action.</p>
<p>The first line is the <strong>trigger</strong> of the automation rule. Triggers describe events that should trigger the automation rule. In this case, it is a person arriving home, which can be observed in Home Assistant by observing the state of Paulus changing from not_home to home.</p>
<p>The second line is the <strong>condition</strong>. Conditions are optional tests that can limit an automation rule to only work in your specific use cases. A condition will test against the current state of the system. This includes the current time, devices, people and other things like the sun. In this case, we only want to act when the sun has set.</p>
<p>The third part is the <strong>action</strong>, which will be performed when a rule is triggered and all conditions are met. For example, it can turn a light on, set the temperature on your thermostat or activate a scene.</p>
<p class="note">
The difference between a condition and a trigger can be confusing as they are very similar. Triggers look at the actions, while conditions look at the results: turning a light on versus a light being on.
</p>
<h3><a class="title-link" name="exploring-the-internal-state" href="#exploring-the-internal-state"></a> Exploring the internal state</h3>
<p>Automation rules interact directly with the internal state of Home Assistant, so youll need to familiarize yourself with it. Home Assistant exposes its current state via the developer tools. These are available at the bottom of the sidebar in the frontend. The <img src="/images/screenshots/developer-tool-states-icon.png" class="no-shadow" height="38" /> icon will show all currently available states. An entity can be anything. A light, a switch, a person and even the sun. A state consists of the following parts:</p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Description</th>
<th>Example</th>
</tr>
</thead>
<tbody>
<tr>
<td>Entity ID</td>
<td>Unique identifier for the entity.</td>
<td><code class="highlighter-rouge">light.kitchen</code></td>
</tr>
<tr>
<td>State</td>
<td>The current state of the device.</td>
<td><code class="highlighter-rouge">home</code></td>
</tr>
<tr>
<td>Attributes</td>
<td>Extra data related to the device and/or current state.</td>
<td><code class="highlighter-rouge">brightness</code></td>
</tr>
</tbody>
</table>
<p>State changes can be used as the source of triggers and the current state can be used in conditions.</p>
<p>Actions are all about calling services. To explore the available services open the <img src="/images/screenshots/developer-tool-services-icon.png" class="no-shadow" height="38" /> Services developer tool. Services allow to change anything. For example turn on a light, run a script or enable a scene. Each service has a domain and a name. For example the service <code class="highlighter-rouge">light.turn_on</code> is capable of turning on any light in your system. Services can be passed parameters to for example tell which device to turn on or what color to use.</p>
<h3><a href="/getting-started/automation-create-first/">Next step: Your First Automation »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/automation.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a class='active' href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,231 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Autostart on macOS - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup Home Assistant to launch on Apple macOS.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/autostart-macos/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Autostart on macOS">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/autostart-macos/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup Home Assistant to launch on Apple macOS.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Autostart on macOS">
<meta name="twitter:description" content="Instructions how to setup Home Assistant to launch on Apple macOS.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Autostart on macOS
</h1>
</header>
<hr class="divider">
<p>Setting up Home Assistant to run as a background service is simple; macOS will start Home Assistant on boot and make sure its always running.</p>
<p>To get Home Assistant installed as a background service, run:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>hass --script macos install
Home Assistant has been installed. Open it here: http://localhost:8123
</code></pre>
</div>
<p>Home Assistant will log to <code class="highlighter-rouge">~/Library/Logs/homeassistant.log</code></p>
<p>To uninstall the service, run:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>hass --script macos uninstall
Home Assistant has been uninstalled.
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/autostart-macos.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a class='active' href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,250 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Autostart on Synology NAS boot - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup Home Assistant to launch on boot on Synology NAS.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/autostart-synology/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Autostart on Synology NAS boot">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/autostart-synology/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup Home Assistant to launch on boot on Synology NAS.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Autostart on Synology NAS boot">
<meta name="twitter:description" content="Instructions how to setup Home Assistant to launch on boot on Synology NAS.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Autostart on Synology NAS Boot
</h1>
</header>
<hr class="divider">
<p>To get Home Assistant to automatically start when you boot your Synology NAS:</p>
<p>SSH into your synology &amp; login as admin or root</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">cd</span> /volume1/homeassistant
</code></pre>
</div>
<p>Create “homeassistant.conf” file using the following code</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="c"># only start this service after the httpd user process has started</span>
start on started httpd-user
<span class="c"># stop the service gracefully if the runlevel changes to 'reboot'</span>
stop on runlevel <span class="o">[</span>06]
<span class="c"># run the scripts as the 'http' user. Running as root (the default) is a bad ide</span>
<span class="c">#setuid admin</span>
<span class="c"># exec the process. Use fully formed path names so that there is no reliance on</span>
<span class="c"># the 'www' file is a node.js script which starts the foobar application.</span>
<span class="nb">exec</span> /bin/sh /volume1/homeassistant/hass-daemon start
</code></pre>
</div>
<p>Register the autostart</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ln -s homeassistant-conf /etc/init/homeassistant-conf
</code></pre>
</div>
<p>Make the relevant files executable:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>chmod -r 777 /etc/init/homeassistant-conf
</code></pre>
</div>
<p>Thats it - reboot your NAS and Home Assistant should automatically start</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/autostart-synology.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a class='active' href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,293 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Autostart using systemd - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup Home Assistant to launch on boot using systemd.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/autostart-systemd/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Autostart using systemd">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/autostart-systemd/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup Home Assistant to launch on boot using systemd.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Autostart using systemd">
<meta name="twitter:description" content="Instructions how to setup Home Assistant to launch on boot using systemd.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Autostart Using Systemd
</h1>
</header>
<hr class="divider">
<p>Newer linux distributions are trending towards using <code class="highlighter-rouge">systemd</code> for managing daemons. Typically, systems based on Fedora, ArchLinux, or Debian (8 or later) use <code class="highlighter-rouge">systemd</code>. This includes Ubuntu releases including and after 15.04, CentOS, and Red Hat. If you are unsure if your system is using <code class="highlighter-rouge">systemd</code>, you may check with the following command:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ps -p 1 -o <span class="nv">comm</span><span class="o">=</span>
</code></pre>
</div>
<p>If the preceding command returns the string <code class="highlighter-rouge">systemd</code>, you are likely using <code class="highlighter-rouge">systemd</code>.</p>
<p>If you want Home Assistant to be launched automatically, an extra step is needed to setup <code class="highlighter-rouge">systemd</code>. You need a service file to control Home Assistant with <code class="highlighter-rouge">systemd</code>. If you are using a Raspberry Pi with Raspbian then replace the <code class="highlighter-rouge">[your user]</code> with <code class="highlighter-rouge">pi</code> otherwise use your user you want to run Home Assistant. <code class="highlighter-rouge">ExecStart</code> contains the path to <code class="highlighter-rouge">hass</code> and this may vary. Check with <code class="highlighter-rouge">whereis hass</code> for the location.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>su -c <span class="s1">'cat &lt;&lt;EOF &gt;&gt; /etc/systemd/system/home-assistant@[your user].service
[Unit]
Description=Home Assistant
After=network.target
[Service]
Type=simple
User=%i
ExecStart=/usr/bin/hass
[Install]
WantedBy=multi-user.target
EOF'</span>
</code></pre>
</div>
<p>If youve setup Home Assistant in virtualenv following the guide the following template should work for you.</p>
<div class="highlighter-rouge"><pre class="highlight"><code>[Unit]
Description=Home Assistant
After=network.target
[Service]
Type=simple
User=hass
ExecStartPre=source /srv/hass/bin/activate
ExecStart=/srv/hass/bin/hass -c "/home/hass/.homeassistant"
[Install]
WantedBy=multi-user.target
</code></pre>
</div>
<p>There is also another <a href="https://raw.githubusercontent.com/home-assistant/home-assistant/master/script/home-assistant%40.service">sample service file</a> available. To use this one, just download it.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo wget https://raw.githubusercontent.com/home-assistant/home-assistant/master/script/home-assistant%40.service -O /etc/systemd/system/home-assistant@[your user].service
</code></pre>
</div>
<p>You need to reload <code class="highlighter-rouge">systemd</code> to make the daemon aware of the new configuration. Enable and launch Home Assistant after that.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo systemctl --system daemon-reload
<span class="gp">$ </span>sudo systemctl <span class="nb">enable </span>home-assistant@[your user]
<span class="gp">$ </span>sudo systemctl start home-assistant@[your user]
</code></pre>
</div>
<p>If everything went well, <code class="highlighter-rouge">sudo systemctl start home-assistant@[your user]</code> should give you a positive feedback.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo systemctl status home-assistant@[your user] -l
● home-assistant@fab.service - Home Assistant <span class="k">for</span> <span class="o">[</span>your user]
Loaded: loaded <span class="o">(</span>/etc/systemd/system/home-assistant@[your user].service; enabled; vendor preset: disabled<span class="o">)</span>
Active: active <span class="o">(</span>running<span class="o">)</span> since Sat 2016-03-26 12:26:06 CET; 13min ago
Main PID: 30422 <span class="o">(</span>hass<span class="o">)</span>
CGroup: /system.slice/system-home<span class="se">\x</span>2dassistant.slice/home-assistant@[your user].service
├─30422 /usr/bin/python3 /usr/bin/hass
└─30426 /usr/bin/python3 /usr/bin/hass
<span class="o">[</span>...]
</code></pre>
</div>
<p>To get Home Assistants logging output, simple use <code class="highlighter-rouge">journalctl</code>.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>journalctl -f -u home-assistant@[your user]
</code></pre>
</div>
<p>Because the log can scroll quite quickly, you might want to open a second terminal to view only the errors:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>journalctl -f -u home-assistant@[your user] | grep -i <span class="s1">'error'</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/autostart-systemd.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a class='active' href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,232 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Autostart using Upstart - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup Home Assistant to launch on boot using Upstart.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/autostart-upstart/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Autostart using Upstart">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/autostart-upstart/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup Home Assistant to launch on boot using Upstart.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Autostart using Upstart">
<meta name="twitter:description" content="Instructions how to setup Home Assistant to launch on boot using Upstart.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Autostart Using Upstart
</h1>
</header>
<hr class="divider">
<p>Many linux distributions use the Upstart system (or similar) for managing daemons. Typically, systems based on Debian 7 or previous use Upstart. This includes Ubuntu releases before 15.04. If you are unsure if your system is using Upstart, you may check with the following command:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ps -p 1 -o <span class="nv">comm</span><span class="o">=</span>
</code></pre>
</div>
<p>If the preceding command returns the string <code class="highlighter-rouge">init</code>, you are likely using Upstart.</p>
<p>Upstart will launch init scripts that are located in the directory <code class="highlighter-rouge">/etc/init.d/</code>. A sample init script for systems using Upstart is <a href="https://raw.githubusercontent.com/home-assistant/home-assistant/dev/script/hass-daemon">maintained by this project</a>.</p>
<p>To install this script, download it, tweak it to you liking, and install it by following the directions in the header. This script will setup Home Assistant to run when the system boots. To start/stop Home Assistant manually, issue the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo service hass-daemon start
<span class="gp">$ </span>sudo service hass-daemon stop
</code></pre>
</div>
<p>When running Home Assistant with this script, the configuration directory will be located at <code class="highlighter-rouge">/var/opt/homeassistant</code>. This directory will contain a verbose log rather than simply an error log.</p>
<p>When running daemons, it is good practice to have the daemon run under its own user name rather than the default users name. Instructions for setting this up are outside the scope of this document.</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/autostart-upstart.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a class='active' href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,220 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Autostart Home Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup Home Assistant to launch on start.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/autostart/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Autostart Home Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/autostart/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup Home Assistant to launch on start.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Autostart Home Assistant">
<meta name="twitter:description" content="Instructions how to setup Home Assistant to launch on start.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Autostart Home Assistant
</h1>
</header>
<hr class="divider">
<p>Once you get started with Home Assistant you want it to start automatically when you launch your machine. To help you get started weve compiled a few guides for different systems.</p>
<ul>
<li><a href="/getting-started/autostart-systemd/">Linux - systemd</a></li>
<li><a href="/getting-started/autostart-upstart/">Linux - Upstart</a></li>
<li><a href="/getting-started/autostart-macos/">OS X</a></li>
<li><a href="/getting-started/autostart-synology/">Synology NAS</a></li>
</ul>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/autostart.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a class='active' href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,267 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Setup basic information - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Setting up the basic info of Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/basic/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Setup basic information">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/basic/">
<meta property="og:type" content="website">
<meta property="og:description" content="Setting up the basic info of Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Setup basic information">
<meta name="twitter:description" content="Setting up the basic info of Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Setup Basic Information
</h1>
</header>
<hr class="divider">
<p>By default, Home Assistant will try to detect your location from IP address geolocation. Home Assistant will automatically select a temperature unit and time zone based on this location. You can overwrite this by adding the following information to your <code class="highlighter-rouge">configuration.yaml</code>:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">homeassistant</span><span class="pi">:</span>
<span class="c1"># Omitted values in this section will be auto detected using freegeoip.io</span>
<span class="c1"># Location required to calculate the time the sun rises and sets</span>
<span class="s">latitude</span><span class="pi">:</span> <span class="s">32.87336</span>
<span class="s">longitude</span><span class="pi">:</span> <span class="s">117.22743</span>
<span class="c1"># Impacts weather/sunrise data (altitude above sea level in meters) </span>
<span class="s">elevation</span><span class="pi">:</span> <span class="s">430</span>
<span class="c1"># 'metric' for Metric, 'imperial' for Imperial</span>
<span class="s">unit_system</span><span class="pi">:</span> <span class="s">metric</span>
<span class="c1"># Pick yours from here:</span>
<span class="c1"># http://en.wikipedia.org/wiki/List_of_tz_database_time_zones</span>
<span class="s">time_zone</span><span class="pi">:</span> <span class="s">America/Los_Angeles</span>
<span class="c1"># Name of the location where Home Assistant is running</span>
<span class="s">name</span><span class="pi">:</span> <span class="s">Home</span>
</code></pre>
</div>
<h3><a class="title-link" name="password-protecting-the-web-interface" href="#password-protecting-the-web-interface"></a> Password protecting the web interface</h3>
<p>First, youll want to add a password for the Home Assistant web interface. Use your favourite text editor to open <code class="highlighter-rouge">configuration.yaml</code> and edit the <code class="highlighter-rouge">http</code> section:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">http</span><span class="pi">:</span>
<span class="s">api_password</span><span class="pi">:</span> <span class="s">YOUR_PASSWORD</span>
</code></pre>
</div>
<p class="note warning">
If you decide to expose your Home Assistant instance to the internet and forget to set a password, your installation could be accessed by everybody.
</p>
<p>See the <a href="/components/http/">HTTP component documentation</a> for more options, such as the use of HTTPS encryption.</p>
<h3><a class="title-link" name="setting-up-your-phone-or-tablet" href="#setting-up-your-phone-or-tablet"></a> Setting up your phone or tablet</h3>
<p>Home Assistant runs as a self-hosted web application and can be pinned to your home screen (with the new W3C standard). If youre on Android, follow <a href="/getting-started/android/">the visual guide</a>. For other devices, open Home Assistant on your mobile browser and tap the “Add to Home Screen” (or similar) option.</p>
<h3><a class="title-link" name="remote-access" href="#remote-access"></a> Remote access</h3>
<p>If youre interested in logging in to Home Assistant while away, youll have to make your instance remotely accessible.</p>
<p>The most common approach is to set up port forwarding from your router to port 8123 on the computer that is hosting Home Assistant. General instructions on how to do this can be found by searching <code class="highlighter-rouge">&lt;router model&gt; port forwarding instructions</code>.</p>
<p>A problem with making a port accessible is that some Internet Service Providers only offer dynamic IPs. This can cause you to lose access to Home Assistant while away. You can solve this by using a free Dynamic DNS service like <a href="https://www.duckdns.org/">DuckDNS</a>.</p>
<p>Remember: just putting a port up is not secure. You should definitely consider encrypting your traffic if you are accessing your Home Assistant installation remotely. For details please check the <a href="/blog/2015/12/13/setup-encryption-using-lets-encrypt/">set up encryption using Lets Encrypt</a> blog post.</p>
<p>If you want the very best security, check out <a href="/cookbook/tor_configuration/">the instructions how to use Tor to access your home</a>.</p>
<h3><a href="/getting-started/devices/">Next step: Setting up devices »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/basic.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a class='active' href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,425 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Browsers - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Browser Compatibility List">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/browsers/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Browsers">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/browsers/">
<meta property="og:type" content="website">
<meta property="og:description" content="Browser Compatibility List">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Browsers">
<meta name="twitter:description" content="Browser Compatibility List">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Browsers
</h1>
</header>
<hr class="divider">
<p>Home Assistant requires a web browser to show the frontend. Not all browsers include features which are needed to use the Home Assistant frontend. If you are running into trouble, check the list below.</p>
<p>We dont test the web interface against all available browsers but this page tracks different browsers on various operating systems and should help you to pick a browser which works.</p>
<p>We would appreciate if you help to keep this page up-to-date and add feedback.</p>
<h2><a class="title-link" name="microsoft-windows" href="#microsoft-windows"></a> Microsoft Windows</h2>
<table>
<thead>
<tr>
<th style="text-align: left">Browser</th>
<th style="text-align: left">Release</th>
<th style="text-align: left">State</th>
<th style="text-align: left">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left">Internet Explorer (<a href="http://windows.microsoft.com/en-us/internet-explorer/download-ie">IE</a>)</td>
<td style="text-align: left">11</td>
<td style="text-align: left">partially</td>
<td style="text-align: left">Streaming updates not working. Display issues</td>
</tr>
<tr>
<td style="text-align: left">Microsoft <a href="https://www.microsoft.com/en-us/windows/microsoft-edge">Edge</a></td>
<td style="text-align: left">deli. Win 10</td>
<td style="text-align: left">partially</td>
<td style="text-align: left">Streaming updates not working.</td>
</tr>
<tr>
<td style="text-align: left"><a href="https://www.google.com/chrome/">Chrome</a></td>
<td style="text-align: left">50.0.2661.102</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="https://www.mozilla.org/en-US/firefox/">Firefox</a></td>
<td style="text-align: left">43.0.1</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="https://iridiumbrowser.de/">Iridium</a></td>
<td style="text-align: left">48.2</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
</tbody>
</table>
<h2><a class="title-link" name="macos" href="#macos"></a> macOS</h2>
<table>
<thead>
<tr>
<th style="text-align: left">Browser</th>
<th style="text-align: left">Release</th>
<th style="text-align: left">State</th>
<th style="text-align: left">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><a href="http://www.apple.com/safari/">Safari</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
</tbody>
</table>
<h2><a class="title-link" name="linux" href="#linux"></a> Linux</h2>
<table>
<thead>
<tr>
<th style="text-align: left">Browser</th>
<th style="text-align: left">Release</th>
<th style="text-align: left">State</th>
<th style="text-align: left">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><a href="https://www.mozilla.org/en-US/firefox/">Firefox</a></td>
<td style="text-align: left">49.0</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://midori-browser.org/">Midori</a></td>
<td style="text-align: left">0.5.11</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="https://www.chromium.org/">Chromium</a></td>
<td style="text-align: left">53.0.2785.143</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://conkeror.org/">Conkeror</a></td>
<td style="text-align: left">1.0.2</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="https://konqueror.org/">Konqueror</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">unknown</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://www.uzbl.org/">Uzbl</a></td>
<td style="text-align: left">0.9.0</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://www.opera.com/">Opera</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">unknown</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://lynx.browser.org/">Lynx</a></td>
<td style="text-align: left">2.12</td>
<td style="text-align: left">fails</td>
<td style="text-align: left">loads empty page</td>
</tr>
<tr>
<td style="text-align: left"><a href="http://elinks.or.cz/">elinks</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">fails</td>
<td style="text-align: left">page with manifest and import</td>
</tr>
<tr>
<td style="text-align: left"><a href="http://w3m.sourceforge.net/">w3m</a></td>
<td style="text-align: left">0.5.3</td>
<td style="text-align: left">fails</td>
<td style="text-align: left">display the icon shown while loading HA</td>
</tr>
<tr>
<td style="text-align: left"><a href="https://wiki.gnome.org/Apps/Web">Epiphany</a></td>
<td style="text-align: left">3.18.5</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="http://surf.suckless.org/">surf</a></td>
<td style="text-align: left">0.7</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
</tbody>
</table>
<h2><a class="title-link" name="android" href="#android"></a> Android</h2>
<table>
<thead>
<tr>
<th style="text-align: left">Browser</th>
<th style="text-align: left">Release</th>
<th style="text-align: left">State</th>
<th style="text-align: left">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><a href="https://www.google.com/chrome/">Chrome</a></td>
<td style="text-align: left">50.0.2661.89</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
<tr>
<td style="text-align: left"><a href="https://www.mozilla.org/en-US/firefox/">Firefox</a></td>
<td style="text-align: left">46.0.1</td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
</tbody>
</table>
<h2><a class="title-link" name="ios" href="#ios"></a> iOS</h2>
<table>
<thead>
<tr>
<th style="text-align: left">Browser</th>
<th style="text-align: left">Release</th>
<th style="text-align: left">State</th>
<th style="text-align: left">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><a href="http://www.apple.com/safari/">Safari</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">works</td>
<td style="text-align: left">Can also be added to desktop</td>
</tr>
<tr>
<td style="text-align: left"><a href="https://www.google.com/chrome/">Chrome</a></td>
<td style="text-align: left"> </td>
<td style="text-align: left">works</td>
<td style="text-align: left"> </td>
</tr>
</tbody>
</table>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/browsers.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a class='active' href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,254 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Configuring Home Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Configuring Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/configuration/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Configuring Home Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/configuration/">
<meta property="og:type" content="website">
<meta property="og:description" content="Configuring Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Configuring Home Assistant">
<meta name="twitter:description" content="Configuring Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Configuring Home Assistant
</h1>
</header>
<hr class="divider">
<p>When launched for the first time, Home Assistant will write a default configuration file enabling the web interface and device discovery. It can take up to a minute for your devices to be discovered and appear in the user interface.</p>
<p>The location of the folder differs between operating systems:</p>
<table>
<thead>
<tr>
<th>OS</th>
<th>Path</th>
</tr>
</thead>
<tbody>
<tr>
<td>OS X</td>
<td><code class="highlighter-rouge">~/.homeassistant</code></td>
</tr>
<tr>
<td>Linux</td>
<td><code class="highlighter-rouge">~/.homeassistant</code></td>
</tr>
<tr>
<td>Windows</td>
<td><code class="highlighter-rouge">%APPDATA%/.homeassistant</code></td>
</tr>
</tbody>
</table>
<p>If you want to use a different folder for configuration, use the config command line parameter: <code class="highlighter-rouge">hass --config path/to/config</code>.</p>
<p>Inside your configuration folder is the file <code class="highlighter-rouge">configuration.yaml</code>. This is the main file that contains components to be loaded with their configurations. Throughout the documentation you will find snippets that you can add to your configuration file to enable functionality.</p>
<p class="note">
You will have to restart Home Assistant for changes to <code class="highlighter-rouge">configuration.yaml</code> to take effect.
</p>
<p>If you run into trouble while configuring Home Assistant, have a look at the <a href="/getting-started/troubleshooting-configuration/">configuration troubleshooting page</a> and at the <a href="/cookbook/#example-configurationyaml">configuration.yaml examples</a>.</p>
<p class="note tip">
Test any changes to your configuration files from the command line with <code class="highlighter-rouge">hass --script check_config</code>. This script allows you to test changes without the need to restart Home Assistant.
</p>
<h3><a href="/getting-started/yaml/">Next step: Get familiar with YAML »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/configuration.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a class='active' href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,284 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Customizing devices and services - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Simple customization for devices and services in the frontend.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/customizing-devices/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Customizing devices and services">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/customizing-devices/">
<meta property="og:type" content="website">
<meta property="og:description" content="Simple customization for devices and services in the frontend.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Customizing devices and services">
<meta name="twitter:description" content="Simple customization for devices and services in the frontend.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Customizing Devices and Services
</h1>
</header>
<hr class="divider">
<p>By default, all of your devices will be visible and have a default icon determined by their domain. You can customize the look and feel of your front page by altering some of these parameters. This can be done by overriding attributes of specific entities.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">homeassistant</span><span class="pi">:</span>
<span class="s">name</span><span class="pi">:</span> <span class="s">Home</span>
<span class="s">unit_system</span><span class="pi">:</span> <span class="s">metric</span>
<span class="c1"># etc</span>
<span class="s">customize</span><span class="pi">:</span>
<span class="c1"># Only the 'entity_id' is required. All other options are optional.</span>
<span class="s">sensor.living_room_motion</span><span class="pi">:</span>
<span class="s">hidden</span><span class="pi">:</span> <span class="s">true</span>
<span class="s">thermostat.family_roomfamily_room</span><span class="pi">:</span>
<span class="s">entity_picture</span><span class="pi">:</span> <span class="s">https://example.com/images/nest.jpg</span>
<span class="s">friendly_name</span><span class="pi">:</span> <span class="s">Nest</span>
<span class="s">switch.wemo_switch_1</span><span class="pi">:</span>
<span class="s">friendly_name</span><span class="pi">:</span> <span class="s">Toaster</span>
<span class="s">entity_picture</span><span class="pi">:</span> <span class="s">/local/toaster.jpg</span>
<span class="s">switch.wemo_switch_2</span><span class="pi">:</span>
<span class="s">friendly_name</span><span class="pi">:</span> <span class="s">Kitchen kettle</span>
<span class="s">icon</span><span class="pi">:</span> <span class="s">mdi:kettle</span>
<span class="s">switch.rfxtrx_switch</span><span class="pi">:</span>
<span class="s">assumed_state</span><span class="pi">:</span> <span class="s">false</span>
</code></pre>
</div>
<h3><a class="title-link" name="possible-values" href="#possible-values"></a> Possible values</h3>
<table>
<thead>
<tr>
<th>Attribute</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code class="highlighter-rouge">friendly_name</code></td>
<td>Name of the entity</td>
</tr>
<tr>
<td><code class="highlighter-rouge">hidden</code></td>
<td>Set to <code class="highlighter-rouge">true</code> to hide the entity.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">entity_picture</code></td>
<td>Url to use as picture for entity</td>
</tr>
<tr>
<td><code class="highlighter-rouge">icon</code></td>
<td>Any icon from <a href="http://MaterialDesignIcons.com">MaterialDesignIcons.com</a>. Prefix name with <code class="highlighter-rouge">mdi:</code>, ie <code class="highlighter-rouge">mdi:home</code>.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">assumed_state</code></td>
<td>For switches with an assumed state two buttons are shown (turn off, turn on) instead of a switch. By setting <code class="highlighter-rouge">assumed_state</code> to <code class="highlighter-rouge">false</code> you will get the default switch icon.</td>
</tr>
<tr>
<td><code class="highlighter-rouge">sensor_class</code></td>
<td>Sets the <a href="/components/binary_sensor/">class of the sensor</a>, changing the device state and icon that is displayed on the UI (see below).</td>
</tr>
</tbody>
</table>
<h3><a class="title-link" name="reloading-customize" href="#reloading-customize"></a> Reloading customize</h3>
<p>Home Assistant offers a service to reload the core configuration while Home Assistant is running called <code class="highlighter-rouge">homeassistant/reload_core_config</code>. This allows you to change your customize section and see it being applied without having to restart Home Assistant. To call this service, go to the <img src="/images/screenshots/developer-tool-services-icon.png" alt="service developer tool icon" class="no-shadow" height="38" /> service developer tools, select the service <code class="highlighter-rouge">homeassistant/reload_core_config</code> and click “Call Service”.</p>
<p class="note warning">
New customize information will be applied the next time the state of the entity gets updated.
</p>
<h3><a href="/getting-started/presence-detection/">Next step: Setting up presence detection »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/customizing-devices.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a class='active' href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,271 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Adding devices to Home Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Steps to help you get your devices in Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/devices/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Adding devices to Home Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/devices/">
<meta property="og:type" content="website">
<meta property="og:description" content="Steps to help you get your devices in Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Adding devices to Home Assistant">
<meta name="twitter:description" content="Steps to help you get your devices in Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Adding Devices to Home Assistant
</h1>
</header>
<hr class="divider">
<p>Home Assistant will be able to automatically discover many devices and services available on your network if you have <a href="/components/discovery/">the discovery component</a> enabled (the default setting).</p>
<p>See the <a href="/components/">components overview page</a> to find installation instructions for your devices and services. If you cant find support for your favorite device or service, <a href="/developers/add_new_platform/">consider adding support</a>.</p>
<p>Usually every entity needs its own entry in the <code class="highlighter-rouge">configuration.yaml</code> file. There are two styles for multiple entries:</p>
<h4><a class="title-link" name="style-1-collect-every-entity-under-the-parent" href="#style-1-collect-every-entity-under-the-parent"></a> Style 1: Collect every entity under the “parent”</h4>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">sensor</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s2">"</span><span class="s">home/bedroom/temperature"</span>
<span class="s">name</span><span class="pi">:</span> <span class="s2">"</span><span class="s">MQTT</span><span class="nv"> </span><span class="s">Sensor</span><span class="nv"> </span><span class="s">1"</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s2">"</span><span class="s">home/kitchen/temperature"</span>
<span class="s">name</span><span class="pi">:</span> <span class="s2">"</span><span class="s">MQTT</span><span class="nv"> </span><span class="s">Sensor</span><span class="nv"> </span><span class="s">2"</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">rest</span>
<span class="s">resource</span><span class="pi">:</span> <span class="s">http://IP_ADDRESS/ENDPOINT</span>
<span class="s">switch</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">vera</span>
</code></pre>
</div>
<h4><a class="title-link" name="style-2-list-each-device-separately" href="#style-2-list-each-device-separately"></a> Style 2: List each device separately</h4>
<p>You need to append numbers or strings to differentiate the entries, as in the example below. The appended number or string must be unique.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">media_player livingroom</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">mpd</span>
<span class="s">server</span><span class="pi">:</span> <span class="s">IP_ADDRESS</span>
<span class="s">media_player kitchen</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">plex</span>
<span class="s">camera 1</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">generic</span>
<span class="s">camera 2</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">mjpeg</span>
</code></pre>
</div>
<h3><a class="title-link" name="grouping-devices" href="#grouping-devices"></a> Grouping devices</h3>
<p>Once you have several devices set up, it is time to organize them into groups.<br />
Each group consists of a name and a list of entity IDs. Entity IDs can be retrieved from the web interface by using the Set State page in the Developer Tools (<img src="https://cdn.rawgit.com/Templarian/MaterialDesign/master/icons/svg/code-tags.svg" alt="&lt;&gt;" />).</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry showing two styles</span>
<span class="s">group</span><span class="pi">:</span>
<span class="s">living_room</span><span class="pi">:</span> <span class="s">light.table_lamp, switch.ac</span>
<span class="s">bedroom</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">light.bedroom</span>
<span class="pi">-</span> <span class="s">media_player.nexus_player</span>
</code></pre>
</div>
<p>For more details please check the <a href="https://home-assistant.io/components/group/">Group</a> page.</p>
<h3><a href="/getting-started/customizing-devices/">Next step: Customizing devices and services »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/devices.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a class='active' href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

257
getting-started/index.html Normal file
View file

@ -0,0 +1,257 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Getting Started - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Step by step guide to get started with Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Getting Started">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/">
<meta property="og:type" content="website">
<meta property="og:description" content="Step by step guide to get started with Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Getting Started">
<meta name="twitter:description" content="Step by step guide to get started with Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Getting Started
</h1>
</header>
<hr class="divider">
<p>Below you can find the standard instructions. See the sidebar for installation instructions for specific platforms. If youre running a Linux-based platform, we suggest you follow the <a href="/getting-started/installation-virtualenv/">VirtualEnv Linux instructions</a> to avoid using root.</p>
<p>Installing and running Home Assistant on your local machine is easy. The only requirement is that you have <a href="https://www.python.org/downloads/">Python</a> installed. For Windows we require at least Python 3.5 and for other operating systems at least Python 3.4.2. Once installed, execute the following code in a console:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>pip3 install homeassistant
<span class="gp">$ </span>hass --open-ui
</code></pre>
</div>
<p>Running these commands will:</p>
<ul>
<li>Install Home Assistant</li>
<li>Launch Home Assistant and serve the web interface on <a href="http://localhost:8123">http://localhost:8123</a></li>
</ul>
<p>If you prefer to watch a video tutorial, <a href="https://github.com/tktino">tktino</a> has made some great ones:</p>
<ul>
<li><a href="https://www.youtube.com/watch?v=X27eVvuqwnY">Windows 10</a></li>
<li><a href="https://www.youtube.com/watch?v=hej6ipN86ls">Mac OS X</a></li>
<li><a href="https://www.youtube.com/watch?v=SXaAG1lGNH0">Ubuntu 14.04</a></li>
</ul>
<h3><a class="title-link" name="updating" href="#updating"></a> Updating</h3>
<p>To update Home Assistant to the latest release check the <a href="/getting-started/updating/">Updating section</a>.</p>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions</li>
<li><a href="https://gitter.im/home-assistant/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting</li>
</ul>
<h3><a class="title-link" name="whats-next" href="#whats-next"></a> Whats next?</h3>
<p>To see what Home Assistant can do, launch demo mode: <code class="highlighter-rouge">hass --demo-mode</code> or visit the <a href="/demo">demo page</a>.</p>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/index.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a class='active' href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,245 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Installation on Docker - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions to install Home Assistant on a Docker.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-docker/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Installation on Docker">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-docker/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions to install Home Assistant on a Docker.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Installation on Docker">
<meta name="twitter:description" content="Instructions to install Home Assistant on a Docker.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Installation on Docker
</h1>
</header>
<hr class="divider">
<p>Installation with Docker is straightforward. Adjust the following command so that <code class="highlighter-rouge">/path/to/your/config/</code> points at the folder where you want to store your config and run it:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>docker run -d --name<span class="o">=</span><span class="s2">"home-assistant"</span> -v /path/to/your/config:/config -v /etc/localtime:/etc/localtime:ro --net<span class="o">=</span>host homeassistant/home-assistant
</code></pre>
</div>
<p>This will launch Home Assistant and serve the web interface from port 8123 on your Docker host.</p>
<p class="note">
When using boot2docker on OS X you are unable to map the local time to your Docker container. Replace <code class="highlighter-rouge">-v /etc/localtime:/etc/localtime:ro</code> with <code class="highlighter-rouge">-e "TZ=America/Los_Angeles"</code> (replacing America/Los_Angeles with <a href="http://en.wikipedia.org/wiki/List_of_tz_database_time_zones">your timezone</a>)
</p>
<p>If you change the config you have to restart the server.
To do that you have 2 options.</p>
<ol>
<li>You can go to the <img src="/images/screenshots/developer-tool-services-icon.png" alt="service developer tool icon" class="no-shadow" height="38" /> service developer tools, select the service <code class="highlighter-rouge">homeassistant/restart</code> and click “Call Service”.</li>
<li>Or you can restart it from an terminal by running <code class="highlighter-rouge">docker restart home-assistant</code></li>
</ol>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many of the more commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions.</li>
<li><a href="https://gitter.im/home-assistant/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant.</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting.</li>
</ul>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-docker.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a class='active' href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,308 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Raspberry Pi All-In-One Installer - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Home Assistant is an open-source home automation platform running on Python 3.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-raspberry-pi-all-in-one/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Raspberry Pi All-In-One Installer">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-raspberry-pi-all-in-one/">
<meta property="og:type" content="website">
<meta property="og:description" content="">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Raspberry Pi All-In-One Installer">
<meta name="twitter:description" content="">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Raspberry Pi All-In-One Installer
</h1>
</header>
<hr class="divider">
<p>The <a href="https://github.com/home-assistant/fabric-home-assistant">Raspberry Pi All-In-One Installer</a> deploys a complete Home Assistant server including support for MQTT with websockets, Z-Wave, and the Open-Zwave Control Panel.</p>
<p>The only requirement is that you have a Raspberry Pi with a fresh installation of <a href="https://www.raspberrypi.org/downloads/raspbian/">Raspbian Jessie</a> connected to your network.</p>
<ul>
<li>Login to Raspberry Pi. For example with <code class="highlighter-rouge">ssh pi@your_raspberry_pi_ip</code></li>
<li>Run the following command</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>wget -Nnv https://raw.githubusercontent.com/home-assistant/fabric-home-assistant/master/hass_rpi_installer.sh <span class="o">&amp;&amp;</span> bash hass_rpi_installer.sh
</code></pre>
</div>
<p class="note warning">
Note this command is one-line and not run as sudo.
</p>
<p>Installation will take approx. 1-2 hours depending on the Raspberry Pi model the installer is being run against. The installer will identitfy what Raspberry PI hardware revision you are using and adjust commands accordingly. A complete log of the install is located at: <code class="highlighter-rouge">/home/pi/fabric-home-assistant/installation_report.txt</code> The installer has been updated to simply log any errors encountered, but resume installing. Please consult the “installation report” if your install encountered issues.</p>
<p><a href="http://www.bruhautomation.com">BRUH automation</a> has created <a href="https://www.youtube.com/watch?v=VGl3KTrYo6s">a tutorial video</a> explaining how to install Raspbian on your Raspberry Pi and install Home Assistant using the All-In-One Installer.</p>
<p>Once rebooted, your Raspberry Pi will be up and running with Home Assistant. You can access it at <a href="http://your_raspberry_pi_ip:8123">http://your_raspberry_pi_ip:8123</a>.</p>
<p>The Home Assistant configuration is located at <code class="highlighter-rouge">/home/hass/.homeassistant</code>. The <a href="https://virtualenv.pypa.io/en/latest/">virtualenv</a> with the Home Assistant installation is located at <code class="highlighter-rouge">/srv/hass/hass_venv</code>. As part of the secure installation, a new user (<strong>hass</strong>) is added to your Raspberry Pi to run Home Assistant. This is a system account and does not have login or other abilities by design. When editing your <code class="highlighter-rouge">configuration.yaml</code> files, you will need to run the commands with <code class="highlighter-rouge">sudo</code> or by switching user.</p>
<p class="note note">
<em>Windows users</em>: Setting up WinSCP to allow this seemlessly is at the end of this page.
</p>
<p>By default, installation makes use of a Python Virtualenv. If you wish to not follow this recommendation, you may add the flag <code class="highlighter-rouge">-n</code> to the end of the install command specified above.</p>
<p>The All-In-One Installer script will do the following automatically:</p>
<ul>
<li>Create all needed directories</li>
<li>Create needed service accounts</li>
<li>Install OS and Python dependencies</li>
<li>Setup a python virtualenv to run Home Assistant and components inside.</li>
<li>Run as <code class="highlighter-rouge">hass</code> service account</li>
<li>Install Home Assistant in a virtualenv</li>
<li>Build and install Mosquitto v1.4.9 from source with websocket support running on ports 1883 and 9001</li>
<li>Build and Install Python-openzwave in the Home Assistant virtualenv</li>
<li>Build openzwave-control-panel in <code class="highlighter-rouge">/srv/hass/src/open-zwave-control-panel</code></li>
<li>Add both Home Assistant and Mosquitto to systemd services to start at boot</li>
</ul>
<h3><a class="title-link" name="upgrading" href="#upgrading"></a> Upgrading</h3>
<p>To upgrade the All-In-One setup manually:</p>
<ul>
<li>Login to Raspberry Pi <code class="highlighter-rouge">ssh pi@your_raspberry_pi_ip</code></li>
<li>Change to hass user <code class="highlighter-rouge">sudo su -s /bin/bash hass</code></li>
<li>Change to virtual enviroment <code class="highlighter-rouge">source /srv/hass/hass_venv/bin/activate</code></li>
<li>Update HA <code class="highlighter-rouge">pip3 install --upgrade homeassistant</code></li>
<li>Type <code class="highlighter-rouge">exit</code> to logout the hass user and return to the <code class="highlighter-rouge">pi</code> user.</li>
</ul>
<p>To upgrade with fabric:</p>
<ul>
<li>Login to Raspberry Pi <code class="highlighter-rouge">ssh pi@your_raspberry_pi_ip</code></li>
<li>Change to <code class="highlighter-rouge">cd ~/fabric-home-assistant</code></li>
<li>Run <code class="highlighter-rouge">fab upgrade_homeassistant</code></li>
</ul>
<p>After upgrading, you can restart Home Assistant a few different ways:</p>
<ul>
<li>Restarting the Raspberry Pi <code class="highlighter-rouge">sudo reboot</code></li>
<li>Restarting the Home-Assistant Service <code class="highlighter-rouge">sudo systemctl restart home-assistant.service</code></li>
</ul>
<h3><a class="title-link" name="using-the-ozwcp-web-application" href="#using-the-ozwcp-web-application"></a> Using the OZWCP web application</h3>
<p>To launch the OZWCP web application:</p>
<ul>
<li>Make sure Home Assistant is not running! So stop that first</li>
<li>Login to Raspberry Pi <code class="highlighter-rouge">ssh pi@your_raspberry_pi_ip</code></li>
<li>Change to the ozwcp directory <code class="highlighter-rouge">cd /srv/hass/src/open-zwave-control-panel/</code></li>
<li>Launch the control panel <code class="highlighter-rouge">sudo ./ozwcp -p 8888</code></li>
<li>Open a web browser to <code class="highlighter-rouge">http://your_pi_ip:8888</code></li>
<li>Specify your zwave controller, for example <code class="highlighter-rouge">/dev/ttyACM0</code> and hit initialize</li>
</ul>
<p class="note warning">
Dont check the USB box regardless of using a USB based device.
</p>
<h3><a class="title-link" name="using-the-gpios" href="#using-the-gpios"></a> Using the GPIOs</h3>
<p>Please note that if you are using any components for Home Assistant that would use the GPIOs on the RPI, you will need to grant the default AiO user <code class="highlighter-rouge">hass</code> access to the GPIOs. Run the following command <code class="highlighter-rouge">sudo adduser hass gpio</code> while in a terminal session on your Pi. This is a one time configuration change to allow All In One Installer based Home Assistant access to the GPIOs.</p>
<h3><a class="title-link" name="winscp" href="#winscp"></a> WinSCP</h3>
<p>If you are Windows users who is using <a href="https://winscp.net/">WinSCP</a>, please note that after running the installer, you will need to modify settings allowing you to “switch users” to edit your configuration files. The needed change within WinSCP is: <strong>Environment</strong> -&gt; <strong>SCP/Shell</strong> -&gt; <strong>Shell</strong> and set it to <code class="highlighter-rouge">sudo su -</code>.</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-raspberry-pi-all-in-one.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a class='active' href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,391 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>HASSbian image for Raspberry Pi - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-raspberry-pi-image/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="HASSbian image for Raspberry Pi">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-raspberry-pi-image/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="HASSbian image for Raspberry Pi">
<meta name="twitter:description" content="Instructions to flash the Home Assistant HASSbian image on a Raspberry Pi.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
HASSbian Image for Raspberry Pi
</h1>
</header>
<hr class="divider">
<p>The easiest way to install Home Assistant on your Raspberry Pi is by using HASSbian: a Raspberry Pi image with Home Assistant built-in. The image will install the latest version of Home Assistant on initial boot (~5 minutes).</p>
<ol>
<li><a href="https://github.com/home-assistant/pi-gen/releases">Download the latest image</a></li>
<li>Flash the image to an SD card:
<ul>
<li><a href="https://www.raspberrypi.org/documentation/installation/installing-images/windows.md">Windows</a></li>
<li><a href="https://www.raspberrypi.org/documentation/installation/installing-images/linux.md">Linux</a></li>
<li><a href="https://www.raspberrypi.org/documentation/installation/installing-images/mac.md">Mac OS</a></li>
</ul>
</li>
<li>Ensure your Raspberry Pi has access to the internet.</li>
<li>Insert SD card to Raspberry Pi and turn it on. Initial installation of Home Assistant will take about 5 minutes.</li>
</ol>
<p>These instructions are also available as a <a href="https://www.youtube.com/watch?v=iIz6XqDwHEk">video</a>.</p>
<p>Home Assistant will now be available by navigating with a browser to <code class="highlighter-rouge">http://ip-address-of-pi:8123</code>. The default username is <code class="highlighter-rouge">pi</code> and password is <code class="highlighter-rouge">raspberry</code> (please change this by running <code class="highlighter-rouge">passwd</code>). The Home Assistant configuration is located at <code class="highlighter-rouge">/home/homeassistant/.homeassistant/</code>.</p>
<p>The following extras are included on the image:</p>
<ul>
<li>GPIO pins are ready to use.</li>
<li>Mosquitto MQTT broker is installed (not activated by default).</li>
<li>Bluetooth is ready to use (supported models only, no Bluetooth LE).</li>
</ul>
<p>Some extra tips:</p>
<ul>
<li>Check out the list of <a href="/getting-started/installation-raspberry-pi/#raspberry-pi-hardware-specific-components">Raspberry Pi hardware specific components</a>.</li>
<li>Z-Wave support can be installed by following the <a href="/getting-started/z-wave/">Getting started instructions for Z-Wave</a>.</li>
</ul>
<h3><a class="title-link" name="technical-details" href="#technical-details"></a> Technical Details</h3>
<ul>
<li>Home Assistant is installed in a virtual Python environment at <code class="highlighter-rouge">/src/homeassistant/</code></li>
<li>Home Assistant will be started as a service run by the user <code class="highlighter-rouge">homeassistant</code></li>
<li>The configuration is located at <code class="highlighter-rouge">/home/homeassistant/.homeassistant</code></li>
</ul>
<h3><a class="title-link" name="managing-your-hassbian-installation" href="#managing-your-hassbian-installation"></a> Managing your HASSbian installation</h3>
<h4><a class="title-link" name="login-to-hassbian-on-the-raspberry-pi" href="#login-to-hassbian-on-the-raspberry-pi"></a> Login to HASSbian on the Raspberry Pi</h4>
<p>To login to your Raspberry Pi running HASSbian your going to be using a ssh client. Depending on your platform there are several alternatives for doing this. Linux and Max OS generally have a ssh client installed. Windows users are recommended to download and install the ssh client <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html">Putty</a>.</p>
<p>Connect to the Raspberry Pi over ssh. Default user name is <code class="highlighter-rouge">pi</code> and password is <code class="highlighter-rouge">raspberry</code>.<br />
Linux and Mac OS users execute the following command in a terminal.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ssh pi@ip-address-of-pi
</code></pre>
</div>
<p>Windows users start <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html">Putty</a>, enter the IP address of the Raspberry Pi in the <em>Host name</em> field and port 22 in the <em>Port</em> field. Then click <em>Open</em> and a terminal window will open. Enter the credentials. Default user name is <code class="highlighter-rouge">pi</code> and password is <code class="highlighter-rouge">raspberry</code>.</p>
<h4><a class="title-link" name="startstoprestart-home-assistant-on-hassbian" href="#startstoprestart-home-assistant-on-hassbian"></a> Start/Stop/Restart Home Assistant on HaSSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo systemctl stop home-assistant@homeassistant.service
</code></pre>
</div>
<p>Replace <code class="highlighter-rouge">stop</code> with <code class="highlighter-rouge">start</code> or <code class="highlighter-rouge">restart</code> to get the desired functionality.
To get the current state of the <code class="highlighter-rouge">homeassistant.service</code> replace <code class="highlighter-rouge">stop</code> with <code class="highlighter-rouge">status</code>.</p>
<h4><a class="title-link" name="update-home-assistant-on-hassbian" href="#update-home-assistant-on-hassbian"></a> Update Home Assistant on HASSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo systemctl stop home-assistant@homeassistant.service
<span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">source</span> /srv/homeassistant/bin/activate
<span class="gp">$ </span>pip3 install --upgrade homeassistant
<span class="gp">$ </span><span class="nb">exit</span>
<span class="gp">$ </span>sudo systemctl start home-assistant@homeassistant.service
</code></pre>
</div>
<p>This will in order do the following:</p>
<ul>
<li>Stop the Home Assistant service running on HASSbian</li>
<li>Open a shell as the <code class="highlighter-rouge">homeassistant</code> user running the Homeassistant service and that has ownership over the Home Assistant installation.</li>
<li>Change into the virtual Python environment at <code class="highlighter-rouge">/src/homeassistant/</code> containing the Home Assistant installation.</li>
<li>Upgrade the Home Assistant installation to the latest release.</li>
<li>Exit the shell and return to the <code class="highlighter-rouge">pi</code> user.</li>
<li>Restart the Home Assistant service.</li>
</ul>
<h4><a class="title-link" name="manually-launch-home-assistant-on-hassbian" href="#manually-launch-home-assistant-on-hassbian"></a> Manually launch Home Assistant on HASSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">source</span> /srv/homeassistant/bin/activate
<span class="gp">$ </span>hass
</code></pre>
</div>
<p>This will start Home Assistant in your shell and output anything that ends up in the log and more into the console. This will fail if the Home Assistant service is already running so dont forget to <a href="/getting-started/installation-raspberry-pi-image/#startstoprestart-home-assistant-on-hassbian">stop</a> it first.</p>
<h4><a class="title-link" name="check-your-configuration-on-hassbian" href="#check-your-configuration-on-hassbian"></a> Check your configuration on HASSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">source</span> /srv/homeassistant/bin/activate
<span class="gp">$ </span>hass --script check_config
</code></pre>
</div>
<p>This will output any errors in your configuration files to console.</p>
<h4><a class="title-link" name="read-the-home-assistant-log-file-on-hassbian" href="#read-the-home-assistant-log-file-on-hassbian"></a> Read the Home Assistant log file on HASSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">cd</span> /home/homeassistant/.homeassistant
<span class="gp">$ </span>nano homeassistant.log
</code></pre>
</div>
<p>This will in order do the following:</p>
<ul>
<li>Open a shell as the <code class="highlighter-rouge">homeassistant</code> user.</li>
<li>Change directory to the Home Assistant configuration directory.</li>
<li>Open the log file in the nano editor.</li>
</ul>
<p>Optionaly, you can also view the log with <code class="highlighter-rouge">journalctl</code>.
Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo journalctl -fu home-assistant@homeassistant.service
</code></pre>
</div>
<h4><a class="title-link" name="edit-the-home-assistant-configuration-on-hassbian" href="#edit-the-home-assistant-configuration-on-hassbian"></a> Edit the Home Assistant configuration on HASSbian</h4>
<p>Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">cd</span> /home/homeassistant/.homeassistant
<span class="gp">$ </span>nano configuration.yaml
</code></pre>
</div>
<p>This will in order do the following:</p>
<ul>
<li>Open a shell as the <code class="highlighter-rouge">homeassistant</code> user.</li>
<li>Change directory to the Home Assistant configuration directory.</li>
<li>Open the configuration file in the nano editor.</li>
</ul>
<p>Its generally recommended that you read the <a href="/getting-started/configuration/">Getting started</a> guide for how to configure Home Assistant.</p>
<h4><a class="title-link" name="upgrade-and-update-hassbian" href="#upgrade-and-update-hassbian"></a> Upgrade and update HASSbian</h4>
<p>HASSbian is based on Raspbian and uses the same repositories. Any changes to Raspbian will be reflected in HASSbian. To update and upgrade system packages and installed software (excluding Home Assistant) do the following.
Log in as the <code class="highlighter-rouge">pi</code> account and execute the following commands:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get update
<span class="gp">$ </span>sudo apt-get upgrade
</code></pre>
</div>
<p>Press <code class="highlighter-rouge">Y</code> to confirm that you would like to continue.</p>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many of the more commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions.</li>
<li><a href="https://gitter.im/home-assistant/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant.</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting.</li>
</ul>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-raspberry-pi-image.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a class='active' href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,380 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Manual installation on a Raspberry Pi - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions to install Home Assistant on a Raspberry Pi runnning Raspbian Lite.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-raspberry-pi/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Manual installation on a Raspberry Pi">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-raspberry-pi/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions to install Home Assistant on a Raspberry Pi runnning Raspbian Lite.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Manual installation on a Raspberry Pi">
<meta name="twitter:description" content="Instructions to install Home Assistant on a Raspberry Pi runnning Raspbian Lite.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Manual Installation on a Raspberry Pi
</h1>
</header>
<hr class="divider">
<h3><a class="title-link" name="installation" href="#installation"></a> Installation</h3>
<p>Theres currently three documented ways to install Home Assistant on a Raspberry Pi.</p>
<ul>
<li><a href="/getting-started/installation-raspberry-pi/#Manual-Installation">Manual installation</a>. Following this guide doing each step manually. This is highly recommended as a first installation since you get a good overview of the installation.</li>
<li><a href="/getting-started/installation-raspberry-pi-image">Hassbian image</a>. Basic installation with the same settings as following the manual installation guide. Some additional software is preinstalled to make installation quicker and easier. Installation uses <code class="highlighter-rouge">homeassistant</code> user.</li>
<li><a href="/getting-started/installation-raspberry-pi-all-in-one/">All-in-One Installer</a>. Fabric based installation script that installs and compiles many of the things an advanced Home Assistant install is likely to need. Installation uses <code class="highlighter-rouge">hass</code> user.</li>
</ul>
<p class="note note">
Since each installation type uses a different user for Home Assistant, be sure to note and use the correct username for the <code class="highlighter-rouge">adduser</code> commands listed below for camera and GPIO extensions.
</p>
<h3><a class="title-link" name="manual-installation" href="#manual-installation"></a> Manual Installation</h3>
<p>This installation of Home Assistant requires the Raspberry Pi to run <a href="https://www.raspberrypi.org/downloads/raspbian/">Raspbian Lite</a>.
The installation will be installed in a <a href="/getting-started/installation-virtualenv">Virtual Environment</a> with minimal overhead. Instructions assume this is a new installation of Raspbian Lite.</p>
<p>Connect to the Raspberry Pi over ssh. Default password is <code class="highlighter-rouge">raspberry</code>.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ssh pi@ipadress
</code></pre>
</div>
<p>Changing the default password is encouraged.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>passwd
</code></pre>
</div>
<p>Update the system.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get update
<span class="gp">$ </span>sudo apt-get upgrade -y
</code></pre>
</div>
<p>Install the dependencies.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get install python3 python3-venv python3-pip
</code></pre>
</div>
<p>Add an account for Home Assistant called <code class="highlighter-rouge">homeassistant</code>.<br />
Since this account is only for running Home Assistant the extra arguments of <code class="highlighter-rouge">-rm</code> is added to create a system account and create a home directory.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo useradd -rm homeassistant
</code></pre>
</div>
<p>Next we will create a directory for the installation of Home Assistant and change the owner to the <code class="highlighter-rouge">homeassistant</code> account.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">cd</span> /srv
<span class="gp">$ </span>sudo mkdir homeassistant
<span class="gp">$ </span>sudo chown homeassistant:homeassistant homeassistant
</code></pre>
</div>
<p>Next up is to create and change to a virtual environment for Home Assistant. This will be done as the <code class="highlighter-rouge">homeassistant</code> account.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash homeassistant
<span class="gp">$ </span><span class="nb">cd</span> /srv/homeassistant
<span class="gp">$ </span>python3 -m venv homeassistant_venv
<span class="gp">$ </span><span class="nb">source</span> /srv/homeassistant/homeassistant_venv/bin/activate
</code></pre>
</div>
<p>Once you have activated the virtual environment you will notice the prompt change and then you can install Home Assistant.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="o">(</span>homeassistant_venv<span class="o">)</span> homeassistant@raspberrypi:/srv/homeassistant <span class="nv">$ </span>pip3 install homeassistant
</code></pre>
</div>
<p>Start Home Assistant for the first time. This will complete the installation, create the <code class="highlighter-rouge">.homeasssistant</code> configuration directory in the <code class="highlighter-rouge">/home/homeassistant</code> directory and install any basic dependencies.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="o">(</span>homeassistant_venv<span class="o">)</span> <span class="nv">$ </span>hass
</code></pre>
</div>
<p>You can now reach your installation on your raspberry pi over the web interface on <a href="http://ipaddress:8123">http://ipaddress:8123</a>.
For instruction on how to configure Home Assistant continue on with <a href="/getting-started/configuration/">Configuring Home Assistant</a>.</p>
<h3><a class="title-link" name="raspberry-pi-hardware-specific-components" href="#raspberry-pi-hardware-specific-components"></a> Raspberry Pi Hardware Specific Components</h3>
<p>Some components that are specific for the Raspberry Pi can require some further configuration outside of Home Assistant. All commands below are assumed to be executed with the <code class="highlighter-rouge">pi</code> account. For full documentation of these components refer to the <a href="/components">components</a> page.</p>
<h3><a class="title-link" name="bluetooth-tracker" href="#bluetooth-tracker"></a> Bluetooth Tracker</h3>
<p>The Bluetooth tracker will work on a Raspberry Pi 3 with the built-in Bluetooth module or with a USB Bluetooth device on any of the other Raspberry Pis.</p>
<p>Install the following external dependencies.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get install bluetooth libbluetooth-dev
</code></pre>
</div>
<p>After this follow the <a href="/components/device_tracker.bluetooth_tracker/">Bluetooth Tracker component</a> and <a href="/components/device_tracker/">Device Tracker page</a> pages.</p>
<h3><a class="title-link" name="raspberry-pi-camera" href="#raspberry-pi-camera"></a> Raspberry Pi Camera</h3>
<p>The Raspberry Pi Camera is a specific camera for the Raspberry Pi boards. For more information about the camera I suggest reading the <a href="https://www.raspberrypi.org/documentation/usage/camera/">documentation</a> from the Raspberry Pi foundation.</p>
<p>To use the camera it needs to be enabled with the <code class="highlighter-rouge">raspi-config</code> utility.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo raspi-config
</code></pre>
</div>
<p>Select <code class="highlighter-rouge">Enable camera</code> choose <code class="highlighter-rouge">&lt;Yes&gt;</code> and hit <code class="highlighter-rouge">Enter</code>, then go to <code class="highlighter-rouge">Finish</code> and youll be prompted to reboot.<br />
After reboot add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">video</code> group.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant video
</code></pre>
</div>
<p>After this follow the <a href="/components/camera.rpi_camera/">Raspberry Pi Camera component</a> page.</p>
<h3><a class="title-link" name="raspberry-pi-gpio" href="#raspberry-pi-gpio"></a> Raspberry Pi GPIO</h3>
<p>Each of the following devices are connected to the GPIO pins on the Raspberry Pi.
For more details about the GPIO layout, visit the <a href="https://www.raspberrypi.org/documentation/usage/gpio/">documentation</a> from the Raspberry
Pi foundation.<br />
Since these are not normally used some extra permission will need to be added.
In general the permission that is needed is granted by adding the <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group.</p>
<h4><a class="title-link" name="raspberry-pi-cover" href="#raspberry-pi-cover"></a> Raspberry Pi Cover</h4>
<p>Add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant gpio
</code></pre>
</div>
<p>After this follow the <a href="/components/cover.rpi_gpio/">Raspberry Pi Cover component</a> page.</p>
<h4><a class="title-link" name="dht-sensor" href="#dht-sensor"></a> DHT Sensor</h4>
<p>Add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant gpio
</code></pre>
</div>
<p>After this follow the <a href="/components/sensor.dht/">DHT Sensor component</a> page.</p>
<h4><a class="title-link" name="raspberry-pi-gpio-binary-sensor" href="#raspberry-pi-gpio-binary-sensor"></a> Raspberry PI GPIO Binary Sensor</h4>
<p>Add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant gpio
</code></pre>
</div>
<p>After this follow the <a href="/components/binary_sensor.rpi_gpio/">Raspberry PI GPIO Binary Sensor component</a> page.</p>
<h4><a class="title-link" name="raspberry-pi-gpio-switch" href="#raspberry-pi-gpio-switch"></a> Raspberry PI GPIO Switch</h4>
<p>Add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant gpio
</code></pre>
</div>
<p>After this follow the <a href="/components/switch.rpi_gpio/">Raspberry PI GPIO Switch component</a> page.</p>
<h4><a class="title-link" name="raspberry-pi-rf-switch" href="#raspberry-pi-rf-switch"></a> Raspberry Pi RF Switch</h4>
<p>Add your <code class="highlighter-rouge">homeassistant</code> account to the <code class="highlighter-rouge">gpio</code> group</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser homeassistant gpio
</code></pre>
</div>
<p>After this follow the <a href="/components/switch.rpi_rf/">Raspberry Pi RF Switch component</a> page.</p>
<h4><a class="title-link" name="one-wire-sensor" href="#one-wire-sensor"></a> One wire Sensor</h4>
<p>The One wire sensor requires that support for it is enabled on the Raspberry Pi and that the One Wire device is connected to GPIO pin 4.
To enable One Wire support add the following line to the end of <code class="highlighter-rouge">/boot/config.txt</code></p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">dtoverlay=w1-gpio</span>
</code></pre>
</div>
<p>After this follow the <a href="/components/sensor.onewire/">One Wire Sensor component</a> page.</p>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many of the more commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions.</li>
<li><a href="https://gitter.im/home-assistant/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant.</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting.</li>
</ul>
<h3><a class="title-link" name="whats-next" href="#whats-next"></a> Whats next</h3>
<p>If you want to have Home Assistant start on boot, <a href="/getting-started/autostart-systemd/">autostart instructions can be found here</a>.</p>
<p>To see what Home Assistant can do, launch demo mode: <code class="highlighter-rouge">hass --demo-mode</code> or visit the <a href="/demo">demo page</a>.</p>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-raspberry-pi.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a class='active' href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,461 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Installation on a Synology NAS - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions to install Home Assistant on a Synology NAS.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-synology/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Installation on a Synology NAS">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-synology/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions to install Home Assistant on a Synology NAS.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Installation on a Synology NAS">
<meta name="twitter:description" content="Instructions to install Home Assistant on a Synology NAS.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Installation on a Synology NAS
</h1>
</header>
<hr class="divider">
<p>The following configuration has been tested on Synology 413j running DSM 6.0-7321 Update 1.</p>
<p>Running these commands will:</p>
<ul>
<li>Install Home Assistant</li>
<li>Enable Home Assistant to be launched on <a href="http://localhost:8123">http://localhost:8123</a></li>
</ul>
<p>Using the Synology webadmin:</p>
<ul>
<li>Install python3 using the Synology Package Center</li>
<li>Create homeassistant user and add to the “users” group</li>
</ul>
<p>SSH onto your synology &amp; login as admin or root</p>
<ul>
<li>Log in with your own administrator account</li>
<li>Switch to root using:</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo -i
</code></pre>
</div>
<p>Check the path to python3 (assumed to be /volume1/@appstore/py3k/usr/local/bin)</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">cd</span> /volume1/@appstore/py3k/usr/local/bin
</code></pre>
</div>
<p>Install PIP (Pythons package management system)</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>./python3 -m ensurepip
</code></pre>
</div>
<p>Use PIP to install Homeassistant package</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>./python3 -m pip install homeassistant
</code></pre>
</div>
<p>Create homeassistant config directory &amp; switch to it</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>mkdir /volume1/homeassistant
<span class="gp">$ </span><span class="nb">cd</span> /volume1/homeassistant
</code></pre>
</div>
<p>Create hass-daemon file using the following code (edit the variables in uppercase if necessary)</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="c">#!/bin/sh</span>
<span class="c"># Package</span>
<span class="nv">PACKAGE</span><span class="o">=</span><span class="s2">"homeassistant"</span>
<span class="nv">DNAME</span><span class="o">=</span><span class="s2">"Home Assistant"</span>
<span class="c"># Others</span>
<span class="nv">USER</span><span class="o">=</span><span class="s2">"homeassistant"</span>
<span class="nv">PYTHON_DIR</span><span class="o">=</span><span class="s2">"/volume1/@appstore/py3k/usr/local/bin"</span>
<span class="nv">PYTHON</span><span class="o">=</span><span class="s2">"</span><span class="nv">$PYTHON_DIR</span><span class="s2">/python3"</span>
<span class="nv">HASS</span><span class="o">=</span><span class="s2">"</span><span class="nv">$PYTHON_DIR</span><span class="s2">/hass"</span>
<span class="nv">INSTALL_DIR</span><span class="o">=</span><span class="s2">"/volume1/homeassistant"</span>
<span class="nv">PID_FILE</span><span class="o">=</span><span class="s2">"</span><span class="nv">$INSTALL_DIR</span><span class="s2">/home-assistant.pid"</span>
<span class="nv">FLAGS</span><span class="o">=</span><span class="s2">"-v --config </span><span class="nv">$INSTALL_DIR</span><span class="s2"> --pid-file </span><span class="nv">$PID_FILE</span><span class="s2"> --daemon"</span>
<span class="gp">REDIRECT="&gt; </span><span class="nv">$INSTALL_DIR</span>/home-assistant.log 2&gt;&amp;1<span class="s2">"
start_daemon ()
{
sudo -u </span><span class="k">${</span><span class="nv">USER</span><span class="k">}</span><span class="s2"> /bin/sh -c "</span><span class="nv">$PYTHON</span> <span class="nv">$HASS</span> <span class="nv">$FLAGS</span> <span class="nv">$REDIRECT</span>;<span class="s2">"
}
stop_daemon ()
{
kill </span><span class="sb">`</span>cat <span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="sb">`</span><span class="s2">
wait_for_status 1 20 || kill -9 </span><span class="sb">`</span>cat <span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="sb">`</span><span class="s2">
rm -f </span><span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="s2">
}
daemon_status ()
{
if [ -f </span><span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="s2"> ] &amp;&amp; kill -0 </span><span class="sb">`</span>cat <span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="sb">`</span><span class="s2"> &gt; /dev/null 2&gt;&amp;1; then
return
fi
rm -f </span><span class="k">${</span><span class="nv">PID_FILE</span><span class="k">}</span><span class="s2">
return 1
}
wait_for_status ()
{
counter=</span><span class="nv">$2</span><span class="s2">
while [ </span><span class="k">${</span><span class="nv">counter</span><span class="k">}</span><span class="s2"> -gt 0 ]; do
daemon_status
[ </span><span class="nv">$?</span><span class="s2"> -eq </span><span class="nv">$1</span><span class="s2"> ] &amp;&amp; return
let counter=counter-1
sleep 1
done
return 1
}
case </span><span class="nv">$1</span><span class="s2"> in
start)
if daemon_status; then
echo </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> is already running
exit 0
else
echo Starting </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> ...
start_daemon
exit </span><span class="nv">$?</span><span class="s2">
fi
;;
stop)
if daemon_status; then
echo Stopping </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> ...
stop_daemon
exit </span><span class="nv">$?</span><span class="s2">
else
echo </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> is not running
exit 0
fi
;;
restart)
if daemon_status; then
echo Stopping </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> ...
stop_daemon
echo Starting </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> ...
start_daemon
exit </span><span class="nv">$?</span><span class="s2">
else
echo </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> is not running
echo Starting </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> ...
start_daemon
exit </span><span class="nv">$?</span><span class="s2">
fi
;;
status)
if daemon_status; then
echo </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> is running
exit 0
else
echo </span><span class="k">${</span><span class="nv">DNAME</span><span class="k">}</span><span class="s2"> is not running
exit 1
fi
;;
log)
echo </span><span class="k">${</span><span class="nv">LOG_FILE</span><span class="k">}</span><span class="s2">
exit 0
;;
*)
exit 1
;;
esac
</span></code></pre>
</div>
<p>Create links to python folders to make things easier in the future:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ln -s /volume1/@appstore/py3k/usr/local/bin python3
<span class="gp">$ </span>ln -s /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages/homeassistant
</code></pre>
</div>
<p>Set the owner and permissions on your config folder</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>chown -R homeassistant:users /volume1/homeassistant
<span class="gp">$ </span>chmod -R 664 /volume1/homeassistant
</code></pre>
</div>
<p>Make the daemon file executable:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>chmod 777 /volume1/homeassistant/hass-daemon
</code></pre>
</div>
<p>Update your firewall (if it is turned on on the Synology device):</p>
<ul>
<li>Go to your Synology control panel</li>
<li>Go to security</li>
<li>Go to firewall</li>
<li>Go to Edit Rules</li>
<li>Click Create</li>
<li>Select Custom: Destination port “TCP”</li>
<li>Type “8123” in port</li>
<li>Click on OK</li>
<li>Click on OK again</li>
</ul>
<p>Copy your configuration.yaml file into the config folder
Thats it… youre all set to go</p>
<p>Here are some useful commands:</p>
<ul>
<li>Start Home Assistant:</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo /volume1/homeassistant/hass-daemon start
</code></pre>
</div>
<ul>
<li>Stop Home Assistant:</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo /volume1/homeassistant/hass-daemon stop
</code></pre>
</div>
<ul>
<li>Restart Home Assistant:</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo /volume1/homeassistant/hass-daemon restart
</code></pre>
</div>
<ul>
<li>Upgrade Home Assistant::</li>
</ul>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>/volume1/@appstore/py3k/usr/local/bin/python3 -m pip install --upgrade homeassistant
</code></pre>
</div>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many of the more commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions.</li>
<li><a href="https://gitter.im/balloob/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant.</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting.</li>
</ul>
<h3><a class="title-link" name="whats-next" href="#whats-next"></a> Whats next</h3>
<p>If you want to have Home Assistant start on boot, <a href="/getting-started/autostart-synology/">autostart instructions can be found here</a>.</p>
<p>To see what Home Assistant can do, launch demo mode: <code class="highlighter-rouge">hass --demo-mode</code> or visit the <a href="/demo">demo page</a>.</p>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-synology.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a class='active' href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,302 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Installation on Vagrant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions to run Home Assistant on a Vagrant VM.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-vagrant/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Installation on Vagrant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-vagrant/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions to run Home Assistant on a Vagrant VM.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Installation on Vagrant">
<meta name="twitter:description" content="Instructions to run Home Assistant on a Vagrant VM.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Installation on Vagrant
</h1>
</header>
<hr class="divider">
<p>A <code class="highlighter-rouge">Vagrantfile</code> is available into <code class="highlighter-rouge">virtualization/vagrant</code> folder for quickly spinning up a Linux virtual machine running Home Assistant. This can be beneficial for those who want to experiment with Home Assistant and/or developers willing to easily test local changes and run test suite against them.</p>
<p class="note">
Vagrant is intended for testing/development only. It is NOT recommended for permanent installations.
</p>
<h2><a class="title-link" name="install-vagrant" href="#install-vagrant"></a> Install Vagrant</h2>
<p>You must have <a href="https://www.vagrantup.com/downloads.html">Vagrant</a> and <a href="https://www.virtualbox.org/wiki/Downloads">Virtualbox</a> installed on your workstation.</p>
<h2><a class="title-link" name="get-home-assistant-source-code" href="#get-home-assistant-source-code"></a> Get Home Assistant source code</h2>
<p>Download the Home Assistant source code by either downloading the .zip file from <a href="https://github.com/home-assistant/home-assistant/releases">GitHub releases page</a> or by using <a href="https://git-scm.com/">Git</a></p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>git clone https://github.com/home-assistant/home-assistant.git
<span class="gp">$ </span><span class="nb">cd </span>home-assistant/virtualization/vagrant
</code></pre>
</div>
<p class="note">
The following instructions will assume you changed your working directory to be <code class="highlighter-rouge">home-assistant/virtualization/vagrant</code>. This is mandatory because Vagrant will look for informations about the running VM inside that folder and wont work otherwise
</p>
<p class="note">
When using Vagrant on Windows, change gits <code class="highlighter-rouge">auto.crlf</code> to input before cloning the Home Assistant repository. With input setting git wont automatically change line endings from Unix LF to Windows CRLF. Shell scripts executed during provision wont work with Windows line endings.
</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>git config --global core.autocrlf input
</code></pre>
</div>
<h2><a class="title-link" name="create-the-vagrant-vm-and-start-home-assistant" href="#create-the-vagrant-vm-and-start-home-assistant"></a> Create the Vagrant VM and start Home Assistant</h2>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>vagrant up
</code></pre>
</div>
<p>This will download and start a virtual machine using Virtualbox, which will internally setup the development environment necessary to start Home Assistant process and run test suite as well. After the VM has started successfully, the Home Assistant frontend will be accessible locally from your browser at <a href="http://localhost:8123">http://localhost:8123</a></p>
<h2><a class="title-link" name="stopping-vagrant" href="#stopping-vagrant"></a> Stopping Vagrant</h2>
<p>To shutdown the Vagrant host:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>vagrant halt
</code></pre>
</div>
<p>To start it again, just run <code class="highlighter-rouge">vagrant up</code></p>
<h2><a class="title-link" name="restarting-home-assistant-process-to-test-changes" href="#restarting-home-assistant-process-to-test-changes"></a> Restarting Home Assistant process to test changes</h2>
<p>The root <code class="highlighter-rouge">home-assistant</code> directory on your workstation will be mirrored with <code class="highlighter-rouge">/home-assistant</code> inside the VM. In <code class="highlighter-rouge">virtualization/vagrant</code> theres also a <code class="highlighter-rouge">config</code> folder that you can use to drop configuration files (Check the <a href="https://home-assistant.io/getting-started/configuration/">Getting started section</a> for more information about how to configure Home Assistant).</p>
<p>Any changes made to the local directory on your workstation will be available from the Vagrant host, so to apply your changes to the Home Assistant process, just restart it:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>touch restart ; vagrant provision
</code></pre>
</div>
<h2><a class="title-link" name="run-test-suite-tox" href="#run-test-suite-tox"></a> Run test suite (Tox)</h2>
<p>To run tests against your changes:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>touch run_tests ; vagrant provision
</code></pre>
</div>
<h2><a class="title-link" name="cleanup" href="#cleanup"></a> Cleanup</h2>
<p>To completely remove the VM:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>rm setup_done ; vagrant destroy -f
</code></pre>
</div>
<p>You can now recreate a completely new Vagrant host with <code class="highlighter-rouge">vagrant up</code></p>
<h3><a class="title-link" name="troubleshooting" href="#troubleshooting"></a> Troubleshooting</h3>
<p>If you run into any issues, please see <a href="/getting-started/troubleshooting/">the troubleshooting page</a>. It contains solutions to many of the more commonly encountered issues.</p>
<p>In addition to this site, check out these sources for additional help:</p>
<ul>
<li><a href="https://community.home-assistant.io">Forum</a> for Home Assistant discussions and questions.</li>
<li><a href="https://gitter.im/home-assistant/home-assistant">Gitter Chat Room</a> for real-time chat about Home Assistant.</li>
<li><a href="https://github.com/home-assistant/home-assistant/issues">GitHub Page</a> for issue reporting.</li>
</ul>
<h3><a href="/getting-started/configuration/">Next step: Configuring Home Assistant »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-vagrant.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a class='active' href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,333 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Installation in virtualenv - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to install Home Assistant in a virtual environment.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/installation-virtualenv/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Installation in virtualenv">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/installation-virtualenv/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to install Home Assistant in a virtual environment.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Installation in virtualenv">
<meta name="twitter:description" content="Instructions how to install Home Assistant in a virtual environment.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Installation in Virtualenv
</h1>
</header>
<hr class="divider">
<p>There are several reasons why it makes sense to run Home Assistant in a virtual environment. A <a href="https://virtualenv.pypa.io/en/latest/">virtualenv</a> encapsulates all aspect of a Python environment within a single directory tree. That means the Python packages you install for Home Assistant wont interact with the rest of your system and vice-versa. It means a random upgrade for some other program on your computer wont break Home Assistant, and it means you dont need to install Python packages as root.</p>
<p>Virtualenvs are pretty easy to setup. This example will walk through one method of setting one up (there are certainly others). Well be using Debian in this example (as many Home Assistant users are running Raspbian on a Raspberry Pi), but all of the Python related steps should be the same on just about any platform.</p>
<h3><a class="title-link" name="step-0-install-some-dependencies" href="#step-0-install-some-dependencies"></a> Step 0: Install some dependencies</h3>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get update
<span class="gp">$ </span>sudo apt-get upgrade
<span class="gp">$ </span>sudo apt-get install python-pip python3-dev
<span class="gp">$ </span>sudo pip install --upgrade virtualenv
</code></pre>
</div>
<h3><a class="title-link" name="step-1-create-a-home-assistant-user" href="#step-1-create-a-home-assistant-user"></a> Step 1: Create a Home Assistant user</h3>
<p>This step is optional, but its a good idea to give services like Home Assistant their own user. It gives you more granular control over permissions, and reduces the exposure to the rest of your system in the event there is a security related bug in Home Assistant. This is a reasonably Linux oriented step, and will look different on other operating systems (or even other Linux distributions).</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo adduser --system hass
</code></pre>
</div>
<p>Home Assistant stores its configuration in <code class="highlighter-rouge">$HOME/.homeassistant</code> by default, so in this case, it would be in <code class="highlighter-rouge">/home/hass/.homeassistant</code></p>
<p>If you plan to use a Z-Wave controller, you will need to add this user to the <code class="highlighter-rouge">dialout</code> group</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo usermod -G dialout -a hass
</code></pre>
</div>
<h3><a class="title-link" name="step-2-create-a-directory-for-home-assistant" href="#step-2-create-a-directory-for-home-assistant"></a> Step 2: Create a directory for Home Assistant</h3>
<p>This can be anywhere you want. AS example we put it in <code class="highlighter-rouge">/srv</code>. You also need to change the ownership of the directory to the user you created above (if you created one).</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo mkdir /srv/hass
<span class="gp">$ </span>sudo chown hass /srv/hass
</code></pre>
</div>
<h3><a class="title-link" name="step-3-become-the-new-user" href="#step-3-become-the-new-user"></a> Step 3: Become the new user</h3>
<p>This is obviously only necessary if you created a <code class="highlighter-rouge">hass</code> user, but if you did, be sure to switch to that user whenever you install things in your virtualenv, otherwise youll end up with mucked up permissions.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo su -s /bin/bash hass
</code></pre>
</div>
<p>The <code class="highlighter-rouge">su</code> command means switch user. We use the -s flag because the <code class="highlighter-rouge">hass</code> user is a system user and doesnt have a default shell by default (to prevent attackers from being able to log in as that user).</p>
<h3><a class="title-link" name="step-4-set-up-the-virtualenv" href="#step-4-set-up-the-virtualenv"></a> Step 4: Set up the virtualenv</h3>
<p>All this step does is stick a Python environment in the directory were using. Thats it. Its just a directory. Theres nothing special about it, and it is entirely self-contained.</p>
<p>It will include a <code class="highlighter-rouge">bin</code> directory, which will contain all the executables used in the virtualenv (including hass itself). It also includes a script called <code class="highlighter-rouge">activate</code> which we will use to activate the virtualenv.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>virtualenv -p python3 /srv/hass
</code></pre>
</div>
<h3><a class="title-link" name="step-5-activate-the-virtualenv" href="#step-5-activate-the-virtualenv"></a> Step 5: Activate the virtualenv</h3>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">source</span> /srv/hass/bin/activate
</code></pre>
</div>
<p>After that, your prompt should include <code class="highlighter-rouge">(hass)</code>.</p>
<h3><a class="title-link" name="step-6-install-home-assistant" href="#step-6-install-home-assistant"></a> Step 6: Install Home Assistant</h3>
<p>Once your virtualenv has been activated, you dont need to <code class="highlighter-rouge">sudo</code> any of your <code class="highlighter-rouge">pip</code> commands. <code class="highlighter-rouge">pip</code> will be installing things in the virtualenv, which the <code class="highlighter-rouge">hass</code> user has permission to modify.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">(hass)$ </span>pip3 install --upgrade homeassistant
</code></pre>
</div>
<p>And thats it… you now have Home Assistant installed, and you can be sure that every bit of it is contained in <code class="highlighter-rouge">/srv/hass</code>.</p>
<h3><a class="title-link" name="finally-run-home-assistant" href="#finally-run-home-assistant"></a> Finally… Run Home Assistant</h3>
<p>There are two ways to launch Home Assistant. If you are <strong>in</strong> the virtualenv, you can just run <code class="highlighter-rouge">hass</code> and it will work as normal. If the virtualenv is not activated, you just use the <code class="highlighter-rouge">hass</code> executable in the <code class="highlighter-rouge">bin</code> directory mentioned earlier. There is one caveat… Because Home Assistant stores its configuration in the users home directory, we need to be the user <code class="highlighter-rouge">hass</code> user or specify the configuration with <code class="highlighter-rouge">-c</code>.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo -u hass -H /srv/hass/bin/hass
</code></pre>
</div>
<p>The <code class="highlighter-rouge">-H</code> flag is important. It sets the <code class="highlighter-rouge">$HOME</code> environment variable to <code class="highlighter-rouge">/home/hass</code> so <code class="highlighter-rouge">hass</code> can find its configuration.</p>
<h3><a class="title-link" name="upgrading-home-assistant" href="#upgrading-home-assistant"></a> Upgrading Home Assistant</h3>
<p>Upgrading Home Assistant is simple, just repeat steps 3, 5 and 6.</p>
<h3><a class="title-link" name="starting-home-assistant-on-boot" href="#starting-home-assistant-on-boot"></a> Starting Home Assistant on boot</h3>
<p>The <a href="/getting-started/autostart/">autostart instructions</a> will work just fine, just be sure to replace <code class="highlighter-rouge">/usr/bin/hass</code> with <code class="highlighter-rouge">/srv/hass/bin/hass</code> and specify the <code class="highlighter-rouge">hass</code> user where appropriate.</p>
<h3><a class="title-link" name="installing-python-openzwave" href="#installing-python-openzwave"></a> Installing python-openzwave</h3>
<p>If you want to use Z-Wave devices, you will need to install <code class="highlighter-rouge">python-openzwave</code> in your virtualenv. This requires a small tweak to the instructions in <a href="/getting-started/z-wave/">the Z-Wave Getting Started documentation</a></p>
<p>Install the dependencies as normal (Note: you will need to do this as your normal user, since <code class="highlighter-rouge">hass</code> isnt a sudoer).</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get install cython3 libudev-dev python3-sphinx python3-setuptools
</code></pre>
</div>
<p>Then, activate your virtualenv (steps 3 and 5 above) and upgrade cython.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">(hass)$ </span>pip3 install --upgrade cython
</code></pre>
</div>
<p>Finally, get and install <code class="highlighter-rouge">python-openzwave</code>.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">(hass)$ </span>mkdir /srv/hass/src
<span class="gp">(hass)$ </span><span class="nb">cd</span> /srv/hass/src
<span class="gp">(hass)$ </span>git clone https://github.com/OpenZWave/python-openzwave.git
<span class="gp">(hass)$ </span><span class="nb">cd </span>python-openzwave
<span class="gp">(hass)$ </span>git checkout python3
<span class="gp">(hass)$ </span><span class="nv">PYTHON_EXEC</span><span class="o">=</span><span class="sb">`</span>which python3<span class="sb">`</span> make build
<span class="gp">(hass)$ </span><span class="nv">PYTHON_EXEC</span><span class="o">=</span><span class="sb">`</span>which python3<span class="sb">`</span> make install
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/installation-virtualenv.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a class='active' href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,248 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Setting up presence detection - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to setup presence detection within Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/presence-detection/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Setting up presence detection">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/presence-detection/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to setup presence detection within Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Setting up presence detection">
<meta name="twitter:description" content="Instructions how to setup presence detection within Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Setting Up Presence Detection
</h1>
</header>
<hr class="divider">
<p class="note">
We care about privacy. Collected data is <b>only</b> stored in your instance of Home Assistant.
</p>
<p>Presence detection detects if people are home, which is the most important input for automation. Knowing who is home or where they are will open a whole range of other automation options:</p>
<ul>
<li>Send me a notification when my child arrives at school</li>
<li>Turn on the AC when I leave work</li>
</ul>
<p class="img">
<img src="/images/screenshots/map.png" />
Screenshot of Home Assistant showing a school, work and home zone and two people.
</p>
<h3><a class="title-link" name="setting-it-up" href="#setting-it-up"></a> Setting it up</h3>
<p>The device tracker component offers presence detection for Home Assistant. It supports two different methods for presence detection: scan for connected devices on the local network and connect to third party service.</p>
<p>Scanning for connected devices is easy to setup. See the instructions for our <a href="/components/#presence-detection">supported routers</a> or <a href="/components/device_tracker.nmap_tracker/">scan the network using nmap</a>. This approach does have its limitations, however: it will only be able to detect if a device is home, and iPhones may show as not home inaccurately (as iPhones disconnect from WiFi if idle).</p>
<p>Home Assistant currently supports two third-party services for presence detection: <a href="/components/device_tracker.owntracks/">OwnTracks</a> and <a href="/components/device_tracker.locative/">Locative</a>. OwnTracks is an app that you install on your iPhone or Android phone that allows you to push the location of your device to Home Assistant using an MQTT broker. An MQTT broker is an Internet of Things communication platform that you can <a href="/components/mqtt/#run-your-own">freely host yourself</a> or get <a href="/components/mqtt/#run-your-own">a private instance for free in the cloud</a>.</p>
<p class="note">
OwnTracks communicates directly with your MQTT broker; no data will pass through their servers.
</p>
<h3><a class="title-link" name="zones" href="#zones"></a> Zones</h3>
<p><img src="/images/screenshots/badges-zone.png" style="float: right; margin-left: 8px; height: 100px;" /></p>
<p>Home Assistant will know the location of your device if you are using OwnTracks. By <a href="/components/zone/">setting up zones</a> you will be able to add names to the locations of your devices. This way you can easily spot on the state page where the people in your house are and use it as <a href="/getting-started/automation-trigger/#zone-trigger">triggers</a> and <a href="/getting-started/automation-condition/#zone-condition">conditions</a> for automation.</p>
<h3><a href="/getting-started/automation/">Next step: Setting up automation »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/presence-detection.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a class='active' href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,367 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Conditions - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Documentation about all available conditions.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/scripts-conditions/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Conditions">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/scripts-conditions/">
<meta property="og:type" content="website">
<meta property="og:description" content="Documentation about all available conditions.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Conditions">
<meta name="twitter:description" content="Documentation about all available conditions.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Conditions
</h1>
</header>
<hr class="divider">
<p>Conditions can be used within a script or automation to prevent further execution. A condition will look at the system right now. For example a condition can test if a switch is currently turned on or off.</p>
<h3><a class="title-link" name="and-condition" href="#and-condition"></a> AND condition</h3>
<p>Test multiple conditions in 1 condition statement. Passes if all embedded conditions are valid.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">and</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">device_tracker.paulus'</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">sensor.temperature'</span>
<span class="s">below</span><span class="pi">:</span> <span class="s1">'</span><span class="s">20'</span>
</code></pre>
</div>
<h3><a class="title-link" name="or-condition" href="#or-condition"></a> OR condition</h3>
<p>Test multiple conditions in 1 condition statement. Passes if any embedded conditions is valid.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">or</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">device_tracker.paulus'</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">sensor.temperature'</span>
<span class="s">below</span><span class="pi">:</span> <span class="s1">'</span><span class="s">20'</span>
</code></pre>
</div>
<h3><a class="title-link" name="mixed--and-and-or-conditions" href="#mixed--and-and-or-conditions"></a> MIXED AND and OR conditions</h3>
<p>Test multiple AND and OR conditions in 1 condition statement. Passes if any embedded conditions is valid.
This allows you to mix several AND and OR conditions together.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span>
<span class="s">condition</span><span class="pi">:</span> <span class="s">and</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">device_tracker.paulus'</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">or</span>
<span class="s">conditions</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sensor.weather_precip</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">rain'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s1">'</span><span class="s">sensor.temperature'</span>
<span class="s">below</span><span class="pi">:</span> <span class="s1">'</span><span class="s">20'</span>
</code></pre>
</div>
<h3><a class="title-link" name="numeric-state-condition" href="#numeric-state-condition"></a> Numeric state condition</h3>
<p>This type of condition attempts to parse the state of specified entity as a number and triggers if the value matches all of the above or below thresholds.</p>
<p>For above, the condition passes if <code class="highlighter-rouge">value &gt;= above</code>. For below, the condition passes if <code class="highlighter-rouge">value &lt;= below</code>. If both <code class="highlighter-rouge">below</code> and <code class="highlighter-rouge">above</code> are specified, both tests have to pass.</p>
<p>You can optionally use a <code class="highlighter-rouge">value_template</code> to process the value of the state before testing it.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sensor.temperature</span>
<span class="s">above</span><span class="pi">:</span> <span class="s">17</span>
<span class="s">below</span><span class="pi">:</span> <span class="s">25</span>
<span class="c1"># If your sensor value needs to be adjusted</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="pi">{{</span> <span class="nv">float(state.state) + 2</span> <span class="pi">}}</span>
</code></pre>
</div>
<h3><a class="title-link" name="state-condition" href="#state-condition"></a> State condition</h3>
<p>Tests if an entity is a specified state.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">state</span><span class="pi">:</span> <span class="s">not_home</span>
<span class="c1"># optional: trigger only if state was this for last X time.</span>
<span class="s">for</span><span class="pi">:</span>
<span class="s">hours</span><span class="pi">:</span> <span class="s">1</span>
<span class="s">minutes</span><span class="pi">:</span> <span class="s">10</span>
<span class="s">seconds</span><span class="pi">:</span> <span class="s">5</span>
</code></pre>
</div>
<h3><a class="title-link" name="sun-condition" href="#sun-condition"></a> Sun condition</h3>
<p>The sun condition can test if the sun has already set or risen when a trigger occurs. The <code class="highlighter-rouge">before</code> and <code class="highlighter-rouge">after</code> keys can only be set to <code class="highlighter-rouge">sunset</code> or <code class="highlighter-rouge">sunrise</code>. They have a corresponding optional offset value (<code class="highlighter-rouge">before_offset</code>, <code class="highlighter-rouge">after_offset</code>) that can be added, similar to the <a href="/getting-started/automation-trigger/#sun-trigger">sun trigger</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">sun</span>
<span class="s">after</span><span class="pi">:</span> <span class="s">sunset</span>
<span class="c1"># Optional offset value</span>
<span class="s">after_offset</span><span class="pi">:</span> <span class="s2">"</span><span class="s">-1:00:00"</span>
</code></pre>
</div>
<h3><a class="title-link" name="template-condition" href="#template-condition"></a> Template condition</h3>
<p>The template condition will test if the <a href="/topics/templating/">given template</a> renders a value equal to true. This is achieved by having the template result in a true boolean expression or by having the template render true.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">template</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">{{</span><span class="nv"> </span><span class="s">states.device_tracker.iphone.attributes.battery</span><span class="nv"> </span><span class="s">&gt;</span><span class="nv"> </span><span class="s">50</span><span class="nv"> </span><span class="s">}}'</span>
</code></pre>
</div>
<p>Within an automation, template conditions also have access to the <code class="highlighter-rouge">trigger</code> variable as <a href="/getting-started/automation-templating/">described here</a>.</p>
<h3><a class="title-link" name="time-condition" href="#time-condition"></a> Time condition</h3>
<p>The time condition can test if it is after a specified time, before a specified time or if it is a certain day of the week</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">time</span>
<span class="c1"># At least one of the following is required.</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">15:00:00'</span>
<span class="s">before</span><span class="pi">:</span> <span class="s1">'</span><span class="s">23:00:00'</span>
<span class="s">weekday</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">mon</span>
<span class="pi">-</span> <span class="s">wed</span>
<span class="pi">-</span> <span class="s">fri</span>
</code></pre>
</div>
<p>Valid values for <code class="highlighter-rouge">weekday</code> are <code class="highlighter-rouge">mon</code>, <code class="highlighter-rouge">tue</code>, <code class="highlighter-rouge">wed</code>, <code class="highlighter-rouge">thu</code>, <code class="highlighter-rouge">fri</code>, <code class="highlighter-rouge">sat</code>, <code class="highlighter-rouge">sun</code>.</p>
<h3><a class="title-link" name="zone-condition" href="#zone-condition"></a> Zone condition</h3>
<p>Zone conditions test if an entity is in a certain zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. Currently this is limited to the <a href="/components/device_tracker.owntracks/">OwnTracks platform</a> and the <a href="/components/device_tracker.icloud/">iCloud platform</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">zone</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">zone</span><span class="pi">:</span> <span class="s">zone.home</span>
</code></pre>
</div>
<h3><a class="title-link" name="examples" href="#examples"></a> Examples</h3>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="s">condition</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">numeric_state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">sun.sun</span>
<span class="s">value_template</span><span class="pi">:</span> <span class="s1">'</span><span class="s">'</span>
<span class="s">below</span><span class="pi">:</span> <span class="s">1</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">light.living_room</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">off'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">time</span>
<span class="s">before</span><span class="pi">:</span> <span class="s1">'</span><span class="s">23:00:00'</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">14:00:00'</span>
<span class="pi">-</span> <span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">script.light_turned_off_5min</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">off'</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/scripts-conditions.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a class='active' href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,283 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Service Calls - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to call services in Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/scripts-service-calls/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Service Calls">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/scripts-service-calls/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to call services in Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Service Calls">
<meta name="twitter:description" content="Instructions how to call services in Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Service Calls
</h1>
</header>
<hr class="divider">
<p>Various components allow calling services when a certain event occurs. The most common one is calling a service when an automation trigger happens. But a service can also be called from a script or via the Amazon Echo.</p>
<p>The configuration options to call a config are the same between all components and are described on this page.</p>
<p>Examples on this page will be given as part of an automation component configuration but different approaches can be used for other components too.</p>
<p class="note">
Use the <img src="/images/screenshots/developer-tool-services-icon.png" class="no-shadow" height="38" /> service developer tool in the frontend to discover available services.
</p>
<h3><a class="title-link" name="the-basics" href="#the-basics"></a> The basics</h3>
<p>Call the service <code class="highlighter-rouge">homeassistant.turn_on</code> on the entity <code class="highlighter-rouge">group.living_room</code>. This will turn all members of <code class="highlighter-rouge">group.living_room</code> on. You can also omit <code class="highlighter-rouge">entity_id</code> and it will turn on all possible entities.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">service</span><span class="pi">:</span> <span class="s">homeassistant.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.living_room</span>
</code></pre>
</div>
<h3><a class="title-link" name="passing-data-to-the-service-call" href="#passing-data-to-the-service-call"></a> Passing data to the service call</h3>
<p>You can also specify other parameters beside the entity to target. For example, the light turn on service allows specifying the brightness.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.living_room</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">brightness</span><span class="pi">:</span> <span class="s">120</span>
<span class="s">rgb_color</span><span class="pi">:</span> <span class="pi">[</span><span class="nv">255</span><span class="pi">,</span> <span class="nv">0</span><span class="pi">,</span> <span class="nv">0</span><span class="pi">]</span>
</code></pre>
</div>
<h3><a class="title-link" name="use-templates-to-decide-which-service-to-call" href="#use-templates-to-decide-which-service-to-call"></a> Use templates to decide which service to call</h3>
<p>You can use <a href="/topics/templating/">templating</a> support to dynamically choose which service to call. For example, you can call a certain service based on if a light is on.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">service_template</span><span class="pi">:</span> <span class="pi">&gt;</span>
<span class="no">{% if states.sensor.temperature | float &gt; 15 %}</span>
<span class="no">switch.turn_on</span>
<span class="no">{% else %}</span>
<span class="no">switch.turn_off</span>
<span class="no">{% endif %}</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">switch.ac</span>
</code></pre>
</div>
<h3><a class="title-link" name="using-the-services-developer-tool" href="#using-the-services-developer-tool"></a> Using the Services Developer Tool</h3>
<p>You can use the Services Developer Tool to test data to pass in a service call.
For example, you may test turning on or off a group (See [groups] for more info)</p>
<p>To turn a group on or off, pass the following info:
Domain: <code class="highlighter-rouge">homeassistant</code>
Service: <code class="highlighter-rouge">turn_on</code>
Service Data: <code class="highlighter-rouge"><span class="p">{</span><span class="w"> </span><span class="nt">"entity_id"</span><span class="p">:</span><span class="w"> </span><span class="s2">"group.kitchen"</span><span class="w"> </span><span class="p">}</span></code></p>
<h3><a class="title-link" name="use-templates-to-determine-the-attributes" href="#use-templates-to-determine-the-attributes"></a> Use templates to determine the attributes</h3>
<p>Templates can also be used for the data that you pass to the service call.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">service</span><span class="pi">:</span> <span class="s">thermostat.set_temperature</span>
<span class="s">data_template</span><span class="pi">:</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="pi">&gt;</span>
<span class="no">{% if is_state('device_tracker.paulus', 'home') %}</span>
<span class="no">thermostat.upstairs</span>
<span class="no">{% else %}</span>
<span class="no">thermostat.downstairs</span>
<span class="no">{% endif %}</span>
<span class="s">temperature</span><span class="pi">:</span> <span class="pi">{{</span> <span class="nv">22 - distance(states.device_tracker.paulus)</span> <span class="pi">}}</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/scripts-service-calls.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a class='active' href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,291 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Script Syntax - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Documention for the Home Assistant Script Syntax.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/scripts/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Script Syntax">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/scripts/">
<meta property="og:type" content="website">
<meta property="og:description" content="Documention for the Home Assistant Script Syntax.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Script Syntax">
<meta name="twitter:description" content="Documention for the Home Assistant Script Syntax.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Script Syntax
</h1>
</header>
<hr class="divider">
<p>Scripts are a sequence of actions that Home Assistant will execute. Scripts are available as an entity through the standalone <a href="/components/script/">Script component</a> but can also be embedded in <a href="/getting-started/automation-action/">automations</a> and <a href="/components/alexa/">Alexa/Amazon Echo</a> configurations.</p>
<p>The script syntax basic structure is a list of key/value maps that contain actions. If a script contains only 1 action, the wrapping list can be omitted.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example script component containing script syntax</span>
<span class="s">script</span><span class="pi">:</span>
<span class="s">example_script</span><span class="pi">:</span>
<span class="s">sequence</span><span class="pi">:</span>
<span class="c1"># This is written using the Script Syntax</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">light.ceiling</span>
<span class="pi">-</span> <span class="s">service</span><span class="pi">:</span> <span class="s">notify.notify</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">message</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Turned</span><span class="nv"> </span><span class="s">on</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">ceiling</span><span class="nv"> </span><span class="s">light!'</span>
</code></pre>
</div>
<h3><a class="title-link" name="call-a-service" href="#call-a-service"></a> Call a Service</h3>
<p>The most important one is the action to call a service. This can be done in various ways. For all the different possibilities, have a look at the <a href="/getting-started/scripts-service-calls/">service calls page</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">alias</span><span class="pi">:</span> <span class="s">Bedroom lights on</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">light.turn_on</span>
<span class="s">data</span><span class="pi">:</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">group.bedroom</span>
<span class="s">brightness</span><span class="pi">:</span> <span class="s">100</span>
</code></pre>
</div>
<h3><a class="title-link" name="test-a-condition" href="#test-a-condition"></a> Test a Condition</h3>
<p>While executing a script you can add a condition to stop further execution. When a condition does not return <code class="highlighter-rouge">true</code>, the script will finish. There are many different conditions which are documented at the <a href="/getting-started/scripts-conditions/">conditions page</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">condition</span><span class="pi">:</span> <span class="s">state</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">state</span><span class="pi">:</span> <span class="s1">'</span><span class="s">home'</span>
</code></pre>
</div>
<h3><a class="title-link" name="delay" href="#delay"></a> Delay</h3>
<p>Delays are useful for temporarily suspending your script and start it at a later moment. We support different syntaxes for a delay as shown below.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Waits 1 hour</span>
<span class="s">delay</span><span class="pi">:</span> <span class="s">01:00</span>
</code></pre>
</div>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Waits 1 minute, 30 seconds</span>
<span class="s">delay</span><span class="pi">:</span> <span class="s">00:01:30</span>
</code></pre>
</div>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Waits 1 minute</span>
<span class="s">delay</span><span class="pi">:</span>
<span class="c1"># supports seconds, minutes, hours, days</span>
<span class="s">minutes</span><span class="pi">:</span> <span class="s">1</span>
</code></pre>
</div>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Waits however many minutes input_slider.minute_delay is set to</span>
<span class="c1"># Valid formats include HH:MM and HH:MM:SS</span>
<span class="s">delay</span><span class="pi">:</span> <span class="s1">'</span><span class="s">00:{{</span><span class="nv"> </span><span class="s">states.input_slider.minute_delay.state</span><span class="nv"> </span><span class="s">|</span><span class="nv"> </span><span class="s">int</span><span class="nv"> </span><span class="s">}}:00'</span>
</code></pre>
</div>
<h3><a class="title-link" name="fire-an-event" href="#fire-an-event"></a> Fire an Event</h3>
<p>This action allows you to fire an event. Events can be used for many things. It could trigger an automation or indicate to another component that something is happening. For instance, in the below example it is used to create an entry in the logbook.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">event</span><span class="pi">:</span> <span class="s">LOGBOOK_ENTRY</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">name</span><span class="pi">:</span> <span class="s">Paulus</span>
<span class="s">message</span><span class="pi">:</span> <span class="s">is waking up</span>
<span class="s">entity_id</span><span class="pi">:</span> <span class="s">device_tracker.paulus</span>
<span class="s">domain</span><span class="pi">:</span> <span class="s">light</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/scripts.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a class='active' href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,233 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Securing - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to secure your Home Assistant installation.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/securing/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Securing">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/securing/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to secure your Home Assistant installation.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Securing">
<meta name="twitter:description" content="Instructions how to secure your Home Assistant installation.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Securing
</h1>
</header>
<hr class="divider">
<p>One major advantage of Home Assistant is that its not dependent on cloud services. Even if youre only using Home Assistant on a local network, you should take steps to secure your instance.</p>
<h3><a class="title-link" name="checklist" href="#checklist"></a> Checklist</h3>
<ul>
<li><a href="https://home-assistant.io/getting-started/basic/#password-protecting-the-web-interface">Protect your web interface with a password</a></li>
<li>Secure your host. Sources could be <a href="https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/pdf/Security_Guide/Red_Hat_Enterprise_Linux-7-Security_Guide-en-US.pdf">Red Hat Enterprise Linux 7 Security Guide</a>, <a href="https://benchmarks.cisecurity.org/tools2/linux/CIS_Red_Hat_Enterprise_Linux_7_Benchmark_v1.0.0.pdf">CIS Red Hat Enterprise Linux 7 Benchmark</a>, or the <a href="https://www.debian.org/doc/manuals/securing-debian-howto/index.en.html">Securing Debian Manual</a>.</li>
<li>Restrict network access to your devices. Set <code class="highlighter-rouge">PermitRootLogin no</code> in your sshd config (usually <code class="highlighter-rouge">/etc/ssh/sshd_config</code>) and to use SSH keys for authentication instead of passwords.</li>
<li>Dont run Home Assistant as root consider the Principle of Least Privilege.</li>
<li>Keep your <a href="/topics/secrets/">secrets</a> safe.</li>
</ul>
<p>If you want to allow remote access, consider these additional points:</p>
<ul>
<li>Protect your communication with <a href="/blog/2015/12/13/setup-encryption-using-lets-encrypt/">TLS</a></li>
<li>Protect your communication with <a href="/cookbook/tor_configuration/">Tor</a></li>
<li>Protect your communication with a <a href="/cookbook/tls_self_signed_certificate/">self-signed certificate</a></li>
<li>Use a <a href="/cookbook/apache_configuration/">proxy</a></li>
</ul>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/securing.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a class='active' href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,291 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Troubleshooting your configuration - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Common problems with tweaking your configuration and their solutions.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/troubleshooting-configuration/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Troubleshooting your configuration">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/troubleshooting-configuration/">
<meta property="og:type" content="website">
<meta property="og:description" content="Common problems with tweaking your configuration and their solutions.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Troubleshooting your configuration">
<meta name="twitter:description" content="Common problems with tweaking your configuration and their solutions.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Troubleshooting Your Configuration
</h1>
</header>
<hr class="divider">
<p>It can happen that you run into trouble while configuring Home Assistant. Perhaps a component is not showing up or is acting strangely. This page will discuss a few of the most common problems.</p>
<p>Before we dive into common issues, make sure you know where your configuration directory is. Home Assistant will print out the configuration directory it is using when starting up.</p>
<p>Whenever a component or configuration option results in a warning, it will be stored in <code class="highlighter-rouge">home-assistant.log</code> in the configuration directory. This file is reset on start of Home Assistant.</p>
<h3><a class="title-link" name="my-component-does-not-show-up" href="#my-component-does-not-show-up"></a> My component does not show up</h3>
<p>When a component does not show up, many different things can be the case. Before you try any of these steps, make sure to look at the <code class="highlighter-rouge">home-assistant.log</code> file and see if there are any errors related to your component you are trying to set up.</p>
<p>If you have incorrect entries in your configuration files you can use the <code class="highlighter-rouge">check_config</code> script to assist in identifying them: <code class="highlighter-rouge">hass --script check_config</code>.</p>
<h4><a class="title-link" name="problems-with-the-configuration" href="#problems-with-the-configuration"></a> Problems with the configuration</h4>
<p>One of the most common problems with Home Assistant is an invalid <code class="highlighter-rouge">configuration.yaml</code> file.</p>
<ul>
<li>You can test your configuration using the command line with: <code class="highlighter-rouge">hass --script check_config</code></li>
<li>You can verify your configurations yaml structure using <a href="http://yaml-online-parser.appspot.com/">this online YAML parser</a> or <a href="http://www.yamllint.com/">YAML Lint</a>.</li>
<li>To learn more about the quirks of YAML, read <a href="https://docs.saltstack.com/en/latest/topics/troubleshooting/yaml_idiosyncrasies.html">YAML IDIOSYNCRASIES</a> by SaltStack (the examples there are specific to SaltStack, but do explain YAML issues well).</li>
</ul>
<p><code class="highlighter-rouge">configuration.yaml</code> does not allow multiple sections to have the same name. If you want to load multiple platforms for one component, you can append a <a href="/getting-started/devices/#style-2-list-each-device-separately">number or string</a> to the name or nest them using <a href="/getting-started/devices/#style-1-collect-every-entity-under-the-parent">this style</a>:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">sensor</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">forecast</span>
<span class="s">...</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">bitcoin</span>
<span class="s">...</span>
</code></pre>
</div>
<p>Another common problem is that a required configuration setting is missing. If this is the case, the component will report this to <code class="highlighter-rouge">home-assistant.log</code>. You can have a look at <a href="/components/">the various component pages</a> for instructions on how to setup the components.</p>
<p>See the <a href="/components/logger/">logger</a> component for instructions on how to define the level of logging you require for specific modules.</p>
<p>If you find any errors or want to expand the documentation, please <a href="https://github.com/home-assistant/home-assistant.io/issues">let us know</a>.</p>
<h4><a class="title-link" name="problems-with-dependencies" href="#problems-with-dependencies"></a> Problems with dependencies</h4>
<p>Almost all components have external dependencies to communicate with your devices and services. Sometimes Home Assistant is unable to install the necessary dependencies. If this is the case, it should show up in <code class="highlighter-rouge">home-assistant.log</code>.</p>
<p>The first step is trying to restart Home Assistant and see if the problem persists. If it does, look at the log to see what the error is. If you cant figure it out, please <a href="https://github.com/home-assistant/home-assistant/issues">report it</a> so we can investigate what is going on.</p>
<h4><a class="title-link" name="problems-with-components" href="#problems-with-components"></a> Problems with components</h4>
<p>It can happen that some components either do not work right away or stop working after Home Assistant has been running for a while. If this happens to you, please <a href="https://github.com/home-assistant/home-assistant/issues">report it</a> so that we can have a look.</p>
<h4><a class="title-link" name="multiple-files" href="#multiple-files"></a> Multiple files</h4>
<p>If you are using multiple files for your setup, make sure that the pointers are correct and the format of the files is valid.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">light</span><span class="pi">:</span> <span class="kt">!include</span> <span class="s">devices/lights.yaml</span>
<span class="s">sensor</span><span class="pi">:</span> <span class="kt">!include</span> <span class="s">devices/sensors.yaml</span>
</code></pre>
</div>
<p>Contents of <code class="highlighter-rouge">lights.yaml</code> (notice it does not contain <code class="highlighter-rouge">light: </code>):</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">hyperion</span>
<span class="s">host</span><span class="pi">:</span> <span class="s">192.168.1.98</span>
<span class="s">...</span>
</code></pre>
</div>
<p>Contents of <code class="highlighter-rouge">sensors.yaml</code>:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">name</span><span class="pi">:</span> <span class="s2">"</span><span class="s">Room</span><span class="nv"> </span><span class="s">Humidity"</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s2">"</span><span class="s">room/humidity"</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">name</span><span class="pi">:</span> <span class="s2">"</span><span class="s">Door</span><span class="nv"> </span><span class="s">Motion"</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s2">"</span><span class="s">door/motion"</span>
<span class="s">...</span>
</code></pre>
</div>
<p class="note">
Whenever you report an issue, be aware that we are volunteers who do not have access to every single device in the world nor unlimited time to fix every problem out there.
</p>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/troubleshooting-configuration.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a class='active' href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,279 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Troubleshooting installation problems - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Common installation problems and their solutions.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/troubleshooting/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Troubleshooting installation problems">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/troubleshooting/">
<meta property="og:type" content="website">
<meta property="og:description" content="Common installation problems and their solutions.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Troubleshooting installation problems">
<meta name="twitter:description" content="Common installation problems and their solutions.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Troubleshooting Installation Problems
</h1>
</header>
<hr class="divider">
<p>It can happen that you run into trouble while installing Home Assistant. This page is here to help you solve the most common problems.</p>
<h4><a class="title-link" name="pip3-command-not-found" href="#pip3-command-not-found"></a> pip3: command not found</h4>
<p>This utility should have been installed as part of the Python 3.4 installation. Check if Python 3.4 is installed by running <code class="highlighter-rouge">python3 --version</code>. If it is not installed, <a href="https://www.python.org/getit/">download it here</a>.</p>
<p>If you are able to successfully run <code class="highlighter-rouge">python3 --version</code> but not <code class="highlighter-rouge">pip3</code>, install Home Assistant by running the following command instead:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>python3 -m pip install homeassistant
</code></pre>
</div>
<p>On a Debian system, you can also install python3 by <code class="highlighter-rouge">sudo apt-get install python3</code>, and pip3 by <code class="highlighter-rouge">sudo apt-get install python3-pip</code>.</p>
<h4><a class="title-link" name="no-module-named-pip" href="#no-module-named-pip"></a> No module named pip</h4>
<p><a href="https://pip.pypa.io/en/stable/">Pip</a> should come bundled with the latest Python 3 but is omitted by some distributions. If you are unable to run <code class="highlighter-rouge">python3 -m pip --version</code> you can install <code class="highlighter-rouge">pip</code> by <a href="https://bootstrap.pypa.io/get-pip.py">downloading the installer</a> and running it with Python 3:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>python3 get-pip.py
</code></pre>
</div>
<h4><a class="title-link" name="libyaml-is-not-found-or-a-compiler-error" href="#libyaml-is-not-found-or-a-compiler-error"></a> libyaml is not found or a compiler error</h4>
<p>On a Debian system, install the Python 3 YAML library by <code class="highlighter-rouge">sudo apt-get install python3-yaml</code>.</p>
<h4><a class="title-link" name="distutilserrorsdistutilsoptionerror-must-supply-either-home-or-prefixexec-prefix----not-both" href="#distutilserrorsdistutilsoptionerror-must-supply-either-home-or-prefixexec-prefix----not-both"></a> distutils.errors.DistutilsOptionError: must supply either home or prefix/exec-prefix not both</h4>
<p>This is a known issue if youre on a Mac using Homebrew to install Python. Please follow <a href="https://github.com/Homebrew/brew/blob/master/docs/Homebrew-and-Python.md#note-on-pip-install---user">these instructions</a> to resolve it.</p>
<h4><a class="title-link" name="centos-and-python-3" href="#centos-and-python-3"></a> CentOS and Python 3</h4>
<p>To run Python 3.x on <a href="https://www.centos.org/">CentOS</a> or RHEL, <a href="https://www.softwarecollections.org/en/scls/rhscl/rh-python34/">Software Collections</a> needs to be activated.</p>
<h4><a class="title-link" name="no-access-to-the-frontend" href="#no-access-to-the-frontend"></a> No access to the frontend</h4>
<p>In newer Linux distributions (at least Fedora 22/CentOS 7) the access to a host is very limited. This means that you cant access the Home Assistant frontend that is running on a host outside of the host machine. Windows and OSX machines may also have issues with this.</p>
<p>To fix this you will need to open your machines firewall for TCP traffic over port 8123. The method for doing this will vary depending on your operating system and the firewall you have installed. Below are some suggestions to try. Google is your friend here.</p>
<ul>
<li><a href="http://windows.microsoft.com/en-us/windows/open-port-windows-firewall#1TC=windows-7">Windows instructions</a></li>
<li><a href="https://support.apple.com/en-us/HT201642">Mac OSX instructions</a></li>
</ul>
<p>For systems with <strong>firewalld</strong> (Fedora, CentOS/RHEL, etc.):</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo firewall-cmd --permanent --add-port<span class="o">=</span>8123/tcp
<span class="gp">$ </span>sudo firewall-cmd --reload
</code></pre>
</div>
<p>For UFW systems (Ubuntu, Debian, Raspbian, etc.):</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo ufw allow 8123/tcp
</code></pre>
</div>
<p>For <code class="highlighter-rouge">iptables</code> systems (was the default for older distributions):</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>iptables -I INPUT -p tcp --dport 8123 -j ACCEPT
<span class="gp">$ </span>iptables-save &gt; /etc/network/iptables.rules <span class="c"># your rules may be saved elsewhere</span>
</code></pre>
</div>
<h4><a class="title-link" name="after-upgrading-your-browser-login-gets-stuck-at-the-loading-data-step" href="#after-upgrading-your-browser-login-gets-stuck-at-the-loading-data-step"></a> After upgrading, your browser login gets stuck at the “loading data” step</h4>
<p>After upgrading to a new version, you may notice your browser gets stuck at the “loading data” login screen. Close the window/tab and go into your browser settings and delete all the cookies for your URL. You can then log back in and it should work.</p>
<p>Android Chrome
chrome -&gt; settings -&gt; site settings -&gt; storage -&gt; search for your URL for home assistant-&gt; “clear &amp; reset”</p>
<h3><a href="/getting-started/">« Back to Getting Started</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/troubleshooting.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a class='active' href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,247 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Updating Home Assistant - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Step to update Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/updating/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Updating Home Assistant">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/updating/">
<meta property="og:type" content="website">
<meta property="og:description" content="Step to update Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Updating Home Assistant">
<meta name="twitter:description" content="Step to update Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Updating Home Assistant
</h1>
</header>
<hr class="divider">
<p>The default way to update Home Assistant to the latest release, when available, is:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>pip3 install --upgrade homeassistant
</code></pre>
</div>
<p>Different installation methods as <a href="/getting-started/installation-raspberry-pi-image/#update-home-assistant-on-hassbian">HASSbian</a>, <a href="/getting-started/installation-raspberry-pi-all-in-one/#upgrading">Raspberry Pi All-In-One Installer</a>, <a href="/getting-started/installation-vagrant/">Vagrant</a>, or <a href="/getting-started/installation-virtualenv/#upgrading-home-assistant">Virtualenv</a> may have an alternative way for updating Home Assistant.</p>
<p>After updating, you must restart Home Assistant for the changes to take effect. This means that you will have to restart <code class="highlighter-rouge">hass</code> itself or the <a href="/getting-started/autostart/">autostarting</a> daemon (if applicable)</p>
<p class="note note">
To avoid permission errors, the upgrade must be run as the same user as the installation was completed.
</p>
<p><a href="http://www.bruhautomation.com">BRUH automation</a> has created <a href="https://www.youtube.com/watch?v=tuG2rs1Cl2Y">a tutorial video</a> explaining how to upgrade Home Assistant.</p>
<h4><a class="title-link" name="run-a-specific-version" href="#run-a-specific-version"></a> Run a specific version</h4>
<p>In the event that a Home Assistant version doesnt play well with your hardware setup, you can downgrade to a previous release:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>pip3 install <span class="nv">homeassistant</span><span class="o">==</span>0.XX.X
</code></pre>
</div>
<h4><a class="title-link" name="run-the-development-version" href="#run-the-development-version"></a> Run the development version</h4>
<p>If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to <code class="highlighter-rouge">dev</code>.</p>
<p class="note warning">
The “dev” branch is likely to be unstable. Potential consequences include loss of data and instance corruption.
</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>pip3 install --upgrade git+git://github.com/home-assistant/home-assistant.git@dev
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/updating.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a class='active' href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,265 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>YAML - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Details about YAML to configure Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/yaml/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="YAML">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/yaml/">
<meta property="og:type" content="website">
<meta property="og:description" content="Details about YAML to configure Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="YAML">
<meta name="twitter:description" content="Details about YAML to configure Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
YAML
</h1>
</header>
<hr class="divider">
<p>Home Assistant uses the <a href="http://yaml.org/">YAML</a> syntax for configuration. YAML might take a while to get used to but is really powerful in allowing you to express complex configurations.</p>
<p>For each component that you want to use in Home Assistant, you add code in your <code class="highlighter-rouge">configuration.yaml</code> file to specify its settings.
The following example entry specifies that you want to use the <a href="/components/notify">notify component</a> with the <a href="/components/notify.pushbullet">pushbullet platform</a>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">notify</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">pushbullet</span>
<span class="s">api_key</span><span class="pi">:</span> <span class="s2">"</span><span class="s">o.1234abcd"</span>
<span class="s">name</span><span class="pi">:</span> <span class="s">pushbullet</span>
</code></pre>
</div>
<ul>
<li>A <strong>component</strong> provides the core logic for some functionality (like <code class="highlighter-rouge">notify</code> provides sending notifications).</li>
<li>A <strong>platform</strong> makes the connection to a specific software or hardware platform (like <code class="highlighter-rouge">pushbullet</code> works with the service from pushbullet.com).</li>
</ul>
<p>The basics of YAML syntax are block collections and mappings containing key-value pairs. Each item in a collection starts with a <code class="highlighter-rouge">-</code> while mappings have the format <code class="highlighter-rouge">key: value</code>. If you specify duplicate keys, the last value for a key is used.</p>
<p>Note that indentation is an important part of specifying relationships using YAML. Things that are indented are nested “inside” things that are one level higher. So in the above example, <code class="highlighter-rouge">platform: pushbullet</code> is a property of (nested inside) the <code class="highlighter-rouge">notify</code> component.
Getting the right indentation can be tricky if youre not using an editor with a fixed width font. Tabs are not allowed to be used for indentation. Convention is to use 2 spaces for each level of indentation.
You can use <a href="http://www.yamllint.com/">YAMLLint</a> to check if your YAML-syntax is correct before loading it into Home Assistant which will save you some time.
<em>Please pay attention on not putting in private data, as it is a 3rd-party website not maintained by Home Assistant.</em></p>
<p>Lines that start with <strong>#</strong> are comments and are ignored by the system.</p>
<p>The next example shows an <a href="/components/input_select">input_select</a> component that uses a block collection for the options values.
The other properties (like name) are specified using mappings. Note that the second line just has <code class="highlighter-rouge">threat:</code> with no value on the same line. Here threat is the name of the input_select and the values for it are everything nested below it.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">input_select</span><span class="pi">:</span>
<span class="s">threat</span><span class="pi">:</span>
<span class="s">name</span><span class="pi">:</span> <span class="s">Threat level</span>
<span class="c1"># A collection is used for options</span>
<span class="s">options</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">0</span>
<span class="pi">-</span> <span class="s">1</span>
<span class="pi">-</span> <span class="s">2</span>
<span class="pi">-</span> <span class="s">3</span>
<span class="s">initial</span><span class="pi">:</span> <span class="s">0</span>
</code></pre>
</div>
<p>The following example shows nesting a collection of mappings in a mapping. In Home Assistant, this would create two sensors that each use the MQTT platform but have different values for their <code class="highlighter-rouge">state_topic</code> (one of the properties used for MQTT sensors).</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="s">sensor</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s">sensor/topic</span>
<span class="pi">-</span> <span class="s">platform</span><span class="pi">:</span> <span class="s">mqtt</span>
<span class="s">state_topic</span><span class="pi">:</span> <span class="s">sensor2/topic</span>
</code></pre>
</div>
<h3><a href="/getting-started/basic/">Next step: Setting up the basics »</a></h3>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/yaml.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a class='active' href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,271 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Z-Wave Controllers - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Extended instructions how to setup Z-Wave.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/z-wave-controllers/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Z-Wave Controllers">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/z-wave-controllers/">
<meta property="og:type" content="website">
<meta property="og:description" content="Extended instructions how to setup Z-Wave.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Z-Wave Controllers">
<meta name="twitter:description" content="Extended instructions how to setup Z-Wave.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Z-Wave Controllers
</h1>
</header>
<hr class="divider">
<p>Z-Wave is a popular home automation protocol that is not always straightforward to setup. This page will try to help you make sense of it all.</p>
<p class="note">
Upon first run, the <code class="highlighter-rouge">zwave</code> component will take time to initialize entities and entities may appear with incomplete names. Running a network heal may expedite this process.
</p>
<h2><a class="title-link" name="supported-z-wave-usb-sticks--hardware-modules" href="#supported-z-wave-usb-sticks--hardware-modules"></a> Supported Z-Wave USB Sticks &amp; Hardware Modules</h2>
<table>
<thead>
<tr>
<th>Device</th>
<th>Works on Linux</th>
<th>Works on Windows</th>
<th>Works on OSX</th>
</tr>
</thead>
<tbody>
<tr>
<td>Aeotec Z-Stick Series 2</td>
<td></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Aeotec Z-Stick Series 5</td>
<td></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Pine64 Z-Wave Module</td>
<td></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Razberry GPIO Module</td>
<td></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>ZWave.me UZB1</td>
<td></td>
<td> </td>
<td> </td>
</tr>
</tbody>
</table>
<h2><a class="title-link" name="stick-alternatives" href="#stick-alternatives"></a> Stick Alternatives</h2>
<p>The alternative to a stick is a hub that supports Z-Wave. Home Assistant supports the following hubs with Z-Wave support:</p>
<ul>
<li><a href="/components/vera/">Vera</a></li>
<li><a href="/components/wink/">Wink</a></li>
</ul>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/z-wave-controllers.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a class='active' href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,315 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Z-Wave Device Specific Settings - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Extended instructions how to setup Z-Wave.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/z-wave-device-specific/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Z-Wave Device Specific Settings">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/z-wave-device-specific/">
<meta property="og:type" content="website">
<meta property="og:description" content="Extended instructions how to setup Z-Wave.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Z-Wave Device Specific Settings">
<meta name="twitter:description" content="Extended instructions how to setup Z-Wave.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Z-Wave Device Specific Settings
</h1>
</header>
<hr class="divider">
<h5><a class="title-link" name="motion-or-alarm-sensors" href="#motion-or-alarm-sensors"></a> Motion or alarm sensors</h5>
<p>In order for Home Assistant to recognize the sensor properly, you will need to change its configuration from <code class="highlighter-rouge">Basic Set (default)</code> to <code class="highlighter-rouge">Binary Sensor report</code> or <code class="highlighter-rouge">Alarm report</code>.
These devices will either show as a binary sensor or a sensor called <code class="highlighter-rouge">Alarm xxxx</code> and will report a numeric value. Test to see what value is what. Sometimes this is noted in the device manual.</p>
<p>As of version 0.30 you can set the settings of a Z-Wave device through the dev_service page of Home Assistant with the service: <code class="highlighter-rouge">zwave/set_config_parameter</code>.</p>
<p>The following parameters can be entered:</p>
<ul>
<li><strong>node_id</strong> (<em>Required</em>): The node_id of the device that you are going to set a parameter to.</li>
<li><strong>parameter</strong> (<em>Required</em>): The index number of the parameter to be set. Refer to device manual or zwcfg_[home_id].xml</li>
<li><strong>value</strong> (<em>Required</em>): The value to set the parameter to. Refer to device manual or zwcfg_[home_id].xml</li>
<li><strong>size</strong> (<em>Optional</em>): The size of the value. It is normally not needed to specify this parameter, but in some cases its needed. Check OZW.log for details on this.
You should check OZW.log to see if your new setting has been set
Example entry in dev-service, setting binary reports for an Aeotec Multisensor 6:
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example entry in dev-service</span>
<span class="pi">{</span>
<span class="s2">"</span><span class="s">node_id"</span><span class="pi">:</span> <span class="nv">42</span><span class="pi">,</span>
<span class="s2">"</span><span class="s">parameter"</span><span class="pi">:</span> <span class="nv">5</span><span class="pi">,</span>
<span class="s2">"</span><span class="s">value"</span><span class="pi">:</span> <span class="nv">2</span>
<span class="pi">}</span>
</code></pre>
</div>
</li>
</ul>
<h5><a class="title-link" name="locks-and-other-secure-devices" href="#locks-and-other-secure-devices"></a> Locks and other secure devices</h5>
<p>These devices require a network key to be set for the Z-Wave network before they are paired. This key is set in OpenZWaves <code class="highlighter-rouge">options.xml</code> which is located in OpenZWaves directory. This should also be the same directory as <code class="highlighter-rouge">config_path:</code> in your <code class="highlighter-rouge">configuration.yaml</code>. If its not, make sure you have the same values in all the files you are using.
The option is commented out by default in <code class="highlighter-rouge">options.xml</code> and is a default key. Make your own unique key. The key is in Hexadecimals.
It is best to pair these devices in OpenZWave Control Panel or another Z-Wave tool that can show you logs while pairing. Home Assistant stores logs from Z-Wave in <code class="highlighter-rouge">OZW.log</code> in the Home Assistant config directory.
You should see communication from the node with lines starting with <code class="highlighter-rouge">info: NONCES</code> in <code class="highlighter-rouge">OZW.log</code> when the device is paired successfully with a secure connection. If you use OpenZWave Control Panel to pair, test the device before you save the configuration.
Make sure you copy the newly saved <code class="highlighter-rouge">zwcfg_[home_id].xml</code>into your Home Assistant configuration directory.</p>
<h5><a class="title-link" name="aeon-minimote" href="#aeon-minimote"></a> Aeon Minimote</h5>
<p>Heres a handy configuration for the Aeon Labs Minimote that defines all possible button presses. Put it into <code class="highlighter-rouge">automation.yaml</code>.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 1 Pressed</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">1</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 1 Held</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">2</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 2 Pressed</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">3</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 2 Held</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">4</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 3 Pressed</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">5</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 3 Held</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">6</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 4 Pressed</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">7</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button 4 Held</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">8</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/z-wave-device-specific.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a class='active' href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,231 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Z-Wave Settings - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Extended instructions how to setup Z-Wave.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/z-wave-settings/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Z-Wave Settings">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/z-wave-settings/">
<meta property="og:type" content="website">
<meta property="og:description" content="Extended instructions how to setup Z-Wave.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Z-Wave Settings">
<meta name="twitter:description" content="Extended instructions how to setup Z-Wave.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Z-Wave Settings
</h1>
</header>
<hr class="divider">
<p>You may wish to modify the Z-Wave settings in your <code class="highlighter-rouge">ozw*.xml</code> file (stored in the <code class="highlighter-rouge">.homeassistant</code> configuration directory), or certain situations/devices may require it (i.e. Aeon Multisensor 6). To do this, utilize <a href="https://github.com/OpenZWave/open-zwave-control-panel">Open-Zwave Control Panel</a>. Alternatively, use <a href="https://www.domoticz.com/">Domoticz</a>, which incorporates the Open-Zwave Control Panel project into an easy to use Raspberry Pi image.</p>
<p>The reasoning for using these tools is that your Z-Wave controller stores the values and data that are used to control the network. The XML file in the <code class="highlighter-rouge">.homeassistant</code> configuration directory acts as a settings/values cache for the Z-Wave network, so modifying it directly wont change the network values. The <a href="https://github.com/OpenZWave/open-zwave-control-panel">Open-Zwave Control Panel</a> writes values directly to the network and will provide you with an updated <code class="highlighter-rouge">.xml</code> file to overwrite in your <code class="highlighter-rouge">.homeassistant</code> configuration directory. This is the most foolproof way to make modifications to your Z-Wave devices.</p>
<p>Its totally normal for your Z-Wave stick (Aeon Aeotec Z-Stick Gen5 for example) to cycle through its LEDs (Yellow, Blue and Red) while plugged into your system. If you dont like this behaviour it can be turned off.</p>
<p>Use the following example commands from a terminal session on your Pi where your Z-Wave stick is connected.</p>
<p>Turn off “Disco lights”:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">echo</span> -e -n <span class="s2">"</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">08</span><span class="se">\x</span><span class="s2">00</span><span class="se">\x</span><span class="s2">F2</span><span class="se">\x</span><span class="s2">51</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">00</span><span class="se">\x</span><span class="s2">05</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">51"</span> &gt; /dev/serial/by-id/usb-0658_0200-if00
</code></pre>
</div>
<p>Turn on “Disco lights”:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span><span class="nb">echo</span> -e -n <span class="s2">"</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">08</span><span class="se">\x</span><span class="s2">00</span><span class="se">\x</span><span class="s2">F2</span><span class="se">\x</span><span class="s2">51</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">05</span><span class="se">\x</span><span class="s2">01</span><span class="se">\x</span><span class="s2">50"</span> &gt; /dev/serial/by-id/usb-0658_0200-if00
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/z-wave-settings.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a class='active' href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>

View file

@ -0,0 +1,501 @@
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Z-Wave - Home Assistant</title>
<meta name="author" content="Home Assistant">
<meta name="description" content="Instructions how to integrate your existing Z-Wave within Home Assistant.">
<meta name="viewport" content="width=device-width">
<link rel="canonical" href="https://home-assistant.io/getting-started/z-wave/">
<meta property="fb:app_id" content="338291289691179">
<meta property="og:title" content="Z-Wave">
<meta property="og:site_name" content="Home Assistant">
<meta property="og:url" content="https://home-assistant.io/getting-started/z-wave/">
<meta property="og:type" content="website">
<meta property="og:description" content="Instructions how to integrate your existing Z-Wave within Home Assistant.">
<meta property="og:image" content="https://home-assistant.io/images/default-social.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@home_assistant">
<meta name="twitter:title" content="Z-Wave">
<meta name="twitter:description" content="Instructions how to integrate your existing Z-Wave within Home Assistant.">
<meta name="twitter:image" content="https://home-assistant.io/images/default-social.png">
<link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet">
<link href="/atom.xml" rel="alternate" title="Home Assistant" type="application/atom+xml">
<link rel='shortcut icon' href='/images/favicon.ico' />
<link rel='icon' type='image/png' href='/images/favicon-192x192.png' sizes='192x192' />
</head>
<body >
<header>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item three-tenths lap-two-sixths palm-one-whole ha-title">
<a href="/" class="site-title">
<img width='40' src='/demo/favicon-192x192.png'>
<span>Home Assistant</span>
</a>
</div>
<div class="grid__item seven-tenths lap-four-sixths palm-one-whole">
<nav>
<input type="checkbox" id="toggle">
<label for="toggle" class="toggle" data-open="Main Menu" data-close="Close Menu"></label>
<ul class="menu pull-right">
<li><a href="/getting-started/">Getting started</a></li>
<li><a href="/components/">Components</a></li>
<li><a href="/ecosystem/">Ecosystem</a></li>
<li><a href="/cookbook/">Examples</a></li>
<li><a href="/developers/">Developers</a></li>
<li><a href="/blog/">Blog</a></li>
<li><a href="/help/">Need help?</a></li>
</ul>
</nav>
</div>
</div>
</div>
</header>
<div class="grid-wrapper">
<div class="grid grid-center">
<div class="grid__item two-thirds lap-one-whole palm-one-whole">
<article class="page">
<header>
<h1 class="title indent">
Z-Wave
</h1>
</header>
<hr class="divider">
<p><a href="http://www.z-wave.com/">Z-Wave</a> integration for Home Assistant allows you to observe and control connected Z-Wave devices. Z-Wave support requires a <a href="https://github.com/OpenZWave/open-zwave/wiki/Controller-Compatibility-List">supported Z-Wave USB stick or module</a> to be plugged into the host.</p>
<p>There is currently support for climate, covers, lights, locks, sensors, switches and thermostats. All will be picked up automatically after configuring this platform.</p>
<h3><a class="title-link" name="installation" href="#installation"></a> Installation</h3>
<p>To allow Home Assistant to talk to your Z-Wave USB stick you will have to compile the OpenZWave library and install the related <a href="https://github.com/OpenZWave/python-openzwave">python-OpenZWave package</a>. This can be done as follows. <em>(Note: The Home Assistant docker image and the All In One installer have support for Z-Wave already built-in!)</em></p>
<p>Make sure you have the correct dependencies installed before running the script:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get install cython3 libudev-dev python3-sphinx python3-setuptools git
</code></pre>
</div>
<p>Make sure you have at least version 0.23 and at the most 0.24.1 of cython.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo pip3 install --upgrade <span class="nv">cython</span><span class="o">==</span>0.24.1
</code></pre>
</div>
<p>Then get the OpenZWave files and switch to the <code class="highlighter-rouge">python3</code> branch:</p>
<p class="note warning">Do not use root to build python-openzwave as it will surely fail.</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>git clone https://github.com/OpenZWave/python-openzwave.git
<span class="gp">$ </span><span class="nb">cd </span>python-openzwave
<span class="gp">$ </span>git checkout python3
<span class="gp">$ </span><span class="nv">PYTHON_EXEC</span><span class="o">=</span><span class="k">$(</span>which python3<span class="k">)</span> make build
<span class="gp">$ </span>sudo <span class="nv">PYTHON_EXEC</span><span class="o">=</span><span class="k">$(</span>which python3<span class="k">)</span> make install
</code></pre>
</div>
<p class="note">
Instead of <code class="highlighter-rouge">make install</code>, you can alternatively build your own python-openzwave package which can be easily uninstalled:
</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>sudo apt-get install -y checkinstall
<span class="gp">$ </span>sudo <span class="nv">PYTHON_EXEC</span><span class="o">=</span><span class="k">$(</span>which python3<span class="k">)</span> checkinstall --pkgname python-openzwave --pkgversion 1.0 --provides python-openzwave
</code></pre>
</div>
<p>With this installation, your <code class="highlighter-rouge">config_path</code> needed below will resemble:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code>/usr/local/lib/python3.4/dist-packages/libopenzwave-0.3.0b8-py3.4-linux-x86_64.egg/config
</code></pre>
</div>
<p>If you followed along with setting up a virtual environment, your path will be:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code>/srv/hass/python-openzwave/openzwave/config
</code></pre>
</div>
<h3><a class="title-link" name="configuration" href="#configuration"></a> Configuration</h3>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">zwave</span><span class="pi">:</span>
<span class="s">usb_path</span><span class="pi">:</span> <span class="s">/dev/ttyUSB0</span>
</code></pre>
</div>
<p>Configuration variables:</p>
<ul>
<li><strong>usb_path</strong> (<em>Optional</em>): The port where your device is connected to your Home Assistant host.</li>
<li><strong>config_path</strong> (<em>Optional</em>): The path to the Python OpenZWave configuration files. Defaults to the folder <code class="highlighter-rouge">config</code> in your Python OpenZWave install directory.</li>
<li><strong>autoheal</strong> (<em>Optional</em>): Allows disabling auto Z-Wave heal at midnight. Defaults to True.</li>
<li><strong>polling_interval</strong> (<em>Optional</em>): The time period in milliseconds between polls of a nodes value. Be careful about using polling values below 30000 (30 seconds) as polling can flood the zwave network and cause problems.</li>
<li><strong>customize</strong> (<em>Optional</em>): This attribute contains node-specific override values:
<ul>
<li><strong>polling_intensity</strong> (<em>Optional</em>): Enables polling of a value and sets the frequency of polling (0=none, 1=every time through the list, 2=every other time, etc). If not specified then your device will not be polled.</li>
<li><strong>ignored</strong> (<em>Optional</em>): Ignore this entitiy completely. It wont be shown in the Web Interface and no events are generated for it.</li>
</ul>
</li>
</ul>
<p>To find the path of your Z-Wave USB stick or module, run:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ls /dev/ttyUSB<span class="k">*</span>
</code></pre>
</div>
<p>Or, on some other systems (such as Raspberry Pi), use:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ls /dev/ttyACM<span class="k">*</span>
</code></pre>
</div>
<p>Or, on some other systems (such as Pine 64), use:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ls /dev/ttyS<span class="k">*</span>
</code></pre>
</div>
<p>Or, on macOS, use:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code><span class="gp">$ </span>ls /dev/cu.usbmodem<span class="k">*</span>
</code></pre>
</div>
<p class="note">
Depending on whats plugged into your USB ports, the name found above may change. You can lock in a name, such as <code class="highlighter-rouge">/dev/zwave</code>, by following <a href="http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/">these instructions</a>.
</p>
<h3><a class="title-link" name="adding-security-devices" href="#adding-security-devices"></a> Adding Security Devices</h3>
<p>Security Z-Wave devices require a network key before being added to the network using the <code class="highlighter-rouge">zwave.add_node_secure</code> service. You must edit the <code class="highlighter-rouge">options.xml</code> file, located in your <code class="highlighter-rouge">python-openzwave config_path</code> to use a network key before adding these devices.</p>
<p>Edit your <code class="highlighter-rouge">options.xml</code> file:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code> &lt;!-- &lt;Option <span class="nv">name</span><span class="o">=</span><span class="s2">"NetworkKey"</span> <span class="nv">value</span><span class="o">=</span><span class="s2">"0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F 0x10"</span> /&gt; --&gt;
</code></pre>
</div>
<p>Uncomment the line:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code> &lt;Option <span class="nv">name</span><span class="o">=</span><span class="s2">"NetworkKey"</span> <span class="nv">value</span><span class="o">=</span><span class="s2">"0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, 0x10"</span> /&gt;
</code></pre>
</div>
<p>You can replace these values with your own 16 byte network key. For more information on this process see the <a href="https://github.com/OpenZWave/open-zwave">OpenZwave</a> wiki article <a href="https://github.com/OpenZWave/open-zwave/wiki/Adding-Security-Devices-to-OZW">Adding Security Devices to OZW</a></p>
<p>An easy script to generate a random key:</p>
<div class="language-bash highlighter-rouge"><pre class="highlight"><code>cat /dev/urandom | tr -dc <span class="s1">'0-9A-F'</span> | fold -w 32 | head -n 1 | sed -e <span class="s1">'s/\(..\)/0x\1, /g'</span>
</code></pre>
</div>
<h3><a class="title-link" name="events" href="#events"></a> Events</h3>
<h4><a class="title-link" name="zwavenetwork_complete" href="#zwavenetwork_complete"></a> zwave.network_complete</h4>
<p>Home Assistant will trigger a event when the Z-Wave network is complete. Meaning all of the nodes on the network have been queried. This can take quite some time, depending on wakeup intervals on the battery powered devices on the network.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Z-Wave network is complete</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.network_complete</span>
</code></pre>
</div>
<h4><a class="title-link" name="zwavenetwork_ready" href="#zwavenetwork_ready"></a> zwave.network_ready</h4>
<p>Home Assistant will trigger a event when the Z-Wave network is ready for use. Between <code class="highlighter-rouge">zwave.network_start</code> and <code class="highlighter-rouge">zwave.network_ready</code> Home Assistant will feel sluggish when trying to send commands to Z-Wave nodes. This is because the controller is requesting information from all of the nodes on the network. When this is triggered all awake nodes have been queried and sleeping nodes will be queried when they awake.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Z-Wave network is ready</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.network_ready</span>
</code></pre>
</div>
<h4><a class="title-link" name="zwavenetwork_start" href="#zwavenetwork_start"></a> zwave.network_start</h4>
<p>Home Assistant will trigger a event when the Z-Wave network is set up to be started.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Z-Wave network is starting</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.network_start</span>
</code></pre>
</div>
<h4><a class="title-link" name="zwavenetwork_stop" href="#zwavenetwork_stop"></a> zwave.network_stop</h4>
<p>Home Assistant will trigger a event when the Z-Wave network stopping.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Z-Wave network is stopping</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.network_stop</span>
</code></pre>
</div>
<h4><a class="title-link" name="zwavenode_event" href="#zwavenode_event"></a> zwave.node_event</h4>
<p>Home Assistant will trigger a event when command_class_basic changes value on a node.
This can be virtually anything, so tests have to be made to determine what value equals what.
You can use this for automations.</p>
<p>Example:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code> <span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Minimote Button Pressed</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.node_event</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">aeon_labs_minimote_1</span>
<span class="s">basic_level</span><span class="pi">:</span> <span class="s">255</span>
</code></pre>
</div>
<p>The <em>object_id</em> and <em>basic_level</em> of all triggered events can be seen in the console output.</p>
<h4><a class="title-link" name="zwavescene_activated" href="#zwavescene_activated"></a> zwave.scene_activated</h4>
<p>Some devices can also trigger scene activation events, which can be used in automation scripts (for example the press of a button on a wall switch):</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml automation entry</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">Turn on Desk light</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">event</span>
<span class="s">event_type</span><span class="pi">:</span> <span class="s">zwave.scene_activated</span>
<span class="s">event_data</span><span class="pi">:</span>
<span class="s">object_id</span><span class="pi">:</span> <span class="s">zwaveme_zme_wallcs_secure_wall_controller_8</span>
<span class="s">scene_id</span><span class="pi">:</span> <span class="s">11</span>
</code></pre>
</div>
<p>The <em>object_id</em> and <em>scene_id</em> of all triggered events can be seen in the console output.</p>
<h3><a class="title-link" name="services" href="#services"></a> Services</h3>
<p>The <code class="highlighter-rouge">zwave</code> component exposes multiple services to help maintain the network.</p>
<table>
<thead>
<tr>
<th>Service</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>add_node</td>
<td>Put the Z-Wave controller in inclusion mode. Allows one to add a new device to the Z-Wave network.</td>
</tr>
<tr>
<td>add_node_secure</td>
<td>Put the Z-Wave controller in secure inclusion mode. Allows one to add a new device with secure communications to the Z-Wave network.</td>
</tr>
<tr>
<td>change_association</td>
<td>Add or remove an association in th Z-Wave network</td>
</tr>
<tr>
<td>cancel_command</td>
<td>Cancels a running Z-Wave command. If you have started a add_node or remove_node command, and decides you are not going to do it, then this must be used to stop the inclusion/exclusion command.</td>
</tr>
<tr>
<td>heal_network</td>
<td>Tells the controller to “heal” the Z-Wave network. Basically asks the nodes to tell the controller all of their neighbors so the controller can refigure out optimal routing.</td>
</tr>
<tr>
<td>remove_node</td>
<td>Put the Z-Wave controller in exclusion mode. Allows one to remove a device from the Z-Wave network.</td>
</tr>
<tr>
<td>set_config_parameter</td>
<td>Lets the user set a config parameter to a node.</td>
</tr>
<tr>
<td>soft_reset</td>
<td>Tells the controller to do a “soft reset”. This is not supposed to lose any data, but different controllers can behave differently to a “soft reset” command.</td>
</tr>
<tr>
<td>start_network</td>
<td>Starts the Z-Wave network.</td>
</tr>
<tr>
<td>stop_network</td>
<td>Stops the Z-Wave network.</td>
</tr>
<tr>
<td>test_network</td>
<td>Tells the controller to send no-op commands to each node and measure the time for a response. In theory, this can also bring back nodes which have been marked “presumed dead”.</td>
</tr>
<tr>
<td>rename_node</td>
<td>Sets a nodes name. Requires an <code class="highlighter-rouge">entity_id</code> and <code class="highlighter-rouge">name</code> field.</td>
</tr>
</tbody>
</table>
<p>The <code class="highlighter-rouge">soft_reset</code> and <code class="highlighter-rouge">heal_network</code> commands can be used as part of an automation script to help keep a Z-Wave network running reliably as shown in the example below. By default, Home Assistant will run a <code class="highlighter-rouge">heal_network</code> at midnight. This is a configuration option for the <code class="highlighter-rouge">zwave</code> component, the option defaults to <code class="highlighter-rouge">true</code> but can be disabled by setting <code class="highlighter-rouge">auto_heal</code> to false. Using the <code class="highlighter-rouge">soft_reset</code> function with some Z-Wave controllers can cause the Z-Wave network to hang. If youre having issues with your Z-Wave network try disabling this automation.</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml automation entry</span>
<span class="s">automation</span><span class="pi">:</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">soft reset at 2:30am</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">2:30:00'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">zwave.soft_reset</span>
<span class="pi">-</span> <span class="s">alias</span><span class="pi">:</span> <span class="s">heal at 2:31am</span>
<span class="s">trigger</span><span class="pi">:</span>
<span class="s">platform</span><span class="pi">:</span> <span class="s">time</span>
<span class="s">after</span><span class="pi">:</span> <span class="s1">'</span><span class="s">2:31:00'</span>
<span class="s">action</span><span class="pi">:</span>
<span class="s">service</span><span class="pi">:</span> <span class="s">zwave.heal_network</span>
</code></pre>
</div>
</article>
</div>
<aside id="sidebar" class="grid__item one-third lap-one-whole palm-one-whole">
<div class="grid">
<section class="aside-module grid__item one-whole lap-one-half">
<div class='edit-github'><a href='https://github.com/home-assistant/home-assistant.github.io/tree/current/source/getting-started/z-wave.markdown'>Edit this page on GitHub</a></div>
<div class='section'>
<h1 class="title delta">Getting Started Guide</h1>
<ul class='divided sidebar-menu'>
<li>
<a href='/getting-started/'>Installation </a>
<ul>
<li><a href='/getting-started/installation-raspberry-pi/'>Raspberry Pi </a></li>
<li><a href='/getting-started/installation-raspberry-pi-all-in-one/'>Raspberry Pi All-In-One Installer </a></li>
<li><a href='/getting-started/installation-raspberry-pi-image/'>Raspberry Pi Image </a></li>
<li><a href='/getting-started/installation-docker/'>Docker </a></li>
<li><a href='/getting-started/installation-vagrant/'>Vagrant </a></li>
<li><a href='/getting-started/installation-synology/'>Synology NAS </a></li>
<li><a href='/getting-started/installation-virtualenv/'>Virtualenv Linux </a></li>
<li><a href='/getting-started/updating/'>Updating </a></li>
<li><a href='/getting-started/troubleshooting/'>Troubleshooting </a></li>
</ul>
</li>
<li>
<a href='/getting-started/configuration/'>Configuration </a>
<ul>
<li><a href='/getting-started/yaml/'>YAML </a></li>
<li><a href='/getting-started/basic/'>Basic information </a></li>
<li><a href='/getting-started/devices/'>Setting up devices </a></li>
<li><a href='/getting-started/customizing-devices/'>Customizing devices and services </a></li>
<li><a href='/getting-started/presence-detection/'>Presence Detection </a></li>
<li><a href='/getting-started/troubleshooting-configuration/'>Troubleshooting </a></li>
<li><a href='/getting-started/securing/'>Security Check Points </a></li>
</ul>
</li>
<li>
<a href='/getting-started/automation/'>Automation </a>
<ul>
<li><a href='/getting-started/automation-create-first/'>Tutorial </a></li>
<li><a href='/getting-started/automation-trigger/'>Triggers </a></li>
<li><a href='/getting-started/automation-condition/'>Conditions </a></li>
<li><a href='/getting-started/automation-action/'>Actions </a></li>
<li><a href='/getting-started/automation-templating/'>Templates </a></li>
</ul>
</li>
<li>
<a href='/getting-started/scripts/'>Scripts </a>
<ul>
<li><a href='/getting-started/scripts-service-calls/'>Service Calls </a></li>
<li><a href='/getting-started/scripts-conditions/'>Conditions </a></li>
</ul>
</li>
<li>
<a class='active' href='/getting-started/z-wave/'>Z-Wave </a>
<ul>
<li><a href='/getting-started/z-wave-controllers/'>Controllers </a></li>
<li><a href='/getting-started/z-wave-settings/'>Modifying Settings </a></li>
<li><a href='/getting-started/z-wave-device-specific/'>Device Specific </a></li>
</ul>
</li>
<li>
<a href='/getting-started/autostart/'>Autostart </a>
<ul>
<li><a href='/getting-started/autostart-systemd/'>Linux - systemd </a></li>
<li><a href='/getting-started/autostart-upstart/'>Linux - Upstart </a></li>
<li><a href='/getting-started/autostart-macos/'>OS X </a></li>
<li><a href='/getting-started/autostart-synology/'>Synology NAS </a></li>
</ul>
</li>
<li><a href='/topics/'>Advanced Topics </a></li>
<li><a href='/details/'>Details </a></li>
<li><a href='/getting-started/android/'>Add to Android Homescreen </a></li>
<li><a href='/getting-started/browsers/'>Browser Compatibility List </a></li>
</ul>
</div>
</section>
</div>
</aside>
</div>
</div>
<footer>
<div class="grid-wrapper">
<div class="grid">
<div class="grid__item">
<div class="copyright">
<a rel="me" href='https://twitter.com/home_assistant'><i class="icon-twitter"></i></a>
<a rel="me" href='https://facebook.com/homeassistantio'><i class="icon-facebook"></i></a>
<a rel="me" href='https://plus.google.com/110560654828510104551'><i class="icon-google-plus"></i></a>
<a rel="me" href='https://github.com/home-assistant/home-assistant'><i class="icon-github"></i></a>
<div class="credit">
Contact us at <a href='mailto:hello@home-assistant.io'>hello@home-assistant.io</a>.<br>
Website powered by <a href='http://jekyllrb.com/'>Jekyll</a> and the <a href='https://github.com/coogie/oscailte'>Oscalite theme</a>.<br />
Hosted by <a href='https://pages.github.com/'>GitHub</a> and served by <a href='https://cloudflare.com'>CloudFlare</a>.
</div>
</div>
</div>
</div>
</div>
</footer>
<script>
var _gaq=[['_setAccount','UA-57927901-1'],['_trackPageview']];
(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
s.parentNode.insertBefore(g,s)}(document,'script'));
</script>
</body>
</html>