A pretty large number of smartphone apps which collect a device’s location exist; some store the data on the device (and it has to be exported somehow), others transfer it (insecurely) via HTTP to some cloud service or other server, etc. The idea of having a device publish its location via MQTT appears to be rather novel, in spite of MQTT being an ideal choice for the task.
Little did I know when I originally asked Alexander Rust if he’d try his luck implementing this on Android that Christoph Krey would give me an iPhone version for testing a few days later. Since then, I’ve been pestering both with ideas, requests for features, complaints about stability, etc. (I do wonder why they still talk to me …)
A lot of ideas have been bounced up and down, and we’ve had some interesting requests come our way, but most of them have been placed on the back burner for possible later implementation: our focus was to have something reliable. I believe we’ve now reached that milestone with MQTTitude. (Did I tell you about the time I wasn’t woken by the alarm because one of the initial iterations of MQTTitude had drained a full battery on my iPhone within an hour? :-)
The basic task of publishing location data to an MQTT broker is implemented in both Android and iPhone versions. The iPhone version is a little further feature-wise in that it has a “Friends&Family” function which allows me to see the location of friends who use the same MQTT broker; this is being implemented in Android as well.
Today we reached an important milestone: while the Android app has been available on Google Play for a while now, Christoph has just received confirmation that the iPhone app has been accepted into the App store: congratulations Christoph!
Privacy of data is important to us which is why we don’t provide a central broker (until you really want us to, that is). The apps do TLS by default to protect your credentials and your data.
Getting started with MQTTitude is not difficult, but documentation is currently a bit thin. If you’re interested, the best place to start – for the moment – is with the README on our repository; you’ll find links to the apps on OwnTracks.org.