16DHT dht(config::PIN_DHT, DHT22);
39#if defined(ARDUINO_TEENSYLC)
41#elif defined(ARDUINO_TEENSY40)
48#ifdef HUMIDISTAT_CONTROLLER_SINGLE
53#ifdef HUMIDISTAT_CONTROLLER_CASCADE
62#ifdef HUMIDISTAT_UI_CHAR
63#include <LiquidCrystal.h>
65LiquidCrystal liquidCrystal(config::PIN_LCD_RS, config::PIN_LCD_ENABLE, config::PIN_LCD_D0, config::PIN_LCD_D1,
66 config::PIN_LCD_D2, config::PIN_LCD_D3);
69#ifdef HUMIDISTAT_UI_GRAPH
75#ifdef ARDUINO_TEENSYLC
76U8G2_ST7920_128X64_F_HW_SPI u8g2(U8G2_R0, config::PIN_LCD_CS);
78#ifdef ARDUINO_TEENSY40
79U8G2_ST7920_128X64_F_SW_SPI u8g2(U8G2_R0, config::PIN_LCD_SCLK, config::PIN_LCD_MOSI, config::PIN_LCD_CS);
90 TCCR2B = TCCR2B & B11111000 | B00000100;
92#if defined(ARDUINO_TEENSYLC) || defined(ARDUINO_TEENSY40)
94 analogWriteFrequency(config::PIN_S1, 500);
96 analogWriteResolution(
pwmRes);
108 serialLogger.update();
109#ifdef HUMIDISTAT_UI_GRAPH
Control humidity using cascade PID: outer PID loop sets setpoints of two inner flow controllers,...
TUI for 16x2 character LCD. Holds a reference to a LiquidCrystal instance for writing to display....
Implementation of the HumiditySensor interface for the DHT22/AM2302 sensor.
Load/save an (internal) ConfigStore in EEPROM.
Read flow rate using a Omron D6F-P0010 MEMS flow sensor.
TUI for 128*64 px graphical display using U8g2. Holds references to a U8g2lib instance for writing to...
Implementation of the HumiditySensor interface for the Sensirion SHT85 sensor.
Logs humidistat data over serial.
'Runs' a setpoint profile.
Control humidity using PID by driving two solenoid valves. Adjust the public setpoint variable and ca...
Driver for thermistor thermometers.
SerialLogger< cHumidistat > serialLogger & humidistat
ButtonReader buttonReader(config::PIN_BTN, &voltLadder)
EEPROMConfig eepromConfig
const uint32_t serialRate
Serial communication symbol rate (baud)
uint16_t dt
Global interval for PID/logger (based on polling rate of sensor, in millis)