New board design with ESP32-WROOM-32U has I2C problem
Posted: Sun Apr 05, 2020 7:08 am
I designed a board and got my first prototype from an assembler. The board has an ESP32-WROOM-32U connected via I2C (module pins 26 (IO4) and 29 (IO5)) to an MCP23017 GPIO expander module. This is the only I2C device on this bus, which has 1K pullup resistors to VCC (3.3V). All three address pins on the expander are pulled high for an address of 0x27. There is a 10k resistor on the expander reset pin to pull it high.
I am able to upload apps using both Arduino and Mongoose OS to the ESP3 module and it runs nicely, but I wrote a test app with Arduino and I can not get the I2C bus to work. I tested the app with a known good ESP32-WROOM-32U dev board and also checked the bus with my scope. On my new board I can't get anything resembling a square waveform, or anything that looks like there is anything happening.
I verified that all aspects of the schematic were properly assembled, including 3.3V on the expander, that the GND is connected, that the address pins are pulled up, that there is a good connection between the module pins and the expander pins and so on.
I'm stumped. I'm wondering, do I have to do anything to configure the ESP32-WROOM-32U module fresh from the factory? What else can I check?
Thanks very much...
I am able to upload apps using both Arduino and Mongoose OS to the ESP3 module and it runs nicely, but I wrote a test app with Arduino and I can not get the I2C bus to work. I tested the app with a known good ESP32-WROOM-32U dev board and also checked the bus with my scope. On my new board I can't get anything resembling a square waveform, or anything that looks like there is anything happening.
I verified that all aspects of the schematic were properly assembled, including 3.3V on the expander, that the GND is connected, that the address pins are pulled up, that there is a good connection between the module pins and the expander pins and so on.
I'm stumped. I'm wondering, do I have to do anything to configure the ESP32-WROOM-32U module fresh from the factory? What else can I check?
Thanks very much...