[Q] How to directly access usb port signal from app? - Nexus One Q&A, Help & Troubleshooting

It would be very cool if I could manipulate my Nexus One usb port's signal to 5V and 0V from an app directly. It would allow controlling simple motors without any usb protocol.
I think the lowest possible level of usb access in the android source code are these lines (IUsbManager.java):
Code:
private static final java.lang.String DESCRIPTOR = "android.hardware.usb.IUsbManager";
<...>
android.os.IInterface iin = (android.os.IInterface)obj.queryLocalInterface(DESCRIPTOR);
You can find that here: bit.ly/IlUzV0
So I'm sure you have to go deeper than that. I'm asking for any guidance towards developing this. How do I go about exploring the kernel code? Can I even do that?

You can explore kernel code, but I'm not sure you have access to USB stack other than in pre-compiled .so form. You'll need to substitute the USB stack and control the signals directly through capabilities of USB Link (peripheral). Theoretically it's possible, practically - unless you're an experienced SW/HW engineer, have the QSD8x50 manual in possession and are able to write a kernel-space driver that will be able to go "under the stack" (much like USB driver of various Virtual Machines on Windows, namely VMWare) - I don't think so.

Related

USB solution for Wireless Modem??

Anyone have/know of a solution to use USB instead of Serial for the wireless modem fetures?
The Laptop systems I build are too small and dont offer LPT or Serial ports.
Thanx
Todd
-- I do have a USB to Serial adapter kit from Belkin but would rather not have to use that.
I know how to do it: there's just no freakin' time!
Could someone please do the following:
- Create a virtual serial port on the PC. (This is the only non-trivial part, especially if it must work under 98/ME as well as under NT/2000/XP.)
- Verify presence of special DLL upon ActiveSync, transfer DLL if it's not there.
- When COM port on host PC is opened, signal is sent to DLL, which proceeds to suspend TAPI and talk to the the modem. (See XDAunlock.exe source for details)
- Use the documented method for transferring streaming data via ActiveSync, from the virtual comm port, via the DLL, to the modem. And vice versa, ofcourse. Comm port can be at any speed, modem is 115k2.
- Revert to normal when virtual COM port is closed.
If someone has code for a virtual com-port lying around, the rest isn't hard, and it would make a lot of people very happy.
well i guess ill do this instead for now
here is a nice small adapter i found w a virtual port - similar to the Belkin i already have but smaller in size (and this is important)
http://www.iogear.com/products/product.php?Item=GUC232A
Hey can i please get a pole from the members on who is using the wireless modem - the quality they are getting and the provider (ie ATT, Tmobile...) they are using please?
WiFi anyone??
well here is an application im planning on emulating w the Wireless modem of the XDA. Currently Im using Wifi which is great but when i cant "stumble" on an open AP id like to use the wireless modem in the XDA
http://www.jonadams.com/pages/wifi/wifi_setup.htm

Lg Ks20 Usb Otg?

With this whole driver controversy and HTC not paying for Qualcomm drivers, I was wondering if USB OTG was left out on the Kaiser but not on the KS20. Can any KS20 owner please check if USB OTG works on
the KS20. I really miss not having the ability to directly transfer files from my flash drive to the phone.
Thanks
P.S. Checking the KS20 rom dump, there is a file named msm7200otg.dll that is NOT on the Kaiser. This could get interesting.
Bump: Am I the only one who cares about this?
maybe nobody has a ks20, im interested too in this, but im not a ks20 owner so i cant help...
Unlike graphics, I believe USB OTG would require different hardware to work. The Kaiser would have to have the hardware necessary to supply a certain amount of power to the USB port, as well as the ability to be a USB host. I would not get your hopes up.
AFAIK the port isnt capable of USB hosting. So its a no go.
I know, thet you can use KS20 like USB-Stick.
But i dont think it have one USB-Host.
If you want, you can find KS20 Service Manuals (was here some were) and look there, if it is possible with this hardware.
VidMan said:
With this whole driver controversy and HTC not paying for Qualcomm drivers, I was wondering if USB OTG was left out on the Kaiser but not on the KS20. Can any KS20 owner please check if USB OTG works on
the KS20. I really miss not having the ability to directly transfer files from my flash drive to the phone.
Thanks
P.S. Checking the KS20 rom dump, there is a file named msm7200otg.dll that is NOT on the Kaiser. This could get interesting.
Click to expand...
Click to collapse
msm7200otg.dll ?
that sounds promising
The plot thickens...
Well, I just got hold of a KS20 service manual and I found some relevant information about the USB functions of the KS20.
Interpret these as you want:
Page 28 of the service manual: USB-OTG transceiver for full-speed (12 Mb/s) and low-speed (1.5 Mb/s) interfacing of the MSM device to
computers as a USB peripheral, or connecting the MSM device to other peripherals
-I wonder what other peripherals are?
Page 35: USB OTG core supports both slave and limited host functionality.
-I believe here's our answer!
Ok, so at least we now know that USB OTG can be implemented. However, I have absolutely no idea how, or if, we can get this to work on the Kaiser.
Some food for thought.
I have the LG KS20 for 3 weeks now and am happy so far with all its functions working flawlessly. As usual with Windwos Mobile it needs Softresets from time to time. Annoying is the fact that it doesn`t show the SDmicro card or its content unless you perform a soft reset - every time !?
USB HOST function:
it is possible to use the LG KS20 in that way ONLY: it will allow you just to exchange data with/from the inserted SDmicro card in the phone - nothing else !
So definetely no full USB Host support here.
THX
ombuddy

Tilt communication with an Arduino?

Hey all,
I was wondering if it is possible to communicate with an Arduino with a Tilt through the Tilt's USB port? I've just gotten into device application development and I had a cool idea I was wanting to make but the biggest hurdle is how to communicate between the Arduino microcontroller and the Tilt.
For those that don't know what an Arduino is (I feel sorry for you ), it is a microcontroller platform based off of the AVR Atmel168 processor. The version I've got on hand right now is a Seeeduino that has a mini-USB port on-board communicating to the Atmel168 through an FTDI USB-Serial chip (shows up as a serial port when plugged into the computer). It would be great if the Arduino showed up as a new serial port on the phone when plugged in, but I doubt it will be that easy. Does anyone know if the Tilt/Kaiser USB port can host other devices?
If anyone has a suggestion or has tried something like this, please comment. Or if I'm just crazy for thinking the phone can do this, tell me so.
Thanks all!
-Jeremy
USB drivers
Im not sure how much this could help, but it may get you off to a good start http://forum.xda-developers.com/showthread.php?t=480899
i noticed it said serial port in there somewhere, so i hope it helps!
You can have a try with the drivers mentioned above. If this fails, hook a Bluetooth module to your Arduino and forget about wires
When I was waiting for a haircut today, I was fiddling in the task manager and looked at the devices tab. Just thought I'd run these by you all:
Com 8: serialusbfn.dll (\Drivers\USB\FunctionDrivers\Serial_Class)
Com 9: Serial_UART.dll (Drivers\BuiltIn\SERIAL_UART3)
I haved searched around or messed with these yet but what in the world could com 8 be being used for right now?
-Jeremy
P.S. I did see that link and that will be the next thing I'll try, Thanks!
AFAIK there are some internal peripherals that are connected to the main processor through serial ports. That might be those.
Use I2C - you can get at it through the DS2746... when looking at the PCB on the side with all of the metal-enclosed areas, it's on the left, and towards the bottom (IIRC)... should be able to run 4 wires (get a ribbon cable) out the bottom (into the battery compartment)...
I've been considering this seriously... I2C is a damn useful bus, and it's underused in this device (only battery chip, touch screen, and camera control, AFAIK)....
The bus itself is two wires - SDA (data) and SCL (clock), and you'll also need +5v and ground.
Would be nice to hook up a spare ds1621 (you can get these as free samples) or a compass/accelerometer chip

N7100, charge while in USB host mode.

Hello.
I'm aware that it is possible to get an N7100 to charge while in USB host mode via a h/w mod.
I was wondering if the same thing were possible via a kernel modification? Has anyone got any idea where I need to look?
I found an answer to this question for a different phone:
"On the*Galaxy*Nexus, removing the complete body of method tuna_set_vbus_drive() in arch/arm/mach-omap2/board-tuna-connector.c will disable charging of OTG slave devices and will allow the OTG host itself to be charged. The battery icon will not be updated by this modification alone."
This particular file doesn't exist on the N7100 + Omni (or i haven't it), so i guess the functionality must be somewhere else.
Thanks.
kaleb500 said:
Hello.
I'm aware that it is possible to get an N7100 to charge while in USB host mode via a h/w mod.
I was wondering if the same thing were possible via a kernel modification? Has anyone got any idea where I need to look?
I found an answer to this question for a different phone:
"On the*Galaxy*Nexus, removing the complete body of method tuna_set_vbus_drive() in arch/arm/mach-omap2/board-tuna-connector.c will disable charging of OTG slave devices and will allow the OTG host itself to be charged. The battery icon will not be updated by this modification alone."
This particular file doesn't exist on the N7100 + Omni (or i haven't it), so i guess the functionality must be somewhere else.
Thanks.
Click to expand...
Click to collapse
With the 4210s, the USB interface chip WAS capable of detecting a USB ACA (Accessory Charger Adapter). CM and derivatives supported ACAs on the 4210 devices thanks to a patch.
I'm not sure if the Exynos 4412 USB interface chip (Samsung used the same chip on all 4412-based devices to my knowledge, except for maybe the N80xx family) has the same capability.
Unfortunately, many of the Y-adapters out there aren't proper ACAs. I'd be willing to support proper ACAs IF they can be detected correctly, but I'm not going to allow any workaround hacks that don't follow the USB standards.

Connecting Fire to Ethernet with adapter

Hi I recently purchased online a micro-USB to RJ45 Ethernet adapter with a 3 port USB hub like these. It was insanely cheap so I thought why not. Reviews said in most cases it was plug and play, however, I am unable to get the ethernet to work. No network icon appears in the upper right and there does not seem to be any options for a network connection. The USB ports work and it was fun watching a mouse appear and an external keyboard work immediately upon plugin. They provided a driver CD and I sideloaded all the files (85mb) onto the Fire - Pictures folder. How do I install the drivers to get the ethernet to work?
Note: Using ES File Explorer I went to Network>LAN> tapped on Scan but nothing was found.
A side question is, does anyone know how to access the 'USB computer connection' menu (where it gives you the option of selecting 'Media device' MPT or 'Camera' PTP) in settings without plugging it into a PC via USB ie. from the settings menu?
Thanks
WXsky
Doubt there is a USB to RJ45 driver driver for this device as it was never intended to work with a wired network connection. As for your other question I don't believe that menu is available on non-rooted FireOS unless a tether has been established (and then only via notification).
Apparently it wasn't intended to work with an external keyboard or mouse but this adapter made it so it could. When I plug it into the Fire it gets power as indicated by a greenish yellow light. When I plug it into the ethernet cable another light appears and it is red so that means I have connectivity, just no driver installed I'm guessing.
Could anyone else weigh in on this please? I need a bit more than just a glib "No". As I mentioned I have the drivers. They were provided on a mini disc. How do I install them? Not totally familiar with Android or other Linux devices however I've dabbled with Ubuntu but nothing on these confounded tablets.
WXSky said:
Apparently it wasn't intended to work with an external keyboard or mouse but this adapter made it so it could. When I plug it into the Fire it gets power as indicated by a greenish yellow light. When I plug it into the ethernet cable another light appears and it is red so that means I have connectivity, just no driver installed I'm guessing.
Could anyone else weigh in on this please? I need a bit more than just a glib "No". As I mentioned I have the drivers. They were provided on a mini disc. How do I install them? Not totally familiar with Android or other Linux devices however I've dabbled with Ubuntu but nothing on these confounded tablets.
Click to expand...
Click to collapse
Just because you have a mini-disk does not mean the contents will work with this device or FireOS. I have yet to see an Android device support an Ethernet adapter via OTG; a brief Google search suggests it may be possible with a few select adapters and devices. Aside from driver both kernel and ROM (FireOS) must cooperate to secure the connection. Unlikely Amazon would include that intentionally leaving it to the underlying version of Android (5.1.1) to manage the interface. Given the complexities of establishing/maintaining an Ethernet data connection me thinks you have a project on your hands. Good luck.

Categories

Resources