Which model of ESP32 support I2C Target? #17981
-
#ifndef MICROPY_PY_MACHINE_I2C_TARGET
// I2C target hardware is limited on ESP32 (eg read event comes after the read) so we only support newer SoCs.
// ESP32C6 does not have enough flash space so also disable it on that SoC.
#define MICROPY_PY_MACHINE_I2C_TARGET (SOC_I2C_SUPPORT_SLAVE && !CONFIG_IDF_TARGET_ESP32 && !CONFIG_IDF_TARGET_ESP32C6)
#define MICROPY_PY_MACHINE_I2C_TARGET_INCLUDEFILE "ports/esp32/machine_i2c_target.c"
#define MICROPY_PY_MACHINE_I2C_TARGET_MAX (2) How to know which model of ESP32 support I2C Target? |
Beta Was this translation helpful? Give feedback.
Answered by
mattytrentini
Aug 26, 2025
Replies: 1 comment 2 replies
-
The way I understand |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Just to expand on @Lobo-T's correct response; the OG ESP32's I2C hardware support is poor for Target devices so it's been disabled.
However, the ESP32-C6 can certainly support I2CTarget but that device is currently very low on flash; adding it (or I2S, disabled for the same reason) overflows the available flash. It's likely there will be a change at some point to the C6 builds to add more space to the firmware partition and less to the filesystem.