Skip to content

Commit 90aeac8

Browse files
ricksorensendpgeorge
authored andcommitted
esp32/machine_i2c: Fix default I2C pins for C3, S3.
The default I2C init does not require setting SCL or SDA but the default I2C0 pins for C3, S3 conflict with the espressif GPIO usage. For the C3, pins 18/19 are for USB/JTAG. If used for I2C() they will cause the REPL to hang on initialization of the I2C. For the S3 pin 19 is allocated for USB/JTAG also but the defaults do not seem to affect the REPL. See related micropython#16956. Fixes issue micropython#17103. Signed-off-by: Rick Sorensen <[email protected]> Signed-off-by: Angus Gratton <[email protected]>
1 parent 06d8c08 commit 90aeac8

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

ports/esp32/machine_i2c.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,14 @@
3535
#if MICROPY_PY_MACHINE_I2C || MICROPY_PY_MACHINE_SOFTI2C
3636

3737
#ifndef MICROPY_HW_I2C0_SCL
38+
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S3
39+
#define MICROPY_HW_I2C0_SCL (GPIO_NUM_9)
40+
#define MICROPY_HW_I2C0_SDA (GPIO_NUM_8)
41+
#else
3842
#define MICROPY_HW_I2C0_SCL (GPIO_NUM_18)
3943
#define MICROPY_HW_I2C0_SDA (GPIO_NUM_19)
4044
#endif
45+
#endif
4146

4247
#ifndef MICROPY_HW_I2C1_SCL
4348
#if CONFIG_IDF_TARGET_ESP32

0 commit comments

Comments
 (0)