Digital compass

(Alternatives to a digital compass: GPS motion : "Ignores the orientation of the device (e.g. if you're walking backwards the map will be upside down)")
(wikify slightly)
Line 3: Line 3:
'' See also [[Orrery]], a night-sky viewer which also can be used as a digital compass''
'' See also [[Orrery]], a night-sky viewer which also can be used as a digital compass''
-
= Why a compass is needed =
+
== Why a compass is needed ==
-
== Augmented Reality (AR) ==
+
 
 +
=== Augmented Reality (AR) ===
 +
 
* GPS gives location of device; compass gives orientation
* GPS gives location of device; compass gives orientation
* Allows pointing the device and getting information relevant to the pointed direction
* Allows pointing the device and getting information relevant to the pointed direction
* E.g. Layar, Wikitude
* E.g. Layar, Wikitude
-
== Navigation ==
+
 
 +
=== Navigation ===
 +
 
* Car navigation
* Car navigation
* On-foot navigation
* On-foot navigation
** Map rotation
** Map rotation
-
= Connection options =
+
== Connection options ==
* Optical (use one of the cameras, plus image processing)
* Optical (use one of the cameras, plus image processing)
Line 33: Line 37:
** There used to be some GPS:s on Flash-type expansion cards. How about a compass?
** There used to be some GPS:s on Flash-type expansion cards. How about a compass?
-
= Compass chips or sensors =
+
== Compass chips or sensors ==
 +
 
* Honeywell HMC5843
* Honeywell HMC5843
** I2C interface
** I2C interface
Line 39: Line 44:
* Dinsmore analog
* Dinsmore analog
-
= Ready-built compass modules =
+
== Ready-built compass modules ==
 +
 
* Ocean Server OS4000
* Ocean Server OS4000
* Ocean Server OS5000
* Ocean Server OS5000
** USB and RS232 interface
** USB and RS232 interface
-
= Microcontrollers =
+
== Microcontrollers ==
 +
 
 +
== Converters ==
-
= Converters =
 
* I2C to RS232
* I2C to RS232
** http://www.gedanken.demon.co.uk/rs232-converters/i2c.html
** http://www.gedanken.demon.co.uk/rs232-converters/i2c.html
Line 57: Line 64:
** http://www.emv-electronics.com/de/intro/i2cbusadapter.htm (seems unavailable for purchase)
** http://www.emv-electronics.com/de/intro/i2cbusadapter.htm (seems unavailable for purchase)
-
= Designs =
+
== Designs ==
-
== Optical image processing of compass ==
+
 
 +
=== Optical image processing of compass ===
 +
 
* Periscope-like mirror
* Periscope-like mirror
-
== Ready-made RS232 compass modules with RS232-Bluetooth conversion ==
+
 
-
== Custom board designs ==
+
=== 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
This MIT project from 2002 designs a custom bluetooth digital compass http://web.mit.edu/dtfg/www/research/compass/index.html
-
== Attaching another compass and Bluetooth/WiFi capable phone ==
+
 
 +
=== Attaching another compass and Bluetooth/WiFi capable phone ===
 +
 
Instead of spending money and time to buy all necessary parts and develop a custom solution, buy the cheapest used Android phone on eBay (G1/Dream, Tattoo?), attach it to the back of N900 with two elastic bands, but without covering the camera lens. Then create an App on the Android phone that just transmits compass coordinates via Bluetooth/WiFi.
Instead of spending money and time to buy all necessary parts and develop a custom solution, buy the cheapest used Android phone on eBay (G1/Dream, Tattoo?), attach it to the back of N900 with two elastic bands, but without covering the camera lens. Then create an App on the Android phone that just transmits compass coordinates via Bluetooth/WiFi.
-
= Alternatives to a digital compass =
+
== Alternatives to a digital compass ==
 +
 
* Use GPS motion to determine direction
* Use GPS motion to determine direction
** Only useful for navigation, not AR
** Only useful for navigation, not AR
Line 80: Line 95:
** But for navigation or rotating maps, it could work: just glance at the optical compass, then drag the map icon to match the orientation.
** 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:
* Combined GPS/optical compass for daytime use:
-
** Use GPS location and time info to calculate current sun location (The orrery app will do this,
+
** Use GPS location and time info to calculate current sun location (The orrery app will do this, for the sun, moon, planets etc)
-
for the sun, moon, planets etc)
+
** Let user optically align to visible sun
** Let user optically align to visible sun
[[Category:Brainstorm]]
[[Category:Brainstorm]]
[[Category:N900 Additional Hardware]]
[[Category:N900 Additional Hardware]]

Revision as of 10:36, 16 August 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
      • 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

Attaching another compass and Bluetooth/WiFi capable phone

Instead of spending money and time to buy all necessary parts and develop a custom solution, buy the cheapest used Android phone on eBay (G1/Dream, Tattoo?), attach it to the back of N900 with two elastic bands, but without covering the camera lens. Then create an App on the Android phone that just transmits compass coordinates via Bluetooth/WiFi.

Alternatives to a digital compass

  • Use GPS motion to determine direction
    • Only useful for navigation, not AR
    • Does not work if standing still
    • Ignores the orientation of the device (e.g. if you're walking backwards the map will be upside down)
  • 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