Difference between revisions of "Android Usage"

From Gumstix User Wiki
Jump to: navigation, search
(Change Boot Options (Display): 3.5" Display with android DOES NOT WORK.)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
Several features selected to facilitate development have been built into this port of Android on Overo COMs. Some tweaks may be required to get this to work on your setup.
 
Several features selected to facilitate development have been built into this port of Android on Overo COMs. Some tweaks may be required to get this to work on your setup.
 +
 +
== Navigation ==
 +
It is possible to use a USB mouse and keyboard connected to the USB Host port via a USB hub for navigation and input.  Note there is no visual mouse pointer.
 +
 +
Some expansion boards have additional pushbuttons which are setup for navigation:
 +
{| class="wikitable" style="margin: 1em auto 1em auto;"
 +
|-
 +
! Function
 +
! GPIO (Button)
 +
! Notes
 +
|-
 +
| Back
 +
| GPIO23
 +
|
 +
|-
 +
| Menu
 +
| GPIO14
 +
|
 +
|-
 +
| Power
 +
| Power button on Gallop43
 +
|
 +
|}
  
 
=== Calibrate Touchscreen ===
 
=== Calibrate Touchscreen ===
Line 17: Line 40:
 
For 3.5" touchscreen boards such as Palo35, change ''omapdss.def_disp=lcd43'' to ''omapdss.def_disp=lcd35''. For expansion boards supporting external monitors such as Tobi, change ''omapdss.def_disp=lcd43'' to ''omapdss.def_disp=dvi''. Note that even if you are using an LCD panel, it is not necessary to change the ''omapfb.mode'' as this just sets up the framebuffer in the case that an external DVI monitor is used.
 
For 3.5" touchscreen boards such as Palo35, change ''omapdss.def_disp=lcd43'' to ''omapdss.def_disp=lcd35''. For expansion boards supporting external monitors such as Tobi, change ''omapdss.def_disp=lcd43'' to ''omapdss.def_disp=dvi''. Note that even if you are using an LCD panel, it is not necessary to change the ''omapfb.mode'' as this just sets up the framebuffer in the case that an external DVI monitor is used.
  
'''WARNING:''' The 3.5" LCD does not work with the Palo35 and Android for some reason. See [http://wiki.gumstix.org/index.php?title=RowboatAndroid#Known_Failing Known Failing] for more information.
+
'''Note:''' Those using a 3.5" LCD will notice the boot splash screen doesn't look right. A splash screen customized for the 3.5" screens is available in the ''utils'' directory.
  
 
'''Note:''' If the u-boot environment doesn't load a boot script on startup (the default behaviour), the board may not boot as expected. To reset to the default u-boot environment, issue the following command at the u-boot prompt on startup:
 
'''Note:''' If the u-boot environment doesn't load a boot script on startup (the default behaviour), the board may not boot as expected. To reset to the default u-boot environment, issue the following command at the u-boot prompt on startup:
Line 51: Line 74:
  
 
== Customization ==
 
== Customization ==
The themes and features of Android are readily [http://source.android.com/porting/customization.html customizable]. For more help changing the boot screen, check out [http://www.omappedia.org/wiki/Android_Debugging this link].
+
The themes and features of Android are readily [http://source.android.com/porting/customization.html customizable]. For more help changing the boot screen, check out [https://github.com/gumdroid/android-utils/raw/master/bootlogo.sh this link].
  
 
== Useful Links ==
 
== Useful Links ==
 
* [http://omappedia.org/wiki/Android_Getting_Started Omappedia Getting Started]
 
* [http://omappedia.org/wiki/Android_Getting_Started Omappedia Getting Started]

Latest revision as of 12:13, 5 April 2011

Several features selected to facilitate development have been built into this port of Android on Overo COMs. Some tweaks may be required to get this to work on your setup.

Navigation

It is possible to use a USB mouse and keyboard connected to the USB Host port via a USB hub for navigation and input. Note there is no visual mouse pointer.

Some expansion boards have additional pushbuttons which are setup for navigation:

Function GPIO (Button) Notes
Back GPIO23
Menu GPIO14
Power Power button on Gallop43

Calibrate Touchscreen

For touchscreen displays, you might like to replace the /system/etc/pointercal file from the Android root file system with one specific to the touchscren you are using. To generate this calibration file, boot your Gumstix + touchscreen with the standard Angstrom build, do the touchscreen calibration step, and then grab the /etc/pointercal file from the root file system.

Busybox

The Android shell is accessible via the console port as usual however many standard GNU tools are missing and the shell is pretty minimal. To install busybox, navigate to /system/bin, and issue the command $ ./busybox install. Similarly, the Vim editor has been installed as a binary.

Change Boot Options (Display)

A boot.scr u-boot script sets appropriate boot options assuming 4.3" expansion boards. This file is generated using this script based on these u-boot commands. To change the boot options, generate a new version of this script.

$ git clone git://github.com/gumdroid/android-utils.git utils
$ sudo apt-get install uboot-mkimage
<...make changes to utils/androidboot.cmd...>
$ source utils/mkscript

For 3.5" touchscreen boards such as Palo35, change omapdss.def_disp=lcd43 to omapdss.def_disp=lcd35. For expansion boards supporting external monitors such as Tobi, change omapdss.def_disp=lcd43 to omapdss.def_disp=dvi. Note that even if you are using an LCD panel, it is not necessary to change the omapfb.mode as this just sets up the framebuffer in the case that an external DVI monitor is used.

Note: Those using a 3.5" LCD will notice the boot splash screen doesn't look right. A splash screen customized for the 3.5" screens is available in the utils directory.

Note: If the u-boot environment doesn't load a boot script on startup (the default behaviour), the board may not boot as expected. To reset to the default u-boot environment, issue the following command at the u-boot prompt on startup:

$ nand erase 240000 20000

Debugging

Google has provided several tools to assist debugging within the Android environment. For system level debugging, these techniques may be useful:

Likewise, Omappedia has a comprehensive list of suggestions.

Using ADB

The Android Debug Bridge (ADB) is a development Swiss Army knife for Android systems. Specifically, it facilitates application debugging and monitoring, file transfer and file management, investigation of the systems logs and configuration, and even allows screenshot capture. Depending on your host OS, the setup instructions will change. The USB IDs are set to some defaults within the kernel (arch/arm/mach-omap2/board-overo.c):

Parameter Value
VID (Vendor ID) 0x18D1
PID (Product ID) 0x9018

For recent Ubuntu systems, copy this file to /etc/udev/rules.d/51-android.rules:

$ sudo wget http://github.com/gumdroid/android-utils/master/raw/51-android.rules /etc/udev/rules.d/

Customization

The themes and features of Android are readily customizable. For more help changing the boot screen, check out this link.

Useful Links