I have a amazon special ESP32 board that will happily power an led. However when I go to add a switch to turn that led on or off things get weird. Using someone else code (Shown below) it technically works. However when my hand get close it just goes wild, it believes that there is inputs when there really isnt. What makes it weirder is when I touch the esp32 metal shield or the usb c connector it actually stops. Anyone have any insite on why this is happening and how I can get it to stop? Ive tried damn near every pin. Ive also tried a few different esp boards (All same manufacturer)
/*
* Created by ArduinoGetStarted.com
*
* This example code is in the public domain
*
* Tutorial page:
*/
// constants won't change. They're used here to set pin numbers:
const int BUTTON_PIN = 34; // the number of the pushbutton pin
const int LED_PIN = 2; // the number of the LED pin
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status
void setup() {
Serial.begin (115200);
// initialize the LED pin as an output:
pinMode(LED_PIN, OUTPUT);
// initialize the pushbutton pin as an pull-up input:
// the pull-up input pin will be HIGH when the switch is open and LOW when the switch is closed.
pinMode(BUTTON_PIN, INPUT_PULLUP);
}
void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(BUTTON_PIN);
Serial.println(buttonState);
// control LED according to the state of button
if(buttonState == LOW) // If button is pressing
digitalWrite(LED_PIN, HIGH); // turn on LED
else // otherwise, button is not pressing
digitalWrite(LED_PIN, LOW); // turn off LED
}