• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[APP][ROOT] USB OTG Helper (Stock/Custom kernel)

Search This thread

shardul_seth

Senior Member
Jul 31, 2011
1,102
1,717
A one-stop no-pain solution for enabling and using USB OTG mass storage on your android phone!


What is USB OTG?
It stands for USB On-the-Go!
"It is a specification that allows USB devices such as digital audio players or mobile phones to act as a host allowing a USB flash drive, mouse, or keyboard to be attached." - Wikipedia
The stock kernel allows Mouse & Keyboard, but USB storage is missing..

Features:
  • Stock and custom kernels supported
  • Mount and Unmount drive with a single click
  • No Ads!
  • Full NTFS support built-in!! (from v3.0.3)
  • Automatically start on device connect (intent broadcast) (from v3.0.3)
  • Notification when drives mounted! (from v3.0.3)
  • One click access to unmount (from v3.0.3)
  • Option to enable UTF-8 if kernel support (from v4)
  • Automatically open explorer after drive mounted (from v3.0.7)
  • One click debugging and feedback (in app) [Donate version only]

What phones are supported?
Sony Ericsson Xperia Neo, Neo V, Arc and the Arc S! Modules for stock kernel on second post.
If you get it to work on other devices, please PM me and I will add them to the list.

What are the requirements?
  1. root (su binary)
  2. busybox
  3. USB OTG cable

How to use on stock kernel?
See this post to load modules!

WARNING
I will not be held responsible for any damage to your device. Do not use for a long time, u may risk burning the device chip/motherboard due to the voltage supply in host mode.

Screenshots and Screencast:









More Details and Download (Click Here)
 
Last edited:

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
I am using galaxy i9003 with 2.3.6 stock rom rooted with cf root kernel. My installed kernel dont support for usb otg. Then will it be possible to use this app to enable usb otg in my phone with help by loading modules???

Edit : where are modules???
 
Last edited:

Skander1998

Senior Member
May 23, 2012
1,610
607
26
Doha
Samsung Galaxy Note 3
Samsung Galaxy S7
I am using galaxy i9003 with 2.3.6 stock rom rooted with cf root kernel. My installed kernel dont support for usb otg. Then will it be possible to use this app to enable usb otg in my phone with help by loading modules???

Edit : where are modules???

Any phone with either in-built mass storage support, or custom kernels or having required modules (for stock kernel).

I think you need to find and load the modules yourself before using the application.
 
  • Like
Reactions: vishal24387

cukierkas

Senior Member
May 26, 2010
2,158
683
Hello there. I'm on galaxy sl xwlf2 rom with custom kernel.
And I have the otg cable :) that would be really fun, if otg would work :)
looking forward to it :)

edit: on my phone there is no such folder like MODULES under system/lib :)
 

shardul_seth

Senior Member
Jul 31, 2011
1,102
1,717
@ Samsung users:
1. Kernel must support mass storage mode.. Ask your kernel devs in your forum about it.
2. Some models of samsung does not have power to the usb bus, so even if custom kernel/modules are there, you cannot use OTG without powered USB hub.
 

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
@ Samsung users:
1. Kernel must support mass storage mode.. Ask your kernel devs in your forum about it.
2. Some models of samsung does not have power to the usb bus, so even if custom kernel/modules are there, you cannot use OTG without powered USB hub.

Ya we have mass storage support by default. But we dont have USB OTG feature in our mobile. If samsung mobile is not able to supply power to external usb storage device then is this hardware limitation or software limitation???
 
Last edited:

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
It may not be enabled at kernel level. Maybe some kernel dev can take a look.

As expected it didnt work on my phone :( I think my phone doesnt provide sufficient voltage to output device. ai have attached logcat for ur reference.

Info:- In my mobile module folder is in path
system/modules/
I have successfully loaded all necessary modules. I have checked it using terminal emulator. Busybox is also installed.
These are my modules d-h.st/rPl
 

Attachments

  • debug_otg_helper.zip
    19.8 KB · Views: 7,407
Last edited:
  • Like
Reactions: loginfailed

shardul_seth

Senior Member
Jul 31, 2011
1,102
1,717
As expected it didnt work on my phone :( I think my phone doesnt provide sufficient voltage to output device. ai have attached logcat for ur reference.

Info:- In my mobile module folder is in path
system/modules/
I have successfully loaded all necessary modules. I have checked it using terminal emulator. Busybox is also installed.
These are my modules d-h.st/rPl

All your modules are live!! But it is problem of bus power, as the device is not showing up on dmesg also.. Try with powered USB hub if you have one ;)
 

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
All your modules are live!! But it is problem of bus power, as the device is not showing up on dmesg also.. Try with powered USB hub if you have one ;)

