diff --git a/src/AgValue.cpp b/src/AgValue.cpp index 5bb322b..961c65b 100644 --- a/src/AgValue.cpp +++ b/src/AgValue.cpp @@ -5,79 +5,7 @@ #define json_prop_pmFirmware "firmware" -/** - * @brief Get PMS5003 firmware version string - * - * @param fwCode - * @return String - */ -String Measurements::pms5003FirmwareVersion(int fwCode) { - return pms5003FirmwareVersionBase("PMS5003x", fwCode); -} - -/** - * @brief Get PMS5003T firmware version string - * - * @param fwCode - * @return String - */ -String Measurements::pms5003TFirmwareVersion(int fwCode) { - return pms5003FirmwareVersionBase("PMS5003x", fwCode); -} - -/** - * @brief Get firmware version string - * - * @param prefix Prefix firmware string - * @param fwCode Version code - * @return string - */ -String Measurements::pms5003FirmwareVersionBase(String prefix, int fwCode) { - return prefix + String("-") + String(fwCode); -} - -String Measurements::agValueTypeStr(AgValueType type) { - String str; - switch (type) { - case AgValueType::Temperature: - str = "Temperature"; - break; - case AgValueType::Humidity: - str = "Humidity"; - break; - case AgValueType::CO2: - str = "CO2"; - break; - case AgValueType::TVOC: - str = "TVOC"; - break; - case AgValueType::TVOCRaw: - str = "TVOCRaw"; - break; - case AgValueType::NOx: - str = "NOx"; - break; - case AgValueType::NOxRaw: - str = "NOxRaw"; - break; - case AgValueType::PM25: - str = "PM25"; - break; - case AgValueType::PM01: - str = "PM01"; - break; - case AgValueType::PM10: - str = "PM10"; - break; - case AgValueType::PM03: - str = "PM03"; - break; - default: - break; - }; - - return str; -} +void Measurements::init() {} bool Measurements::updateValue(AgValueType type, int val) { // Define data point source @@ -594,3 +522,58 @@ String Measurements::toString(bool localServer, AgFirmwareMode fwMode, int rssi, return JSON.stringify(root); } + +String Measurements::pms5003FirmwareVersion(int fwCode) { + return pms5003FirmwareVersionBase("PMS5003x", fwCode); +} + +String Measurements::pms5003TFirmwareVersion(int fwCode) { + return pms5003FirmwareVersionBase("PMS5003x", fwCode); +} + +String Measurements::pms5003FirmwareVersionBase(String prefix, int fwCode) { + return prefix + String("-") + String(fwCode); +} + +String Measurements::agValueTypeStr(AgValueType type) { + String str; + switch (type) { + case AgValueType::Temperature: + str = "Temperature"; + break; + case AgValueType::Humidity: + str = "Humidity"; + break; + case AgValueType::CO2: + str = "CO2"; + break; + case AgValueType::TVOC: + str = "TVOC"; + break; + case AgValueType::TVOCRaw: + str = "TVOCRaw"; + break; + case AgValueType::NOx: + str = "NOx"; + break; + case AgValueType::NOxRaw: + str = "NOxRaw"; + break; + case AgValueType::PM25: + str = "PM25"; + break; + case AgValueType::PM01: + str = "PM01"; + break; + case AgValueType::PM10: + str = "PM10"; + break; + case AgValueType::PM03: + str = "PM03"; + break; + default: + break; + }; + + return str; +} \ No newline at end of file diff --git a/src/AgValue.h b/src/AgValue.h index c39174c..56fc38a 100644 --- a/src/AgValue.h +++ b/src/AgValue.h @@ -71,6 +71,8 @@ public: PM03, }; + void init(); + /** * @brief update target type value with new value. * Each AgValueType has last raw value and last average that are calculated based on max number of @@ -148,9 +150,32 @@ private: IntegerValue _pm_10; IntegerValue _pm_03_pc; // particle count 0.3 + /** + * @brief Get PMS5003 firmware version string + * + * @param fwCode + * @return String + */ String pms5003FirmwareVersion(int fwCode); + /** + * @brief Get PMS5003T firmware version string + * + * @param fwCode + * @return String + */ String pms5003TFirmwareVersion(int fwCode); + /** + * @brief Get firmware version string + * + * @param prefix Prefix firmware string + * @param fwCode Version code + * @return string + */ String pms5003FirmwareVersionBase(String prefix, int fwCode); + + /** + * Convert AgValue Type to string representation of the value + */ String agValueTypeStr(AgValueType type); };