mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-30 22:53:59 +00:00 
			
		
		
		
	[i2c] Fix i2c issue on idf 5.3 (#8283)
This commit is contained in:
		| @@ -8,6 +8,10 @@ | ||||
| #include "esphome/core/helpers.h" | ||||
| #include "esphome/core/log.h" | ||||
|  | ||||
| #if ESP_IDF_VERSION < ESP_IDF_VERSION_VAL(5, 3, 0) | ||||
| #define SOC_HP_I2C_NUM SOC_I2C_NUM | ||||
| #endif | ||||
|  | ||||
| namespace esphome { | ||||
| namespace i2c { | ||||
|  | ||||
| @@ -17,14 +21,14 @@ void IDFI2CBus::setup() { | ||||
|   ESP_LOGCONFIG(TAG, "Setting up I2C bus..."); | ||||
|   static i2c_port_t next_port = I2C_NUM_0; | ||||
|   port_ = next_port; | ||||
| #if SOC_I2C_NUM > 1 | ||||
| #if SOC_HP_I2C_NUM > 1 | ||||
|   next_port = (next_port == I2C_NUM_0) ? I2C_NUM_1 : I2C_NUM_MAX; | ||||
| #else | ||||
|   next_port = I2C_NUM_MAX; | ||||
| #endif | ||||
|  | ||||
|   if (port_ == I2C_NUM_MAX) { | ||||
|     ESP_LOGE(TAG, "Too many I2C buses configured. Max %u supported.", SOC_I2C_NUM); | ||||
|     ESP_LOGE(TAG, "Too many I2C buses configured. Max %u supported.", SOC_HP_I2C_NUM); | ||||
|     this->mark_failed(); | ||||
|     return; | ||||
|   } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user