I have connected power source using USB Y cable. I have given power using ac to dc charger having 5v dc output & 1 A current. Modules are properly loaded. Busybox is also installed. But still there is no output from ur app. When I say that mount then its still saying that "no device found". How...??? :eek:
I have attached log file for more reference.
 

Attachments

  • debug_otg_helper.zip
    19.9 KB · Views: 189

Jeffreycat

Senior Member
Jun 3, 2012
189
45
Is it possible to get this working on the epic 4g touch (Sprint version of the Samsung galaxy s2)? I know the international version and other us carriers support it natively
 

shardul_seth

Senior Member
Jul 31, 2011
1,102
1,717
I have connected power source using USB Y cable. I have given power using ac to dc charger having 5v dc output & 1 A current. Modules are properly loaded. Busybox is also installed. But still there is no output from ur app. When I say that mount then its still saying that "no device found". How...??? :eek:
I have attached log file for more reference.

Not much hope then! Dmesg does not show anything!
 

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
Not much hope then! Dmesg does not show anything!

Can u tell me exactly which samsung devices u have tried successfully??? Which kernel version they have??? I talked with one of our kernel developer. He told me that to work usb otg the phone must have that driver & supporting kernel. Phone with supporting usb mass storage is insufficient to work this app. You should mention this in OP.

Edit :-
For reference I have attached dmesg file. One is for when external power source is connected & another is for when external power source is not connected. Interesting thing is that in dmesg I found 'usb otg' word in last 2-3 lines of both dmesg file. But I dont understand its meaning.
 
Last edited:

dead4ngel

Senior Member
May 29, 2007
317
23
30
somewhere far far away
Works perfectly

firstly i would like to thank the following making this app possible:

DooMLoRD - For the original idea and implementation.
shardul_seth - For creating this app.

thanks to you 2 users can enjoy using their external storage devices on their phones.

I am currently using this app on my galaxy note n7000 with criskelo 11.1 rom and speedmod k3-11 kernel. works perfectly fine. tested it on my fat32 32gb memory stick and no lag. also tested on my 1 tb external hdd and no lag there either. i cant say thanks enough. keep up the good work.
 
  • Like
Reactions: shardul_seth

shardul_seth

Senior Member
Jul 31, 2011
1,102
1,717
Can u tell me exactly which samsung devices u have tried successfully??? Which kernel version they have??? I talked with one of our kernel developer. He told me that to work usb otg the phone must have that driver & supporting kernel. Phone with supporting usb mass storage is insufficient to work this app. You should mention this in OP.

Edit :-
For reference I have attached dmesg file. One is for when external power source is connected & another is for when external power source is not connected. Interesting thing is that in dmesg I found 'usb otg' word in last 2-3 lines of both dmesg file. But I dont understand its meaning.

