GY-63_MS5611/sketches/DHT_Simulator
2024-03-09 12:49:47 +01:00
..
.github update github-actions 2024-03-09 12:49:47 +01:00
examples/DHT_Simulator DHT_Simulator 2022-11-01 17:22:48 +01:00
test DHT_Simulator 2022-11-01 17:22:48 +01:00
.arduino-ci.yml DHT_Simulator 2022-11-01 17:22:48 +01:00
DHT_Simulator.ino 2021-01-29 2021-01-29 12:31:58 +01:00
LICENSE fix license 2024-01-20 14:15:27 +01:00
README.md DHT_Simulator 2022-11-01 17:22:48 +01:00

Arduino CI Arduino-lint JSON check License: MIT GitHub release

DHT_Simulator

Arduino sketch to simulate a DHT22 temperature and humidity sensor.

Description

The DHT22 is an often used sensor and many libraries are written for it including my own https://github.com/RobTillaart/DHTNew library. To better understand the protocol and to be able to debug my library I wrote a simulator for the DHT sensors in 2014.

The simulator can be used to test applications to that use a DHT sensor, e.g. to get high alarm temp or whatever.

Currently the code uses two analogue ports to get a value for temperature and humidity. Just connect two potentiometers to play and simulate increase and decrease of the temperature and humidity.

2022-11-01

  • add RP2040 to build-CI
  • update license

0.2.1

  • added pin to trigger CRC errors
  • added temp and hum pin for input for CI
  • added pins for CRC error, pulse length error and timeout error (to be tested in detail)

0.2.0 version

  • added flag for random generation of data
  • added flag for debug
  • explicit support ESP32 & ESP8266
  • added counter # samples generated per second ==> so one sees it still runs
  • added error and debug messages // some commented

The simulator is not tested extensively so please report bugs.

Future

  1. use the simulator-core as a bridge to other sensors. Idea is to use the code of the simulator in combination with a Sensirion or two separate sensors (DS18B20 + ? ) to provide an accurate temperature and humidity. These could then be readable with any DHT library with the performance of a DHT (~ 5ms). (when time permits)

  2. implement a recorder mode, to be able to replay a certain behaviour time after time.

Operation

  • adjust the pins in the head of the program to meet your setup
  • compile, connect, run

And have fun.