I've released v2.1 of OpenAPRS mobile, the xL version for iPad is just around the corner (waiting for apple review).
I noticed that iPhone will go into a deep sleep mode when it's locked which disables GPS updates. I've researched and found a solution that plays a blank wav file every so often so the iPhone is forced to stay awake even though it is locked. Unfortunately, this appears to be the only way to prevent deep sleep since the SDK doesn't have any other options other than disabling the screen saver idle timer (which is already supported in OpenAPRS mobile). The next release will have a new option in Settings that allows you to prevent the iPhone deep sleep but the trade-off will be battery life.
I've changed the web servers and the production code to optimize things a bit which should help allow more users on at one time and improve slowdowns. You may notice now that the map no longer shows position tracks for stations on the main display. The query to display the tracks for 100+ stations at once was taking too much time so position tracks are now limited to track mode. Fortunately you can track multiple stations at one time so if you want to see the tracks for a group of stations for an event it should be pretty simple.
Also, to improve performance as a whole I have changed the web code to go into an idle mode when it detects the web browser has been left unattended. Typically the map data is refreshed every 15 seconds or on zoom change. Now, this behavior is the same as long as you have been moving the map within 15 minutes. After 15 minutes of inactivity map data refreshes are slowed down to once every 5 minutes. This means that when you return, you will still see active APRS data, it is just not updated as frequently. Once you move the map again the 15 second data refresh will resume until you are idle for 15 minutes again.
Labels: how things work, mobile, openaprs, speed, web servers