ESP32-WROOM-32D module with external PSRAM
Posted: Thu Jul 15, 2021 10:00 am
Hi,
I have designed a PCB with ESP32-WROOM-32D module and ESP-PSRAM64H PSRAM following the schematic of the ESP32-WROVER module. I observed some failures on certain devices in the field where a certain partition on the flash which I was occasionally writing to gets corrupted. This prompted me to have a second look at the design and that is when I observed that in the first iteration of the PCB, I had not connected the pull-up resistor (to 3.3V) on the GPIO16 line. In the ESP32-WROVER module's schematic, the GPIO16 pin is pulled up to the 1.8V voltage domain as per the PSRAM's requirement. Prima facie, this does not seem to have anything to do with the flash corruption. To dig further, I connected the PCB to the oscilloscope to probe the CS pin. I noticed that the CS pin of the PSRAM is pulled up by default and is pulled down as and when a transaction is initiated. Is the pin operated in a push-pull mode by the chip inside or does it have a weak internal pull-up enabled by default? Do I need this resistor anyway?
Thank you.
I have designed a PCB with ESP32-WROOM-32D module and ESP-PSRAM64H PSRAM following the schematic of the ESP32-WROVER module. I observed some failures on certain devices in the field where a certain partition on the flash which I was occasionally writing to gets corrupted. This prompted me to have a second look at the design and that is when I observed that in the first iteration of the PCB, I had not connected the pull-up resistor (to 3.3V) on the GPIO16 line. In the ESP32-WROVER module's schematic, the GPIO16 pin is pulled up to the 1.8V voltage domain as per the PSRAM's requirement. Prima facie, this does not seem to have anything to do with the flash corruption. To dig further, I connected the PCB to the oscilloscope to probe the CS pin. I noticed that the CS pin of the PSRAM is pulled up by default and is pulled down as and when a transaction is initiated. Is the pin operated in a push-pull mode by the chip inside or does it have a weak internal pull-up enabled by default? Do I need this resistor anyway?
Thank you.