Flashing fails with I2C connected on certain ports

parsec
Posts: 3
Joined: Sun Jun 18, 2017 7:28 am

Flashing fails with I2C connected on certain ports

Postby parsec » Sun Jun 18, 2017 8:00 am

Hi all, new ESP32 user here.

I have a DevKitC board with a BME280 (SparkFun BoB) connected on I2C. When the sensor SDA/SCL is wired to GPIO 15 and 2 flashing ('make flash') will timeout with A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header.

If I instead use e.g. GPIO 32 and 33 it works fine.

I narrowed it down further to GPIO 2, disconnected this pin will result in successful flashing.

After flashing has completed and GPIO 2 reconnected to the sensor the I2C communication works reliably.

I looked at the docs/pinouts in order to try to understand what is special with GPIO 2 but can't really find anything relevant. So if anyone know what kind of magic this is and would care to enlighten me I'd be very thankful.

ESP_igrr
Posts: 2071
Joined: Tue Dec 01, 2015 8:37 am

Re: Flashing fails with I2C connected on certain ports

Postby ESP_igrr » Sun Jun 18, 2017 11:35 am

Please check the strapping pin list at the end of ESP32 Chip Pin List document. GPIO2 must be low in order to enter UART download mode. This pin has a weak pulldown enabled at reset, but if you attach I2C bus, 10k pullup will drive the pin high.

Who is online

Users browsing this forum: No registered users and 88 guests