Could you possibly use a PIC with two hardware UARTS? That would make things *so* much easier.