Sensor apertura + NodeMCU (problema de lectura)

Buenos dias chicos.

En primer lugar, estoy empezando a pelearme con el NodeMCU y un sensor de puerta abierta, pero tengo algunas dudas tecnicas.

Los dispositivos que estoy usando son estos (NodeMCU y sensor de puerta):

Conecto uno de los cables del sensor a la entrada GPIO5 y el otro a tierra (G).
Entiendo que para leer el estado de la entrada se usa digitalState(5), y lo que hago es mostrar el estado. Cuando conecto por primera vez todo, veo un estado 1, y si acerco los imanes y vuelvo a leer me devuelve 0.
Hasta aqui parece que si cambian los estados, el problema es que tras la primera lectura despues nunca cambia el estado, de hecho si no desconecto todo y lo dejo un tiempo sin usar, nunca vuelvo a leer un 1.

¿Alguien me puede iluminar?

Los pines GPIO en el Nodemcu tienen una identificación del tipo Dx
Si el pin que usas es el 5 entonces será D5.
Prueba de este modo

#define Sensor D5

bool estado;

void setup() {
    Serial.begin(115200);
    pinMode(Sensor, INPUT);
}

void loop () {

    estado = digitalRead(Sensor);
    Serial.print("Estado = ");
    Serial.println(estado?"ON":"OFF");  // ? es como tener un if cuando es true y : es como el else 
}

Hola surbyte!
No he podido probar hasta esta semana tu comentario.

He intentado llevar a cabo lo que me indicas, pero no lo he conseguido. A pesar de acercar los imanes, no veo un cambio de estado. He intentado mostrar el valor del sensor pero siempre me muestra true.

Tengo conectado uno de los cables del sensor con imanes a la entrada GPIO5 y el otro a tierra (G), y conectado el usb al nodecmu.

¿Necesito alimentar el nodecmu de alguna otra manera a parte de por el usb?

Mil gracias!

Al final solucione el problema.

Hay que ponerle una resistencia conectada a tierra para asegurarse de que lee un 0 (creo que por temas del entorno o algo asi lei :slight_smile: )

Tu definiste esto

pinMode(Sensor, INPUT);

eso requiere que uses PULL-UP o PULL_DOWN.
Resistencia a gnd es PULL-DOWN.

NOTA: esta no es una consulta para el foro proyectos. Es para software/hardware.
Por favor tenlo presente la próxima.