Per http://playground.arduino.cc/Main/DHTLib
After Waking up the DHT, a 40 ms delay is needed.
Then set the pin as input, read, do the job and set again the pin to high.
DHT is clunky, even in arduino, but so far I'm getting 80% of success vs 10% before the changes.
dofile('woot.lua')
Temperature: 29.1.0000000000002 deg C
Temperature: 84.38.3.8000000000003 deg F
Temperature: 84.38 deg F
Humidity: 27.7.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 27.8.0000000000002%
dofile('woot.lua')
Temperature: 29.1.0000000000002 deg C
Temperature: 84.38.3.8000000000003 deg F
Temperature: 84.38 deg F
Humidity: 27.8.0000000000002%
dofile('woot.lua')
Temperature: 29.1.0000000000002 deg C
Temperature: 84.38.3.8000000000003 deg F
Temperature: 84.38 deg F
Humidity: 27.8.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 27.8.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 27.8.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Error reading from DHT22
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Error reading from DHT22
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.7053025658242e-13%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.7053025658242e-13%
dofile('woot.lua')
Error reading from DHT22
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.7053025658242e-13%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
dofile('woot.lua')
Temperature: 29.1.7053025658242e-13 deg C
Temperature: 84.2.2.0000000000002 deg F
Temperature: 84.2 deg F
Humidity: 28.1.0000000000002%
Per http://playground.arduino.cc/Main/DHTLib After Waking up the DHT, a 40 ms delay is needed. Then set the pin as input, read, do the job and set again the pin to high. DHT is clunky, even in arduino, but so far I'm getting 80% of success vs 10% before the changes.