diff --git a/esphome/components/emporia_vue_utility/emporia_vue_utility.cpp b/esphome/components/emporia_vue_utility/emporia_vue_utility.cpp index d4c626f..7d7c1bc 100644 --- a/esphome/components/emporia_vue_utility/emporia_vue_utility.cpp +++ b/esphome/components/emporia_vue_utility/emporia_vue_utility.cpp @@ -7,8 +7,8 @@ namespace emporia_vue_utility { void EmporiaVueUtility::setup() { #if USE_LED_PINS - pinMode(LED_PIN_LINK, OUTPUT); - pinMode(LED_PIN_WIFI, OUTPUT); + set_pin_to_output(LED_PIN_LINK); + set_pin_to_output(LED_PIN_WIFI); #endif led_link(false); led_wifi(false); diff --git a/esphome/components/emporia_vue_utility/emporia_vue_utility.h b/esphome/components/emporia_vue_utility/emporia_vue_utility.h index 9d16d0c..a2cef51 100644 --- a/esphome/components/emporia_vue_utility/emporia_vue_utility.h +++ b/esphome/components/emporia_vue_utility/emporia_vue_utility.h @@ -794,5 +794,10 @@ class EmporiaVueUtility : public PollingComponent, public uart::UARTDevice { bool ready_to_read_meter_ = false; }; +static inline void set_pin_to_output(gpio_num_t pin) { + gpio_reset_pin(pin); + gpio_set_direction(pin, GPIO_MODE_OUTPUT); +} + } // namespace emporia_vue_utility } // namespace esphome