I2C slave interrupt entering for every address in the system
Posted: Tue Oct 08, 2024 1:16 pm
Hello,
I am working with a DevKit "esp32-c6-devkitc-1_v1.2". In my test set-up I have an I2C bus such as:
- Master --> different MCU than an ESP32
- Slave with address 0x41 --> different MCU than an ESP32
- Slave with address 0x42 --> ESP32 C6 devkit
I am using the configuration described in the "docs.espressif" page:
https://docs.espressif.com/projects/esp ... s/i2c.html
The I2C bus is working fine and the ESp32 is only acting for the 0x42 address. However, I am finding that the I2C interrupt ("i2c_slave_rx_done_callback") in the ESP32 is entering for both slave addresses (0x41, 0x42).
Is this expected?
If NOT, how to enter only for the proper address?
If YES, how is it possible to filter by address received inside the interrupt?
Thanks in advance for the help!
I am working with a DevKit "esp32-c6-devkitc-1_v1.2". In my test set-up I have an I2C bus such as:
- Master --> different MCU than an ESP32
- Slave with address 0x41 --> different MCU than an ESP32
- Slave with address 0x42 --> ESP32 C6 devkit
I am using the configuration described in the "docs.espressif" page:
https://docs.espressif.com/projects/esp ... s/i2c.html
The I2C bus is working fine and the ESp32 is only acting for the 0x42 address. However, I am finding that the I2C interrupt ("i2c_slave_rx_done_callback") in the ESP32 is entering for both slave addresses (0x41, 0x42).
Is this expected?
If NOT, how to enter only for the proper address?
If YES, how is it possible to filter by address received inside the interrupt?
Thanks in advance for the help!