Add run limit feature for relay channels with NVS support
- Introduced configuration options for enabling run limits in Kconfig. - Added APIs to get and set run limits for individual relay channels. - Implemented run limit timer functionality to automatically stop channels. - Updated NVS handling to store and retrieve run limit values. - Enhanced documentation in README and code comments to reflect new feature. Closes #1080
This commit is contained in:
@@ -45,6 +45,26 @@ esp_err_t relay_chn_nvs_set_direction(uint8_t ch, relay_chn_direction_t directio
|
||||
*/
|
||||
esp_err_t relay_chn_nvs_get_direction(uint8_t ch, relay_chn_direction_t *direction);
|
||||
|
||||
#if RELAY_CHN_ENABLE_RUN_LIMIT == 1
|
||||
/**
|
||||
* @brief Store relay channel run limit in NVS.
|
||||
*
|
||||
* @param[in] ch Channel number.
|
||||
* @param[in] direction Run limit value to store.
|
||||
* @return ESP_OK on success, error code otherwise.
|
||||
*/
|
||||
esp_err_t relay_chn_nvs_set_run_limit(uint8_t ch, uint16_t time_sec);
|
||||
|
||||
/**
|
||||
* @brief Retrieve relay channel run limit from NVS.
|
||||
*
|
||||
* @param[in] ch Channel number.
|
||||
* @param[out] direction Pointer to store retrieved run limit value.
|
||||
* @return ESP_OK on success, error code otherwise.
|
||||
*/
|
||||
esp_err_t relay_chn_nvs_get_run_limit(uint8_t ch, uint16_t *time_sec);
|
||||
#endif // RELAY_CHN_ENABLE_RUN_LIMIT == 1
|
||||
|
||||
#ifdef RELAY_CHN_ENABLE_TILTING
|
||||
/**
|
||||
* @brief Store tilt sensitivity in NVS.
|
||||
|
||||
Reference in New Issue
Block a user