Afaik, você precisa de hardware que suporte USB OtG pelo menos no modo "dispositivo".
A maioria dos telefones Android é projetada para mostrar sua porta USB como "armazenamento em massa" para um PC (hoje em dia é mais usado com o protocolo MTP, mas o hardware ainda está lá) e você pode fazer o que precisa com um aplicativo chamado DriveDroid.
Esse hardware é capaz de emular ethernet (é usado para tethering de USB, por exemplo) e outras coisas como um cd, um modem de ethernet e outras coisas que são usadas principalmente por dongles usb de 3g-4g (modems). O recurso do kernel que permite isso é chamado de "gadget usb" link
Procure também a página wiki do Gateworks sobre o link "USB_OTG"