FreeBSD manual

download PDF document: gpioths.4.pdf

GPIOTHS(4) FreeBSD Kernel Interfaces Manual GPIOTHS(4)
NAME gpioths - driver for DHTxx and AM320x temperature and humidity sensors
SYNOPSIS To compile this driver into the kernel, place the following line in your kernel configuration file:
device gpioths
Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5):
gpioths_load="YES"
DESCRIPTION The gpioths driver supports the DHTxx and AM320x family of temperature and humidity sensors. The driver automatically reads the values from the sensor once every 5 seconds, and makes the results available via sysctl(8) variables.
HARDWARE The gpioths driver provides support for the following devices:
DHT11 DHT12 DHT21 DHT22 AM3201 AM3202
The supported devices are all similar to each other, varying primarily in accuracy and resolution. The devices require a single wire for data communications, using a custom protocol which is not compatible with Maxim's 1-wire(tm). The AM320x devices also support connection to an i2c bus, but this driver supports only the single-wire connection option.
SYSCTL VARIABLES Sysctl variables are used to access the most recent temperature and humidity measurements.
dev.gpioths.<unit>.temperature The current temperature in integer deciKelvins. Note that sysctl(8) will convert those units to display in decimal degrees Celsius.
dev.gpioths.<unit>.humidity The current relative humidity, as an integer percentage.
dev.gpioths.<unit>.fails The number of failed attempts to communicate with the sensor since the last good access. Cleared whenever a set of measurements is successfully retrieved.
FDT CONFIGURATION On an fdt(4) based system, a gpioths device node is typically defined directly under the root node, or under a simplebus node that represents a collection of devices on a board.
The following properties are required in the gpioths device subnode:
/plugin/; #include <dt-bindings/gpio/gpio.h>
/ { compatible = "wand,imx6q-wandboard"; };
&{/} { dht0 { compatible = "dht11"; gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>; }; };
HINTS CONFIGURATION On a device.hints(5) based system, such as MIPS, these values are configurable for gpioths:
hint.gpioths.<unit>.at The gpiobus(4) instance the gpioths instance is attached to.
hint.gpioths.pins A bitmask with a single bit set to indicate which gpio pin on the gpiobus(4) to use for data communications.
SEE ALSO fdt(4), gpiobus(4), sysctl(8)
HISTORY The gpioths driver first appeared in FreeBSD 11.1.
FreeBSD 14.0-RELEASE-p11 December 8, 2019 FreeBSD 14.0-RELEASE-p11