Modulo Reley enciende al momento de mandar energia al arduino UNO

Buenas noches, soy nuevo en arduino y ando haciendo un app que controle el encendido y apagado de 2 reles, el problema esta en que apenas le mando corriente a la placa de arduino, los 2 reles se encienden y no están en reposo. E visto algunos videos donde explican que el problema es que los reles están con logica inversa, quería saber como hacer que mi código funcione para esa lógica, o otra posible solución.

const int alimentador = 2;
const int oxigenador = 3;
int estado = 'n';

void setup() {
  Serial.begin(9600);
  pinMode(alimentador, OUTPUT);
  pinMode(oxigenador, OUTPUT);
  // put your setup code here, to run once:

}

void loop() {
  if (Serial.available() > 0) {
    estado = Serial.read();
  }
  if (estado == 'a') {
    digitalWrite(alimentador, HIGH);

  }
  if (estado == 'b') {
    digitalWrite(alimentador, LOW);

  }
  if (estado == 'c') {
    digitalWrite(oxigenador, HIGH);

  }
  if (estado == 'd') {
    digitalWrite(oxigenador, LOW);

  }
  
  // put your main code here, to run repeatedly:

}escribe o pega el código aquí

Hello and good morning
Post a link to the relay board in use.

Hola, si estas seguro que las placas funciona con logica inversa en tu codigo donde ponga HIGH cambialo a LOW y donde ponga LOW pon HIGH, Y añade como ultimas lineas del setup:

digitalWrite(alimentador, LOW);
digitalWrite(oxigenador, LOW);

Saludos.

Moderador:
Por favor, lee las Normas del foro y edita tu código usando etiquetas de código.
Ve a edición, luego selecciona todo el error que has publicado, lo cortas y click en </>


También corrige el título. El titulo con palabras como estas " Ayuda con " debe modificarse.
Ver punto 5 de las Normas del foro.
Por favor, no sigas respondiendo sin antes hacer las correcciones.

ya lo intente y no funciono

¿Podés poner el modelo del módulo, link a una página que tenga uno como el tuyo (tal vez donde lo compraste) o una foto en lo posible de arriba para ver los componentes y tratar de identificarlo?

ya mando una foto espera

Prueba poniendo una resistencia de 10K ohms entre cada pin de entrada (in1, in2) del módulo y 5V, a ver como se comporta en el encendido.

Recuerda que, como mencionaste antes, el módulo efectivamente tiene lógica inversa, entonces se activa con LOW y desactiva con HIGH.

Saludos

En el setup solo pone esto

void setup() {
  Serial.begin(9600);
  pinMode(alimentador, OUTPUT);
  pinMode(oxigenador, OUTPUT);
  // put your setup code here, to run once:
 digitalWrite(alimentador, HIGH); // para que arranque apagado
 digitalWrite(oxigenador, HIGH);  // lo mism
}

¡Pequeño detalle!
No me había dado cuenta que no le fijaba los estados al inicio. :man_facepalming:t2:

Bueno, pero se lo dijiste igualmente en tu comentario

Solo le hice mas fácil tu indicación.