Fleshed out serial driver