Digital compass
stefanmohl (Talk | contribs) |
m (Digital compass moved to N900 Hacking Compass: Move out of n900 hardware namespace - as it may confuse someone reading only the overview that it's existing hardware.) |
Revision as of 12:46, 22 February 2010
All information pertains to the N900.
See also Orrery, a night-sky viewer which also can be used as a digital compass
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
- Is unsupported at this point. The device only has an CIR transmitter.
- 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
- MicroSD card
- There used to be some GPS:s on Flash-type expansion cards. How about a compass?
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 (dead reckoning)
- 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.
- Combined GPS/optical compass for daytime use:
- Use GPS location and time info to calculate current sun location
- Let user optically align to visible sun