Hello, I am having trouble with my PIC18F4550's USART module: Transmitting is fine, works perfectly However I can not get my code to receive properly. I used the following code: while (!PIR1bits.RCIF) {} return RCREG; But it doesn't work properly. It waits until the first byte is received, and using an if() statement I can check the byte is valid, But after this it just skips through the routine, returning the same byte value. c = getch(); LED1 = (c == 'A'); I have tried many different configurations and code, but it still does the same thing. I have heard that RCREG is a 3-deep buffer and reading RCREG 3 times is enough to clear it, but this does not seem to work Please help me, I am getting really frustrated over this (should be) simple code Thanks, Jared. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist