Re: Beagleboard as Android device (USB OTG)

259 views
Skip to first unread message

jo

unread,
Mar 26, 2013, 4:08:15 PM3/26/13
to beagl...@googlegroups.com, robert....@gmail.com


Am Dienstag, 26. März 2013 09:11:56 UTC+1 schrieb robert....@gmail.com:
Hello all,

I have been trying to get my Beagleboard to act as a device with the view to downloading Android packages to it. As usual, the information isn't contained in one place in the TI literature (I am using Froyo). I have a USB mini-A connector in the OTG port. I am led to believe that mini-A is correct if I want to use the board as a device. Is this correct?

Next, I plug the other end of the device into a Windows PC where I am using USBLyzer to examine the traffic. First of all, I get no traffic. I expected the device would provide its vendor ID and product ID so that the operating system could load in a driver for it. I don't even get the "USB device has arrived" sound in Windows. 

Now, I have programmed USB interfaces on ATMEL boards to provide my own vendor ID and product ID.  I expected that the board itself would provide these IDs. Examining these instructions:

  • Make sure that the mini-usb cable is connected between the host usb port and the target’s USB OTG port (Note, no mention of physical connection!)
  • Turn on "USB Debugging" on your board. On the board (UI screen)-
    • Go to home screen, press MENU,
    • Select Applications, select Development, then enable USB debugging.
    • Alternatively, you can navigate to Settings->Applications->Development and then enable the "USB debugging" option.
  • Setup host machine to detect the board. On Ubuntu Linux host machines this is done by adding a rules file to configure device vendor ID of on-board OMAP device.
  • For the EVMs and Boards covered here, the vendor ID is "18d1".

The instruction: On Ubuntu Linux host machines this is done by adding a rules file to configure device vendor ID of on-board OMAP device.

Shouldn't that be "detect device vendor Id"? It starts off with detect but then says configure on-board OMAP device.

What am I missing? Why isn't the board providing the Vendor Id and Product Id? Do I need another Kernel module?
 
I'm using my BB as a USB mass storage device for a PVR. I had to build a new kernel as the required module omap2430 was not included in Robert Nelsons kernel. After installing my custom kernel and loading omap2430,  I was able to load the "standard" usb modules, e.g. g_mass_storage to make the BB act as a USB storage device.
Maybe this helps.

-jo

Jason Kridner

unread,
Mar 26, 2013, 6:48:41 PM3/26/13
to beagl...@googlegroups.com
On Tue, Mar 26, 2013 at 4:11 AM, <robert....@gmail.com> wrote:
Hello all,

I have been trying to get my Beagleboard to act as a device with the view to downloading Android packages to it. As usual, the information isn't contained in one place in the TI literature (I am using Froyo). I have a USB mini-A connector in the OTG port. I am led to believe that mini-A is correct if I want to use the board as a device. Is this correct?

No, you'd use a mini-B. A is for host and B is for device.

Why are you using such old code (Froyo)? Have you taken a look at http://arowboat.org (linked to off of http://beagleboard.org)?

If you have at least a Rev C4 BeagleBoard (256MB RAM), you can start with the TI Android build:
 

Next, I plug the other end of the device into a Windows PC where I am using USBLyzer to examine the traffic. First of all, I get no traffic. I expected the device would provide its vendor ID and product ID so that the operating system could load in a driver for it. I don't even get the "USB device has arrived" sound in Windows. 

I don't know which Froyo you are using. Best guess here is that you are using the wrong cable, since you say you are. I don't even know where you found a Standard-A to mini-A cable.
 

Now, I have programmed USB interfaces on ATMEL boards to provide my own vendor ID and product ID.  I expected that the board itself would provide these IDs. Examining these instructions:

  • Make sure that the mini-usb cable is connected between the host usb port and the target’s USB OTG port (Note, no mention of physical connection!)
  • Turn on "USB Debugging" on your board. On the board (UI screen)-
    • Go to home screen, press MENU,
    • Select Applications, select Development, then enable USB debugging.
    • Alternatively, you can navigate to Settings->Applications->Development and then enable the "USB debugging" option.
  • Setup host machine to detect the board. On Ubuntu Linux host machines this is done by adding a rules file to configure device vendor ID of on-board OMAP device.
  • For the EVMs and Boards covered here, the vendor ID is "18d1".

The instruction: On Ubuntu Linux host machines this is done by adding a rules file to configure device vendor ID of on-board OMAP device.

Shouldn't that be "detect device vendor Id"? It starts off with detect but then says configure on-board OMAP device.

What am I missing? Why isn't the board providing the Vendor Id and Product Id? Do I need another Kernel module?

Are you connected up to the serial port on the board? Perhaps you can capture a serial log and share it? It would help to know the USB gadget driver is getting loaded.
 

--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Reply all
Reply to author
Forward
0 new messages