[[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.  $ 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