diff --git a/ports/stm32/i2c.c b/ports/stm32/i2c.c index d80301081a7565f68f5ac526b0c1f6e5f1c8f3f8..fcf3cd9c35cfda27fc3873a369fbce1abe804900 100644 --- a/ports/stm32/i2c.c +++ b/ports/stm32/i2c.c @@ -699,12 +699,9 @@ STATIC mp_obj_t pyb_i2c_scan(mp_obj_t self_in) { mp_obj_t list = mp_obj_new_list(0, NULL); for (uint addr = 0x08; addr <= 0x77; addr++) { - for (int i = 0; i < 10; i++) { - HAL_StatusTypeDef status = HAL_I2C_IsDeviceReady(self->i2c, addr << 1, 10, 200); - if (status == HAL_OK) { - mp_obj_list_append(list, mp_obj_new_int(addr)); - break; - } + HAL_StatusTypeDef status = HAL_I2C_IsDeviceReady(self->i2c, addr << 1, 1, 200); + if (status == HAL_OK) { + mp_obj_list_append(list, MP_OBJ_NEW_SMALL_INT(addr)); } }