Hi, I have a one question. I use the modbus serial for comunication. It is script: #include <ModbusSlave.h> /* First step MBS: create an instance / ModbusSlave mbs; / slave registers */ enum { MB_CTRL, /* Led control on, off or blink / MB_TIME, / blink time in milliseconds / MB_CNT, / count the number of blinks / MB_REGS / total number of registers on slave */ }; int regs[MB_REGS]; int ledPin = 13; void setup() { /* the Modbus slave configuration parameters / const unsigned char SLAVE = 1; const long BAUD = 9600; const char PARITY = 'n'; const char TXENPIN = 1; / Second step MBS: configure */ mbs.configure(SLAVE,BAUD,PARITY,TXENPIN); pinMode(ledPin, OUTPUT); } void loop() { /* Third and las step MBS: update in loop*/ mbs.update(regs, MB_REGS); if(regs[MB_CTRL]==1) { digitalWrite(ledPin,1); } else{ digitalWrite(ledPin,0); } } But i want a blink effect in led and i modified the script: if(regs[MB_CTRL]==1) { digitalWrite(ledPin,1); delay(3000); digitalWrite(ledPin,0); delay(3000); } else{ digitalWrite(ledPin,0); } } Well, when i set the bit 1, the led blink but it don't enter in the else. Anyone had the same problem with supervisory and script? tank's *sorry, my english is very weak.