mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-30 22:53:59 +00:00 
			
		
		
		
	Merge branch 'dev' into lwip_locking_fix
This commit is contained in:
		| @@ -11,6 +11,15 @@ namespace esphome { | ||||
| namespace api { | ||||
|  | ||||
| template<typename... X> class TemplatableStringValue : public TemplatableValue<std::string, X...> { | ||||
|  private: | ||||
|   // Helper to convert value to string - handles the case where value is already a string | ||||
|   template<typename T> static std::string value_to_string(T &&val) { return to_string(std::forward<T>(val)); } | ||||
|  | ||||
|   // Overloads for string types - needed because std::to_string doesn't support them | ||||
|   static std::string value_to_string(const char *val) { return std::string(val); }  // For lambdas returning .c_str() | ||||
|   static std::string value_to_string(const std::string &val) { return val; } | ||||
|   static std::string value_to_string(std::string &&val) { return std::move(val); } | ||||
|  | ||||
|  public: | ||||
|   TemplatableStringValue() : TemplatableValue<std::string, X...>() {} | ||||
|  | ||||
| @@ -19,7 +28,7 @@ template<typename... X> class TemplatableStringValue : public TemplatableValue<s | ||||
|  | ||||
|   template<typename F, enable_if_t<is_invocable<F, X...>::value, int> = 0> | ||||
|   TemplatableStringValue(F f) | ||||
|       : TemplatableValue<std::string, X...>([f](X... x) -> std::string { return to_string(f(x...)); }) {} | ||||
|       : TemplatableValue<std::string, X...>([f](X... x) -> std::string { return value_to_string(f(x...)); }) {} | ||||
| }; | ||||
|  | ||||
| template<typename... Ts> class TemplatableKeyValuePair { | ||||
|   | ||||
| @@ -309,19 +309,19 @@ def _format_framework_espidf_version( | ||||
|  | ||||
| # The default/recommended arduino framework version | ||||
| #  - https://github.com/espressif/arduino-esp32/releases | ||||
| RECOMMENDED_ARDUINO_FRAMEWORK_VERSION = cv.Version(3, 2, 1) | ||||
| RECOMMENDED_ARDUINO_FRAMEWORK_VERSION = cv.Version(3, 1, 3) | ||||
| # The platform-espressif32 version to use for arduino frameworks | ||||
| #  - https://github.com/pioarduino/platform-espressif32/releases | ||||
| ARDUINO_PLATFORM_VERSION = cv.Version(54, 3, 21) | ||||
| ARDUINO_PLATFORM_VERSION = cv.Version(53, 3, 13) | ||||
|  | ||||
| # The default/recommended esp-idf framework version | ||||
| #  - https://github.com/espressif/esp-idf/releases | ||||
| #  - https://api.registry.platformio.org/v3/packages/platformio/tool/framework-espidf | ||||
| RECOMMENDED_ESP_IDF_FRAMEWORK_VERSION = cv.Version(5, 4, 2) | ||||
| RECOMMENDED_ESP_IDF_FRAMEWORK_VERSION = cv.Version(5, 3, 2) | ||||
| # The platformio/espressif32 version to use for esp-idf frameworks | ||||
| #  - https://github.com/platformio/platform-espressif32/releases | ||||
| #  - https://api.registry.platformio.org/v3/packages/platformio/platform/espressif32 | ||||
| ESP_IDF_PLATFORM_VERSION = cv.Version(54, 3, 21) | ||||
| ESP_IDF_PLATFORM_VERSION = cv.Version(53, 3, 13) | ||||
|  | ||||
| # List based on https://registry.platformio.org/tools/platformio/framework-espidf/versions | ||||
| SUPPORTED_PLATFORMIO_ESP_IDF_5X = [ | ||||
| @@ -356,8 +356,8 @@ SUPPORTED_PIOARDUINO_ESP_IDF_5X = [ | ||||
| def _arduino_check_versions(value): | ||||
|     value = value.copy() | ||||
|     lookups = { | ||||
|         "dev": (cv.Version(3, 2, 1), "https://github.com/espressif/arduino-esp32.git"), | ||||
|         "latest": (cv.Version(3, 2, 1), None), | ||||
|         "dev": (cv.Version(3, 1, 3), "https://github.com/espressif/arduino-esp32.git"), | ||||
|         "latest": (cv.Version(3, 1, 3), None), | ||||
|         "recommended": (RECOMMENDED_ARDUINO_FRAMEWORK_VERSION, None), | ||||
|     } | ||||
|  | ||||
| @@ -395,8 +395,8 @@ def _arduino_check_versions(value): | ||||
| def _esp_idf_check_versions(value): | ||||
|     value = value.copy() | ||||
|     lookups = { | ||||
|         "dev": (cv.Version(5, 4, 2), "https://github.com/espressif/esp-idf.git"), | ||||
|         "latest": (cv.Version(5, 2, 2), None), | ||||
|         "dev": (cv.Version(5, 3, 2), "https://github.com/espressif/esp-idf.git"), | ||||
|         "latest": (cv.Version(5, 3, 2), None), | ||||
|         "recommended": (RECOMMENDED_ESP_IDF_FRAMEWORK_VERSION, None), | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -25,9 +25,6 @@ | ||||
| #include "driver/gpio.h" | ||||
| #include "esp_rom_gpio.h" | ||||
| #include "esp_rom_sys.h" | ||||
| #include "esp_idf_version.h" | ||||
|  | ||||
| #if defined(USE_ARDUINO) || ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 4, 2) | ||||
|  | ||||
| static const char *TAG = "jl1101"; | ||||
| #define PHY_CHECK(a, str, goto_tag, ...) \ | ||||
| @@ -339,6 +336,4 @@ esp_eth_phy_t *esp_eth_phy_new_jl1101(const eth_phy_config_t *config) { | ||||
| err: | ||||
|   return NULL; | ||||
| } | ||||
|  | ||||
| #endif /* USE_ARDUINO */ | ||||
| #endif /* USE_ESP32 */ | ||||
|   | ||||
| @@ -11,7 +11,6 @@ | ||||
| #include "esp_eth_mac.h" | ||||
| #include "esp_netif.h" | ||||
| #include "esp_mac.h" | ||||
| #include "esp_idf_version.h" | ||||
|  | ||||
| namespace esphome { | ||||
| namespace ethernet { | ||||
| @@ -154,10 +153,7 @@ class EthernetComponent : public Component { | ||||
|  | ||||
| // NOLINTNEXTLINE(cppcoreguidelines-avoid-non-const-global-variables) | ||||
| extern EthernetComponent *global_eth_component; | ||||
|  | ||||
| #if defined(USE_ARDUINO) || ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 4, 2) | ||||
| extern "C" esp_eth_phy_t *esp_eth_phy_new_jl1101(const eth_phy_config_t *config); | ||||
| #endif | ||||
|  | ||||
| }  // namespace ethernet | ||||
| }  // namespace esphome | ||||
|   | ||||
| @@ -3,6 +3,7 @@ import esphome.codegen as cg | ||||
| from esphome.components import i2c, sensirion_common, sensor | ||||
| import esphome.config_validation as cv | ||||
| from esphome.const import ( | ||||
|     CONF_ALTITUDE_COMPENSATION, | ||||
|     CONF_AMBIENT_PRESSURE_COMPENSATION, | ||||
|     CONF_AUTOMATIC_SELF_CALIBRATION, | ||||
|     CONF_CO2, | ||||
| @@ -35,8 +36,6 @@ ForceRecalibrationWithReference = scd30_ns.class_( | ||||
|     "ForceRecalibrationWithReference", automation.Action | ||||
| ) | ||||
|  | ||||
| CONF_ALTITUDE_COMPENSATION = "altitude_compensation" | ||||
|  | ||||
| CONFIG_SCHEMA = ( | ||||
|     cv.Schema( | ||||
|         { | ||||
|   | ||||
| @@ -4,6 +4,7 @@ import esphome.codegen as cg | ||||
| from esphome.components import i2c, sensirion_common, sensor | ||||
| import esphome.config_validation as cv | ||||
| from esphome.const import ( | ||||
|     CONF_ALTITUDE_COMPENSATION, | ||||
|     CONF_AMBIENT_PRESSURE_COMPENSATION, | ||||
|     CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE, | ||||
|     CONF_AUTOMATIC_SELF_CALIBRATION, | ||||
| @@ -49,9 +50,6 @@ PerformForcedCalibrationAction = scd4x_ns.class_( | ||||
| ) | ||||
| FactoryResetAction = scd4x_ns.class_("FactoryResetAction", automation.Action) | ||||
|  | ||||
|  | ||||
| CONF_ALTITUDE_COMPENSATION = "altitude_compensation" | ||||
|  | ||||
| CONFIG_SCHEMA = ( | ||||
|     cv.Schema( | ||||
|         { | ||||
|   | ||||
| @@ -96,6 +96,7 @@ CONF_ALL = "all" | ||||
| CONF_ALLOW_OTHER_USES = "allow_other_uses" | ||||
| CONF_ALPHA = "alpha" | ||||
| CONF_ALTITUDE = "altitude" | ||||
| CONF_ALTITUDE_COMPENSATION = "altitude_compensation" | ||||
| CONF_AMBIENT_LIGHT = "ambient_light" | ||||
| CONF_AMBIENT_PRESSURE_COMPENSATION = "ambient_pressure_compensation" | ||||
| CONF_AMBIENT_PRESSURE_COMPENSATION_SOURCE = "ambient_pressure_compensation_source" | ||||
|   | ||||
| @@ -163,11 +163,12 @@ | ||||
| #define USE_WIFI_11KV_SUPPORT | ||||
|  | ||||
| #ifdef USE_ARDUINO | ||||
| #define USE_ARDUINO_VERSION_CODE VERSION_CODE(3, 2, 1) | ||||
| #define USE_ARDUINO_VERSION_CODE VERSION_CODE(3, 1, 3) | ||||
| #define USE_ETHERNET | ||||
| #endif | ||||
|  | ||||
| #ifdef USE_ESP_IDF | ||||
| #define USE_ESP_IDF_VERSION_CODE VERSION_CODE(5, 3, 2) | ||||
| #define USE_MICRO_WAKE_WORD | ||||
| #define USE_MICRO_WAKE_WORD_VAD | ||||
| #if defined(USE_ESP32_VARIANT_ESP32C6) || defined(USE_ESP32_VARIANT_ESP32H2) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user