Skip to content

GPIO 34 & 35 always reads as LOW with Pull-up #782

@hasmqtt

Description

@hasmqtt

Hardware:

Board: ?ESP32 WROOM32?
Core Installation/update date: ?11/jul/2017?
IDE name: ?Platform.io?
Flash Frequency: ?40Mhz?
Upload Speed: ?115200?

Description:

GPIO read on pin 34 and 35 returns LOW even I have used internal pull-up. One of post on ESP32 I have read as silicon bug and handled using RTC GPIOs 34 - 39 are impacted with this silicon bug.

Appreciate help or pointers on how to resolve it.

Sketch:

#include <Arduino.h>

const int switchGPIOs[] = {34, 35, 32, 33, 25, 26}; //Connected to Switches
const int totalSwitches = sizeof(switchGPIOs)/sizeof(switchGPIOs[0]);
const int ssrGPIOs[] = {27, 14, 12, 13, 15, 2}; //Connected to LEDs

void initGPIOs() {
  for (int i = 0; i < totalSwitches; i++) {
    pinMode(switchGPIOs[i], INPUT_PULLUP);
    pinMode(ssrGPIOs[i], OUTPUT);
    digitalWrite(ssrGPIOs[i], HIGH);
  }
}

void readSwitches() {
  for (int i = 0; i < totalSwitches; i++) {
    int value = digitalRead(switchGPIOs[i]);
    Serial.printf("Value read is %d ==> %d\n", i, value);
    digitalWrite(ssrGPIOs[i], value);
  }
}

void setup() {
 Serial.begin(115000);
 initGPIOs();
}

void loop() {
readSwitches();
delay(30);
}

Debug Messages:

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions