[R&D] Traces of USB HOST / OTG mode in Leo registry - HD2 General

For all those interested, here is what I found as proofs for (partial?) USB OTG support in HD2 ROM:
HKEY_LOCAL_MACHINE\Drivers\BuiltIn\UsbOtg
HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\USBCDProfile
Looks like they once had this feature, even drivers for it, but then partially removed it (nothing otg-related in \windows, but storage manager profiles for USB devices).
The Eugenia ROM project states though they have re-enabled USB OTG, but *how*? I can't imagine that simply putting back the missing driver files from a leaked ROM or other device is enough.

You are not the first to discover. Please join http://forum.xda-developers.com/showthread.php?t=603592 and close this thread.

may i ask what the significance of usb host/otg is?

from what it looks like, you plug an adapter into your microusb, that allows you to plug usb thumbdrives, etc into your phone, thus making it a hosting device.

Related

htc universal usb host driver

Anyone got a wm5/ce5 usb host driver for htc universal (pxa270 intel arm processor)? I'm trying to write one, but if someone could save me the effort, please do? I know it will work, as it does under linux.
USB Host on a universal will be great. Didn't know it works under Linux.
driver for view a universal as a sd writer and reader or a driver for the universal for attach a pendrive to a universal?
drivers for attaching a pendrive.
A USB host driver enables you to hook up USB devices like memory key, keyboard/mouse etc. to the universal. This feature is only available on a few pda models made by toshiba, fujitsu, asus, acer etc.
imesh said:
driver for view a universal as a sd writer and reader or a driver for the universal for attach a pendrive to a universal?
Click to expand...
Click to collapse
Correct me if I'm wrong but wouldn't it have to be supported by the hardware? As far as I know the Universal does not have USB host so getting a driver wouldn't be much help...
apparently it works under linux so the hardware must support it
Good question. I need the host driver and then a driver for mass storage (e.g. pen drive, hard driver, etc), HID (for keyboard mouse), etc. The htc universal has a usb host controller built into the arm processor (pxa270). The problem is that it also has a usb device controller build in which takes precedent for the mini usb out, so you can use activesyn. However, with the right bit of code you can reconfigure port 2 to act as a usb host. The other problem is that port 2 doesn't have any power (but that is easy to fix with an external power source from a usb hub or battery [I use a single AA battery, (giving 5 volts at 0.5-1 amp), that lasts for 2 hours]).
hi any success yet with the usb host function? is it possible or just a hoax?
nothing personal it just seems that some ppl like to make fun about this topic and spread hoax!
u have any evidences that it works under linux?
maybe this link is helping you in creating a driver!
http://www.deje.gmxhome.de/index.html
cheers
Mike
Suspect that you will also need the proper USB host cable that is used on the Sharp Zaurus under LINUX to let the Universal know that you want the USB port to work in host mode, they are about £10 & available from here http://www.figlabs.com/catalog/product_info.php/products_id/33
I have the Zaurus & Universal so I know the cable fits but I don't have a driver to test.
Mike
Mikew said:
I have the Zaurus & Universal so I know the cable fits but I don't have a driver to test.
Click to expand...
Click to collapse
The USB host is used by Linux on HTC phones, but not for the external USB connector
(BT on magician, and gsm_data on some others http://wiki.xda-developers.com/index.php?pagename=HTC_Serial)
Mikew said:
Suspect that you will also need the proper USB host cable that is used on the Sharp Zaurus under LINUX to let the Universal know that you want the USB port to work in host mode, they are about £10 & available from here http://www.figlabs.com/catalog/product_info.php/products_id/33
I have the Zaurus & Universal so I know the cable fits but I don't have a driver to test.
Mike
Click to expand...
Click to collapse
I have one for wm2003, I not if it worked in wm05.
Yuo can try it?
any success yet??
Dont think I would want to try a WM2003 driver on a WM5 device.
Mike
Mikew said:
Dont think I would want to try a WM2003 driver on a WM5 device.
Mike
Click to expand...
Click to collapse
You can do one backup before installing it.
I have installed it in my Universal and I have not had problems with wm5, but it has not worked with my standar cable
I've had no success with it either.. I have a cable that has the correct connectors.. originally used for connecting a usb pen drive to my lcd picture frame.. but like I said no luck with this RATOC driver.
Mikew said:
Suspect that you will also need the proper USB host cable that is used on the Sharp Zaurus under LINUX to let the Universal know that you want the USB port to work in host mode, they are about £10 & available from here http://www.figlabs.com/catalog/product_info.php/products_id/33
I have the Zaurus & Universal so I know the cable fits but I don't have a driver to test.
Mike
Click to expand...
Click to collapse
i think that this cable is not enough, what about a 5v power source for the usb pen drive you'd connect?
your universal couldn't supply that, then you need a usb cable that can connect to a power source aswell.
You need to use a powered USB hub if the slave device requires power, there are one or two hubs that run on batteries so you can still be mobile.
You will need a hub if you plan to use more than 1 USB device at the same time.
Mike
allmycrud said:
Anyone got a wm5/ce5 usb host driver for htc universal (pxa270 intel arm processor)? I'm trying to write one, but if someone could save me the effort, please do? I know it will work, as it does under linux.
Click to expand...
Click to collapse
I didn't know we had it in Linux yet??
In any case, while many devices do use a USB Host or USB Slave chip from a higher level, I believe the Universal talks to its USB as a raw stream device, and therefore can (and does, on occasion) act as a pure Serial communication channel (no discernable protocol beyond 8,n,1) or, therefore, any other type of serial-based channel. Yes, what I am saying is that you could, in fact, hook up a Serial ATA hard disk to an RS232 or USB port directly, so long as the device with the port has low enough level access to the port to absolutely control the data I/O.
The problem you face, however, is that to use the USB port as if the device were the host, you would first need to remove or disable whatever makes it work as the slave. In Windows Mobile that's really not an easy job given the number of different devices and different drivers, some with USB chips, some without... On many devices I can imagine that doing that alone would really bugger up general operation. What happens, for example, to ActiveSync when you suddenly get rid of the port it usually talks to for sync?
Mikew said:
You need to use a powered USB hub if the slave device requires power, there are one or two hubs that run on batteries so you can still be mobile.
You will need a hub if you plan to use more than 1 USB device at the same time.
Mike
Click to expand...
Click to collapse
Some USB devices have batteries, or have their own power supply You can also get USB cables with an extra (mains or battery) feed wired to the USB's power lines in parallel.
whatever happened to this thread?
allmycrud have you seen the thread from Zeno with USB host drivers?
there is at least one report of it working on a Universal, but I can't get it working on wm6.1... still have hopes though, as all reports suggest that USB host is possible on a uni... can never get verification from anyone though...

USB Host

anyone has tried yet usb host functionality ? I found the drivers of ETEN M600/G500 but not tried yet... processor should be the same so the trinity should support this function.
Thank you for your enquiry, the p3600 was not designed to allow usb memory expansion as such there is no current or planned method to enable what you have requested.
It may be possible to find a 3rd party solution but this would not be supported by ourselves but the solution supplier.
Should you have any other problem, please do not hesitate to call us. Your Local number can be found at http://www.europe.htc.com/support/cs_by_phone.html
Best regards,
HTC Support
Guybrush said:
I found the drivers of ETEN M600/G500 but not tried yet...
Click to expand...
Click to collapse
Could you share either a link or the file?
Should be this
OK, I'm with Hermes, but anyway... According to the specs, E-Tens have S3C2440 while we have SC32442, but they should be the same. The schematics of the evaluation board (p.6) shows that there are two USB hosts: one from DN0/DP0 pins, the second from DN1/DP1 pins. The latter can also be configured as USB Device... and that's what we have at our MiniUSB connector.
So... if E-Ten uses the first USB Host pins, we're out of luck. If they've implemented it in shared mode, the driver should work. But I have a reason for a doubt: M600/M500 have separate I/O pins for USB host and device, while the connector itself is provided on the cradle. If they made it shared, it would be more easy to implement host/device sharing in the cradle rather than in the device...
A soldering iron may help, but I don't want to loose the warranty yet.
An owner of the Platform Builder may recompile the driver to utilize the shared pins as well. That's a better solution.
If you want to make an adapter for tests, note, that you need to supply +5V from an external power supply (which can be a PC USB port), and that you don't need to cross the pins: DN1 is D- for both host and device, and DP1 is D+ for both. Nothing but connectors and wires should be required.
One more note: a USB Host driver for a shared connector should shut down USB Device driver, something similar that WM5torage does. This also makes me doubt that E-Ten uses shared pins, and that's why I believe that a different driver is required.
But it should be possible!
OK, I've made an adaptor from MiniUSB male (to TyTN), USB A female (for devices), and MiniUSB female for power supply.
In the MiniUSB male I shorted pins 4 and 5. At least this way I can use it for charging from other power supplies, and I think it hould not harm, because pin 4 on GND means USB Host for MiniUSB.
I've installed the above drivers, and also USB Mass Storage drivers (attached).
I have a USB mouse, a card rider (4 slots), an MP3 player, and an RS232 port.
Nothing but MP3 player showed any sign of an activity in all my tests.
The MP3 player shows "MASS CONNECT" on its screen if it detects USB activity. If it does not, it just turns to normal operations, showing that it takes power from USB. It turned to this mode after I installed the attached driver. But I see no a mounted disk on TyTN itself.
So, it works somehow, and I'm almost confident it can be made to work...
Probably I just did something wrong... Who else wants to try?
I must add that installed stuff didn't affect the USB Device from working: ActiveSync connects OK, and WM5torage 1.73 works as before.
Hardwarewise, there are a couple of things to try: disconnect pin 4 from GND at the phone side, disconnect power supply from the phone (providing it only to the attached device), or both...
i'm waiting connectors to try something by myself too. Thanks Lurker0 for all this tips.
thread about usb host from eten users
http://www.eten-users.net/index.php?showtopic=4328&st=0
I ended up with a hard reset Of course I made full backup before the tests.
I've found out that GPRS stopped working. The error messages were like "Modem not found" and "The current call should be finished before data connection" (from memory and ranslated from Russian).
Then I found out that hardware settings for OHCI are wrong:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\OHCI]
"MemBase"=dword:B0900000
"Irq"=dword:0000000B
"UseExistingSettings"=dword:00000000
"MemLen"=dword:00001000
"SysIntr"=dword:00000011
"Order"=dword:00000001
"Index"=dword:00000001
"Dll"="ohci.dll"
"Prefix"="HCD"
"InterfaceType"=dword:00000000
IRQ should be 0x1A (from working registry and also Samsung datasheet), and memory base 0xB5900000.
I've deleted ohci.dll and usbd.dll, then uninstalled that HID driver to no available. I needed a working phone now, and decided to hard reset and restore.
It's strange why IRQ and MemBase were wrong. It may explain why it didn't work. Good I noticed them before tests.
Hey Lurker0
Did you get around to trying it again or was the project abandoned?
Would love to hear how you are going with this if you're still working on it =)
No, I did nothing since that.
HTC Herald compatibility
Does anyone know if the herald can host any USB devices

