|
SMSLib is the software library used by SeisMac and
SeisMaCalibrate to access the
Sudden Motion Sensors in recent Macintosh laptops. Written in Objective-C,
it provides easy and stable access, abstracting hardware differences
across eleven different models of laptop. For better accuracy,
you can use SeisMaCalibrate to calibrate your laptop's Sudden Motion
Sensors. SMSLib is open source, released under the University
of Illinois/NCSA Open Source License.
I've just been notified of the first non-Suitable
Systems application using SMSLib! Mirailabs' Chroma
Player now uses SMSLib to do playback stabilization. Wiggle
your laptop and the window wiggles in the other direction!
Very cool.
The package also inclues smsutil, a
stand-alone command-line tool that prints a series of acceleration
samples. You can control how many samples are to be fetched, how
quickly they are to be fetched, and which axes should be displayed.
You can collect up to 500 three-axis accelerations a second (measured
on a MacBook Pro). For example, if you open the Terminal, change
to the directory containing smsutil, and type
./smsutil -i0.01 -c1000 -atxyz -s09 >capture.txt
then smsutil will start sampling every
10ms, running for 1000 samples (10 seconds), writing one
line per sample into the file capture.txt, with each
line including the time in milliseconds since smsutil started,
and the calibrated x, y and z axis values, all separated by tabs.
You can download version
1.8 of SMSLib here (Mac
OS X 10.3.9 or later). All source code is included.
|