ESP32 input output pins

Note

Please be aware of that pins that are input-only do not have pullup capabilities.

Acc to figures below this is GPIO 34,35,36,39 as noted in the first image below

 
 

pin 1-13

 

pin 13-39

SIMPLE TEST FOR pulldown and pullup

  • Please be aware of that not alle pins are avaliable !

  • Please be aware of I have NOT tried to read the ports with an external high or low signal

  • Please be aware of expressif states some more ports may be available for pullup or pulldown by rtc interface. I have not tried

void setup() {
  pinMode(17, INPUT_PULLDOWN);
  Serial.begin(115200);
  delay(100);
}
int i = 0;
int ok;
void loop() {
  ok = 0;
  for (int i = 0; i < 40; i++) {
    if (i == 6) i = 12;  // jump over
    ok = 0;
    pinMode(i, INPUT_PULLDOWN);
    delay(100);
    Serial.print(i); Serial.print(" PULL_DOWN: ");
    if (digitalRead(i) )
      Serial.print("BAD");
    else  {
      Serial.print("OK");
      ok++;
    }




    pinMode(i, INPUT_PULLUP);
    delay(100);
    Serial.print(" - PULL_UP: ");
    if (digitalRead(i) ) {
      Serial.print("OK");
      ok++;
    }
    else  {
      Serial.print("BAD");
    }
    if (ok == 2) Serial.println("  ALLES OK");
    else
      Serial.println("");
  }

  while (1);
}

1 PULL_DOWN: BAD - PULL_UP: BAD
2 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
3 PULL_DOWN: BAD - PULL_UP: OK
4 PULL_DOWN: OK - PULL_UP: BAD
5 PULL_DOWN: BAD - PULL_UP: OK
12 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
13 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
14 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
15 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
16 PULL_DOWN: BAD - PULL_UP: OK
17 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
18 PULL_DOWN: BAD - PULL_UP: OK
19 PULL_DOWN: BAD - PULL_UP: OK
20 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
21 PULL_DOWN: BAD - PULL_UP: OK
22 PULL_DOWN: BAD - PULL_UP: OK
23 PULL_DOWN: BAD - PULL_UP: OK
24 PULL_DOWN: OK - PULL_UP: BAD
25 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
26 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
27 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
28 PULL_DOWN: OK - PULL_UP: BAD
29 PULL_DOWN: OK - PULL_UP: BAD
30 PULL_DOWN: OK - PULL_UP: BAD
31 PULL_DOWN: OK - PULL_UP: BAD
32 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
33 PULL_DOWN: OK - PULL_UP: OK  ALLES OK
34 PULL_DOWN: BAD - PULL_UP: OK
35 PULL_DOWN: BAD - PULL_UP: OK
36 PULL_DOWN: OK - PULL_UP: BAD
37 PULL_DOWN: OK - PULL_UP: BAD
38 PULL_DOWN: OK - PULL_UP: BAD
39 PULL_DOWN: OK - PULL_UP: BAD




SÅ 2,12,13,14,15,17,20,25,26,27,32,33   VIRKER MED PULLUP/DOWN

6-11 is not testet bw they are interface to flash

HAR IKKE PRØVET AT LÆSE DEM MED INPUT