xref: /freebsd/share/man/man4/htu21.4 (revision 535af610)
1.\"
2.\" SPDX-License-Identifier: BSD-2-Clause
3.\"
4.\" Copyright (c) 2021 Andriy Gapon <avg@FreeBSD.org>
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\"
15.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25.\" SUCH DAMAGE.
26.\"
27.\" $FreeBSD$
28.\"
29.Dd January 19, 2021
30.Dt HTU21 4
31.Os
32.Sh NAME
33.Nm htu21
34.Nd driver for HTU21D and compatible temperature and humidity sensors
35.Sh SYNOPSIS
36To compile this driver into the kernel,
37place the following lines in your
38kernel configuration file:
39.Bd -ragged -offset indent
40.Cd "device htu21"
41.Cd "device iicbus"
42.Ed
43.Pp
44Alternatively, to load the driver as a
45module at boot time, place the following line in
46.Xr loader.conf 5 :
47.Bd -literal -offset indent
48htu21_load="YES"
49.Ed
50.Sh DESCRIPTION
51The
52.Nm
53driver provides temperature and relative humidity readings over I2C bus
54for the supported sensors:
55.Bl -bullet -compact
56.It
57HTU21D
58.It
59SHT21
60.It
61Si7021
62.El
63.Pp
64The
65.Nm
66driver reports data via
67.Xr sysctl 8
68entries in the device's node in the
69.Xr sysctl 8
70tree:
71.Bl -tag -width temperature
72.It temperature
73The temperature, in hundredths of Kelvin.
74.It humidity
75The relative humidity, in hundredths of a percent.
76.It crc_errors
77The number of CRC errors in reading the measurements from the device.
78.It power
79The good power indication.
80This can be useful with battery powered sensors.
81.It heater
82The built-in heater control.
83The heater can be used for testing and for recovery from saturation
84after high humidity.
85.It hold_bus
86Whether the sensor should hold SCL low while performing the measurement.
87Normally, the sensor releases the bus and NACKs all accessed until the
88measurement is completed.
89The hold mode may be useful in mult-master environments.
90.El
91.Pp
92On an
93.Xr FDT 4
94based system the following properties must be set:
95.Bl -tag -width "compatible"
96.It Va compatible
97Must be set to "meas,htu21".
98.It Va reg
99The I2C address of
100.Nm .
101Although, it is hard-wired to 0x40 (7-bit) on all supported sensors.
102.El
103.Pp
104The DTS part for a
105.Nm
106device usually looks like:
107.Bd -literal
108/ {
109
110	...
111	htu21d {
112		compatible = "meas,htu21";
113		reg = <0x40>;
114	};
115};
116.Ed
117.Sh SEE ALSO
118.Xr fdt 4 ,
119.Xr iicbus 4 ,
120.Xr sysctl 8
121.Sh HISTORY
122The
123.Nm
124driver and this manual page was written by
125.An Andriy Gapon Aq Mt avg@FreeBSD.org .
126.Sh BUGS
127There is no way to control the measurement resolution.
128.Pp
129Some sensor variants do not provide a serial number or use an incompatible
130format.
131The
132.Nm
133driver does not distinguish those variants and may complain about incorrect
134serial number checksum.
135