Adafruit Library
WipperSnapper_I2C_Driver.h
Go to the documentation of this file.
1 
16 #ifndef WipperSnapper_I2C_Driver_H
17 #define WipperSnapper_I2C_Driver_H
18 
19 #include "wippersnapper/i2c/v1/i2c.pb.h"
20 #include <Adafruit_Sensor.h>
21 #include <Arduino.h>
22 #include <Wire.h>
23 
24 #define PERIOD_24HRS_AGO_MILLIS (millis() - (24 * 60 * 60 * 1000))
25 #define ONE_SECOND_IN_MILLIS 1000
27 
28 /**************************************************************************/
32 /**************************************************************************/
34 
35 public:
36  /*******************************************************************************/
44  /*******************************************************************************/
45  WipperSnapper_I2C_Driver(TwoWire *i2c, uint16_t sensorAddress) {
46  _i2c = i2c;
47  _sensorAddress = sensorAddress;
48  }
49 
50  /*******************************************************************************/
54  /*******************************************************************************/
56 
57  /*******************************************************************************/
69  /*******************************************************************************/
70  virtual void fastTick() {}
71 
72  /*******************************************************************************/
77  /*******************************************************************************/
78  bool begin() { return false; }
79 
80  /*******************************************************************************/
88  /*******************************************************************************/
89  void setSensorPeriod(float period,
90  wippersnapper_i2c_v1_SensorType sensorType) {
91  long sensorPeriod = (long)period * 1000;
92 
93  switch (sensorType) {
94  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE:
95  _tempSensorPeriod = sensorPeriod;
96  break;
97  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_RELATIVE_HUMIDITY:
98  _humidSensorPeriod = sensorPeriod;
99  break;
100  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PRESSURE:
101  _pressureSensorPeriod = sensorPeriod;
102  break;
103  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_CO2:
104  _CO2SensorPeriod = sensorPeriod;
105  break;
106  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_ECO2:
107  _ECO2SensorPeriod = sensorPeriod;
108  break;
109  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_TVOC:
110  _TVOCSensorPeriod = sensorPeriod;
111  break;
112  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_ALTITUDE:
113  _altitudeSensorPeriod = sensorPeriod;
114  break;
115  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE:
116  _objectTempSensorPeriod = sensorPeriod;
117  break;
118  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_LIGHT:
119  _lightSensorPeriod = sensorPeriod;
120  break;
121  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PM10_STD:
122  _PM10SensorPeriod = sensorPeriod;
123  break;
124  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PM25_STD:
125  _PM25SensorPeriod = sensorPeriod;
126  break;
127  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PM100_STD:
128  _PM100SensorPeriod = sensorPeriod;
129  break;
130  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_UNITLESS_PERCENT:
131  _unitlessPercentPeriod = sensorPeriod;
132  break;
133  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_VOLTAGE:
134  _voltagePeriod = sensorPeriod;
135  break;
136  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_CURRENT:
137  _currentPeriod = sensorPeriod;
138  break;
139  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_PROXIMITY:
140  _proximitySensorPeriod = sensorPeriod;
141  break;
142  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_RAW:
143  _rawSensorPeriod = sensorPeriod;
144  break;
145  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_AMBIENT_TEMPERATURE_FAHRENHEIT:
146  _ambientTempFPeriod = sensorPeriod;
147  break;
148  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_OBJECT_TEMPERATURE_FAHRENHEIT:
149  _objectTempFPeriod = sensorPeriod;
150  break;
151  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_GAS_RESISTANCE:
152  _gasResistancePeriod = sensorPeriod;
153  break;
154  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_NOX_INDEX:
155  _NOxIndexPeriod = sensorPeriod;
156  break;
157  case wippersnapper_i2c_v1_SensorType_SENSOR_TYPE_VOC_INDEX:
158  _VOCIndexPeriod = sensorPeriod;
159  break;
160  default:
161  break;
162  }
163  }
164 
165  /*******************************************************************************/
172  /*******************************************************************************/
173  void
174  configureDriver(wippersnapper_i2c_v1_I2CDeviceInitRequest *msgDeviceInitReq) {
175  int propertyIdx = 0; // contains the amount of i2c sensors in the
176  // msgDeviceInitReq to configure
177  while (propertyIdx < msgDeviceInitReq->i2c_device_properties_count) {
179  msgDeviceInitReq->i2c_device_properties[propertyIdx].sensor_period,
180  msgDeviceInitReq->i2c_device_properties[propertyIdx].sensor_type);
181  ++propertyIdx;
182  }
183  }
184 
185  /*******************************************************************************/
190  /*******************************************************************************/
191  uint16_t getI2CAddress() { return _sensorAddress; }
192 
193  /****************************** SENSOR_TYPE: CO2
194  * *******************************/
195  /*********************************************************************************/
201  /*********************************************************************************/
202  virtual long getSensorCO2Period() { return _CO2SensorPeriod; }
203 
204  /*********************************************************************************/
210  /*********************************************************************************/
211  virtual long getSensorCO2PeriodPrv() { return _CO2SensorPeriodPrv; }
212 
213  /*******************************************************************************/
219  /*******************************************************************************/
220  virtual void setSensorCO2PeriodPrv(long period) {
221  _CO2SensorPeriodPrv = period;
222  }
223 
224  /*******************************************************************************/
232  /*******************************************************************************/
233  virtual bool getEventCO2(sensors_event_t *co2Event) {
234  (void)
235  co2Event; // Parameter is intentionally unused in this virtual function.
236  return false;
237  }
238 
239  /****************************** SENSOR_TYPE: ECO2
240  * *******************************/
241  /*********************************************************************************/
247  /*********************************************************************************/
248  virtual long getSensorECO2Period() { return _ECO2SensorPeriod; }
249 
250  /*********************************************************************************/
256  /*********************************************************************************/
257  virtual long getSensorECO2PeriodPrv() { return _ECO2SensorPeriodPrv; }
258 
259  /*******************************************************************************/
265  /*******************************************************************************/
266  virtual void setSensorECO2PeriodPrv(long period) {
267  _ECO2SensorPeriodPrv = period;
268  }
269 
270  /*******************************************************************************/
278  /*******************************************************************************/
279  virtual bool getEventECO2(sensors_event_t *eco2Event) {
280  (void)eco2Event; // Parameter is intentionally unused in this virtual
281  // function.
282  return false;
283  }
284 
285  /****************************** SENSOR_TYPE: TVOC
286  * *******************************/
287  /*********************************************************************************/
293  /*********************************************************************************/
294  virtual long getSensorTVOCPeriod() { return _TVOCSensorPeriod; }
295 
296  /*********************************************************************************/
302  /*********************************************************************************/
303  virtual long getSensorTVOCPeriodPrv() { return _TVOCSensorPeriodPrv; }
304 
305  /*******************************************************************************/
311  /*******************************************************************************/
312  virtual void setSensorTVOCPeriodPrv(long period) {
313  _TVOCSensorPeriodPrv = period;
314  }
315 
316  /*******************************************************************************/
324  /*******************************************************************************/
325  virtual bool getEventTVOC(sensors_event_t *tvocEvent) {
326  (void)tvocEvent; // Parameter is intentionally unused in this virtual
327  // function.
328  return false;
329  }
330 
331  /********************** SENSOR_TYPE: AMBIENT TEMPERATURE (°C)
332  * ***********************/
333  /*********************************************************************************/
339  /*********************************************************************************/
341 
342  /*********************************************************************************/
349  /*********************************************************************************/
351 
352  /*******************************************************************************/
360  /*******************************************************************************/
361  virtual void setSensorAmbientTempPeriodPrv(long periodPrv) {
362  _tempSensorPeriodPrv = periodPrv;
363  }
364 
365  /*******************************************************************************/
374  /*******************************************************************************/
375  virtual bool getEventAmbientTemp(sensors_event_t *tempEvent) {
376  (void)tempEvent; // Parameter is intentionally unused in this virtual
377  // function.
378  return false;
379  }
380 
381  /************************* SENSOR_TYPE: RELATIVE_HUMIDITY
382  * ***********************/
383  /*********************************************************************************/
389  /*********************************************************************************/
391 
392  /*********************************************************************************/
398  /*********************************************************************************/
400  return _humidSensorPeriodPrv;
401  }
402 
403  /*******************************************************************************/
409  /*******************************************************************************/
410  virtual void setSensorRelativeHumidityPeriodPrv(long periodPrv) {
411  _humidSensorPeriodPrv = periodPrv;
412  }
413 
414  /*******************************************************************************/
423  /*******************************************************************************/
424  virtual bool getEventRelativeHumidity(sensors_event_t *humidEvent) {
425  (void)humidEvent; // Parameter is intentionally unused in this virtual
426  // function.
427  return false;
428  }
429 
430  /**************************** SENSOR_TYPE: PRESSURE
431  * ****************************/
432  /*********************************************************************************/
438  /*********************************************************************************/
440 
441  /*********************************************************************************/
447  /*********************************************************************************/
449 
450  /*******************************************************************************/
456  /*******************************************************************************/
457  virtual void setSensorPressurePeriodPrv(long period) {
458  _pressureSensorPeriodPrv = period;
459  }
460 
461  /*******************************************************************************/
470  /*******************************************************************************/
471  virtual bool getEventPressure(sensors_event_t *pressureEvent) {
472  (void)pressureEvent; // Parameter is intentionally unused in this virtual
473  // function.
474  return false;
475  }
476 
477  /**************************** SENSOR_TYPE: Altitude
478  * ****************************/
479  /*********************************************************************************/
485  /*********************************************************************************/
487 
488  /*********************************************************************************/
494  /*********************************************************************************/
496 
497  /*******************************************************************************/
503  /*******************************************************************************/
504  virtual void setSensorAltitudePeriodPrv(long period) {
505  _altitudeSensorPeriodPrv = period;
506  }
507 
508  /*******************************************************************************/
517  /*******************************************************************************/
518  virtual bool getEventAltitude(sensors_event_t *altitudeEvent) {
519  (void)altitudeEvent; // Parameter is intentionally unused in this virtual
520  // function.
521  return false;
522  }
523 
524  /**************************** SENSOR_TYPE: Object_Temperature
525  * ****************************/
526  /*********************************************************************************/
533  /*********************************************************************************/
535 
536  /*********************************************************************************/
543  /*********************************************************************************/
546  }
547 
548  /*******************************************************************************/
555  /*******************************************************************************/
556  virtual void setSensorObjectTempPeriodPrv(long period) {
558  }
559 
560  /*******************************************************************************/
569  /*******************************************************************************/
570  virtual bool getEventObjectTemp(sensors_event_t *objectTempEvent) {
571  (void)objectTempEvent; // Parameter is intentionally unused in this virtual
572  // function.
573  return false;
574  }
575 
576  /**************************** SENSOR_TYPE: LIGHT
577  * ****************************/
578  /*********************************************************************************/
585  /*********************************************************************************/
586  virtual long getSensorLightPeriod() { return _lightSensorPeriod; }
587 
588  /*********************************************************************************/
595  /*********************************************************************************/
597 
598  /*******************************************************************************/
605  /*******************************************************************************/
606  virtual void setSensorLightPeriodPrv(long period) {
607  _lightSensorPeriodPrv = period;
608  }
609 
610  /*******************************************************************************/
619  /*******************************************************************************/
620  virtual bool getEventLight(sensors_event_t *lightEvent) {
621  (void)lightEvent; // Parameter is intentionally unused in this virtual
622  // function.
623  return false;
624  }
625 
626  /**************************** SENSOR_TYPE: PM10_STD
627  * ****************************/
628  /*********************************************************************************/
635  /*********************************************************************************/
636  virtual long getSensorPM10_STDPeriod() { return _PM10SensorPeriod; }
637 
638  /*********************************************************************************/
645  /*********************************************************************************/
647 
648  /*******************************************************************************/
655  /*******************************************************************************/
656  virtual void setSensorPM10_STDPeriodPrv(long period) {
657  _PM10SensorPeriodPrv = period;
658  }
659 
660  /*******************************************************************************/
669  /*******************************************************************************/
670  virtual bool getEventPM10_STD(sensors_event_t *pm10StdEvent) {
671  (void)pm10StdEvent; // Parameter is intentionally unused in this virtual
672  // function.
673  return false;
674  }
675 
676  /**************************** SENSOR_TYPE: PM25_STD
677  * ****************************/
678  /*********************************************************************************/
685  /*********************************************************************************/
686  virtual long getSensorPM25_STDPeriod() { return _PM25SensorPeriod; }
687 
688  /*********************************************************************************/
695  /*********************************************************************************/
697 
698  /*******************************************************************************/
705  /*******************************************************************************/
706  virtual void setSensorPM25_STDPeriodPrv(long period) {
707  _PM25SensorPeriodPrv = period;
708  }
709 
710  /*******************************************************************************/
719  /*******************************************************************************/
720  virtual bool getEventPM25_STD(sensors_event_t *pm25StdEvent) {
721  (void)pm25StdEvent; // Parameter is intentionally unused in this virtual
722  // function.
723  return false;
724  }
725 
726  /**************************** SENSOR_TYPE: PM100_STD
727  * ****************************/
728  /*********************************************************************************/
735  /*********************************************************************************/
736  virtual long getSensorPM100_STDPeriod() { return _PM100SensorPeriod; }
737 
738  /*********************************************************************************/
745  /*********************************************************************************/
747 
748  /*******************************************************************************/
755  /*******************************************************************************/
756  virtual void setSensorPM100_STDPeriodPrv(long period) {
757  _PM100SensorPeriodPrv = period;
758  }
759 
760  /*******************************************************************************/
769  /*******************************************************************************/
770  virtual bool getEventPM100_STD(sensors_event_t *pm100StdEvent) {
771  (void)pm100StdEvent; // Parameter is intentionally unused in this virtual
772  // function.
773  return false;
774  }
775 
776  /**************************** SENSOR_TYPE: UNITLESS_PERCENT
777  * ****************************/
778  /*********************************************************************************/
785  /*********************************************************************************/
787  return _unitlessPercentPeriod;
788  }
789 
790  /*********************************************************************************/
797  /*********************************************************************************/
800  }
801 
802  /*******************************************************************************/
809  /*******************************************************************************/
810  virtual void setSensorUnitlessPercentPeriodPrv(long period) {
811  _unitlessPercentPeriodPrv = period;
812  }
813 
814  /*******************************************************************************/
823  /*******************************************************************************/
824  virtual bool getEventUnitlessPercent(sensors_event_t *unitlessPercentEvent) {
825  (void)unitlessPercentEvent; // Parameter is intentionally unused in this
826  // virtual function.
827  return false;
828  }
829 
830  /**************************** SENSOR_TYPE: VOLTAGE
831  * ****************************/
832  /*********************************************************************************/
838  /*********************************************************************************/
839  virtual long getSensorVoltagePeriod() { return _voltagePeriod; }
840 
841  /*********************************************************************************/
847  /*********************************************************************************/
848  virtual long getSensorVoltagePeriodPrv() { return _voltagePeriodPrv; }
849 
850  /*******************************************************************************/
856  /*******************************************************************************/
857  virtual void setSensorVoltagePeriodPrv(long period) {
858  _voltagePeriodPrv = period;
859  }
860 
861  /*******************************************************************************/
870  /*******************************************************************************/
871  virtual bool getEventVoltage(sensors_event_t *voltageEvent) {
872  (void)voltageEvent; // Parameter is intentionally unused in this virtual
873  // function.
874  return false;
875  }
876 
877  /**************************** SENSOR_TYPE: CURRENT
878  * ****************************/
879  /*********************************************************************************/
885  /*********************************************************************************/
886  virtual long getSensorCurrentPeriod() { return _currentPeriod; }
887 
888  /*********************************************************************************/
894  /*********************************************************************************/
895  virtual long getSensorCurrentPeriodPrv() { return _currentPeriodPrv; }
896 
897  /*******************************************************************************/
903  /*******************************************************************************/
904  virtual void setSensorCurrentPeriodPrv(long period) {
905  _currentPeriodPrv = period;
906  }
907 
908  /*******************************************************************************/
917  /*******************************************************************************/
918  virtual bool getEventCurrent(sensors_event_t *currentEvent) {
919  (void)currentEvent; // Parameter is intentionally unused in this virtual
920  // function.
921  return false;
922  }
923 
924  /****************************** SENSOR_TYPE: Raw
925  * *******************************/
926  /*********************************************************************************/
932  /*********************************************************************************/
933  virtual long getSensorRawPeriod() { return _rawSensorPeriod; }
934 
935  /*********************************************************************************/
941  /*********************************************************************************/
942  virtual long getSensorRawPeriodPrv() { return _rawSensorPeriodPrv; }
943 
944  /*******************************************************************************/
950  /*******************************************************************************/
951  virtual void setSensorRawPeriodPrv(long period) {
952  _rawSensorPeriodPrv = period;
953  }
954 
955  /*******************************************************************************/
963  /*******************************************************************************/
964  virtual bool getEventRaw(sensors_event_t *rawEvent) {
965  (void)
966  rawEvent; // Parameter is intentionally unused in this virtual function.
967  return false;
968  }
969 
970  /****************************** SENSOR_TYPE: Ambient Temp (°F)
971  * *******************************/
972 
973  /*******************************************************************************/
978  /*******************************************************************************/
979  virtual void disableAmbientTempF() { _ambientTempFPeriod = 0.0L; }
980 
981  /*********************************************************************************/
988  /*********************************************************************************/
990 
991  /*********************************************************************************/
998  /*********************************************************************************/
1000  return _ambientTempFPeriodPrv;
1001  }
1002 
1003  /*******************************************************************************/
1011  /*******************************************************************************/
1012  virtual void setSensorAmbientTempFPeriodPrv(long period) {
1013  _ambientTempFPeriodPrv = period;
1014  }
1015 
1016  /*******************************************************************************/
1026  /*******************************************************************************/
1027  virtual bool getEventAmbientTempF(sensors_event_t *AmbientTempFEvent) {
1028  // obtain ambient temp. in °C
1029  if (!getEventAmbientTemp(AmbientTempFEvent))
1030  return false;
1031  // convert event from °C to °F
1032  AmbientTempFEvent->temperature =
1033  (AmbientTempFEvent->temperature * 9.0) / 5.0 + 32;
1034  return true;
1035  }
1036 
1037  /****************************** SENSOR_TYPE: Object Temp (°F)
1038  * *******************************/
1039  /*********************************************************************************/
1046  /*********************************************************************************/
1048 
1049  /*********************************************************************************/
1056  /*********************************************************************************/
1058 
1059  /*******************************************************************************/
1067  /*******************************************************************************/
1068  virtual void setSensorObjectTempFPeriodPrv(long period) {
1069  _objectTempFPeriodPrv = period;
1070  }
1071 
1072  /*******************************************************************************/
1082  /*******************************************************************************/
1083  virtual bool getEventObjectTempF(sensors_event_t *objectTempFEvent) {
1084  // obtain ambient temp. in °C
1085  if (!getEventObjectTemp(objectTempFEvent))
1086  return false;
1087  // convert event from °C to °F
1088  objectTempFEvent->temperature =
1089  (objectTempFEvent->temperature * 9.0) / 5.0 + 32.0;
1090  return true;
1091  }
1092 
1093  /****************************** SENSOR_TYPE: Gas Resistance (ohms)
1094  * *******************************/
1095  /*********************************************************************************/
1102  /*********************************************************************************/
1104 
1105  /*********************************************************************************/
1112  /*********************************************************************************/
1114  return _gasResistancePeriodPrv;
1115  }
1116 
1117  /*******************************************************************************/
1125  /*******************************************************************************/
1126  virtual void setSensorGasResistancePeriodPrv(long period) {
1127  _gasResistancePeriodPrv = period;
1128  }
1129 
1130  /*******************************************************************************/
1139  /*******************************************************************************/
1140  virtual bool getEventGasResistance(sensors_event_t *gasEvent) {
1141  (void)
1142  gasEvent; // Parameter is intentionally unused in this virtual function.
1143  return false;
1144  }
1145 
1146  /****************************** SENSOR_TYPE: NOx Index (index)
1147  * *******************************/
1148  /*********************************************************************************/
1155  /*********************************************************************************/
1156  virtual long getSensorNOxIndexPeriod() { return _NOxIndexPeriod; }
1157 
1158  /*********************************************************************************/
1165  /*********************************************************************************/
1167 
1168  /*******************************************************************************/
1176  /*******************************************************************************/
1177  virtual void setSensorNOxIndexPeriodPrv(long period) {
1178  _NOxIndexPeriodPrv = period;
1179  }
1180 
1181  /*******************************************************************************/
1190  /*******************************************************************************/
1191  virtual bool getEventNOxIndex(sensors_event_t *gasEvent) {
1192  (void)
1193  gasEvent; // Parameter is intentionally unused in this virtual function.
1194  return false;
1195  }
1196 
1197  /****************************** SENSOR_TYPE: VOC Index (index)
1198  * *******************************/
1199  /*********************************************************************************/
1206  /*********************************************************************************/
1207  virtual long getSensorVOCIndexPeriod() { return _VOCIndexPeriod; }
1208 
1209  /*********************************************************************************/
1216  /*********************************************************************************/
1218 
1219  /*******************************************************************************/
1227  /*******************************************************************************/
1228  virtual void setSensorVOCIndexPeriodPrv(long period) {
1229  _VOCIndexPeriodPrv = period;
1230  }
1231 
1232  /*******************************************************************************/
1241  /*******************************************************************************/
1242  virtual bool getEventVOCIndex(sensors_event_t *gasEvent) {
1243  (void)
1244  gasEvent; // Parameter is intentionally unused in this virtual function.
1245  return false;
1246  }
1247 
1248  /**************************** SENSOR_TYPE: PROXIMITY
1249  * ****************************/
1250  /*******************************************************************************/
1254  /*******************************************************************************/
1255  virtual void enableSensorProximity() {};
1256 
1257  /*******************************************************************************/
1261  /*******************************************************************************/
1263 
1264  /*********************************************************************************/
1271  /*********************************************************************************/
1273 
1274  /*******************************************************************************/
1281  /*******************************************************************************/
1282  virtual void setSensorProximityPeriod(long period) {
1283  if (period == 0)
1285  _proximitySensorPeriod = period;
1286  }
1287 
1288  /*********************************************************************************/
1295  /*********************************************************************************/
1297 
1298  /*******************************************************************************/
1305  /*******************************************************************************/
1306  virtual void setSensorProximityPeriodPrv(long period) {
1307  _proximitySensorPeriodPrv = period;
1308  }
1309 
1310  /*******************************************************************************/
1319  /*******************************************************************************/
1320  virtual bool getEventProximity(sensors_event_t *proximityEvent) {
1321  (void)proximityEvent; // Parameter is intentionally unused in this virtual
1322  // function.
1323  return false;
1324  }
1325 
1326  /*******************************************************************************/
1333  /*******************************************************************************/
1334  virtual void updateSensorProximity(float period) {
1335  setSensorProximityPeriod(period);
1336  }
1337 
1338 protected:
1339  TwoWire *_i2c;
1340  uint16_t _sensorAddress;
1342  0L;
1345  long _humidSensorPeriod =
1347  0L;
1350  long _pressureSensorPeriod =
1352  0L;
1355  long _CO2SensorPeriod =
1357  0L;
1361  0L;
1365  0L;
1369  0L;
1372  long _objectTempSensorPeriod = 0L;
1377  long _lightSensorPeriod =
1379  0L;
1382  long _PM10SensorPeriod =
1384  0L;
1388  0L;
1392  0L;
1395  long _unitlessPercentPeriod =
1397  0L;
1400  long _voltagePeriod =
1402  0L;
1405  long _currentPeriod =
1407  0L;
1410  long _rawSensorPeriod =
1412  0L;
1416  long _ambientTempFPeriodPrv =
1419  long _objectTempFPeriod = 0L;
1421  long _objectTempFPeriodPrv =
1424  long _gasResistancePeriod = 0L;
1429  long _NOxIndexPeriod =
1431  0L;
1434  long _VOCIndexPeriod =
1436  0L;
1439  long _proximitySensorPeriod =
1441  0L;
1444 };
1446 
1447 #endif // WipperSnapper_I2C_Driver_H
long _unitlessPercentPeriod
The time period between reading the unitless % sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1396
virtual long getSensorUnitlessPercentPeriodPrv()
Base implementation - Returns the previous time interval at which the unitless % sensor was queried l...
Definition: WipperSnapper_I2C_Driver.h:798
virtual long getSensorLightPeriodPrv()
Base implementation - Returns the previous time interval at which the light sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:596
virtual long getSensorObjectTempPeriodPrv()
Base implementation - Returns the previous time interval at which the object temperature sensor was q...
Definition: WipperSnapper_I2C_Driver.h:544
virtual bool getEventPM10_STD(sensors_event_t *pm10StdEvent)
Base implementation - Reads a object pm10 std. sensor and converts the reading into the expected SI u...
Definition: WipperSnapper_I2C_Driver.h:670
virtual void updateSensorProximity(float period)
Updates the properties of a proximity sensor.
Definition: WipperSnapper_I2C_Driver.h:1334
long _PM10SensorPeriod
The time period between reading the pm25 sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1383
uint16_t getI2CAddress()
Gets the I2C device&#39;s address.
Definition: WipperSnapper_I2C_Driver.h:191
virtual long getSensorPM25_STDPeriod()
Base implementation - Returns the object pm25 standard sensors&#39; period, if set.
Definition: WipperSnapper_I2C_Driver.h:686
virtual void setSensorObjectTempFPeriodPrv(long period)
Sets a timestamp for when the object temperature sensor (°F) was queried.
Definition: WipperSnapper_I2C_Driver.h:1068
long _PM100SensorPeriod
The time period between reading the pm100_std sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1391
#define PERIOD_24HRS_AGO_MILLIS
Used for last sensor read time, initially set 24hrs ago (max period)
Definition: WipperSnapper_I2C_Driver.h:24
virtual void setSensorVOCIndexPeriodPrv(long period)
Sets a timestamp for when the object VOC Index sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:1228
long _currentPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1408
virtual long getSensorPressurePeriod()
Base implementation - Returns the pressure sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:439
virtual long getSensorTVOCPeriodPrv()
Base implementation - Returns the previous time interval at which the TVOC sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:303
virtual void setSensorAmbientTempFPeriodPrv(long period)
Sets a timestamp for when the ambient temperature sensor (°F) was queried.
Definition: WipperSnapper_I2C_Driver.h:1012
virtual bool getEventPM100_STD(sensors_event_t *pm100StdEvent)
Base implementation - Reads a object pm100 std. sensor and converts the reading into the expected SI ...
Definition: WipperSnapper_I2C_Driver.h:770
virtual long getSensorCurrentPeriod()
Base implementation - Returns the current sensor&#39;s period.
Definition: WipperSnapper_I2C_Driver.h:886
virtual long getSensorRelativeHumidityPeriodPrv()
Base implementation - Returns the previous time interval at which the humidity sensor was queried las...
Definition: WipperSnapper_I2C_Driver.h:399
long _altitudeSensorPeriod
The time period between reading the altitude sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1368
virtual long getSensorVOCIndexPeriod()
Base implementation - Returns the VOC Index sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:1207
virtual long getSensorTVOCPeriod()
Base implementation - Returns the TVOC sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:294
virtual void setSensorProximityPeriodPrv(long period)
Sets a timestamp for when the proximity sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:1306
virtual bool getEventCO2(sensors_event_t *co2Event)
Gets a sensor&#39;s CO2 value.
Definition: WipperSnapper_I2C_Driver.h:233
virtual long getSensorAmbientTempPeriod()
Base implementation - Returns the ambient temperature (°C) sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:340
virtual long getSensorPM100_STDPeriodPrv()
Base implementation - Returns the previous time interval at which the pm100 std. sensor was queried l...
Definition: WipperSnapper_I2C_Driver.h:746
virtual long getSensorAmbientTempPeriodPrv()
Base implementation - Returns the previous time interval at which the ambient temperature sensor (°C)...
Definition: WipperSnapper_I2C_Driver.h:350
virtual bool getEventPM25_STD(sensors_event_t *pm25StdEvent)
Base implementation - Reads a object pm25 std. sensor and converts the reading into the expected SI u...
Definition: WipperSnapper_I2C_Driver.h:720
virtual bool getEventNOxIndex(sensors_event_t *gasEvent)
Base implementation - Reads a NOx Index sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:1191
virtual long getSensorECO2PeriodPrv()
Base implementation - Returns the previous time interval at which the eCO2 sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:257
long _currentPeriod
The time period between reading the current sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1406
long _NOxIndexPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1432
long _objectTempSensorPeriod
Definition: WipperSnapper_I2C_Driver.h:1373
long _TVOCSensorPeriod
The time period between reading the TVOC sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1364
long _ambientTempFPeriod
Definition: WipperSnapper_I2C_Driver.h:1415
virtual long getSensorUnitlessPercentPeriod()
Base implementation - Returns the object unitless % sensor period, if set.
Definition: WipperSnapper_I2C_Driver.h:786
virtual long getSensorCO2Period()
Base implementation - Returns the co2 sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:202
virtual void setSensorTVOCPeriodPrv(long period)
Sets a timestamp for when the TVOC sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:312
long _VOCIndexPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1437
virtual void setSensorVoltagePeriodPrv(long period)
Sets a timestamp for when the voltage sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:857
virtual void setSensorAltitudePeriodPrv(long period)
Sets a timestamp for when the Altitude sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:504
virtual bool getEventProximity(sensors_event_t *proximityEvent)
Base implementation - Reads a proximity sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:1320
long _tempSensorPeriod
The time period between reading the temperature sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1341
virtual bool getEventRelativeHumidity(sensors_event_t *humidEvent)
Base implementation - Reads a humidity sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:424
virtual void setSensorNOxIndexPeriodPrv(long period)
Sets a timestamp for when the object NOx Index sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:1177
virtual ~WipperSnapper_I2C_Driver()
Destructor for an I2C sensor.
Definition: WipperSnapper_I2C_Driver.h:55
long _unitlessPercentPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1398
virtual long getSensorAmbientTempFPeriodPrv()
Base implementation - Returns the previous time interval at which the ambient temperature sensor (°F)...
Definition: WipperSnapper_I2C_Driver.h:999
long _voltagePeriod
The time period between reading the voltage sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1401
bool begin()
Initializes the I2C sensor and begins I2C.
Definition: WipperSnapper_I2C_Driver.h:78
virtual long getSensorAmbientTempFPeriod()
Base implementation - Returns the ambient temperature (°F) sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:989
virtual bool getEventAmbientTempF(sensors_event_t *AmbientTempFEvent)
Helper function to obtain a sensor&#39;s ambient temperature value in °F. Requires getEventAmbientTemp() ...
Definition: WipperSnapper_I2C_Driver.h:1027
long _TVOCSensorPeriodPrv
The time when the TVOC sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1366
WipperSnapper_I2C_Driver(TwoWire *i2c, uint16_t sensorAddress)
Instantiates an I2C sensor.
Definition: WipperSnapper_I2C_Driver.h:45
virtual void disableAmbientTempF()
Disables the device&#39;s ambient temperature (°F) sensor, if it exists.
Definition: WipperSnapper_I2C_Driver.h:979
Base class for I2C Drivers.
Definition: WipperSnapper_I2C_Driver.h:33
virtual bool getEventAltitude(sensors_event_t *altitudeEvent)
Base implementation - Reads a Altitude sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:518
long _pressureSensorPeriod
The time period between reading the pressure sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1351
virtual bool getEventVOCIndex(sensors_event_t *gasEvent)
Base implementation - Reads a VOC Index sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:1242
long _objectTempFPeriod
Definition: WipperSnapper_I2C_Driver.h:1420
long _ambientTempFPeriodPrv
was last read.
Definition: WipperSnapper_I2C_Driver.h:1417
long _ECO2SensorPeriodPrv
The time when the eCO2 sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1362
long _gasResistancePeriodPrv
last read.
Definition: WipperSnapper_I2C_Driver.h:1427
long _humidSensorPeriod
The time period between reading the humidity sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1346
virtual void setSensorPM100_STDPeriodPrv(long period)
Sets a timestamp for when the light sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:756
virtual long getSensorLightPeriod()
Base implementation - Returns the object light sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:586
long _PM100SensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1393
virtual long getSensorRelativeHumidityPeriod()
Base implementation - Returns the humidity sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:390
virtual bool getEventUnitlessPercent(sensors_event_t *unitlessPercentEvent)
Base implementation - Reads a object unitless % std. sensor and converts the reading into the expecte...
Definition: WipperSnapper_I2C_Driver.h:824
virtual long getSensorPM25_STDPeriodPrv()
Base implementation - Returns the previous time interval at which the pm25 std. sensor was queried la...
Definition: WipperSnapper_I2C_Driver.h:696
virtual bool getEventTVOC(sensors_event_t *tvocEvent)
Gets a sensor&#39;s TVOC value.
Definition: WipperSnapper_I2C_Driver.h:325
uint16_t _sensorAddress
The I2C driver&#39;s unique I2C address.
Definition: WipperSnapper_I2C_Driver.h:1340
virtual long getSensorAltitudePeriodPrv()
Base implementation - Returns the previous time interval at which the Altitude sensor was queried las...
Definition: WipperSnapper_I2C_Driver.h:495
virtual void setSensorECO2PeriodPrv(long period)
Sets a timestamp for when the eCO2 sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:266
virtual long getSensorGasResistancePeriodPrv()
Base implementation - Returns the previous time interval at which the gas resistance sensor (ohms) wa...
Definition: WipperSnapper_I2C_Driver.h:1113
long _gasResistancePeriod
Definition: WipperSnapper_I2C_Driver.h:1425
virtual long SensorProximityPeriodPrv()
Base implementation - Returns the previous time interval at which the proximity sensor was queried la...
Definition: WipperSnapper_I2C_Driver.h:1296
virtual long getSensorPM100_STDPeriod()
Base implementation - Returns the object pm100 standard sensors&#39; period, if set.
Definition: WipperSnapper_I2C_Driver.h:736
long _humidSensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1348
virtual long getSensorVoltagePeriod()
Base implementation - Returns the voltage sensor&#39;s period.
Definition: WipperSnapper_I2C_Driver.h:839
virtual void setSensorPM10_STDPeriodPrv(long period)
Sets a timestamp for when the light sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:656
long _objectTempSensorPeriodPrv
was last read.
Definition: WipperSnapper_I2C_Driver.h:1375
virtual long getSensorPM10_STDPeriodPrv()
Base implementation - Returns the previous time interval at which the pm10 std. sensor was queried la...
Definition: WipperSnapper_I2C_Driver.h:646
long _objectTempFPeriodPrv
was last read.
Definition: WipperSnapper_I2C_Driver.h:1422
long _lightSensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1380
virtual bool getEventECO2(sensors_event_t *eco2Event)
Gets a sensor&#39;s eCO2 value.
Definition: WipperSnapper_I2C_Driver.h:279
virtual void setSensorPM25_STDPeriodPrv(long period)
Sets a timestamp for when the light sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:706
void setSensorPeriod(float period, wippersnapper_i2c_v1_SensorType sensorType)
Sets the sensor&#39;s period, provided a wippersnapper_i2c_v1_SensorType.
Definition: WipperSnapper_I2C_Driver.h:89
virtual void setSensorObjectTempPeriodPrv(long period)
Sets a timestamp for when the object temperature sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:556
virtual long getSensorPressurePeriodPrv()
Base implementation - Returns the previous time interval at which the pressure sensor was queried las...
Definition: WipperSnapper_I2C_Driver.h:448
virtual void setSensorPressurePeriodPrv(long period)
Sets a timestamp for when the pressure sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:457
virtual void setSensorRelativeHumidityPeriodPrv(long periodPrv)
Sets a timestamp for when the temperature sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:410
virtual bool getEventPressure(sensors_event_t *pressureEvent)
Base implementation - Reads a pressure sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:471
virtual long getSensorCurrentPeriodPrv()
Base implementation - Returns the previous time interval at which the current sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:895
virtual long getSensorGasResistancePeriod()
Base implementation - Returns the gas resistance (ohms) sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:1103
virtual long getSensorAltitudePeriod()
Base implementation - Returns the Altitude sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:486
virtual bool getEventLight(sensors_event_t *lightEvent)
Base implementation - Reads a object light sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:620
long _VOCIndexPeriod
The time period between reading the VOC Index sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1435
virtual bool getEventGasResistance(sensors_event_t *gasEvent)
Base implementation - Reads a gas resistance sensor and converts the reading into the expected SI uni...
Definition: WipperSnapper_I2C_Driver.h:1140
virtual bool getEventAmbientTemp(sensors_event_t *tempEvent)
Base implementation - Reads an ambient temperature sensor (°C). Expects value to return in the proper...
Definition: WipperSnapper_I2C_Driver.h:375
virtual long getSensorObjectTempFPeriod()
Base implementation - Returns the object temperature (°F) sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:1047
long _CO2SensorPeriodPrv
The time when the CO2 sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1358
long _lightSensorPeriod
The time period between reading the light sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1378
void configureDriver(wippersnapper_i2c_v1_I2CDeviceInitRequest *msgDeviceInitReq)
Uses an I2CDeviceInitRequest message to configure the sensors belonging to the driver.
Definition: WipperSnapper_I2C_Driver.h:174
virtual void enableSensorProximity()
Enables the device&#39;s proximity sensor, if it exists.
Definition: WipperSnapper_I2C_Driver.h:1255
virtual long getSensorNOxIndexPeriodPrv()
Base implementation - Returns the previous time interval at which the NOx Index sensor was queried la...
Definition: WipperSnapper_I2C_Driver.h:1166
virtual void setSensorUnitlessPercentPeriodPrv(long period)
Sets a timestamp for when the unitless % sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:810
virtual void setSensorCO2PeriodPrv(long period)
Sets a timestamp for when the co2 sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:220
virtual long getSensorRawPeriod()
Base implementation - Returns the raw sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:933
virtual void setSensorRawPeriodPrv(long period)
Sets a timestamp for when the raw sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:951
virtual long getSensorObjectTempPeriod()
Base implementation - Returns the object temperature sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:534
virtual void setSensorAmbientTempPeriodPrv(long periodPrv)
Sets a timestamp for when the ambient temperature sensor (°C) was queried.
Definition: WipperSnapper_I2C_Driver.h:361
long _voltagePeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1403
long _rawSensorPeriod
The time period between reading the Raw sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1411
virtual long getSensorCO2PeriodPrv()
Base implementation - Returns the previous time interval at which the co2 sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:211
virtual long getSensorECO2Period()
Base implementation - Returns the eCO2 sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:248
virtual void disableSensorProximity()
Disables the device&#39;s object proximity sensor, if it exists.
Definition: WipperSnapper_I2C_Driver.h:1262
virtual bool getEventObjectTempF(sensors_event_t *objectTempFEvent)
Helper function to obtain a sensor&#39;s object temperature value in °F. Requires getEventObjectTemp() to...
Definition: WipperSnapper_I2C_Driver.h:1083
long _rawSensorPeriodPrv
The time when the Raw sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1413
long _PM25SensorPeriod
The time period between reading the pm25 sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1387
long _tempSensorPeriodPrv
last read
Definition: WipperSnapper_I2C_Driver.h:1343
long _PM10SensorPeriodPrv
The time when the pm25 sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1385
long _CO2SensorPeriod
The time period between reading the CO2 sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1356
virtual long getSensorPM10_STDPeriod()
Base implementation - Returns the object pm10 standard sensors&#39; period, if set.
Definition: WipperSnapper_I2C_Driver.h:636
virtual long getSensorObjectTempFPeriodPrv()
Base implementation - Returns the previous time interval at which the object temperature sensor (°F) ...
Definition: WipperSnapper_I2C_Driver.h:1057
long _proximitySensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1442
virtual bool getEventObjectTemp(sensors_event_t *objectTempEvent)
Base implementation - Reads a object temperature sensor and converts the reading into the expected SI...
Definition: WipperSnapper_I2C_Driver.h:570
virtual long getSensorVoltagePeriodPrv()
Base implementation - Returns the previous time interval at which the voltage sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:848
long _ECO2SensorPeriod
The time period between reading the eCO2 sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1360
long _proximitySensorPeriod
The time period between reading the proximity sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1440
virtual long getSensorRawPeriodPrv()
Base implementation - Returns the previous time interval at which the raw sensor was queried last...
Definition: WipperSnapper_I2C_Driver.h:942
virtual void setSensorCurrentPeriodPrv(long period)
Sets a timestamp for when the current sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:904
long _PM25SensorPeriodPrv
The time when the pm25 sensor was last read.
Definition: WipperSnapper_I2C_Driver.h:1389
virtual bool getEventRaw(sensors_event_t *rawEvent)
Gets a sensor&#39;s Raw value.
Definition: WipperSnapper_I2C_Driver.h:964
virtual long sensorProximityPeriod()
Base implementation - Returns the proximity sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:1272
virtual bool getEventCurrent(sensors_event_t *currentEvent)
Base implementation - Reads a current sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:918
virtual void setSensorGasResistancePeriodPrv(long period)
Sets a timestamp for when the object gas resistance sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:1126
long _altitudeSensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1370
virtual long getSensorVOCIndexPeriodPrv()
Base implementation - Returns the previous time interval at which the VOC Index sensor was queried la...
Definition: WipperSnapper_I2C_Driver.h:1217
long _NOxIndexPeriod
The time period between reading the NOx Index sensor&#39;s value.
Definition: WipperSnapper_I2C_Driver.h:1430
virtual bool getEventVoltage(sensors_event_t *voltageEvent)
Base implementation - Reads a voltage sensor and converts the reading into the expected SI unit...
Definition: WipperSnapper_I2C_Driver.h:871
TwoWire * _i2c
Pointer to the I2C driver&#39;s Wire object.
Definition: WipperSnapper_I2C_Driver.h:1339
virtual void fastTick()
Lightweight, per-update background hook for drivers that need more frequent internal polling than the...
Definition: WipperSnapper_I2C_Driver.h:70
long _pressureSensorPeriodPrv
read.
Definition: WipperSnapper_I2C_Driver.h:1353
virtual long getSensorNOxIndexPeriod()
Base implementation - Returns the NOx Index sensor&#39;s period, if set.
Definition: WipperSnapper_I2C_Driver.h:1156
virtual void setSensorLightPeriodPrv(long period)
Sets a timestamp for when the light sensor was queried.
Definition: WipperSnapper_I2C_Driver.h:606
virtual void setSensorProximityPeriod(long period)
Set the proximity sensor&#39;s return frequency.
Definition: WipperSnapper_I2C_Driver.h:1282