Hey vishal, your usb_storage module is failing.. Let some kernel dev on your phone model take a look and correct the module, or incorporate it in kernel itself..
Here are the relevant lines, as you can see, some symbols need to be exported before it can work!!
<4>[ 78.752349] usb_storage: Unknown symbol usb_alloc_urb (err 0)
<4>[ 78.752746] usb_storage: Unknown symbol usb_free_urb (err 0)
<4>[ 78.789489] usb_storage: Unknown symbol usb_alloc_coherent (err 0)
<4>[ 78.790161] usb_storage: Unknown symbol usb_register_driver (err 0)
<4>[ 78.800231] usb_storage: Unknown symbol usb_sg_init (err 0)
<4>[ 78.801483] usb_storage: Unknown symbol usb_sg_cancel (err 0)
<4>[ 78.801879] usb_storage: Unknown symbol usb_reset_device (err 0)
<4>[ 78.802124] usb_storage: Unknown symbol usb_submit_urb (err 0)
<4>[ 78.802581] usb_storage: Unknown symbol usb_free_coherent (err 0)
<4>[ 78.802856] usb_storage: Unknown symbol usb_control_msg (err 0)
<4>[ 78.803192] usb_storage: Unknown symbol usb_deregister (err 0)
<4>[ 78.803375] usb_storage: Unknown symbol usb_lock_device_for_reset (err 0)
<4>[ 78.823394] usb_storage: Unknown symbol usb_unlink_urb (err 0)
<4>[ 78.824096] usb_storage: Unknown symbol usb_kill_urb (err 0)
<4>[ 78.824401] usb_storage: Unknown symbol usb_reset_endpoint (err 0)
<4>[ 78.824859] usb_storage: Unknown symbol usb_sg_wait (err 0)
 
  • Like
Reactions: vishal24387

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
Hey vishal, your usb_storage module is failing.. Let some kernel dev on your phone model take a look and correct the module, or incorporate it in kernel itself..
Here are the relevant lines, as you can see, some symbols need to be exported before it can work!!

oh thanx buddy :) You have given me very important information. I will talk with my kernel.developers regarding this.
 

vishal24387

Inactive Recognized Contributor
May 11, 2011
3,936
1,976
34
Solapur, Maharashtra
@ shardul

Hey buddy I am using cf root stock kernel having busybox inbuilt in kernel. Still do I need to install busybox saperately??? Actually without installing busybox ur app never gives me any error.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 41
    A one-stop no-pain solution for enabling and using USB OTG mass storage on your android phone!


    What is USB OTG?
    It stands for USB On-the-Go!
    "It is a specification that allows USB devices such as digital audio players or mobile phones to act as a host allowing a USB flash drive, mouse, or keyboard to be attached." - Wikipedia
    The stock kernel allows Mouse & Keyboard, but USB storage is missing..

    Features:
    • Stock and custom kernels supported
    • Mount and Unmount drive with a single click
    • No Ads!
    • Full NTFS support built-in!! (from v3.0.3)
    • Automatically start on device connect (intent broadcast) (from v3.0.3)
    • Notification when drives mounted! (from v3.0.3)
    • One click access to unmount (from v3.0.3)
    • Option to enable UTF-8 if kernel support (from v4)
    • Automatically open explorer after drive mounted (from v3.0.7)
    • One click debugging and feedback (in app) [Donate version only]

    What phones are supported?
    Sony Ericsson Xperia Neo, Neo V, Arc and the Arc S! Modules for stock kernel on second post.
    If you get it to work on other devices, please PM me and I will add them to the list.

    What are the requirements?
    1. root (su binary)
    2. busybox
    3. USB OTG cable

    How to use on stock kernel?
    See this post to load modules!

    WARNING
    I will not be held responsible for any damage to your device. Do not use for a long time, u may risk burning the device chip/motherboard due to the voltage supply in host mode.

    Screenshots and Screencast:









    More Details and Download (Click Here)
    2
    Any phone with either in-built mass storage support, or custom kernels or having required modules (for stock kernel).

    I think you need to find and load the modules yourself before using the application.

    I am expecting modules for DDLF2 rom.
    2
    @ Samsung users:
    1. Kernel must support mass storage mode.. Ask your kernel devs in your forum about it.
    2. Some models of samsung does not have power to the usb bus, so even if custom kernel/modules are there, you cannot use OTG without powered USB hub.
    2
    It could be worth to capture this string "rejected <1> configuration due to insufficient available bus power" and put on a red-lamp for the user - if this is possible. I had advised to check the devices with a PC program some posts done in a direct reply to 7illa:

    Check your USB device on the PC with the USBDevView from Nir Sofer:
    http://www.nirsoft.net/utils/usb_devices_view.html

    Look for the USB Power class, if it is 500mA it does not work for me.
    Usually USB Sticks have 100-250mA - all these work for me.
    I have only 2 cardreaders that do it, most will be in the 500mA class and are not accepted.
    1
    i will try to donate some the best app on the plant no joke