[[bc10]]

-Contents
#Contents

* Overview [#id9d28f1]
>
This article explains Android Debug Bridge (adb or ADB) connection on bc10. ADB is necessary for the system management~
and debugging applications.~

* ADB [#nded0cc4]
> 
ADB (or adb, either way) is a management tool, which monitors the current status of the device and its os and applications.~
The operation of Android from ADB is very smiler to handle Linux from serial console.~

>
The server of ADB,  Android Debug Bridge daemon (adbd), is working on a device running Android, and '''adbd''' communicates with~
the ADB client, which is operated in the development environment.~
For the  details of ADB, please look at [[Android Debug Bridge section>http://developer.android.com/guide/developing/tools/adb.html]] of android developers.~

* Obtaining and configuring ADB client [#tb291b4b]
> 
Download the Android SDK from [[its download page>http://developer.android.com/sdk/index.html]], and install it. ADB can be usable.~
Before the version of '''android-sdk_r8''' is instroduced, ADB commands are included in the archive of the SDK. After downloading the~
SDK and setting PATH, it can be used immediately. However, since the version of '''android-sdk_r8''', Android SDK Platform-tools,~
revision 1 is the requirement to use ADB. Android SDK Platform-tools, revision 1 can be available from Android SDK and AVD Manager.~

>
To install the SDK, please follow the instructions described at [[Installing the SDK>http://developer.android.com/sdk/installing.html]]. As the installation is successful, '''adb  command''' is placed~
at '''<sdk>/platform-tools/'''. Please set PATH to here.~

>
As installing the SDK on Windows,  download and execute '''installer_r08-windows.exe'''. To use the default setting of the installation, '''adb.exe'''~
is placed in the directory shown  below.~
 C:\Program Files\Android\android-sdk-windows\platform-tools\adb.exe
Then, execute '''ADB''' from command prompt or Windows Powershell.~

>
For Liniux, supposedly extract '''android-sdk_r08-linux_86.tgz''' at '''~/'''.~
 ~/android-sdk_r08/platform-tools/adb 
execute shell in the directory shown above.~

* ADB connection [#d083a89b]
** ADB (Linux) via USB [#rde1c6ee]
>
On bc10, USB is the default for ADB connection, and '''USB_GADGET''' and '''CONFIG_ANDROID_ADB''' are set up at '''config''' in '''kernel'''. ~

>
As choosing "Setting" applications of Android on bc10,  select "Applications" then "development." Marking on the Checking box of~
"USB debugging," make USB debugging mode  effective.~

>
Add the configuration of '''udev''' to the development environment of Linux.~
Create the directory of '''/etc/udev/rules.d/51-android.rules''' write into the commnad below~
 SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
'''18d1''' indicates USB vender id, which Google issues.~
The vender id is configured at line 86 of '''bc10-rowboat-kernel/arch/arm/march-omap2/board-omap3bc10.c'''.~
After creating '''udev''' rule, configure permission shown as below.~
 $ sudo chmod a+r /etc/udev/rules.d/51-android.rules
USB cable is connected to the OTG of bc10, the other end is plugged into a PC, which has been installed development environment.~
Then, execute the command listed below.~
 $ adb devices
 List of devices attached
 20100720        device
After execute the  command, if ADB connection is successfully established, ADB connection list appears as shown as above.~
(Right after the command. '''List of devices attached''' indicates ADB connection.)~
 {$ adb shell}
As applying the command above, enable users to login the device, to execute commands, and to debug applications from eclipse, which~
has been already configured  '''ADT Plugin'''.~

** ADB via network [#b3cf88e5]
>
To use this network connection, '''CONFIG_USB_PEGASUS''' and '''CONFIG_USB_NET_ASIX8817X''' in kernel are already effective. USB~
Ethernet can be used immediately.~

>
First, set up bc10 side. To connect USB Ethernet adapter, boot bc10. From serial console, check IP address at eh0.~
 # netcfg                                                                        
       lo       UP    127.0.0.1       255.0.0.0       0x00000049                       
       eth0     UP    192.168.0.15    255.255.252.0   0x00001043 
If fail to obtain IP address, execute the command shown below.~
 # netcfg eth0 dhcp
If  obtain IP address,  configure Android Debug Bridge daemon (adbd) for using ether net.
 # setprop service.adb.tcp.port 5555
As configure '''adbd''' correctly, reboot bc10.
 # stop adbd
 # start adbd
Set up the development environment side
 $ export ADBHOST = 192.168.0.15 (This is the IP address of targeted bc10)
 $ adb kill-server
 $ adb start- server
Then, check the connection.
 &#12288;$ adb devices
 List of devices attached
 emulator-5554    device
As establishing ADB connection via ethernet, the connection is defined as "emulator."~
Once the connection is established,  users can allow to login bc10, to execute management commands, and to debug applications~
from eclipse.~

** ADB connection via USB from Windows client [#ic212e17]
>
To use ADB from a Windows client via USB connection, install USB driver Windows. Please look at the instructions at [[this page>http://developer.android.com/sdk/win-usb.html]].~
As explained at USB Driver for Windows, install '''android SDK''' , then obtain Google USB Drver package, revision 4 via Android SDK~
and AVD Manager.~
 C:\Program Files\Android\android-sdk-windows\google-usb_driver\
Windows version's Android USB driver is downloaded at the directory shown above.~
First, execute the command prompt shown below, and vender id of bc10 is added to "%USERPROFILE%\.android\adb_usb.ini" If~
this file does not exist, it will be created accordingly.~
 C:\Uses\beat> echo 0x18D1 > "%USERPROFILE%\.android\adb_usb.ini''
Then, the value for bc10 will be written into the file, which is placed at the directory shown below,~
 C:\Program Files\Android\android-sdk-windows\google-usb_driver\android_winusb.inf
As this file is open by a text editor, the three lines of code shown below is added just below the section of [Google.NTx86].~
 ;beatcraft bc10
 %SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_9018
 %CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_9018&MI_01
As keeping USB debug mode of bc10 effective, the OTG port of bc10 is connected to the USB port of the Windows machine~
via an USB cable.~

>
Windows recognizes this USB device and sends a message of a new device. Windows requests to install a new driver for the~
USB device. Please place the driver at the directory shown below.~
 C:\Program Files\Android\android-sdk-windows\google-usb_driver
Identify the location of the driver, and install it.~
As the installation is completed, pull of the USB cable from the Windows machine and plug in the cable to the machine again.~
On the command prompt or Windows PowerShell, execute the commands shown below.
 C:\Users\beat> adb kill-server
 C:\Users\beat> adb start-server
After executing adb shell, prompt turns #, and log in  bc10 with root.

* Reference [#r935cfab]
>
(Caution): With the method described at the link above, you cannot obtain '''android sdk''', please follow the instructions described~
at the section of "[[Obtaining and configuring ADB client>http://processors.wiki.ti.com/index.php?title=TI-Android-FroYo-DevKit-V2_UserGuide#ADB_Android_Debugger_.26_Downloader]]."

* Revision History [#lea8f45b]
-2010/12/24 This article is initially released



Front page   Edit Diff Backup Upload Copy Rename Reload   New List of pages Search Recent changes   RSS of recent changes