--- layout: page title: "Configuring Home Assistant" description: "Configuring Home Assistant." date: 2015-03-23 12:50 sidebar: false comments: false sharing: true footer: true --- The configuration for Home Assistant lives by default in the `config` folder. The file `configuration.yaml` is the main file that contains which components will be loaded and what their configuration is. An example configuration file is located at [`config/configuration.yaml.example`](https://github.com/balloob/home-assistant/blob/master/config/configuration.yaml.example). When launched for the first time, Home Assistant will write a default configuration enabling the web interface and device discovery. It can take up to a minute for your devices to be discovered and show up in the interface.

You will have to restart Home Assistant for changes in configuration.yaml to take effect.

### Setting up the basic info By default Home Assistant will try to detect your location and will automatically select a temperature unit and time zone based on your location. You can overwrite this by adding the following information to your `configuration.yaml`: ```yaml homeassistant: # Omitted values in this section will be auto detected using freegeoip.net # Location required to calculate the time the sun rises and sets latitude: 32.87336 longitude: 117.22743 # C for Celsius, F for Fahrenheit temperature_unit: C # Pick yours from here: # http://en.wikipedia.org/wiki/List_of_tz_database_time_zones time_zone: America/Los_Angeles # Name of the location where Home Assistant is running name: Home ``` ### Password protecting the web interface The first thing you want to add is a password for the web interface. Use your favourite text editor to open the file `/config/configuration.yaml` and add the following to the bottom: ``` http: api_password: YOUR_PASSWORD ``` ### {% linkable_title Adding devices and services %} Home Assistant will be able to automatically discover and configure any Google Chromecasts, Belkin WeMo switches and Philips Hue bridges in your network if you have [the discovery component]({{site_root}}/components/discovery.html) enabled (which is by default). Not all devices can be discovered, so if you have any of the following devices or services, please see their respective pages for installation instructions: * [Nest thermostat]({{site_root}}/components/thermostat.html) * [Wink hub]({{site_root}}/components/wink.html) * [TellStick](/components/tellstick.html) * [PushBullet]({{site_root}}/components/notify.html) * [PushOver](/blog/2015/03/22/release-notes/#pushover) * [SABnzbd](/blog/2015/03/22/release-notes/#sabnzbd) * [Device tracking]({{site_root}}/components/device_tracker.html) * [Add support for your own device or service]({{site_root}}/developers/add_new_platform.html) See the [components overview page](/components/) for a complete list of supported devices. ### {% linkable_title Setting up Home Automation %} When all your devices are set up it's time to put the cherry on the pie: automation. There are many ways to automate your home with Home Assistant so we have divided it into a couple of topics: * [Automatic light control based on the sun and if people are home]({{site_root}}/components/device_sun_light_trigger.html) (built-in component) * [Intruder alerts]({{site_root}}/components/simple_alarm.html) (built-in component) * [Setup your own automation rules]({{site_root}}/components/automation.html) (using configuration file) * [Create your own automation component]({{site_root}}/developers/creating_components.html) (writing Python code) ### {% linkable_title Setting up your phone or tablet %} Home Assistant runs as a self hosted web application. Home Assistant contains support to be added to your homescreen. If you're on Android you can follow [the visual guide]({{site_root}}/getting-started/android.html). For other devices, open Home Assistant on your mobile browser and click on the add to homescreen option.