Reworked so that testing does not require pyserial/pyusb