I'm one of the most directionally challenged individuals on the planet.
Usually I am running late, sprinting to my next appointment and don't have time to pre-load my GPS with addresses.
However, when I'm in the middle of setting up my appointments, I usually take time to write down the address or put it on the outlook appointment to enter into my GPS later.
It's that later part that never happens-- until I'm in my car, headed in some general direction I think I need to be-- and distractedly trying to programme the window unit.
Why don't I use my iPhone's GPS?
1. It doesn't talk to me.
2. It requires me to have my phone dedicated to that task
3. most importantly-- I use my iPhone to check my Garmin's authority on the route (sometimes it takes you in crazy paths).
So my thought is this...
What if I was able to send an address to my Car-in mount unit Garmin from my desk?
That way if I was setting up my appointment-- I could take care of the navigation configuration on the spot.
Additionally, I have to log Mileage and it would be excellent if I could query my Garmin to my computer.
Why doesn't this exist today (as I am most likely late to get on the road to drive to San Antonio for a conference).
How to add outside communication to the HMI interface of the in-mount-GPS -- without destroying the function of the original product.
GPS, SMS, (or some transfer protocol), some proprietary standard for accessing GPS or ghosting (using the existing system, but putting a rider on it to accomplish your task).
High Level Things I need to Consider:
Does this exist today?
How accessible is the Garmin GPS OS.
What communication protocol would make the most sense.
What wireless protocol would make the most sense.
What would be the required application characterizations on both the transmitting mechanism and the recieving mechanism?
How would I handle and prioritize map loadings?
How much work would this take?
(I need to stop asking why Garmin hasn't done this already...)
How hackable is the Garmin GPS Operating System?
I'd have to determine if the processor that runs the Garmin a custom ASIC or something that is available through other suppliers.
Regardless, I'm fairly certain that some sort of multi-core embedded processor such as the one in the Beagleboard XM or the Pandaboard is inside of one of these devices. The question will be if it's open enough try and see into it's processing.
I need to find a way to open up the device without ruining everything.
How would I program the device? Would it have headers, a memory card etc?
My GPS has up dateable OS over it's wireless networks--- or over USB (which is also an option).
How does Garmin instruct it's device to search it's address libraries and can I find a way to still use those libraries when trying to program it?
What happens if there is a mismatch, I type in "SanANtonio" instead of "San Antonio". Today Garmin does predictive suggestions, which requires querying the database at every character enter.
I'd have to find out if I could mail box the scheme...
The GPS has Bluetooth, USB and GPS links--- I wonder if there is any hidden protocols inside (some times a lot of wireless modules have multiple radios inside e.g. look at the one on the PandaBoard).
Where does the data go? I doubt that Garmin owns all of the satellites in space and instead rents them-- I wonder how accessible that is.
Is there options that perhaps if I carried the Garmin into my work place, I could program it through a cable at the desk? (Still better than having to manually input it).
Better yet, is the data stored within the GPS, can I use it post factor?
... I'd love to integrate my GPS with my address book.
This is a massive project and instead is probably only suited for research/curiosity, but interesting non-the-less.