const int pinControl = 2;  // Elige el número de pin que estás utilizando
const unsigned long tiempoPausa = 10000;  // 10 segundos de pausa
const unsigned long tiempoActivacion = 300;  // 300 ms de activación

void setup() {
  pinMode(pinControl, OUTPUT);
  digitalWrite(pinControl, LOW);  // Asegúrate de que la bobina no esté alimentada al inicio
  Serial.begin(9600);
}

void loop() {
  // Configura el pin como entrada para verificar la presencia de la bobina
  pinMode(pinControl, INPUT_PULLUP);
  delay(10);  // Pequeña pausa para estabilizar la lectura

  int estadoBobina = digitalRead(pinControl);

  if (estadoBobina == LOW) {
    // La bobina está presente, ahora puedes alimentarla
    Serial.println("Bobina presente. Alimentando...");

    // Configura el pin como salida antes de activar la alimentación
    pinMode(pinControl, OUTPUT);
    
    // Código para activar la alimentación de la bobina
    digitalWrite(pinControl, HIGH);  // Activar la alimentación (ajusta según tu configuración)

    // Puedes agregar aquí otras acciones después de activar la alimentación

    delay(tiempoActivacion);  // Mantener la bobina alimentada durante el tiempo de activación

    // Desactivar la alimentación después del tiempo de activación
    digitalWrite(pinControl, LOW);  // Desactivar la alimentación (ajusta según tu configuración)

  } else {
    // La bobina no está presente, muestra un mensaje de error
    Serial.println("Error: Bobina no presente. No se puede alimentar.");

    // Configura el pin como salida antes de desactivar la alimentación
    pinMode(pinControl, OUTPUT);

    // Desactivar la alimentación
    digitalWrite(pinControl, LOW);  // Desactivar la alimentación (ajusta según tu configuración)
  }

  // Espera el tiempo de pausa antes de volver a verificar
  delay(tiempoPausa);
}
NOCOMNCVCCGNDINLED1PWRRelay Module
NOCOMNCVCCGNDINLED1PWRRelay Module