--- layout: page title: "Manual installation on a Raspberry Pi" description: "Instructions to install Home Assistant on a Raspberry Pi runnning Raspbian Lite." date: 2016-09-05 16:00 sidebar: true comments: false sharing: true footer: true --- ### {% linkable_title Installation %} There's currently three documented ways to install Home Assistant on a Raspberry Pi. - [Manual installation](/getting-started/installation-raspberry-pi/#manual-installation). Following this guide doing each step manually. This is highly recommended as a first installation since you get a good overview of the installation. - [Hassbian image](/getting-started/installation-raspberry-pi-image). 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 `homeassistant` user. - [All-in-One Installer](/getting-started/installation-raspberry-pi-all-in-one/). Fabric based installation script that installs and compiles many of the things an advanced Home Assistant install is likely to need. Installation uses `homeassistant` user.
Since each installation type uses a different user for Home Assistant, be sure to note and use the correct username for the `adduser` commands listed below for camera and GPIO extensions.
### {% linkable_title Manual Installation %} This installation of Home Assistant requires the Raspberry Pi to run [Raspbian Lite](https://www.raspberrypi.org/downloads/raspbian/). The installation will be installed in a [Virtual Environment](/getting-started/installation-virtualenv) with minimal overhead. Instructions assume this is a new installation of Raspbian Lite. Connect to the Raspberry Pi over ssh. Default password is `raspberry`. You will need to enable ssh access. The raspberry pi website has instructions [here](https://www.raspberrypi.org/documentation/remote-access/ssh/). ```bash $ ssh pi@ipadress ``` Changing the default password is encouraged. ```bash $ passwd ``` Update the system. ```bash $ sudo apt-get update $ sudo apt-get upgrade -y ``` Install the dependencies. ```bash $ sudo apt-get install python3 python3-venv python3-pip ``` Add an account for Home Assistant called `homeassistant`. Since this account is only for running Home Assistant the extra arguments of `-rm` is added to create a system account and create a home directory. ```bash $ sudo useradd -rm homeassistant ``` Next we will create a directory for the installation of Home Assistant and change the owner to the `homeassistant` account. ```bash $ cd /srv $ sudo mkdir homeassistant $ sudo chown homeassistant:homeassistant homeassistant ``` Next up is to create and change to a virtual environment for Home Assistant. This will be done as the `homeassistant` account. ```bash $ sudo su -s /bin/bash homeassistant $ cd /srv/homeassistant $ python3 -m venv homeassistant_venv $ source /srv/homeassistant/homeassistant_venv/bin/activate ``` Once you have activated the virtual environment you will notice the prompt change and then you can install Home Assistant. ```bash (homeassistant_venv) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant ``` Start Home Assistant for the first time. This will complete the installation, create the `.homeasssistant` configuration directory in the `/home/homeassistant` directory and install any basic dependencies. ```bash (homeassistant_venv) $ hass ``` You can now reach your installation on your raspberry pi over the web interface on [http://ipaddress:8123](http://ipaddress:8123). For instruction on how to configure Home Assistant continue on with [Configuring Home Assistant](/getting-started/configuration/). ### {% linkable_title Raspberry Pi Hardware Specific Components %} 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 `pi` account. For full documentation of these components refer to the [components](/components) page. ### {% linkable_title Bluetooth Tracker %} 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 Pi's. Install the following external dependencies. ```bash $ sudo apt-get install bluetooth libbluetooth-dev ``` After this follow the [Bluetooth Tracker component](/components/device_tracker.bluetooth_tracker/) and [Device Tracker page](/components/device_tracker/) pages. ### {% linkable_title Raspberry Pi Camera %} The Raspberry Pi Camera is a specific camera for the Raspberry Pi boards. For more information about the camera I suggest reading the [documentation](https://www.raspberrypi.org/documentation/usage/camera/) from the Raspberry Pi foundation. To use the camera it needs to be enabled with the `raspi-config` utility. ```bash $ sudo raspi-config ``` Select `Enable camera` choose `