diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..e0f5ddc --- /dev/null +++ b/.clang-format @@ -0,0 +1,137 @@ +Language: Cpp +AccessModifierOffset: -1 +AlignAfterOpenBracket: Align +AlignConsecutiveAssignments: false +AlignConsecutiveDeclarations: false +AlignEscapedNewlines: DontAlign +AlignOperands: true +AlignTrailingComments: true +AllowAllParametersOfDeclarationOnNextLine: true +AllowShortBlocksOnASingleLine: false +AllowShortCaseLabelsOnASingleLine: false +AllowShortFunctionsOnASingleLine: All +AllowShortIfStatementsOnASingleLine: false +AllowShortLoopsOnASingleLine: false +AlwaysBreakAfterReturnType: None +AlwaysBreakBeforeMultilineStrings: false +AlwaysBreakTemplateDeclarations: MultiLine +BinPackArguments: true +BinPackParameters: true +BraceWrapping: + AfterClass: false + AfterControlStatement: false + AfterEnum: false + AfterFunction: false + AfterNamespace: false + AfterObjCDeclaration: false + AfterStruct: false + AfterUnion: false + AfterExternBlock: false + BeforeCatch: false + BeforeElse: false + IndentBraces: false + SplitEmptyFunction: true + SplitEmptyRecord: true + SplitEmptyNamespace: true +BreakBeforeBinaryOperators: None +BreakBeforeBraces: Attach +BreakBeforeInheritanceComma: false +BreakInheritanceList: BeforeColon +BreakBeforeTernaryOperators: true +BreakConstructorInitializersBeforeComma: false +BreakConstructorInitializers: BeforeColon +BreakAfterJavaFieldAnnotations: false +BreakStringLiterals: true +ColumnLimit: 120 +CommentPragmas: "^ IWYU pragma:" +CompactNamespaces: false +ConstructorInitializerAllOnOneLineOrOnePerLine: true +ConstructorInitializerIndentWidth: 4 +ContinuationIndentWidth: 4 +Cpp11BracedListStyle: true +DerivePointerAlignment: true +DisableFormat: false +ExperimentalAutoDetectBinPacking: false +FixNamespaceComments: true +ForEachMacros: + - foreach + - Q_FOREACH + - BOOST_FOREACH +IncludeBlocks: Preserve +IncludeCategories: + - Regex: '^' + Priority: 2 + - Regex: '^<.*\.h>' + Priority: 1 + - Regex: "^<.*" + Priority: 2 + - Regex: ".*" + Priority: 3 +IncludeIsMainRegex: "([-_](test|unittest))?$" +IndentCaseLabels: true +IndentPPDirectives: None +IndentWidth: 2 +IndentWrappedFunctionNames: false +KeepEmptyLinesAtTheStartOfBlocks: false +MacroBlockBegin: "" +MacroBlockEnd: "" +MaxEmptyLinesToKeep: 1 +NamespaceIndentation: None +PenaltyBreakAssignment: 2 +PenaltyBreakBeforeFirstCallParameter: 1 +PenaltyBreakComment: 300 +PenaltyBreakFirstLessLess: 120 +PenaltyBreakString: 1000 +PenaltyBreakTemplateDeclaration: 10 +PenaltyExcessCharacter: 1000000 +PenaltyReturnTypeOnItsOwnLine: 2000 +PointerAlignment: Right +RawStringFormats: + - Language: Cpp + Delimiters: + - cc + - CC + - cpp + - Cpp + - CPP + - "c++" + - "C++" + CanonicalDelimiter: "" + BasedOnStyle: google + - Language: TextProto + Delimiters: + - pb + - PB + - proto + - PROTO + EnclosingFunctions: + - EqualsProto + - EquivToProto + - PARSE_PARTIAL_TEXT_PROTO + - PARSE_TEST_PROTO + - PARSE_TEXT_PROTO + - ParseTextOrDie + - ParseTextProtoOrDie + CanonicalDelimiter: "" + BasedOnStyle: google +ReflowComments: true +SortIncludes: false +SortUsingDeclarations: false +SpaceAfterCStyleCast: true +SpaceAfterTemplateKeyword: false +SpaceBeforeAssignmentOperators: true +SpaceBeforeCpp11BracedList: false +SpaceBeforeCtorInitializerColon: true +SpaceBeforeInheritanceColon: true +SpaceBeforeParens: ControlStatements +SpaceBeforeRangeBasedForLoopColon: true +SpaceInEmptyParentheses: false +SpacesBeforeTrailingComments: 2 +SpacesInAngles: false +SpacesInContainerLiterals: false +SpacesInCStyleCastParentheses: false +SpacesInParentheses: false +SpacesInSquareBrackets: false +Standard: Auto +TabWidth: 2 +UseTab: Never diff --git a/custom_components/victron/victron.cpp b/custom_components/victron/victron.cpp index 2019696..9025fe2 100644 --- a/custom_components/victron/victron.cpp +++ b/custom_components/victron/victron.cpp @@ -73,141 +73,259 @@ void VictronComponent::loop() { } } -static const __FlashStringHelper* charger_status_text(int value) { +static const __FlashStringHelper *charger_status_text(int value) { switch (value) { - case 0: return F("Off"); - case 2: return F("Fault"); - case 3: return F("Bulk"); - case 4: return F("Absorption"); - case 5: return F("Float"); - case 7: return F("Equalize (manual)"); - case 245: return F("Starting-up"); - case 247: return F("Auto equalize / Recondition"); - case 252: return F("External control"); - default: return F("Unknown"); + case 0: + return F("Off"); + case 2: + return F("Fault"); + case 3: + return F("Bulk"); + case 4: + return F("Absorption"); + case 5: + return F("Float"); + case 7: + return F("Equalize (manual)"); + case 245: + return F("Starting-up"); + case 247: + return F("Auto equalize / Recondition"); + case 252: + return F("External control"); + default: + return F("Unknown"); } } -static const __FlashStringHelper* error_code_text(int value) { +static const __FlashStringHelper *error_code_text(int value) { switch (value) { - case 0: return F("No error"); - case 2: return F("Battery voltage too high"); - case 17: return F("Charger temperature too high"); - case 18: return F("Charger over current"); - case 19: return F("Charger current reversed"); - case 20: return F("Bulk time limit exceeded"); - case 21: return F("Current sensor issue"); - case 26: return F("Terminals overheated"); - case 28: return F("Converter issue"); - case 33: return F("Input voltage too high (solar panel)"); - case 34: return F("Input current too high (solar panel)"); - case 38: return F("Input shutdown (excessive battery voltage)"); - case 39: return F("Input shutdown (due to current flow during off mode)"); - case 65: return F("Lost communication with one of devices"); - case 66: return F("Synchronised charging device configuration issue"); - case 67: return F("BMS connection lost"); - case 68: return F("Network misconfigured"); - case 116: return F("Factory calibration data lost"); - case 117: return F("Invalid/incompatible firmware"); - case 119: return F("User settings invalid"); - default: return F("Unknown"); + case 0: + return F("No error"); + case 2: + return F("Battery voltage too high"); + case 17: + return F("Charger temperature too high"); + case 18: + return F("Charger over current"); + case 19: + return F("Charger current reversed"); + case 20: + return F("Bulk time limit exceeded"); + case 21: + return F("Current sensor issue"); + case 26: + return F("Terminals overheated"); + case 28: + return F("Converter issue"); + case 33: + return F("Input voltage too high (solar panel)"); + case 34: + return F("Input current too high (solar panel)"); + case 38: + return F("Input shutdown (excessive battery voltage)"); + case 39: + return F("Input shutdown (due to current flow during off mode)"); + case 65: + return F("Lost communication with one of devices"); + case 66: + return F("Synchronised charging device configuration issue"); + case 67: + return F("BMS connection lost"); + case 68: + return F("Network misconfigured"); + case 116: + return F("Factory calibration data lost"); + case 117: + return F("Invalid/incompatible firmware"); + case 119: + return F("User settings invalid"); + default: + return F("Unknown"); } } static const std::string tracker_op_text(int value) { switch (value) { - case 0: return "Off"; - case 1: return "Limited"; - case 2: return "Active"; - default: return "Unknown"; + case 0: + return "Off"; + case 1: + return "Limited"; + case 2: + return "Active"; + default: + return "Unknown"; } } -static const __FlashStringHelper* pid_text(int value) { +static const __FlashStringHelper *pid_text(int value) { switch (value) { - case 0x203: return F("BMV-700"); - case 0x204: return F("BMV-702"); - case 0x205: return F("BMV-700H"); - case 0xA389: return F("SmartShunt"); - case 0xA381: return F("BMV-712 Smart"); - case 0xA04C: return F("BlueSolar MPPT 75/10"); - case 0x300: return F("BlueSolar MPPT 70/15"); - case 0xA042: return F("BlueSolar MPPT 75/15"); - case 0xA043: return F("BlueSolar MPPT 100/15"); - case 0xA044: return F("BlueSolar MPPT 100/30 rev1"); - case 0xA04A: return F("BlueSolar MPPT 100/30 rev2"); - case 0xA041: return F("BlueSolar MPPT 150/35 rev1"); - case 0xA04B: return F("BlueSolar MPPT 150/35 rev2"); - case 0xA04D: return F("BlueSolar MPPT 150/45"); - case 0xA040: return F("BlueSolar MPPT 75/50"); - case 0xA045: return F("BlueSolar MPPT 100/50 rev1"); - case 0xA049: return F("BlueSolar MPPT 100/50 rev2"); - case 0xA04E: return F("BlueSolar MPPT 150/60"); - case 0xA046: return F("BlueSolar MPPT 150/70"); - case 0xA04F: return F("BlueSolar MPPT 150/85"); - case 0xA047: return F("BlueSolar MPPT 150/100"); - case 0xA050: return F("SmartSolar MPPT 250/100"); - case 0xA051: return F("SmartSolar MPPT 150/100"); - case 0xA052: return F("SmartSolar MPPT 150/85"); - case 0xA053: return F("SmartSolar MPPT 75/15"); - case 0xA054: return F("SmartSolar MPPT 75/10"); - case 0xA055: return F("SmartSolar MPPT 100/15"); - case 0xA056: return F("SmartSolar MPPT 100/30"); - case 0xA057: return F("SmartSolar MPPT 100/50"); - case 0xA058: return F("SmartSolar MPPT 150/35"); - case 0xA059: return F("SmartSolar MPPT 150/100 rev2"); - case 0xA05A: return F("SmartSolar MPPT 150/85 rev2"); - case 0xA05B: return F("SmartSolar MPPT 250/70"); - case 0xA05C: return F("SmartSolar MPPT 250/85"); - case 0xA05D: return F("SmartSolar MPPT 250/60"); - case 0xA05E: return F("SmartSolar MPPT 250/45"); - case 0xA05F: return F("SmartSolar MPPT 100/20"); - case 0xA060: return F("SmartSolar MPPT 100/20 48V"); - case 0xA061: return F("SmartSolar MPPT 150/45"); - case 0xA062: return F("SmartSolar MPPT 150/60"); - case 0xA063: return F("SmartSolar MPPT 150/70"); - case 0xA064: return F("SmartSolar MPPT 250/85 rev2"); - case 0xA065: return F("SmartSolar MPPT 250/100 rev2"); - case 0xA201: return F("Phoenix Inverter 12V 250VA 230V"); - case 0xA202: return F("Phoenix Inverter 24V 250VA 230V"); - case 0xA204: return F("Phoenix Inverter 48V 250VA 230V"); - case 0xA211: return F("Phoenix Inverter 12V 375VA 230V"); - case 0xA212: return F("Phoenix Inverter 24V 375VA 230V"); - case 0xA214: return F("Phoenix Inverter 48V 375VA 230V"); - case 0xA221: return F("Phoenix Inverter 12V 500VA 230V"); - case 0xA222: return F("Phoenix Inverter 24V 500VA 230V"); - case 0xA224: return F("Phoenix Inverter 48V 500VA 230V"); - case 0xA231: return F("Phoenix Inverter 12V 250VA 230V"); - case 0xA232: return F("Phoenix Inverter 24V 250VA 230V"); - case 0xA234: return F("Phoenix Inverter 48V 250VA 230V"); - case 0xA239: return F("Phoenix Inverter 12V 250VA 120V"); - case 0xA23A: return F("Phoenix Inverter 24V 250VA 120V"); - case 0xA23C: return F("Phoenix Inverter 48V 250VA 120V"); - case 0xA241: return F("Phoenix Inverter 12V 375VA 230V"); - case 0xA242: return F("Phoenix Inverter 24V 375VA 230V"); - case 0xA244: return F("Phoenix Inverter 48V 375VA 230V"); - case 0xA249: return F("Phoenix Inverter 12V 375VA 120V"); - case 0xA24A: return F("Phoenix Inverter 24V 375VA 120V"); - case 0xA24C: return F("Phoenix Inverter 48V 375VA 120V"); - case 0xA251: return F("Phoenix Inverter 12V 500VA 230V"); - case 0xA252: return F("Phoenix Inverter 24V 500VA 230V"); - case 0xA254: return F("Phoenix Inverter 48V 500VA 230V"); - case 0xA259: return F("Phoenix Inverter 12V 500VA 120V"); - case 0xA25A: return F("Phoenix Inverter 24V 500VA 120V"); - case 0xA25C: return F("Phoenix Inverter 48V 500VA 120V"); - case 0xA261: return F("Phoenix Inverter 12V 800VA 230V"); - case 0xA262: return F("Phoenix Inverter 24V 800VA 230V"); - case 0xA264: return F("Phoenix Inverter 48V 800VA 230V"); - case 0xA269: return F("Phoenix Inverter 12V 800VA 120V"); - case 0xA26A: return F("Phoenix Inverter 24V 800VA 120V"); - case 0xA26C: return F("Phoenix Inverter 48V 800VA 120V"); - case 0xA271: return F("Phoenix Inverter 12V 1200VA 230V"); - case 0xA272: return F("Phoenix Inverter 24V 1200VA 230V"); - case 0xA274: return F("Phoenix Inverter 48V 1200VA 230V"); - case 0xA279: return F("Phoenix Inverter 12V 1200VA 120V"); - case 0xA27A: return F("Phoenix Inverter 24V 1200VA 120V"); - case 0xA27C: return F("Phoenix Inverter 48V 1200VA 120V"); - default: return nullptr; + case 0x203: + return F("BMV-700"); + case 0x204: + return F("BMV-702"); + case 0x205: + return F("BMV-700H"); + case 0xA389: + return F("SmartShunt"); + case 0xA381: + return F("BMV-712 Smart"); + case 0xA04C: + return F("BlueSolar MPPT 75/10"); + case 0x300: + return F("BlueSolar MPPT 70/15"); + case 0xA042: + return F("BlueSolar MPPT 75/15"); + case 0xA043: + return F("BlueSolar MPPT 100/15"); + case 0xA044: + return F("BlueSolar MPPT 100/30 rev1"); + case 0xA04A: + return F("BlueSolar MPPT 100/30 rev2"); + case 0xA041: + return F("BlueSolar MPPT 150/35 rev1"); + case 0xA04B: + return F("BlueSolar MPPT 150/35 rev2"); + case 0xA04D: + return F("BlueSolar MPPT 150/45"); + case 0xA040: + return F("BlueSolar MPPT 75/50"); + case 0xA045: + return F("BlueSolar MPPT 100/50 rev1"); + case 0xA049: + return F("BlueSolar MPPT 100/50 rev2"); + case 0xA04E: + return F("BlueSolar MPPT 150/60"); + case 0xA046: + return F("BlueSolar MPPT 150/70"); + case 0xA04F: + return F("BlueSolar MPPT 150/85"); + case 0xA047: + return F("BlueSolar MPPT 150/100"); + case 0xA050: + return F("SmartSolar MPPT 250/100"); + case 0xA051: + return F("SmartSolar MPPT 150/100"); + case 0xA052: + return F("SmartSolar MPPT 150/85"); + case 0xA053: + return F("SmartSolar MPPT 75/15"); + case 0xA054: + return F("SmartSolar MPPT 75/10"); + case 0xA055: + return F("SmartSolar MPPT 100/15"); + case 0xA056: + return F("SmartSolar MPPT 100/30"); + case 0xA057: + return F("SmartSolar MPPT 100/50"); + case 0xA058: + return F("SmartSolar MPPT 150/35"); + case 0xA059: + return F("SmartSolar MPPT 150/100 rev2"); + case 0xA05A: + return F("SmartSolar MPPT 150/85 rev2"); + case 0xA05B: + return F("SmartSolar MPPT 250/70"); + case 0xA05C: + return F("SmartSolar MPPT 250/85"); + case 0xA05D: + return F("SmartSolar MPPT 250/60"); + case 0xA05E: + return F("SmartSolar MPPT 250/45"); + case 0xA05F: + return F("SmartSolar MPPT 100/20"); + case 0xA060: + return F("SmartSolar MPPT 100/20 48V"); + case 0xA061: + return F("SmartSolar MPPT 150/45"); + case 0xA062: + return F("SmartSolar MPPT 150/60"); + case 0xA063: + return F("SmartSolar MPPT 150/70"); + case 0xA064: + return F("SmartSolar MPPT 250/85 rev2"); + case 0xA065: + return F("SmartSolar MPPT 250/100 rev2"); + case 0xA201: + return F("Phoenix Inverter 12V 250VA 230V"); + case 0xA202: + return F("Phoenix Inverter 24V 250VA 230V"); + case 0xA204: + return F("Phoenix Inverter 48V 250VA 230V"); + case 0xA211: + return F("Phoenix Inverter 12V 375VA 230V"); + case 0xA212: + return F("Phoenix Inverter 24V 375VA 230V"); + case 0xA214: + return F("Phoenix Inverter 48V 375VA 230V"); + case 0xA221: + return F("Phoenix Inverter 12V 500VA 230V"); + case 0xA222: + return F("Phoenix Inverter 24V 500VA 230V"); + case 0xA224: + return F("Phoenix Inverter 48V 500VA 230V"); + case 0xA231: + return F("Phoenix Inverter 12V 250VA 230V"); + case 0xA232: + return F("Phoenix Inverter 24V 250VA 230V"); + case 0xA234: + return F("Phoenix Inverter 48V 250VA 230V"); + case 0xA239: + return F("Phoenix Inverter 12V 250VA 120V"); + case 0xA23A: + return F("Phoenix Inverter 24V 250VA 120V"); + case 0xA23C: + return F("Phoenix Inverter 48V 250VA 120V"); + case 0xA241: + return F("Phoenix Inverter 12V 375VA 230V"); + case 0xA242: + return F("Phoenix Inverter 24V 375VA 230V"); + case 0xA244: + return F("Phoenix Inverter 48V 375VA 230V"); + case 0xA249: + return F("Phoenix Inverter 12V 375VA 120V"); + case 0xA24A: + return F("Phoenix Inverter 24V 375VA 120V"); + case 0xA24C: + return F("Phoenix Inverter 48V 375VA 120V"); + case 0xA251: + return F("Phoenix Inverter 12V 500VA 230V"); + case 0xA252: + return F("Phoenix Inverter 24V 500VA 230V"); + case 0xA254: + return F("Phoenix Inverter 48V 500VA 230V"); + case 0xA259: + return F("Phoenix Inverter 12V 500VA 120V"); + case 0xA25A: + return F("Phoenix Inverter 24V 500VA 120V"); + case 0xA25C: + return F("Phoenix Inverter 48V 500VA 120V"); + case 0xA261: + return F("Phoenix Inverter 12V 800VA 230V"); + case 0xA262: + return F("Phoenix Inverter 24V 800VA 230V"); + case 0xA264: + return F("Phoenix Inverter 48V 800VA 230V"); + case 0xA269: + return F("Phoenix Inverter 12V 800VA 120V"); + case 0xA26A: + return F("Phoenix Inverter 24V 800VA 120V"); + case 0xA26C: + return F("Phoenix Inverter 48V 800VA 120V"); + case 0xA271: + return F("Phoenix Inverter 12V 1200VA 230V"); + case 0xA272: + return F("Phoenix Inverter 24V 1200VA 230V"); + case 0xA274: + return F("Phoenix Inverter 48V 1200VA 230V"); + case 0xA279: + return F("Phoenix Inverter 12V 1200VA 120V"); + case 0xA27A: + return F("Phoenix Inverter 24V 1200VA 120V"); + case 0xA27C: + return F("Phoenix Inverter 48V 1200VA 120V"); + default: + return nullptr; } } @@ -250,10 +368,10 @@ void VictronComponent::handle_value_() { battery_voltage_sensor_->publish_state(atoi(value_.c_str()) / 1000.0); } else if (label_ == "I") { if (battery_current_sensor_ != nullptr) - battery_current_sensor_->publish_state(atoi(value_.c_str()) / 1000.0); + battery_current_sensor_->publish_state(atoi(value_.c_str()) / 1000.0); } else if (label_ == "IL") { if (load_current_sensor_ != nullptr) - load_current_sensor_->publish_state(atoi(value_.c_str()) / 1000.0); + load_current_sensor_->publish_state(atoi(value_.c_str()) / 1000.0); } else if (label_ == "HSDS") { if (day_number_sensor_ != nullptr) day_number_sensor_->publish_state(atoi(value_.c_str())); @@ -279,19 +397,19 @@ void VictronComponent::handle_value_() { if ((fw_version_sensor_ != nullptr) && !fw_version_sensor_->has_state()) fw_version_sensor_->publish_state(value_.insert(value_.size() - 2, ".")); } else if (label_ == "PID") { - //value = atoi(value_.c_str()); + // value = atoi(value_.c_str()); - //ESP_LOGD(TAG, "received PID: '%s'", value_.c_str()); + // ESP_LOGD(TAG, "received PID: '%s'", value_.c_str()); value = strtol(value_.c_str(), NULL, 0); - //ESP_LOGD(TAG, "received PID: '%04x'", value); + // ESP_LOGD(TAG, "received PID: '%04x'", value); if ((pid_sensor_ != nullptr) && !pid_sensor_->has_state()) { const __FlashStringHelper *flash = pid_text(value); if (flash != nullptr) { pid_sensor_->publish_state(flash_to_string(flash)); - }// else { - // char s[30]; - // snprintf(s, 30, "Unknown device (%04x)", value); - //pid_sensor_->publish_state(s); + } // else { + // char s[30]; + // snprintf(s, 30, "Unknown device (%04x)", value); + // pid_sensor_->publish_state(s); //} } } diff --git a/custom_components/victron/victron.h b/custom_components/victron/victron.h index 3bf390f..725041b 100644 --- a/custom_components/victron/victron.h +++ b/custom_components/victron/victron.h @@ -10,23 +10,41 @@ namespace victron { class VictronComponent : public uart::UARTDevice, public Component { public: - void set_max_power_yesterday_sensor(sensor::Sensor *max_power_yesterday_sensor) { max_power_yesterday_sensor_ = max_power_yesterday_sensor; } - void set_max_power_today_sensor(sensor::Sensor *max_power_today_sensor) { max_power_today_sensor_ = max_power_today_sensor; } + void set_max_power_yesterday_sensor(sensor::Sensor *max_power_yesterday_sensor) { + max_power_yesterday_sensor_ = max_power_yesterday_sensor; + } + void set_max_power_today_sensor(sensor::Sensor *max_power_today_sensor) { + max_power_today_sensor_ = max_power_today_sensor; + } void set_yield_total_sensor(sensor::Sensor *yield_total_sensor) { yield_total_sensor_ = yield_total_sensor; } - void set_yield_yesterday_sensor(sensor::Sensor *yield_yesterday_sensor) { yield_yesterday_sensor_ = yield_yesterday_sensor; } + void set_yield_yesterday_sensor(sensor::Sensor *yield_yesterday_sensor) { + yield_yesterday_sensor_ = yield_yesterday_sensor; + } void set_yield_today_sensor(sensor::Sensor *yield_today_sensor) { yield_today_sensor_ = yield_today_sensor; } void set_panel_voltage_sensor(sensor::Sensor *panel_voltage_sensor) { panel_voltage_sensor_ = panel_voltage_sensor; } void set_panel_power_sensor(sensor::Sensor *panel_power_sensor) { panel_power_sensor_ = panel_power_sensor; } - void set_battery_voltage_sensor(sensor::Sensor *battery_voltage_sensor) { battery_voltage_sensor_ = battery_voltage_sensor; } - void set_battery_current_sensor(sensor::Sensor *battery_current_sensor) { battery_current_sensor_ = battery_current_sensor; } + void set_battery_voltage_sensor(sensor::Sensor *battery_voltage_sensor) { + battery_voltage_sensor_ = battery_voltage_sensor; + } + void set_battery_current_sensor(sensor::Sensor *battery_current_sensor) { + battery_current_sensor_ = battery_current_sensor; + } void set_load_current_sensor(sensor::Sensor *load_current_sensor) { load_current_sensor_ = load_current_sensor; } void set_day_number_sensor(sensor::Sensor *day_number_sensor) { day_number_sensor_ = day_number_sensor; } - void set_charger_status_sensor(sensor::Sensor *charger_status_sensor) { charger_status_sensor_ = charger_status_sensor; } + void set_charger_status_sensor(sensor::Sensor *charger_status_sensor) { + charger_status_sensor_ = charger_status_sensor; + } void set_error_code_sensor(sensor::Sensor *error_code_sensor) { error_code_sensor_ = error_code_sensor; } - void set_tracker_operation_sensor(sensor::Sensor *tracker_operation_sensor) { tracker_operation_sensor_ = tracker_operation_sensor; } - void set_charger_text_sensor(text_sensor::TextSensor *charger_text_sensor) { charger_text_sensor_ = charger_text_sensor; } + void set_tracker_operation_sensor(sensor::Sensor *tracker_operation_sensor) { + tracker_operation_sensor_ = tracker_operation_sensor; + } + void set_charger_text_sensor(text_sensor::TextSensor *charger_text_sensor) { + charger_text_sensor_ = charger_text_sensor; + } void set_error_text_sensor(text_sensor::TextSensor *error_text_sensor) { error_text_sensor_ = error_text_sensor; } - void set_tracker_text_sensor(text_sensor::TextSensor *tracker_text_sensor) { tracker_text_sensor_ = tracker_text_sensor; } + void set_tracker_text_sensor(text_sensor::TextSensor *tracker_text_sensor) { + tracker_text_sensor_ = tracker_text_sensor; + } void set_fw_version_sensor(text_sensor::TextSensor *fw_version_sensor) { fw_version_sensor_ = fw_version_sensor; } void set_pid_sensor(text_sensor::TextSensor *pid_sensor) { pid_sensor_ = pid_sensor; }