For serious serial communication i will always suggest to use the PIC USART and use the SPBRG calc i did... few times ago http://www.picbasic.co.uk/forum/atta...6&d=1118138371
@4mhz, you can have 9600 Bauds with 0.16% error.. quite good

Another idea, If your PIC don't have a USART and you can live with DEBUG limitations, that's a great way to have higher baudrate speed even with a 4 MHZ crystal. It support the same modifier than SERIN2/SEROUT2.