APS(4)

APS(4) | NetBSD Kernel Interfaces Manual | APS(4)

# NAME

aps — ThinkPad Active Protection System accelerometer

# SYNOPSIS

aps0 at isa? port 0x1600

# DESCRIPTION

The aps driver provides support for several sensors found in some ThinkPad laptops.

The sensors currently exposed via the envsys(4) interface are:

Sensor | Units | Typical Use
`x-acceleration` | integer | X-axis acceleration
`y-acceleration` | integer | Y-axis acceleration
`x-variable` | integer | Weighted X acceleration?
`y-variable` | integer | Weighted Y acceleration?
`temperature 1` | degC | Unknown temperature
`temperature 2` | degC | Unknown temperature
`keyboard active` | boolean | Keyboard activity
`mouse active` | boolean | Mouse activity
`lid open` | boolean | Lid state

# SEE ALSO

envsys(4), hpacel(4), thinkpad(4), envstat(8)

# HISTORY

The aps driver first appeared in OpenBSD 3.8 and then was ported to NetBSD 5.0.

# AUTHORS

The aps driver was written by Jonathan Gray <jsg@openbsd.org>.

# CAVEATS

Few issues can be mentioned.

- The aps driver does not maintain state and subsequently does not take evasive action when it thinks the hard drive is in danger. Possible actions would include spinning down the hard drive in case excessive tremor is detected by the sensors.
- The Y axis on X40 and possibly other models seems to be inverted. It is unknown how to distinguish between different versions of the accelerometer to compensate for this in the driver at this time.
- The sensor values are refreshed every 0.5 seconds. Because no protection measures are taken, this is unnecessary and may have a negative effect on battery life.
- As IBM provides no documentation, it is not known what all the available sensors are used for.

July 13, 2011 | NetBSD 5.99