2 Commits

Author SHA1 Message Date
62c90f04c9 style: changed formatting 2026-01-02 13:21:46 +03:00
a9a6e4f3e9 fix: timer cb incorrect return 2025-12-15 18:34:52 +03:00
2 changed files with 10 additions and 6 deletions

View File

@@ -1 +1 @@
2.0.0 2.0.1

View File

@@ -40,11 +40,13 @@ esp_err_t zh_ac_dimmer_init(const zh_ac_dimmer_init_config_t *config) // -V2008
err = _zh_ac_dimmer_timer_init(); err = _zh_ac_dimmer_timer_init();
if (_is_prev_gpio_isr_handler == true) if (_is_prev_gpio_isr_handler == true)
{ {
ZH_ERROR_CHECK(err == ESP_OK, err, gpio_isr_handler_remove((gpio_num_t)config->zero_cross_gpio); gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "AC dimmer initialization failed. Timer initialization failed."); ZH_ERROR_CHECK(err == ESP_OK, err, gpio_isr_handler_remove((gpio_num_t)config->zero_cross_gpio); gpio_reset_pin((gpio_num_t)config->triac_gpio);
gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "AC dimmer initialization failed. Timer initialization failed.");
} }
else else
{ {
ZH_ERROR_CHECK(err == ESP_OK, err, gpio_isr_handler_remove((gpio_num_t)config->zero_cross_gpio); gpio_uninstall_isr_service(); gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "AC dimmer initialization failed. Timer initialization failed."); ZH_ERROR_CHECK(err == ESP_OK, err, gpio_isr_handler_remove((gpio_num_t)config->zero_cross_gpio); gpio_uninstall_isr_service(); gpio_reset_pin((gpio_num_t)config->triac_gpio);
gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "AC dimmer initialization failed. Timer initialization failed.");
} }
_init_config = *config; _init_config = *config;
_is_initialized = true; _is_initialized = true;
@@ -144,7 +146,8 @@ static esp_err_t _zh_ac_dimmer_gpio_init(const zh_ac_dimmer_init_config_t *confi
err = gpio_config(&zero_cross_gpio_config); err = gpio_config(&zero_cross_gpio_config);
ZH_ERROR_CHECK(err == ESP_OK, err, gpio_reset_pin((gpio_num_t)config->triac_gpio), "Zero cross GPIO configuration failed."); ZH_ERROR_CHECK(err == ESP_OK, err, gpio_reset_pin((gpio_num_t)config->triac_gpio), "Zero cross GPIO configuration failed.");
err = gpio_install_isr_service(ESP_INTR_FLAG_LOWMED); err = gpio_install_isr_service(ESP_INTR_FLAG_LOWMED);
ZH_ERROR_CHECK(err == ESP_OK || err == ESP_ERR_INVALID_STATE, err, gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "Failed install isr service.") ZH_ERROR_CHECK(err == ESP_OK || err == ESP_ERR_INVALID_STATE, err, gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio),
"Failed install isr service.")
if (err == ESP_ERR_INVALID_STATE) if (err == ESP_ERR_INVALID_STATE)
{ {
_is_prev_gpio_isr_handler = true; _is_prev_gpio_isr_handler = true;
@@ -156,7 +159,8 @@ static esp_err_t _zh_ac_dimmer_gpio_init(const zh_ac_dimmer_init_config_t *confi
} }
else else
{ {
ZH_ERROR_CHECK(err == ESP_OK, err, gpio_uninstall_isr_service(); gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio), "Failed add isr handler."); ZH_ERROR_CHECK(err == ESP_OK, err, gpio_uninstall_isr_service(); gpio_reset_pin((gpio_num_t)config->triac_gpio); gpio_reset_pin((gpio_num_t)config->zero_cross_gpio),
"Failed add isr handler.");
} }
return ESP_OK; return ESP_OK;
} }
@@ -212,5 +216,5 @@ static bool IRAM_ATTR _zh_ac_dimmer_timer_on_alarm_cb(gptimer_handle_t timer, co
gpio_set_level((gpio_num_t)_init_config.triac_gpio, 1); gpio_set_level((gpio_num_t)_init_config.triac_gpio, 1);
gptimer_stop(_dimmer_timer); gptimer_stop(_dimmer_timer);
gptimer_set_raw_count(_dimmer_timer, 0); gptimer_set_raw_count(_dimmer_timer, 0);
return true; return false;
} }