Restart device after PMS sensor read failed 10 times

This commit is contained in:
Phat Nguyen committed 2024-08-25 20:21:26 +07:00
1 parent 6c3259b94b
commit b049a23657
10 files changed
+186 -33

No files matched your search

+8
View File
@@ -3,11 +3,17 @@
#include <Arduino.h>
#define PMS_FAIL_COUNT_SET_INVALID 3
class PMSBase {
public:
bool begin(Stream *stream);
void handle();
bool isFailed(void);
void updateFailCount(void);
void resetFailCount(void);
int getFailCount(void);
int getFailCountMax(void);
uint16_t getRaw0_1(void);
uint16_t getRaw2_5(void);
uint16_t getRaw10(void);
@@ -36,6 +42,8 @@ private:
int packageIndex;
bool failed = false;
uint32_t lastRead;
const int failCountMax = 10;
int failCount = 0;
int16_t toI16(char *buf);
uint16_t toU16(char* buf);