Added serial interface abstraction