diff options
author | robert-hh <robert@hammelrath.com> | 2025-09-03 09:54:07 +0200 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2025-10-02 14:54:45 +1000 |
commit | 3546f23143ed7fee66cf873dd224082d0cc424cb (patch) | |
tree | e879944a3c93f44a394eb57be94541c59101b79d /py/objmodule.c | |
parent | 7ef47ef98d8b98f9c2786e8d58a0307f59dceebb (diff) |
esp32/machine_i2c: Update to support both v1 and v2 of the IDF driver.
Support both the legacy ESP-IDF I2C driver (driver/i2c.h) and the new
driver/i2c_master.h API for all ESP32-series SoCs. This is controlled by
the new config option MICROPY_HW_ESP_NEW_I2C_DRIVER, which is disabled by
default.
There is a small change to the legacy variant, which shows now as well freq
and timeout_us in the print() method.
Open issues with the new driver:
- No control of the stop=True|False option. stop is always assumed to
be True. An issue is raised at the esp-idf repository for it.
- Separate call to probe the address at fixed 100kHz. The need is caused
by the fact, that NACK on an address is considered as an hard error.
According to espressif's issue tracker this is already changed for
v6.x and will be backported to earlier versions. So we may see it in
a version after V5.5.1 or in a version 5.4.3. There is code in
comments to support zero-length writes.
Original patch for the v2 driver by Vincent1-python <pywei201209@163.com>.
Signed-off-by: robert-hh <robert@hammelrath.com>
Diffstat (limited to 'py/objmodule.c')
0 files changed, 0 insertions, 0 deletions