Node MCU CP2102 ESP-12E GPO port 15

Hello,

I'm trying to use GPO port 15 in order to use the adafruit max31865. The Node MCU I purchased is located here:
Node MCU

I'm at a loss because when I connect everything together, it fails to boot, but if I pull it out of 15, it boots fine and I can put the connection back and everything works.

I am assuming that I need to "pull down" first based on the pinout reference documentation and some research online, but I'm not sure what resistor size to use or really how to wire it up properly.

Can anyone help me with some sort of schematic on what this should look like?

Your topic has been moved. Please do not post in "Uncategorized"; see the sticky topics in Uncategorized - Arduino Forum.


I have no experience with ESP boards; it's my understanding that certain pins have a function related to booting or uploading. I suggest that you consult the schematic of your board and possibly the datasheet of the processor. Have you tried another pin?

have a look at esp8266-pinout-reference-gpios
in particular it states for GPIO15 "Boot fails if pulled HIGH"

Yes as mentioned i referred to the pinout reference. Is there a better reference? ESP8266 Pinout Reference: Which GPIO pins should you use? | Random Nerd Tutorials

The problem is that the Adafruit max31865 requires CS and unless i am misunderstanding what is needed, that's the pin that the Node MCU has CS on it. I am new to adafruit, so maybe I'm way off base and can use a different port.

with most SPI devices you can set the GPIO pin used for CS
e.g. from adafruit-max31865-rtd-pt100-amplifier/arduino-code

// use hardware SPI, just pass in the CS pin
Adafruit_MAX31865 max = Adafruit_MAX31865(10);

For CS you can use any available pin, It is not really a part of the SPI port. GPIO15 is not a practical choice because it requires a PULLDOWN (usually a dev board has a 10K resistor on it for that) and CS requires the PIN to be set lLOW to activate the chip, and in many cases this means that a unit like the one you have will have a 10K PULLUP on it to make sure that the Chip is disabled by default.

You could of course add another 10K pulldown (or even a smaller value) to dip the voltage level low enough so the pin reads LOW at boot, and just lake sure that you reset the MAX31865 manually at the start of you code.
Once the ESP has booted it doesn't matter what you do to GPIO 15 anyway.

Still a simpler solution would be to just pick a different pin for CS, and that should do the trick.

1 Like

Thank you that makes sense!

Thank you for the code and info!