Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pulse < 130 is very high #9

Open
FireDeveloper opened this issue Nov 6, 2022 · 1 comment
Open

pulse < 130 is very high #9

FireDeveloper opened this issue Nov 6, 2022 · 1 comment

Comments

@FireDeveloper
Copy link

FireDeveloper commented Nov 6, 2022

RMT starts counting from first high pulse. This results in measuring the time of Treh and Tlow of bit 39.
https://files.seeedstudio.com/wiki/Grove-Temperature_and_Humidity_Sensor_Pro/res/AM2302-EN.pdf
DS1Z_QuickPrint1 - Copy

The reason that it works is because the DHT has a low pulse after bit0 (Ten) which happens to have the same width with Tlow and rmt counts it as bit0.
chrome_RuhvtQPJ8Y

According to the datasheet the minimum width of the measured pulses here https://github.com/bertmelis/esp32DHT/blob/master/src/esp32DHT.cpp#L135 is 123us and the average 130us (exactly the limit)

Also an improvement would be here https://github.com/bertmelis/esp32DHT/blob/master/src/esp32DHT.cpp#L144 to change to
data[i].duration0 + data[i-1].duration1;

@bertmelis
Copy link
Owner

Nice capture. I don't have a scope so it was trial and error getting the pin the switch from digital output to RMT input.

I'll have a closer look but a PR with a "better" scope image is welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants