Digital compass
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.) |
(better N900 link) |
||
(10 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | All information pertains to the [[N900]]. | + | All information pertains to the [[Nokia N900|N900]]. |
'' 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) | ||
** Best to use user-facing camera, so the world-facing can be used for capturing the world image for AR | ** 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 | * USB | ||
** Unknown if USB host possible. | ** Unknown if USB host possible. | ||
Line 25: | Line 30: | ||
** Bluetooth data | ** Bluetooth data | ||
** Bluetooth audio - sending analog signals via Bluetooth microphone for digital signal processing on the N900 | ** 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 | * FM radio | ||
** Requires headphones be connected | ** Requires headphones be connected | ||
Line 31: | 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 37: | 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 == | ||
- | |||
* 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 55: | 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 | ||
- | |||
- | |||
- | = Alternatives to a digital compass = | + | === 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 | * Use GPS motion to determine direction | ||
** Only useful for navigation, not AR | ** Only useful for navigation, not AR | ||
** Does not work if standing still | ** 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 | * Use image processing for AR | ||
** E.g. artoolkit | ** E.g. artoolkit | ||
Line 74: | 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 | + | ** 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 | ** Let user optically align to visible sun | ||
- | |||
[[Category:Brainstorm]] | [[Category:Brainstorm]] | ||
- | [[Category:N900 Hardware]] | + | [[Category:N900 Additional Hardware]] |
Latest revision as of 15:53, 27 January 2011
All information pertains to the N900.
See also Orrery, a night-sky viewer which also can be used as a digital compass
Contents |
[edit] Why a compass is needed
[edit] 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
[edit] Navigation
- Car navigation
- On-foot navigation
- Map rotation
[edit] 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.
- 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
- 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?
[edit] 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
[edit] Ready-built compass modules
- Ocean Server OS4000
- Ocean Server OS5000
- USB and RS232 interface
[edit] Microcontrollers
[edit] 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)
[edit] Designs
[edit] Optical image processing of compass
- Periscope-like mirror
[edit] Ready-made RS232 compass modules with RS232-Bluetooth conversion
[edit] Custom board designs
This MIT project from 2002 designs a custom bluetooth digital compass http://web.mit.edu/dtfg/www/research/compass/index.html
[edit] 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.
[edit] 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
- This page was last modified on 27 January 2011, at 15:53.
- This page has been accessed 47,201 times.