The internal oscillator is just not a good choice for anything timing cricital. It's an RC oscillator, and the frequency will change as temperature, humidity, and several other factors change.
If you need reliable serial communications use an external oscillator.
I have used various PIC's in serial applications with the internal osc, and it does work, but it's never been reliable under varying conditions with the internal RC oscillator.
Bookmarks