diff --git a/docs/en/modules/dht.md b/docs/en/modules/dht.md new file mode 100644 index 00000000..e4958004 --- /dev/null +++ b/docs/en/modules/dht.md @@ -0,0 +1,93 @@ +# dht Module + +## Constants +`dht.OK` (0), `dht.ERROR_CHECKSUM` (1), `dht.ERROR_TIMEOUT` (2) + +## dht.read() +Read all kinds of DHT sensors, including DHT11, 21, 22, 33, 44 humidity temperature combo sensor. + +#### Syntax +`dht.read(pin)` + +#### Parameters +`pin` pin number of DHT sensor (can't be 0), type is number + +#### Returns +- `status` as defined in Constants +- `temp` temperature (see note below) +- `humi` humidity (see note below) +- `temp_dec` temperature decimal +- `humi_dec` humidity decimal + +!!! note "Note:" + +If using float firmware then `temp` and `humi` are floating point numbers. On an integer firmware, the final values have to be concatenated from `temp` and `temp_dec` / `humi` and `hum_dec`. + +#### Example +```lua +pin = 5 +status, temp, humi, temp_dec, humi_dec = dht.read(pin) +if status == dht.OK then + -- Integer firmware using this example + print(string.format("DHT Temperature:%d.%03d;Humidity:%d.%03d\r\n", + math.floor(temp), + temp_deci, + math.floor(humi), + humi_deci + )) + + -- Float firmware using this example + print("DHT Temperature:"..temp..";".."Humidity:"..humi) + +elseif status == dht.ERROR_CHECKSUM then + print( "DHT Checksum error." ) +elseif status == dht.ERROR_TIMEOUT then + print( "DHT timed out." ) +end +``` + +## dht.read11() +Read DHT11 humidity temperature combo sensor. + +#### Syntax +`dht.read11(pin)` + +#### Parameters +`pin` pin number of DHT11 sensor (can't be 0), type is number + +#### Returns +- `status` as defined in Constants +- `temp` temperature (see note below) +- `humi` humidity (see note below) +- `temp_dec` temperature decimal +- `humi_dec` humidity decimal + +!!! note "Note:" + +If using float firmware then `temp` and `humi` are floating point numbers. On an integer firmware, the final values have to be concatenated from `temp` and `temp_dec` / `humi` and `hum_dec`. + +#### See also +[dht.read()](#dhtread) + +## dht.readxx() +Read all kinds of DHT sensors, except DHT11. + +####Syntax +`dht.readxx(pin)` + +#### Parameters +`pin` pin number of DHT sensor (can't be 0), type is number + +#### Returns +- `status` as defined in Constants +- `temp` temperature (see note below) +- `humi` humidity (see note below) +- `temp_dec` temperature decimal +- `humi_dec` humidity decimal + +!!! note "Note:" + +If using float firmware then `temp` and `humi` are floating point numbers. On an integer firmware, the final values have to be concatenated from `temp` and `temp_dec` / `humi` and `hum_dec`. + +#### See also +[dht.read()](#dhtread) diff --git a/mkdocs.yml b/mkdocs.yml index fbfb1e73..c421b034 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -33,6 +33,7 @@ pages: - 'bit': 'en/modules/bit.md' - 'cjson': 'en/modules/cjson.md' - 'crypto': 'en/modules/crypto.md' + - 'dht': 'en/modules/dht.md' - 'enduser setup': 'en/modules/enduser-setup.md' - 'file': 'en/modules/file.md' - 'gpio': 'en/modules/gpio.md'