add usb functions