Arduino Uno + Icomsat 1.1 SIM900

Depende de quanto o sensor consome. Diria que para a maior parte dos sensores que se usam com breadboard isso pode ser feito na boa, senão é adicionar um transistor. Mas porque quererias fazer isso? O projecto funciona a pilhas? Estás ciente que os sensores podem ter tempos de arranque até darem dados fiáveis?

Assim de repente...

const int pino_SMS = XXXX; //mete tu o pino... 

.... 


loop() {


if (HIGH == digitalWrite(pino_SMS)) { //escolhe a polaridade do botão aqui... 
   //se botão ou sensor activado... 
   gsm.println("AT+CMGS=939393933\nACTIVADO");
   gsm.print(0x1a); // isto é equivalente ao Ctrl + Z 
}


}

Não me parece que colocar uma interrupção seja bom neste caso. Apenas tens de garantir que o programa passa pela parte de testar o pino de x em x milisegundos e isso por si só garante que não vais ter o sistema a mandar SMSs a torto e a direito. A propósito, seria benéfico colocares um tipo de lógica desses aqui para evitar que mandes SMSs devido a bouncing dos contactos. :slight_smile:

Era isto que tinhas dúvidas?