No problem on the delay reply. I was tinkering more on the OS side looking at the kernel code.
What I would like is to have the Torpedo be the USB accessory to a USB-Host Android phone running something greater than Android 4.4.
On the Host side, I have coded an App to interface using the USB-Host Mode (OTG). This will supply the power and current to the Torpedo. The torpedo should be in USB Accessory mode. However, I cannot get the Torpedo to show up as a USB accessory device. Normally when you get a USB-Accessory supported device, you will get a notification asking if you want to connect to the USB host. However in the Torpedo case, nothing shows up on the OS. I do get the following in the debug port:
android_work: sent uevent USB_STATE=CONNECTED
android_usb gadget: high speed configure #1=android
android_work: sent uevent USB_STATE=CONFIGURED
However, I also get the above when I connect the torpedo to a USB port of a laptop to debug it.
I know my host app is working because when installed on a phone running android 6.0 and connected to a USB-Accessory mode supported android phone, I get a notification indicating if I want to connect.
Again I have installed the necessary libraries to get the USB-Accessory mode to work.
I have looked at the kernel code and it looks like all the necessary code is there to make it work, i.e. f_accessory.c located in the kernel/driver/usb/gadget/ folder is used during compilation.
Right now my best guess is someone the Android OS is not connected up properly to detect and use the USB devices. If this is the case, I might have to move to the the ICS android version which is buggier than the Gingerbread build for the Torpedo. I would prefer to avoid migrating because there are kernel/OS changes I did to the the Gingerbread build.