@@ -73,9 +73,6 @@ void common_hal_busio_i2c_construct(busio_i2c_obj_t *self,
73
73
mp_raise_ValueError (MP_ERROR_TEXT ("All I2C peripherals are in use" ));
74
74
}
75
75
76
- // Delete any previous driver.
77
- i2c_driver_delete (self -> i2c_num );
78
-
79
76
const i2c_config_t i2c_conf = {
80
77
.mode = I2C_MODE_MASTER ,
81
78
.sda_io_num = self -> sda_pin -> number ,
@@ -136,7 +133,7 @@ static esp_err_t i2c_zero_length_write(busio_i2c_obj_t *self, uint8_t addr, Tick
136
133
}
137
134
138
135
bool common_hal_busio_i2c_probe (busio_i2c_obj_t * self , uint8_t addr ) {
139
- esp_err_t result = i2c_zero_length_write (self , addr , 1 );
136
+ esp_err_t result = i2c_zero_length_write (self , addr , pdMS_TO_TICKS ( 10 ) );
140
137
return result == ESP_OK ;
141
138
}
142
139
@@ -175,21 +172,21 @@ static uint8_t convert_esp_err(esp_err_t result) {
175
172
176
173
uint8_t common_hal_busio_i2c_write (busio_i2c_obj_t * self , uint16_t addr , const uint8_t * data , size_t len ) {
177
174
return convert_esp_err (len == 0
178
- ? i2c_zero_length_write (self , addr , 100 )
179
- : i2c_master_write_to_device (self -> i2c_num , (uint8_t )addr , data , len , 100 /* wait in ticks */ )
175
+ ? i2c_zero_length_write (self , addr , pdMS_TO_TICKS ( 1000 ) )
176
+ : i2c_master_write_to_device (self -> i2c_num , (uint8_t )addr , data , len , pdMS_TO_TICKS ( 1000 ) )
180
177
);
181
178
}
182
179
183
180
uint8_t common_hal_busio_i2c_read (busio_i2c_obj_t * self , uint16_t addr , uint8_t * data , size_t len ) {
184
181
return convert_esp_err (
185
- i2c_master_read_from_device (self -> i2c_num , (uint8_t )addr , data , len , 100 /* wait in ticks */ ));
182
+ i2c_master_read_from_device (self -> i2c_num , (uint8_t )addr , data , len , pdMS_TO_TICKS ( 1000 ) ));
186
183
}
187
184
188
185
uint8_t common_hal_busio_i2c_write_read (busio_i2c_obj_t * self , uint16_t addr ,
189
186
uint8_t * out_data , size_t out_len , uint8_t * in_data , size_t in_len ) {
190
187
return convert_esp_err (
191
188
i2c_master_write_read_device (self -> i2c_num , (uint8_t )addr ,
192
- out_data , out_len , in_data , in_len , 100 /* wait in ticks */ ));
189
+ out_data , out_len , in_data , in_len , pdMS_TO_TICKS ( 1000 ) ));
193
190
}
194
191
195
192
void common_hal_busio_i2c_never_reset (busio_i2c_obj_t * self ) {
0 commit comments