87 lines
2.5 KiB
YAML
87 lines
2.5 KiB
YAML
|
# SPDX-License-Identifier: GPL-2.0
|
||
|
%YAML 1.2
|
||
|
---
|
||
|
$id: http://devicetree.org/schemas/iio/proximity/devantech-srf04.yaml#
|
||
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||
|
|
||
|
title: Devantech SRF04 and Maxbotix mb1000 ultrasonic range finder
|
||
|
|
||
|
maintainers:
|
||
|
- Andreas Klinger <ak@it-klinger.de>
|
||
|
|
||
|
description: |
|
||
|
Bit-banging driver using two GPIOs:
|
||
|
- trigger-gpio is raised by the driver to start sending out an ultrasonic
|
||
|
burst
|
||
|
- echo-gpio is held high by the sensor after sending ultrasonic burst
|
||
|
until it is received once again
|
||
|
|
||
|
Specifications about the devices can be found at:
|
||
|
https://www.robot-electronics.co.uk/htm/srf04tech.htm
|
||
|
|
||
|
https://www.maxbotix.com/documents/LV-MaxSonar-EZ_Datasheet.pdf
|
||
|
|
||
|
properties:
|
||
|
compatible:
|
||
|
enum:
|
||
|
- devantech,srf04
|
||
|
- maxbotix,mb1000
|
||
|
- maxbotix,mb1010
|
||
|
- maxbotix,mb1020
|
||
|
- maxbotix,mb1030
|
||
|
- maxbotix,mb1040
|
||
|
|
||
|
trig-gpios:
|
||
|
description:
|
||
|
Definition of the GPIO for the triggering (output)
|
||
|
This GPIO is set for about 10 us by the driver to tell the device it
|
||
|
should initiate the measurement cycle.
|
||
|
See Documentation/devicetree/bindings/gpio/gpio.txt for information
|
||
|
on how to specify a consumer gpio.
|
||
|
maxItems: 1
|
||
|
|
||
|
echo-gpios:
|
||
|
description:
|
||
|
Definition of the GPIO for the echo (input)
|
||
|
This GPIO is set by the device as soon as an ultrasonic burst is sent
|
||
|
out and reset when the first echo is received.
|
||
|
Thus this GPIO is set while the ultrasonic waves are doing one round
|
||
|
trip.
|
||
|
It needs to be an GPIO which is able to deliver an interrupt because
|
||
|
the time between two interrupts is measured in the driver.
|
||
|
maxItems: 1
|
||
|
|
||
|
power-gpios:
|
||
|
description:
|
||
|
Definition of the GPIO for power management of connected peripheral
|
||
|
(output).
|
||
|
This GPIO can be used by the external hardware for power management.
|
||
|
When the device gets suspended it's switched off and when it resumes
|
||
|
it's switched on again. After some period of inactivity the driver
|
||
|
get suspended automatically (autosuspend feature).
|
||
|
maxItems: 1
|
||
|
|
||
|
startup-time-ms:
|
||
|
description:
|
||
|
This is the startup time the device needs after a resume to be up and
|
||
|
running.
|
||
|
minimum: 0
|
||
|
maximum: 1000
|
||
|
default: 100
|
||
|
|
||
|
required:
|
||
|
- compatible
|
||
|
- trig-gpios
|
||
|
- echo-gpios
|
||
|
|
||
|
additionalProperties: false
|
||
|
|
||
|
examples:
|
||
|
- |
|
||
|
#include <dt-bindings/gpio/gpio.h>
|
||
|
proximity {
|
||
|
compatible = "devantech,srf04";
|
||
|
trig-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
|
||
|
echo-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
|
||
|
};
|