Languages: |
English • العربية • Български • Česky • Dansk • Deutsch • Esperanto • Eesti • Español • فارسی • Suomi • Français • עברית • Magyar • Italiano • 한국어 • Nederlands • Norsk (bokmål) • Polski • Português • Română • Русский • Svenska • Slovenčina • Українська • 中文(中国大陆) • 中文(台灣) • Euskara • Català |
Here's a quick and simple C program that reads a packet from the
accelerometer once per second, and rotates the screen to a new
orientation if the orientation has changed.
I don't mean this to conflict with Paul's excellent work on Gestures; my reason for writing it is so that it can be used as an always-on daemon in the OM distributions. (Full gesture interpretation is more CPU heavy and requires reading data more often than once per second, so perhaps that will be done on-demand instead of always-on.)
The code is: http://github.com/cjb/freerunner-rotate/tree/master/rotate.c?raw=true
There's an ARM binary here (chmod a+x rotate && ./rotate): http://dev.laptop.org/~cjb/rotate
I found that rotating the desktop area in landscape (using xrandr) makes the XGlamo eat the CPU on my GTA-02 system.
Rotating the display head (xrandr --output default ...) works without major CPU load.
By using no libxrandr, but invoking xrandr commands, it only depends on the accelerometer.
Rotate
Rotates the screen according to the position of the Neo FreeRunner.
|
opkg install http://projects.openmoko.org/frs/download.php/455/accel-rotate_0.41_armv4t.ipk
opkg install http://projects.openmoko.org/frs/download.php/456/accel-rotate-qte_0.41_armv4t.ipk