CCL Home


Software Community Operations
Andrew Setter
Electrical Engineer

REU Project: Teamtrak

Teamtrak is a mobile to mobile network and localization system. The system keeps track of the user's GPS position,
compass heading and steps taken and communicates those with other users connected across the network to help determine
more accurate locations for everyone on the network. As it stands now, GPS is single user only and can sometimes be
inaccurate depending on how many satellites are acquired (if any). This system attempts to provide alternative sources
of location discerning using secondary devices as well as interpolating positions based on other's GPS locations. One
example of how this system could be used is military applications. Each soldier could be receiving their own GPS signal
while communicating with the others about their position. This information could help make commanders make better
decisions and know where their men are more accurately. Alternatively, this system could be useful to fire and/or rescue
workers who might need to communicate with each other in a time of crisis.

While I did provide some much needed data collecting to the project, one of my main contributions was to implement the use
of an average GPS system by averaging the last ten GPS positions and using that average as the true location. As this did
"lag" behind the user for a few seconds, the result was a more accurate position with less error that before. The difference
can be seen in some of the graphs below. Another task I worked on was helping the implementation of a 3-axis compass instead
of a 2-axis compass. The problem with a 2-axis compass is if it's tilted more than 20 or 30 degrees, the device no longer
reports accurate compass headings. With the use of a 3-axis compass, the device continues to report accurate headings even
if tilted. Lastly, I also helped develop a system to help the GPS acquire positions more quickly if there is another GPS
in the area with a signal. This is done by extracting the almanac data, or data containing rough information on the
location of the satellites, from a GPS with a signal and sending it to the device without a signal in an attempt to help
it acquire a signal faster.

A few problems are still open. For instance, the almanac system is not complete. It should extract the data from the device,
save it to a file and be uploaded to another device. As it is right now, there is no way for it to be sent across the network
to another machine. This can be implemented without to many problems. Another problem that still exists is a more accurate way
of determining step length. The length now is based on a fixed constant that has to do with the length of a person's leg and
as this differs from person to person, the stride length information we receive is not as accurate as it potentially could be.