![]() |
RumPi 1.0
A self-assembling C++ sensor & actuator library for the Raspberry Pi 5
|
| CRumPi::AlertEvent | A single alert event: a metric crossing (or recovering from) a threshold, with the reading that triggered it |
| CRumPi::AlertManager | A singleton that components hand readings to |
| ▼CRumPi::BaseComponent | Abstract base class for every component (sensor, actuator, etc.) the library manages |
| CRumPi::BMP180 | BMP180 barometric temperature and pressure sensor (I2C), also deriving altitude from the measured pressure |
| CRumPi::BMP280 | BMP280 barometric temperature and pressure sensor (I2C), also deriving altitude from the measured pressure |
| CRumPi::ComponentManager | Owns and drives the set of sensor components |
| CRumPi::DHT11 | The DHT11 temperature and humidity sensor |
| CRumPi::DualLED | A bi-color LED driven by two PWM pins (one per color) |
| ▼CRumPi::GasSensor | Base class for the MQ-series gas sensors (MQ2, MQ7, ...) |
| CRumPi::MQ135 | MQ-135 gas sensor, typically used for detecting Carbon Dioxide (CO2) PPM |
| CRumPi::MQ2 | MQ-2 gas sensor, typically used for detecting smoke |
| CRumPi::MQ3 | MQ-3 gas sensor, typically used for detecting alcohol vapor (breathalyzer) |
| CRumPi::MQ4 | MQ-4 gas sensor, typically used for detecting methane |
| CRumPi::MQ5 | MQ-5 gas sensor, typically used for detecting LPG and natural gas (propane) |
| CRumPi::MQ6 | MQ-6 gas sensor, typically used for detecting LPG and propane |
| CRumPi::MQ7 | MQ-7 gas sensor, typically used for detecting carbon monoxide |
| CRumPi::MQ8 | MQ-8 gas sensor, typically used for detecting hydrogen |
| CRumPi::MQ9 | MQ-9 gas sensor, typically used for detecting LPG, carbon monoxide, and methane |
| CRumPi::HCSR501 | An HC-SR501 PIR motion sensor |
| ▼CRumPi::IAnalogDigitalConverterComponent | Interface for analog-to-digital converter components (e.g |
| CRumPi::MCP3008 | MCP3008 analog-to-digital converter chip (SPI), providing 8 channels to read analog sensors on the Raspberry Pi |
| CRumPi::PCF8591 | PCF8591 analog-to-digital converter chip (I2C), used to read analog sensors on the Raspberry Pi |
| CRumPi::LCD1602 | Standard 16x2 character LCD screen (LCD1602) driven over I2C |
| CRumPi::LED | A very simple standard LED, driven by a single GPIO pin |
| CRumPi::Motor | A DC motor driven through an H-bridge, with an optional enable pin and a wheel alignment used when steering |
| CRumPi::PMS5003 | PMS5003 particulate-matter (dust) sensor read over serial, reporting PM1.0/PM2.5/PM10 concentrations, particle counts by diameter, rolling averages, and an air-quality evaluation |
| CRumPi::PTQS1005 | PTQS1005 air-quality sensor read over serial, reporting PM2.5, TVOC, HCHO, CO2, internal temperature, and humidity, each with a rolling average |
| CRumPi::Photoresistor | Photoresistor (LDR) - reads ambient light as an analog value through an ADC channel |
| CRumPi::PiCamera | Raspberry Pi camera, recording video (raw .h264 converted to .mp4 on a background thread) and taking pictures |
| CRumPi::QSFS01 | QS-FS01 anemometer wind-speed sensor, read as an analog voltage through an ADC channel |
| CRumPi::RGBLED | An RGB LED driven by three PWM pins (red, green, blue) |
| CRumPi::RainSensor | Rain sensor - reads surface wetness as an analog value through an ADC channel |
| CRumPi::Receiver | Implements TCP client/server socket communication, running its accept, send, and receive loops on their own threads and invoking a callback for each message received |
| CRumPi::Relay | A relay driven by a single GPIO pin (output-only, like an LED) |
| CRumPi::RotaryEncoder | A standard rotary encoder |
| CRumPi::SoundSensor | FC-04 sound sensor - reads sound level as an analog value through a PCF8591 ADC channel |
| CRumPi::SystemHealthComponent | Reads Raspberry Pi system health (temperature, voltage, throttling, memory, storage, WiFi, and IP) by running vcgencmd and other OS commands, and reports threshold crossings to the AlertManager |
| CRumPi::TSL2591 | TSL2591 high-dynamic-range digital light sensor (I2C), reading full-spectrum and IR channels to compute lux |
| CRumPi::Vehicle | A vehicle composed of several Motors, providing drive and steering by coordinating the motors it owns |
| CRumPi::ComponentCreationContext | Everything a component creator needs, bundled so every creator can share one signature and live in the factory's lookup map |
| CRumPi::ComponentFactory | Builds the sensor components described by a JSON manifest and adds them to a ComponentManager |
| CRumPi::GasData | Gas data (its response curve and danger level) used by the MQ gas sensors |
| CRumPi::Logger | A singleton that subscribes to the AlertManager and writes alert events to a per-session log file (and the console) from a background worker thread |
| CRumPi::RemoteCommand | A command a remote client can send, paired with the handler that carries it out |
| CRumPi::RollingAverage | Maintains a rolling (moving) average over a fixed-length window of recent readings using a circular buffer |
| CRumPi::RumPiConfig | Holds the library's runtime configuration, loaded from a JSON file |
| CRumPi::SelectedSensorReadings | A point-in-time copy of the SELECTED sensor readings the Home dashboard surfaces - a deliberately curated subset, not a generic per-sensor reading |
| CRumPi::SystemMemoryInformation | Data class that contains information about the system's memory and swap space, in Kilobytes |