duda con puertos

Buenas tardes,tengo una duda que tal vez me la pueden aclarar.

tengo un arduino uno donde e conectado el pin0 RX, pin1TX a un modulo bluetooth para conectar con una app donde se le ingresa un valor y lo envia (ejemplo: 100 Kg)

cree un puerto serial llamado Serial_2 donde pin2RX y pin3 TX conectada a una balanza digital.

Como puedo hacer para que cuando yo envio el valor desde la app (ej:100 Kg) y la balanza tenga 95Kg (5%) arduino me encienda un led que parpadea y cuando llegue a los Kg totales me encienda otro led.

Desde ya muchas gracias saludos

tengo un arduino uno donde e conectado el pin0 RX, pin1TX a un modulo bluetooth para conectar con una app donde se le ingresa un valor y lo envia (ejemplo: 100 Kg)

Si usas pin 0 y 1 o sea los que habitualmente estan asignados al Monitor Serie para conectarle algo, olvidate de poder monitorear lo que este ocurriendo.
Eso es válido cuando tu programa esta terminado y entonces si puedes hacerlo, pero mientras te conviene trabajar con SoftwareSerial, asegurarte que todo funciona bien y luego si, puedes reprogramarlo usando 0 y 1 cuando ya tienes el programa terminado y no vas a usar mas el Monitor Serie.

Como puedo hacer para que cuando yo envio el valor desde la app (ej:100 Kg) y la balanza tenga 95Kg (5%) arduino me encienda un led que parpadea y cuando llegue a los Kg totales me encienda otro led.

Todo esto involucra muchos pasos y con la consulta abierta anterior no estoy seguro que este sea un problema ahora.
Antes debes establecer comunicación BT, leer datos en el arduino y en la APP y entonces si podras.

Hacer que un led parpadee cuando se den esos pesos es facil.

if (peso * 0.95 = balanza) {
    hacer_que_led_parpadee();
}

Hacer que el led parpadee es simple con unos delay si no hay nada mas involucrado.

.
@surbyte con el monitor serie simulo el trabajo que realizara el BT

te paso el codigo que me dices;

#include <SoftwareSerial.h>

SoftwareSerial Serial_2 (2, 3); 

String Balanza;                 

void setup() {
   
   Serial_2.begin(9600);
   Serial.begin(9600);   
   pinMode(13,1);         
} 

void loop() {
 
while (Serial_2.available, available()) {   
    delay(5);
    char c = Serial_2.read();     
    Balanza += c;

}

if (Balanza.length()>0){       
     Serial.println(Balanza);
}

Para leer la informacion del monitor serie (BT), debo crear un String con el nombre BT y un while como el anterior?

Por favor edita usando las etiquetas para postear códigos como indican las normas

ok

Y como funciona lo que has hecho?

Con el código mencionado anteriormente me lee correctamente los datos de la balanza, mi duda es como continuarlo, para que cuando ingrese un valor por el monitor serial y coincida con el valor que me de la balanza encienda un led.

realizar una String y un while como el anterior??

Que pierdes con probar?

probé con este codigo lee los 2 puertos correctamente pero cuando llega al peso indicado no enciende el led

#include <SoftwareSerial.h>

SoftwareSerial Serial_2 (2, 3);   

String Balanza;

String BT;


void setup() {
    
Serial_2.begin(9600); 
    Serial.begin(9600);   
    pinMode(13,1);        
}
 
void loop() {
 
 while (Serial_2.available()) {    
     delay(5);
     char c = Serial_2.read();     
     Balanza += c;                 
  }    
 
 if (Balanza.length()>0){       
     Serial.println("Kilos"  +  Balanza );      
    }  
  Balanza=""; 

  while (Serial.available()) {    
     delay(5);
     char b = Serial.read();
     BT += b;       
  }
  
if (BT.length()>0){       
     Serial.println("Kilos  "  +  BT );
}
BT="";

if (BT == Balanza){
            digitalWrite(13,1);   
     }
}

Como esperas que algo funcione si previo a comparalo haces esto

BT="";        // <= con esto anulas cualquier valor que tenga BT, en todo caso debe estar al final

  if (BT == Balanza){
      digitalWrite(13,1);   
  }

Asi es lo correcto

  if (BT == Balanza){
      digitalWrite(13,1);   
  }
  BT="";

Y por favor, intenta llevar un código ordenado, con sangría (espaciado desde el margen)

Mira como luce diferente y se puede leer de otro modo.
Las variables Balanca y BT se ponen a 0 luego de mostrar valores solo cuando son > 0

#include <SoftwareSerial.h>

SoftwareSerial Serial_2 (2, 3);   
String Balanza;
String BT;

void setup() {
  Serial_2.begin(9600);
  Serial.begin(9600);   
  pinMode(13,1);       
}
 
void loop() {
  while (Serial_2.available()) {   
        delay(5);
        char c = Serial_2.read();     
        Balanza += c;                 
  }   
 
  if (Balanza.length()>0){       
      Serial.println("Kilos"  +  Balanza );     
      Balanza = "";
  } 
  
  while (Serial.available()) {   
        delay(5);
        char b = Serial.read();
        BT += b;       
  }
  if (BT.length()>0){       
      Serial.println("Kilos  "  +  BT );
      if (BT == Balanza){
          digitalWrite(13,1);   
      }
      BT="";
  }
}