TMJ-Mobile is a Java mobile phone application that uses GPS data to provide a number of functions, including navigation, location tracking, map display and route plotting. It receives its location coordinates by communicating via Bluetooth with a separate GPS receiver, or via the phones internal GPS if supported