I thought it might be fun to turn my Raspberry Pi into a vehicle tracker. The nearest I got to building a truly bespoke tracker was in 2004 using a Siemens TC45 & later TC65, where I wrote the firmware. There wasn't really anything on the market then to do what we wanted, so we built our own, and I took care of the software side. Sure there were trackers on the market, but nothing flexible enough to meet our needs for a given application. Small production runs can get very expensive, so you have to get creative and find ways to deliver the product to a budget.
The Raspberry Pi has opened up new opportunities. We could only have dreamed at having this sort of processing power, for so little money back then.
I used a GlobalSat BR-305 GPS receiver, which has an RS232 output. I could have used a more common USB variety, but I have the UART to RS232 adaptor I made earlier, freeing up a USB socket on the Pi. A 3G dongle was used for connectivity, back to our GPS tracking servers.
I already have C# code to do vehicle tracking, such as the code I use on Android devices. All I had to do was install Mono onto the Pi, and adapt the IO to work on the UART port.
See it in action:.