DEV: USB Experts

Ok,
If I were to make up an appropriate USB cable.....
1) Could I get my P3600 to talk to a USB control box that controls a light display which is normally driven by a Windows PC?
2) Is there any API facility in the Windows Mobile OS that allows a programmer to send and receive USB data packets or would I have to hit the PocketPC device hardware and bypass the OS?
3) Is any of the above possible?
Thank you very much
using usb it would not be posible
usb comes in 2 types masters and slaves
htc pda's are slaves they cant init comm with usb devices
much like that you cant connect an usb harddisk with an usb webcam
trinity have usb host...
you can see in samsung -
http://www.samsung.com/global/syste...roduct/2007/7/7/324600sc32442x__schamatic.pdf
in page 6 you have usb connection,
in trinity we have usb device, if you want to have usb host you will have to change the wiring inside the trinity.
for this change you will need to replace R75 from 470K to 15K, disconnect R83 and make a short from R76 to gnd with 15K(ohm), disconnect R82 and connect Vbus to 5V
(all the numbers of the resistors are for the Evaluation Board, in the trinity it will be diffrent numbers/connections)!!!!!
this will NOT work with your pc!!!! (need more modifications but can be done)
only host option!!!
you wont able to charge your trinity!!! (need more modifications but can be done)
but you can make switch like in the PDF
and then you will have usb host.
i have done some work on the sc32442 chip and it worked with usb host
(not the trinity).
no because the cpu have something dont mean that it's map'd out in the pcb of the manufacturers
and doing a hardware mod can kill the device and will 100% surely void the warrenty
and when all the hardware changes are then don then he needs to write a usb driver for wm to support the
hardware he want to talk to if non already exist
htc seem to use an external chip to do the usb stuff which is basic
only Athena and flame support it
tbuaron said:
trinity have usb host...
you can see in samsung -
http://www.samsung.com/global/syste...roduct/2007/7/7/324600sc32442x__schamatic.pdf
in page 6 you have usb connection,
in trinity we have usb device, if you want to have usb host you will have to change the wiring inside the trinity.
for this change you will need to replace R75 from 470K to 15K, disconnect R83 and make a short from R76 to gnd with 15K(ohm), disconnect R82 and connect Vbus to 5V
(all the numbers of the resistors are for the Evaluation Board, in the trinity it will be diffrent numbers/connections)!!!!!
this will NOT work with your pc!!!! (need more modifications but can be done)
only host option!!!
you wont able to charge your trinity!!! (need more modifications but can be done)
but you can make switch like in the PDF
and then you will have usb host.
i have done some work on the sc32442 chip and it worked with usb host
(not the trinity).
Click to expand...
Click to collapse
uhm ... very nice impact!
are you know the jtag pins? must be the same like your embedded board.
This is not good...
What is the first HTC device to support USB Host?
Is it that big fat thing with a detachable keyboard (can't remember the name )?
Thanks for the replies.
PS One last question....
Does anyone make an SD or miniSD port based USB controller card?
Thanks again
Is it that big fat thing with a detachable keyboard (can't remember the name )? == Athena
and yes

Connecting a USB Memory Stick

I have tried connecting a memory card (8Gb) via a micro USB adapter but cannot see the contents of the memory stick on my HD2 to upload/download files.
Also, have the same problem when connecing up a USB TV stick adapter to watch digital TV on the HD2.
Please advise someone if you have the knowledge to share.
Many thanks.
HD2 doesn't have a USB host function by default. That means you can't do any of those that you are trying. There is a thread named Leo USB Host, you might be interested in that. There might be a beta host driver released there some day, you would still need to provide power though.

[REQ] Kernel with USB Host Enabled

To all Devs,
May we request to have USB host enable kernel please?
Thanks.
It's not a software issue. HD2 doesn't support USB Host .
AL1982 said:
It's not a software issue. HD2 doesn't support USB Host .
Click to expand...
Click to collapse
Actually it looks like lack of USB host is a software issue. I read in the Linux development thread that USB host is enabled in the HD2 Ubuntu rom..... What I dont know is whether android in its current state supports USB host. Did I read somewhere that USB host is a feature in the upcoming Android 2.3? I am not sure.
HD2 does support usb host. There are kernels in autobuild system that have usb host enabled.
Once the software is setup, (i know only ubuntu) you need to inject power between hd2 and the hardware you want to connect, because our tiny battery can't handdle the 500ma/5V power output needed for most usb hardware.
Search on ubuntu hd2 wiki, you'll find schematics for power injection cable, and people that have succesfully connected keyboards, mouses, and mass storages.
doloop said:
Once the software is setup, (i know only ubuntu) you need to inject power between hd2 and the hardware you want to connect, because our tiny battery can't handdle the 500ma/5V power output needed for most usb hardware.
Click to expand...
Click to collapse
It's not that it cannot handle the power consumption on its microUSB port, it's because there is no way that it can provide power at all (it is not wired to do that), and that's why you have to provide power for all of your USB gadgets with the Y cable, for which you can find the schematics on the htc-linux wiki.
can this be possible?
Theoretically, HD2 should provide power to USB if is switched to OTG. PMIC that HD2 using it (PM7540) is able to do that.

Categories

Resources