Digital compass
(Starting to gather the info from the DIY compass thread, not finished yet, please help!) |
|||
Line 1: | Line 1: | ||
All information pertains to the N900. | All information pertains to the N900. | ||
+ | |||
+ | = Why a compass is needed = | ||
+ | == Augmented Reality (AR) == | ||
+ | * GPS gives location of device; compass gives orientation | ||
+ | * Allows pointing the device and getting information relevant to the pointed direction | ||
+ | * E.g. Layar, Wikitude | ||
+ | == Navigation == | ||
+ | * Car navigation | ||
+ | * On-foot navigation | ||
+ | ** Map rotation | ||
= Connection options = | = Connection options = | ||
Line 46: | Line 56: | ||
== Ready-made RS232 compass modules with RS232-Bluetooth conversion == | == Ready-made RS232 compass modules with RS232-Bluetooth conversion == | ||
== Custom board designs == | == Custom board designs == | ||
+ | |||
+ | = Alternatives to a digital compass = | ||
+ | * Use GPS motion to determine direction | ||
+ | ** Only useful for navigation, not AR | ||
+ | ** Does not work if standing still | ||
+ | * Use image processing for AR | ||
+ | ** E.g. artoolkit | ||
+ | ** Still you cannot get absolute orientation of device | ||
+ | * Initialized orientation + delta orientations | ||
+ | ** Maybe you can initialize the device to a known orientation (e.g. straight north), then use optical flow and/or accelerometer data to extrapolate subsequent orientations | ||
+ | * Optical compass + manually dragging an on-screen compass to match | ||
+ | ** Not automatic so some AR apps like games might not work | ||
+ | ** But for navigation or rotating maps, it could work: just glance at the optical compass, then drag the map icon to match the orientation. |
Revision as of 08:25, 3 October 2009
All information pertains to the N900.
Contents |
Why a compass is needed
Augmented Reality (AR)
- GPS gives location of device; compass gives orientation
- Allows pointing the device and getting information relevant to the pointed direction
- E.g. Layar, Wikitude
Navigation
- Car navigation
- On-foot navigation
- Map rotation
Connection options
- Optical (use one of the cameras, plus image processing)
- Best to use user-facing camera, so the world-facing can be used for capturing the world image for AR
- USB
- Unknown if USB host possible.
- Unknown if power is available from USB.
- IRDA
- Seems unsupported at this point
- Bluetooth
- Bluetooth data
- Bluetooth audio - sending analog signals via Bluetooth microphone for digital signal processing on the N900
- FM radio
- Requires headphones be connected
- Signal processing of audio in software
Compass chips or sensors
- Honeywell HMC5843
- I2C interface
- Magnetometer requires vector math on client side for interpretation, see OpenMoko i2c compass project for more info
- Dinsmore analog
Ready-built compass modules
- Ocean Server OS4000
- Ocean Server OS5000
- USB and RS232 interface
Microcontrollers
Converters
- I2C to RS232
- RS232 to Bluetooth
- Sparkfun BlueSmiRF Gold
- I2C to USB
- I2C to Bluetooth
- http://www.emv-electronics.com/de/intro/i2cbusadapter.htm (seems unavailable for purchase)
Designs
Optical image processing of compass
- Periscope-like mirror
Ready-made RS232 compass modules with RS232-Bluetooth conversion
Custom board designs
Alternatives to a digital compass
- Use GPS motion to determine direction
- Only useful for navigation, not AR
- Does not work if standing still
- Use image processing for AR
- E.g. artoolkit
- Still you cannot get absolute orientation of device
- Initialized orientation + delta orientations
- Maybe you can initialize the device to a known orientation (e.g. straight north), then use optical flow and/or accelerometer data to extrapolate subsequent orientations
- Optical compass + manually dragging an on-screen compass to match
- Not automatic so some AR apps like games might not work
- But for navigation or rotating maps, it could work: just glance at the optical compass, then drag the map icon to match the orientation.