User:Ojw/Notes
From Openmoko
< User:Ojw(Difference between revisions)
(New page: == accel == Technical:Accelerometer Fundamentals Accelerometer data retrieval <pre>#!/usr/bin/python import struct from math import sqrt x = 0 y = 0 z = 0 in_file = open("/dev/i...) |
(→accel) |
||
Line 1: | Line 1: | ||
== accel == | == accel == | ||
− | [[Technical:Accelerometer Fundamentals]] [[Accelerometer data retrieval]] | + | [[Technical:Accelerometer Fundamentals]], [[Accelerometer data retrieval]] |
<pre>#!/usr/bin/python | <pre>#!/usr/bin/python | ||
import struct | import struct |
Revision as of 22:34, 15 July 2010
accel
Technical:Accelerometer Fundamentals, Accelerometer data retrieval
#!/usr/bin/python import struct from math import sqrt x = 0 y = 0 z = 0 in_file = open("/dev/input/event3","rb") event = in_file.read(16) while event: (time1,time2, type, code, value) = struct.unpack('iihhi',event) time = time2 / 1000.0 if type == 2 or type == 3: if code == 0: x = value if code == 1: y = value if code == 2: z = value if type == 0 and code == 0: sum = sqrt(x*x + y*y + z*z) px = x / sum py = y / sum pz = z / sum orientation = "unknown" if(px > 0.5): orientation = "landscape" elif(px < -0.5): orientation = "landscape, inverted" elif(py > 0.5): orientation = "portrait, inverted" elif(py < -0.5): orientation = "portrait" elif(pz > 0): orientation = "upright" elif(pz < 0): orientation = "on back" print "%s (%+4.1f %+4.1f %+4.1f)" % (orientation, px,py,pz) event = in_file.read(16) in_file.close()