Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GPIOTHS(4)		     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  sen-
     sor  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 commu-
     nications,  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 humid-
     ity 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  di-
     rectly  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:

     compatible
	     Must be "dht11".

     gpios   A reference to the gpio device and pin for data communications.

   Example of adding a sensor with an overlay
	   /dts-v1/;
	   /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  config-
     urable 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 ports 15.quarterly	December 8, 2019		      GPIOTHS(4)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gpioths&sektion=4&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help