Digital compass

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
      • Both cameras cannot be used at the same time - and the front camera is lower quality.
  • 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
      • Possibly a Bluetooth stereo microphone (Sony ECMHW1) could send the Sin,Cos signals from an analog compass sensor (Sensor 1525, www.dinsmoresensors.com) to the N900. Direction would then be determined essentially by arctan2 and possibly low pass filtering for noise reduction.
  • 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

Designs

Optical image processing of compass

  • Periscope-like mirror

Ready-made RS232 compass modules with RS232-Bluetooth conversion

Custom board designs

This MIT project from 2002 designs a custom bluetooth digital compass http://web.mit.edu/dtfg/www/research/compass/index.html

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 (The orrery app will do this,

for the sun, moon, planets etc)

    • Let user optically align to visible sun