8000 Merge pull request #46 from brentru/add-particles · adafruit/Adafruit_Sensor@716fa39 · GitHub
[go: up one dir, main page]

Skip to content

Commit 716fa39

Browse files
authored
Merge pull request #46 from brentru/add-particles
Add particles
2 parents 355dde3 + 2af7609 commit 716fa39

File tree

3 files changed

+57
-4
lines changed

3 files changed

+57
-4
lines changed

Adafruit_Sensor.cpp

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,27 @@ void Adafruit_Sensor::printSensorDetails(void) {
7373
case SENSOR_TYPE_CO2:
7474
Serial.print(F("Carbon Dioxide (ppm)"));
7575
break;
76-
case SENSOR_TYPE_eCO2:
76+
case SENSOR_TYPE_ECO2:
7777
Serial.print(F("Equivalent/estimated CO2 (ppm)"));
7878
break;
79+
case SENSOR_TYPE_PM10_STD:
80+
Serial.print(F("Standard Particulate Matter 1.0 (ppm)"));
81+
break;
82+
case SENSOR_TYPE_PM25_STD:
83+
Serial.print(F("Standard Particulate Matter 2.5 (ppm)"));
84+
break;
85+
case SENSOR_TYPE_PM100_STD:
86+
Serial.print(F("Standard Particulate Matter 100 (ppm)"));
87+
break;
88+
case SENSOR_TYPE_PM10_ENV:
89+
Serial.print(F("Environmental Particulate Matter 1.0 (ppm)"));
90+
break;
91+
case SENSOR_TYPE_PM25_ENV:
92+
Serial.print(F("Environmental Particulate Matter 2.5 (ppm)"));
93+
break;
94+
case SENSOR_TYPE_PM100_ENV:
95+
Serial.print(F("Environmental Particulate Matter 100 (ppm)"));
96+
break;
7997
}
8098

8199
Serial.println();

Adafruit_Sensor.h

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,13 @@ typedef enum {
7171
SENSOR_TYPE_VOC_INDEX = (19),
7272
SENSOR_TYPE_NOX_INDEX = (20),
7373
SENSOR_TYPE_CO2 = (21),
74-
SENSOR_TYPE_eCO2 = (22),
74+
SENSOR_TYPE_ECO2 = (22),
75+
SENSOR_TYPE_PM10_STD = (23),
76+
SENSOR_TYPE_PM25_STD = (24),
77+
SENSOR_TYPE_PM100_STD = (25),
78+
SENSOR_TYPE_PM10_ENV = (26),
79+
SENSOR_TYPE_PM25_ENV = (27),
80+
SENSOR_TYPE_PM100_ENV = (28)
7581
} sensors_type_t;
7682

7783
/** struct sensors_vec_s is used to return a vector in a common format. */
@@ -147,6 +153,18 @@ typedef struct {
147153
float CO2; /**< Measured CO2 in parts per million (ppm) */
148154
float eCO2; /**< equivalent/estimated CO2 in parts per million (ppm
149155
estimated from some other measurement) */
156+
float pm10_std; /**< Standard Particulate Matter 1.0 in parts per million
157+
(ppm) */
158+
float pm25_std; /**< Standard Particulate Matter 2.5 in parts per million
159+
(ppm) */
160+
float pm100_std; /**< Standard Particulate Matter 100 in parts per million
161+
(ppm) */
162+
float pm10_env; /**< Environmental Particulate Matter 1.0 in parts per
163+
million (ppm) */
164+
float pm25_env; /**< Environmental Particulate Matter 2.5 in parts per
165+
million (ppm) */
166+
float pm100_env; /**< EnvironmentalParticulate Matter 100 in parts per
167+
million (ppm) */
150168
sensors_color_t color; /**< color in RGB component values */
151169
}; ///< Union for the wide ranges of data we can carry
152170
} sensors_event_t;

README.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,13 @@ typedef enum
7979
SENSOR_TYPE_VOC_INDEX = (19),
8080
SENSOR_TYPE_NOX_INDEX = (20),
8181
SENSOR_TYPE_CO2 = (21),
82-
SENSOR_TYPE_eCO2 = (22),
82+
SENSOR_TYPE_ECO2 = (22),
83+
SENSOR_TYPE_PM10_STD = (23),
84+
SENSOR_TYPE_PM25_STD = (24),
85+
SENSOR_TYPE_PM100_STD = (25),
86+
SENSOR_TYPE_PM10_ENV = (26),
87+
SENSOR_TYPE_PM25_ENV = (27),
88+
SENSOR_TYPE_PM100_ENV = (28)
8389
} sensors_type_t;
8490
```
8591

@@ -147,6 +153,12 @@ typedef struct
147153
float nox_index;
148154
float CO2,
149155
float eCO2,
156+
float pm10_std,
157+
float pm25_std,
158+
float pm100_std,
159+
float pm10_env,
160+
float pm25_env,
161+
float pm100_env,
150162
sensors_color_t color;
151163
};
152164
} sensors_event_t;
@@ -194,7 +206,12 @@ A key part of the abstraction layer is the standardisation of values on SI units
194206
- **nox_index**: values are an **index** from 1-500 with 100 being normal
195207
- **CO2**: values are in **parts per million*** (ppm)
196208
- **eCO2**: values are in **parts per million*** (ppm)
197-
209+
- **pm10_std**: values are in **parts per million*** (ppm)
210+
- **pm25_std**: values are in **parts per million*** (ppm)
211+
- **pm100_std**: values are in **parts per million*** (ppm)
212+
- **pm10_env**: values are in **parts per million*** (ppm)
213+
- **pm25_env**: values are in **parts per million*** (ppm)
214+
- **pm100_env**: values are in **parts per million*** (ppm)
198215

199216
## The Unified Driver Abstraction Layer in Practice ##
200217

0 commit comments

Comments
 (0)
0