128 lines
3.6 KiB
YAML
128 lines
3.6 KiB
YAML
# Copyright (c) 2024 Juliane Schulze, deveritec GmbH
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
description: |
|
|
VCNL36825T proximity and ambient light sensor. See datasheet at
|
|
https://www.vishay.com/docs/84274/vcnl36825t.pdf
|
|
|
|
compatible: "vishay,vcnl36825t"
|
|
|
|
include: [sensor-device.yaml, i2c-device.yaml]
|
|
|
|
properties:
|
|
operation-mode:
|
|
type: string
|
|
default: "auto"
|
|
enum: ["auto", "force"]
|
|
description: |
|
|
Mode of operation.
|
|
- "auto": the sensor performs sampling continuously,
|
|
- "force": the sampling is performed on every fetch command.
|
|
|
|
Defaults to sensor reset value.
|
|
|
|
Note: "force"-mode only available if low-power mode inactive.
|
|
|
|
measurement-period:
|
|
type: int
|
|
default: 40
|
|
enum: [10, 20, 40, 80, 160, 320]
|
|
description: |
|
|
Measurement period of the sensors in ms.
|
|
Higher values yield lower power consumption.
|
|
Note:
|
|
- [10, 80] ms only if low power mode is inactive
|
|
- [80, 320] ms only in low power mode
|
|
|
|
Defaults to 40 ms which is supported in both normal and low-power mode.
|
|
|
|
proximity-it:
|
|
type: string
|
|
default: "1"
|
|
enum: ["1", "2", "4", "8"]
|
|
description: |
|
|
Proximity integration time in T.
|
|
Defaults to sensor reset value.
|
|
|
|
proximity-itb:
|
|
type: int
|
|
default: 25
|
|
enum: [25, 50]
|
|
description: |
|
|
Duration of the proximity integration time T in us.
|
|
Defaults to sensor reset value.
|
|
|
|
multi-pulse:
|
|
type: int
|
|
default: 1
|
|
enum: [1, 2, 4, 8]
|
|
description: |
|
|
Number of pulses per single measurement.
|
|
Higher values increase accuracy and power consumption.
|
|
Defaults to sensor reset value.
|
|
|
|
laser-current:
|
|
type: int
|
|
default: 10
|
|
enum: [10, 12, 14, 16, 18, 20]
|
|
description: |
|
|
Current used by the laser during measurement periods.
|
|
Defaults to minimum allowed value.
|
|
|
|
low-power:
|
|
type: boolean
|
|
description: |
|
|
Activate low power mode.
|
|
This allows to increase the measurement period up to 320 ms.
|
|
|
|
high-gain:
|
|
type: boolean
|
|
description: |
|
|
Activate the high gain mode.
|
|
|
|
sunlight-cancellation:
|
|
type: boolean
|
|
description: |
|
|
Activate sunlight cancellation.
|
|
|
|
high-dynamic-output:
|
|
type: boolean
|
|
description: |
|
|
Activate 16bit high dynamic output mode.
|
|
Cannot be used with threshold interrupt.
|
|
|
|
int-gpios:
|
|
type: phandle-array
|
|
description: |
|
|
The INT signal connection.
|
|
The signal is active-low as produced by the sensor.
|
|
|
|
int-mode:
|
|
type: string
|
|
default: "normal"
|
|
enum: ["normal", "first high", "logic high / low"]
|
|
description: |
|
|
Specifies the interrupt behavior.
|
|
- "normal": signal if exceeds high or falls below lower threshold
|
|
and proximity count is reached.
|
|
- "first high": signal if exceeds high threshold first time and signal again
|
|
if falls below lower threshold, and proximity count is reached.
|
|
Do not trigger if high threshold was never exceeded.
|
|
- "logic high / low": signal if high threshold is exceeded and proximity counts is reached,
|
|
deactivate if falls below lower threshold.
|
|
Defaults to "normal" as this is the easiest configurable mode.
|
|
|
|
int-proximity-count:
|
|
type: int
|
|
default: 1
|
|
enum: [1, 2, 3, 4]
|
|
description: |
|
|
Number of consecutive measurements above/below threshold to signal an interrupt.
|
|
Defaults to sensor reset value
|
|
|
|
int-smart-persistence:
|
|
type: boolean
|
|
description: |
|
|
Activates "smart persistence" feature, aimed to reduce total reaction time
|
|
until an interrupt is issued.
|