Wire library: Add conditional compilation for second I2C interface based on SOC_I2C_NUM #10408
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
The ESP32, ESP32-S and ESP32-H series have two I2C interfaces, while the ESP32-C series has only one.
Description of Change
The
Wire1object is conditionally compiled and is not available on MCUs that only have a single I2C interface (e.g. MCUs of the ESP32-C series).Tests scenarios
I tested my pull request on Arduino-esp32 core v3.1.0 with ESP32, ESP32-S3 and ESP32-C3 board with this scenario.
For the test I modified the WireScan example to use the
Wire1object. On an ESP32-C3 based board the compilation failed which is the expected behaviour and intention of this PR.Related links
ESP32 Arduino Wire not working