diff --git a/AirGradient.cpp b/AirGradient.cpp index 4c26c34..bf7d39a 100644 --- a/AirGradient.cpp +++ b/AirGradient.cpp @@ -187,7 +187,7 @@ int AirGradient::getAMB_TMP(){ DATA data; requestRead(); if (readUntil(data)) { - count = data.AMB_TMP; + count = data.PM_TMP; return count; } else { return -1; @@ -199,7 +199,7 @@ int AirGradient::getAMB_HUM(){ DATA data; requestRead(); if (readUntil(data)) { - count = data.AMB_HUM; + count = data.PM_HUM; return count; } else { return -1; @@ -358,8 +358,8 @@ void AirGradient::loop() _data->AMB_HCHO = makeWord(_payload[24], _payload[25]) / 1000; // Temperature & humidity (PMSxxxxST units only) - _data->AMB_TMP = makeWord(_payload[26], _payload[27]) / 10; - _data->AMB_HUM = makeWord(_payload[28], _payload[29]) / 10; + _data->PM_TMP = makeWord(_payload[20], _payload[21]) / 10; + _data->PM_HUM = makeWord(_payload[22], _payload[23]) / 10; } _index = 0; diff --git a/AirGradient.h b/AirGradient.h index 8f00582..e912de2 100644 --- a/AirGradient.h +++ b/AirGradient.h @@ -199,8 +199,8 @@ class AirGradient uint16_t AMB_HCHO; // Temperature & humidity - PMSxxxxST units only - int16_t AMB_TMP; - uint16_t AMB_HUM; + int16_t PM_TMP; + uint16_t PM_HUM; }; void PMS(Stream&); @@ -278,7 +278,7 @@ class AirGradient enum STATUS { STATUS_WAITING, STATUS_OK }; enum MODE { MODE_ACTIVE, MODE_PASSIVE }; - uint8_t _payload[30]; + uint8_t _payload[32]; Stream* _stream; DATA* _data; STATUS _PMSstatus; @@ -290,7 +290,9 @@ class AirGradient uint16_t _calculatedChecksum; SoftwareSerial *_SoftSerial_PMS; void loop(); - char Char_PM2[10]; + char Char_PM1[10]; + char Char_PM2[10]; + char Char_PM10[10]; //PMS VARIABLES PRIVATE END //TMP_RH VARIABLES PRIVATE START