Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions source/_components/sensor.eddystone_temperature.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
layout: page
title: "Eddystone Beacon"
description: "Instructions on how to integrate Eddystone beacons with Home Assistant in order to receive temperature data."
date: 2017-03-26 01:00
sidebar: true
comments: false
sharing: true
footer: true
logo: eddystone.png
ha_category: DIY
ha_release: 0.42
ha_iot_class: "Local Polling"
---

The `eddystone_temperature` sensor platform reads temperature information from Bluetooth LE advertisements transmitted by [Eddystone](https://en.wikipedia.org/wiki/Eddystone_(Google)) beacons. Your beacons must be configured to transmit UID frames (for identification) and TLM frames (for temperature).
All beacons that support the Eddystone protocol, have a temperature sensor and can transmit TLM frames are compatible with this platform. For example [Gimbal](https://store.gimbal.com/collections/beacons/), [Estimote](http://estimote.com/) or [kontakt.io](https://kontakt.io/). For more manufacturers see [this overview](https://developers.google.com/beacons/eddystone#beacon_manufacturers) by Google.

## Requirements

As this platform uses `bluez` to scan for Bluetooth LE devices **a Linux OS with bluez installed** is required. In addition to that, the `libbluetooth` headers need to be installed:
```shell
$ sudo apt-get install libbluetooth-dev
```

Scanning for Bluetooth LE devices also requires special permissions. To grant these to the python executable execute the following:
```shell
$ sudo apt-get install libcap2-bin
$ sudo setcap 'cap_net_raw,cap_net_admin+eip' $(readlink -f $(which python3))
```

## Configuration

To use your Eddystone beacon in your installation, add the following to your `configuration.yaml` file:

```yaml
# Example configuration.yaml entry
sensor:
- platform: eddystone_temperature
bt_device_id: 0 # optional
beacons:
living_room:
namespace: "112233445566778899AA"
instance: "000000000001"
name: "Living Room" # optional
kitchen:
namespace: "112233445566778899AA"
instance: "000000000002"
name: "Kitchen" # optional
```
Configuration variables:
- **bt_device_id** (*Optional*): The id of the bluetooth device that should be used for scanning (hci*X*). You can find the correct one using `hcitool dev` (default: 0).
- **beacons** array (*Required*): The beacons that should be monitored.
- **[entry]** (*Required*): Name of the beacon.
- **namespace** (*Required*): Namespace ID of the beacon in hexadecimal notation. Must be exactly 20 characters (10 bytes) long.
- **namespace** (*Required*): Instance ID of the beacon in hexadecimal notation. Must be exactly 12 characters (6 bytes) long.
- **name** (*Optional*): Friendly name of the beacon.
Binary file added source/images/supported_brands/eddystone.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.