OTG

Search This thread

ran816

Senior Member
Sep 27, 2011
69
7
Does Nokia N1 got OTG support? I have Tried to connect my USB Flash through OTG cable but doesn't work for me ....
 
Last edited:

wodz69

Member
May 26, 2009
38
12
I don't have an otg cable myself (yet) but can you try to use USB Host Diagnostics (available in play store) and post the report?
 

wodz69

Member
May 26, 2009
38
12
FYI I got an OTG cable myself and it didn't work. I dug a bit deeper and found out that OTG is most likely not implemented because Nokia N1 is using legacy usb controller over usb C - see below:

Converting USB 2.0 OTG SoCs to USB Type-C
While existing Device, Host, and DRD devices can be converted to support the USB Type-C connection with some effort, it is not practical to convert existing OTG SoCs. OTG requires a new state machine using the configuration channel to support USB Type-C. Host Negotiation Protocol is used to swap host and device role for OTG, while Power Delivery communication is used to change roles for USB Type-C. Combined, these challenges preclude simple upgrades of OTC SoCs to USB Type-C. - See more at: https://www.synopsys.com/Company/Pu...esign-type-c-2015q1.aspx#sthash.Ri02Guwe.dpuf

The only chance to get otg to work is most likely preparing a kernel patch (are the sources even available?) to manually switch the connector to host mode and power the attached device externally
 

wodz69

Member
May 26, 2009
38
12
After a bit of hacking around I was able to enable usb otg on my N1!
I've had a look at kernel sources for device with similar SoC (Nexus Player) and saw an interesting debugfs entry. To my surprise it worked like a charm and immediately detected the attached usb hub with a thumb drive, it even powered the hub so I didn't have to use an external power source!
To enable host mode, the following command has to be enterted in root console:
echo A > /sys/kernel/debug/usb/dwc3_debugfs_root/otg_id

Caveats (will try to find a way to resolve them):
- after enabling host mode N1, won't charge from the usb port - a reboot is required to enable the charging again
- probably same is true for pheripherial mode (connecting n1 to a pc). In theory, changing a to b in the above echo command should bring the tablet back to normal mode but for some reason it won't charge without a reboot so I'm assuming that same is true for non otg usb connectivity. Will have a look at the sources and debug messages to find out what's going on
 

adagiov

Member
Jan 24, 2015
47
17
After a bit of hacking around I was able to enable usb otg on my N1!
I've had a look at kernel sources for device with similar SoC (Nexus Player) and saw an interesting debugfs entry. To my surprise it worked like a charm and immediately detected the attached usb hub with a thumb drive, it even powered the hub so I didn't have to use an external power source!
To enable host mode, the following command has to be enterted in root console:
echo A > /sys/kernel/debug/usb/dwc3_debugfs_root/otg_id

Caveats (will try to find a way to resolve them):
- after enabling host mode N1, won't charge from the usb port - a reboot is required to enable the charging again
- probably same is true for pheripherial mode (connecting n1 to a pc). In theory, changing a to b in the above echo command should bring the tablet back to normal mode but for some reason it won't charge without a reboot so I'm assuming that same is true for non otg usb connectivity. Will have a look at the sources and debug messages to find out what's going on

Thanks for your hard job.
I have tried on my N1. It is amazing that otg did work. However, the otg can not coexist with charging function as yours. Hope someone could find a solution.
 

wodz69

Member
May 26, 2009
38
12
Thanks for your hard job.
I have tried on my N1. It is amazing that otg did work. However, the otg can not coexist with charging function as yours. Hope someone could find a solution.

Hey,
Are you on Android 5.1.1 or 5.0 ?
I've had a look at the code of the usb driver of the a phone with similar chipset (asus zenfone 5) and it seems that the source of the problem is that the tablet fails to detect an appropriate charger type, which could mean either that the otg cable does not support this or the code of the driver does not work properly with usb C. Was wondering if something changed around this after the update?
 

adagiov

Member
Jan 24, 2015
47
17
Hey,
Are you on Android 5.1.1 or 5.0 ?
I've had a look at the code of the usb driver of the a phone with similar chipset (asus zenfone 5) and it seems that the source of the problem is that the tablet fails to detect an appropriate charger type, which could mean either that the otg cable does not support this or the code of the driver does not work properly with usb C. Was wondering if something changed around this after the update?

Hi, mine N1 is still running the android 5.0.
I am afraid Root is the prerequisite to hack otg. Unfortunately, root is not available on android 5.1.1 till now, so even the android 5.1.1 driver support it, that won't help.

Thanks,dude.