I'm using an '876 with the onboard UART talking to an RF IC and a software UART(swuart) talking to the PC. On the PC I cobbled together a Visual C(++) application which sends commands to the PIC. However the PC talks too fast for the PIC to both grab the command data and do something with it. Although the shortest command is only four bytes long they come so fast on the tail of each other that the swuart misses part of the second byte and I get a garbled command. I have tried CTS/RTS and DSR/DTR handshaking with the respective control signal being deasserted when the startbit of the first byte is detected but still all the bytes (4 of them) come down from the PC - I guess the PC uart will always empty its buffer. I was hoping to gain byte by byte control. Is this possible? If I could I would insert a delay between sending the bytes but I'm afraid I haven't found a DelayMs() type function for windows yet!. Any one got any pointers here (forgive the pun). I swapped the uarts for the time being in order to progress with the project but I really would like to know why the handshaking did not work. Has anyone got experiences in this area that they would like to share? Slan John -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu