mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-16 05:46:52 +00:00
Create sensor.tof (#8672)
* Create sensor.tof
* Review documentation
* Fix i2c address typo
* update ha release from launch
* Add i2c_bus to configuration
* Update source/_components/sensor.tof.markdown
Co-Authored-By: josemotta <josemotta@bampli.com>
* Update source/_components/sensor.tof.markdown
Co-Authored-By: josemotta <josemotta@bampli.com>
* Update sensor.tof.markdown
* Add VL53L1X docs and schematic
* Update sensor.tof.markdown
* Update sensor.tof.markdown
* Update sensor.tof.markdown
* Update sensor.tof.markdown
* Update sensor.tof.markdown
* ✏️ Tweaks
* Moves page from platform page to component page
Signed-off-by: Franck Nijhof <frenck@addons.community>
This commit is contained in:
parent
1b071fee03
commit
9a505f2049
119
source/_components/tof.markdown
Normal file
119
source/_components/tof.markdown
Normal file
@ -0,0 +1,119 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Time of Flight sensor using VL53L1X"
|
||||
description: "Instructions on how to integrate a VL53L1X ToF sensor into Home Assistant."
|
||||
date: 2019-02-21 00:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: raspberry-pi.png
|
||||
ha_category:
|
||||
- DIY
|
||||
- Sensor
|
||||
ha_release: "0.90"
|
||||
ha_iot_class: Local Polling
|
||||
---
|
||||
|
||||
The Time of Flight sensor uses an invisible laser to measure distance with millimeter resolution.
|
||||
|
||||
Tested devices:
|
||||
|
||||
- [Raspberry Pi](https://www.raspberrypi.org/)
|
||||
- [VL53L1X](https://www.st.com/en/imaging-and-photonics-solutions/vl53l1x.html)
|
||||
- [Schematic](https://cdn.sparkfun.com/assets/3/5/c/e/2/Qwiic_Distance_Sensor_-_VL53L1X.pdf)
|
||||
|
||||
## {% linkable_title Configuration %}
|
||||
|
||||
To use the VL53L1X sensor in your installation, add to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: tof
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
name:
|
||||
description: Name of the sensor.
|
||||
required: false
|
||||
default: VL53L1X
|
||||
type: string
|
||||
i2c_bus:
|
||||
description: I2c bus used.
|
||||
required: false
|
||||
default: 1, for Raspberry Pi 2 and 3.
|
||||
type: integer
|
||||
i2c_address:
|
||||
description: I2c address of the sensor.
|
||||
required: false
|
||||
default: "0x29"
|
||||
type: string
|
||||
xshut:
|
||||
description: GPIO port used to reset device.
|
||||
required: false
|
||||
default: 16
|
||||
type: integer
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Example %}
|
||||
|
||||
The distance is measured in millimeters, according to the VL53L1X specifications.
|
||||
|
||||
```yaml
|
||||
# Example of customized configuration.yaml entry
|
||||
sensor:
|
||||
- platform: tof
|
||||
name: ToF sensor
|
||||
i2c_address: 0x29
|
||||
xshut: 16
|
||||
```
|
||||
Several devices may be attached and a GPIO port from RPI is used for reset. XSHUT signal is generated pulsing LOW at initialization and after that, it is kept HIGH all time. This version uses VL53L1X long-range mode that may reach up to 4 meters.
|
||||
|
||||
## {% linkable_title Directions for installing i2c on Raspberry Pi %}
|
||||
|
||||
Enable the I2c interface with the Raspberry Pi configuration utility:
|
||||
|
||||
```bash
|
||||
# pi user environment: Enable i2c interface
|
||||
$ sudo raspi-config
|
||||
```
|
||||
|
||||
Select `Interfacing options->I2C` choose `<Yes>` and hit `Enter`, then go to `Finish` and you'll be prompted to reboot.
|
||||
|
||||
Install dependencies for use the `smbus-cffi` module and enable your _homeassistant_ user to join the _i2c_ group:
|
||||
|
||||
```bash
|
||||
# pi user environment: Install i2c dependencies and utilities
|
||||
$ sudo apt-get install build-essential libi2c-dev i2c-tools python-dev libffi-dev
|
||||
|
||||
# pi user environment: Add homeassistant user to the i2c group
|
||||
$ sudo addgroup homeassistant i2c
|
||||
|
||||
# pi user environment: Reboot Raspberry Pi to apply changes
|
||||
$ sudo reboot
|
||||
```
|
||||
|
||||
### {% linkable_title Check the i2c address of the sensor %}
|
||||
|
||||
After installing `i2c-tools`, a new utility is available to scan the addresses of the connected sensors:
|
||||
|
||||
```bash
|
||||
$ /usr/sbin/i2cdetect -y 1
|
||||
```
|
||||
|
||||
It will output a table like this:
|
||||
|
||||
```text
|
||||
0 1 2 3 4 5 6 7 8 9 a b c d e f
|
||||
00: -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
20: -- -- -- 23 -- -- -- -- -- 29 -- -- -- -- -- --
|
||||
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
40: 40 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
|
||||
70: -- -- -- -- -- -- -- --
|
||||
```
|
||||
|
||||
So you can see the sensor address what you are looking for is **0x29** (there are more i2c sensors in this Raspberry Pi).
|
Loading…
x
Reference in New Issue
Block a user