Refactoring Serial Protocol