working on usb communication