NAME¶
om - control OpenMoko phone hardware
SYNOPSIS¶
om help
om --help
om --version
om sysfs name [
name...]
om backlight brightness [
0-100]
om backlight
om backlight get-max
om backlight <brightness>
om touchscreen lock
om screen power [
1/0]
om screen resolution [
normal|qvga-normal]
om screen glamo-bus-timings [
4-4-4|2-4-2]
om bt [
--swap]
power [
1/0]
om gsm [
--swap]
power [
1/0]
om gsm flowcontrol [
1/0]
om gps [
--swap]
power [
1/0]
om gps [
--swap]
keep-on-in-suspend [
1/0]
om gps send-ubx <class> <type> [
payload_byte0]
[
payload_byte1] ...
om wifi [
--swap]
power [
1/0]
om wifi maxperf <iface> [
1/0]
om wifi keep-bus-on-in-suspend [
1/0]
om battery temperature
om battery energy
om battery consumption
om battery charger-limit [
0-500]
om power
om power all-off
om resume-reason
om resume-reason contains <val>
om led <name>
om led <name> <brightness>
om led <name> <brightness> timer <ontime>
<offtime>
om uevent dump
om usb mode [
device|host]
om usb charger-mode [
charge-battery|power-usb]
om usb charger-limit [
0|100|500]
DESCRIPTION¶
om provides a command line interface to various OpenMoko specific pieces of
hardware. Note that om talks directly to the kernel and might not properly
co-exist with fso-frameworkd that also wants to control the same pieces of
hardware. However, using om to read the state of the hardware should be safe
even when using fso-frameworkd.
OPTIONS¶
- om backlight brightness [0-100]
- Reads or sets backlight brightness. Units are percentage of
maximum brightness. Reports true brightness only if the screen has not
been blanked with om screen power 0.
- om backlight <brightness>
- Set backlight brightness. Units are driver specific,
maximum value can be queried with om backlight get-max. This
interface is not recommended but is kept for compatibility reasons.
- om backlight get-max
- Get maximum value of brightness. Typically the maximum
value is 255 under Linux 2.6.29 and 63 under Linux 2.6.34.
- om backlight
- Read backlight brightness. This is an integer between zero
and what om backlight get-max returns. Reports true brightness only
if the screen has not been blanked with om screen power 0. This
interface is not recommended but is kept for compatibility reasons.
- om touchscreen lock
- Locks touchscreen and waits for any signal to unlock it.
This is useful when you want to keep the phone running in a pocket and
don't want the backlight to turn on every time you accidentally touch the
screen. Locking is done in a way that does not depend on X so if X server
crashes and restarts your screen will still stay locked.
- om screen power [1/0]
- Reads or sets the power state of the screen. Note that Xorg
and fso-frameworkd do not know how to read the power status of the screen
(frameworkd reads it on startup only). If Xorg turns the screen and after
that you turn the screen off with omhacks then touching the screen won't
turn the screen on (Xorg thinks the screen is still on and does not bother
to try to power it on).
- om screen resolution [normal|qvga-normal]
- Reads or sets the screen resolution. This lowlevel
interface should not be used when Xorg is running but is useful when using
applications that can draw directly to the framebuffer (like mplayer -vo
fbdev). The argument normal means 480x640 and qvga-normal
means 240x320. After you have changed the screen resolution you also need
to change the framebuffer resolution with e.g. the fbset tool using for
example the following /etc/fb.modes entries:
mode "480x640" |
geometry 480 640 480 1280 16 |
timings 40816 8 16 2 16 8 2 |
rgba 5/11,6/5,5/0,0/0 |
endmode |
mode "240x320" |
geometry 240 420 240 320 16 |
timings 100000 8 88 2 2 8 2 |
accel false |
endmode |
- om screen glamo-bus-timings [4-4-4|2-4-2]
- Reads or sets the timings of the memory bus between the CPU
and the glamo graphics chip. Numbers are SRAM interface timings of the
CPU. According to
http://lists.openmoko.org/pipermail/community/2010-July/062495.html using
2-4-2 is more appropriate, view that article and following discussion for
more details.
- om bt [--swap] power [1/0]
- Reads or sets the power state of bluetooth. Bluetooth is
connected to USB bus so it might take a while for it to appear in lsusb
and be usable after power on.
- om power
- List the power status of various devices.
- om power all-off
- Disable power to bluetooth, GSM, GPS and WLAN.
- om gsm [--swap] power [1/0]
- Reads or sets the power state of GSM.
- om gsm flowcontrol [1/0]
- Reads or sets the state of GSM flowcontrol. When
flowcontrol is enabled GSM chip will generate an interrupt when it has
data and will not try to send it over serial port until flowcontrol is
disabled. Enabling flowcontrol before suspend and disabling it after
resume is required to make sure no data is lost during suspend.
- om gps [--swap] power [1/0]
- Reads or sets the power state of GPS.
- om gps [--swap] keep-on-in-suspend [1/0]
- Reads or sets the flag that causes GPS to stay powered on
during suspend. This is useful if you want to keep GPS fix during
suspend.
- om gps send-ubx <class> <type>
[payload_byte0] [payload_byte1] ...
- Send arbitrary UBX protocol command to the GPS chip. Please
read "ANTARIS_Protocol_Specification(GPS.G3-X-03002).chm" to
understand the protocol. Here are examples of commands that are tested to
work:
class |
type |
payload |
description |
06 |
01 |
f0 01 00 |
disable GPGLL messages |
06 |
01 |
f0 02 00 |
disable GPGSA messages |
06 |
01 |
f0 03 00 |
disable GPGSV messages |
06 |
01 |
f0 05 00 |
disable GPGTG messages |
06 |
01 |
f0 08 00 |
disable GPZDA messages |
06 |
08 |
fa 00 01 00 00 00 |
report position 4 times/s |
06 |
08 |
f4 01 01 00 00 00 |
report position 2 times/s |
- om wifi [--swap] power [1/0]
- Reads or sets the power state of WLAN.
- om wifi maxperf <iface> [1/0]
- Reads or sets the maxperf mode of WLAN. Enabling this
increases energy consumption but lowers latency. Note that root privileges
are not currently required for tuning this wifi parameter so a local user
can cause DoS by constantly disabling maximum performance mode.
- om wifi keep-bus-on-in-suspend [1/0]
- Reads or sets the the flag that controls whether the MCI
bus between wifi and CPU will be kept powered on during suspend. You need
to keep it powered on if you want to use wake-on-wireless.
- om battery temperature
- Reads battery temperature. Units are degrees
Centigrade.
- om battery energy
- Reads the current energy percentage of the battery.
- om battery consumption
- Reads the current energy consumption as measure by the
battery. Units are microamperes. Negative value indicates that battery is
being charged.
- om battery charger-limit [0-500]
- Reads or sets the upper limit for battery charger current.
Units are milliamperes. Normally USB charger limit and battery charger
limit have the same value. However, sometimes it is useful to charger
battery very slowly or not at all and still power rest of the system from
USB. This allows one for example to keep battery at its recommended
storage capacity of 40% without having to physically remove the battery.
Note that kernel will round the limit to nearest suitable value which is
usually a few milliamperes lower than the supplied limit. Changing USB
charger limit will reset also this limit to the same value so you must
first set the USB charger limit and only then the battery charger
limit.
- om resume-reason
- Read the reason for the most recent resume. If there are
multiple resume reasons they are separated by newlines. Possible values
include (but are not limited to)
EINT01_GSM |
EINT05_WLAN |
EINT09_PMU:button |
EINT09_PMU:usb_connect |
EINT09_PMU:usb_disconnect |
EINT09_PMU:rtc_alarm |
EINT09_PMU:low_battery |
- om resume-reason contains <val>
- Checks if resume reasons include the given string.
- om led
- Lists the state of all LED devices. The printed names are
native kernel names and can change between kernel versions.
- om led <name>
- Lists the state of the given LED device. In addition to
native kernel names you can also use the aliases vibrator, power_orange,
power_blue and aux_red to get portability across different kernel
versions.
- om led <name> <brightness>
- Sets the brightness of the given LED device to the given
brightness. Brightness is an integer from 0 to 255 but only the vibrator
device really cares about the brightness value. See om led
for a list of supported aliases.
- om led <name> <brightness> timer
<ontime> <offtime>
- In addition to above also makes the LED blink. Ontime and
offtime are in milliseconds. See om led for a list of supported
aliases.
- om uevent dump
- Dump uevent events to stdout.
- om usb mode [device|host]
- Read or set the USB mode. In device mode the phone can talk
to USB hosts (PCs or phones in host mode). In host mode the phone can talk
to USB devices. See also the om usb charger-mode option.
- om usb charger-mode [charge-battery|power-usb]
- Reads or sets the USB charger mode. Normally you want to
charge the battery in device mode and power the USB bus in host mode but
it is possible to for example use an external battery power the USB bus so
that the phone can be in host mode and still charge itself over USB.
- om usb charger-limit [0|100|500]
- Reads or sets the charger limit of USB. Units are in
milliamperes and control the current that the phone will draw from the USB
bus. When the phone is in device mode and some gadget driver is loaded it
will negotiate the highest allowed charging current automatically.
However, if you are using a dumb external USB battery it might be
necessary to force larger limit than the default of 100 mA. Do not set the
limit to be too large if your charger can not handle it!
- om sysfs name [name...]
- Shows the sysfs path associated with internal om
path. This option is only useful for debugging om itself. Examples
of valid arguments include actual_brightness, battery, brightness,
chg_curlim, max_brightness, pm-bt, pm-gps, pm-gsm, pm-wlan, resume_reason,
resume_reason2, screen_resolution, usb_charger_mode, usb_mode.
- --help
- print this help message
- --version
- print version and exit
- --swap
- set new value and print old value