of course, it's not perfect. i.e., it has to be ready and polling when a new byte arrives. in a typical request-response dialog, that is normally no problem, but if you have fully independent operation, it would lose receive data