Hi! I cant get my 16f877 to recive MIDI messages. Bob Blick sugessted the following code: void serial_setup(void) { /* Set up the USART for 31250 baud (with 4 mhz crystal) */ SPBRG = 1; TXSTA = 0x22; // BRGH = 0, SYNC = 0, TXEN = 1 RCSTA = 0x90; // SPEN = 1, CREN = 1 } byte midigetch() { if(OERR || FERR) { // clear any usart receive errors CREN = 0; CREN = 1; } return (RCREG); } So I tried something simple like: while (1) { a=mygetch(); if (a==0x41) { // Never happens.... } } The hardware is just a 220ohm resistor from the MIDI DIN pin 4 to my RX on the 16f877. If I put a max232 there instead and use 19200 instead the 16f877 gladly speaks to my PC. Im using PICC Lite. Im I doing something wrong? tia /frax -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.