#42 improve serial driver and tests