Skip to content

wharncliffe test

Tested code with a 15 second recording interval.
A couple of bug revealed themselves.
One where the code seemed to resurrect itself and then fell over because it had cleaned itself up.
One where the map stopped updating after I had accidentally “dismissed” the program while it was recording. Hopefully this will be reproducable.
One where it took longer than 15 seconds to get a good lock, and consequently the next 15 seconds boundary was fairly far away, though I feel that this may not actually be wrong.

Battery consumption was
Before run: 6% in approx 1h20m = 4% per hour
During Recording: 25% in 2h 10m = 11.5% per hour
While Running: 35% in 3h 5m = 11.4% per hour

so @15 second intervals (actually a little less) = 7.5% per hour
pretty decent .. would give about 7 hours recording on 80% battery .. and I think it could be improved by deleting some background apps from my watch..

Still testing

Things are slowly getting better.
GPS Tracking is nor working reasonably well at 30 second intervals, it generally takes about 15 seconds to get a decent quality fix, though I have to throw away 2 or three dodgy fixes before then.
I’m still getting the odd crash when I try to use it in reality .. most seem to be related to what happens if the app gets pushed off-screen by a notification or whatever… still improving here too.

To be honest things are beginning to approach the point where I might consider it usable, though there’s still some iffyness and missing features.
The current bugbears are:
The map isn’t always showing with direction of travel upwards – I think this is something to do with getting “bearing” direct from the GPS
It is recording elevations of ZERO to the GPS log .. I should trim these.
I’ve seen cases where the blue-blob in the map doesn’t seem to have a “history-path aka breadcrumb” joining it, which is weird.

More testing

I have tried to fix a couple of the issues.

Duplicate Locations

The duplicate locations was due to very very poor management of the “android lifecycle” of my application meaning that the second time it was started there was a LOT of old code still running from the last time, in effect I ended up with 2 location listeners and so on.

This has been partially fixed, though there is still a fair bit more to do to get it perfect

Deep Sleep

Apparently deep sleep doesn’t just affect “running” code, it also affects code that wants to wake up at a certain time.
Resolved by learning yet another android API!
The code now seems to reliably wake up every 30 seconds to take a sample.


The “Fused Location API” ass recommended by google is not nice, it doesn’t tell me the “true source” of the data, so I have to deduce it through other means. What I’ve seen so far is..

  • Locations with really large accuracy errors seem to be cell tower locations, and don’t come with elevation
  • There are quite a lot of locations with an accuracy from 24m upwards .. these *seem* to be WiFi locations, when plotted on a map they are often off track and near houses. Potentially they have some value (I could for example snap the location to the nearest track), but would require coding to get usable.
  • In order of “goodness” for points with moderate accuracy (>24m) it seems to be no elevation = poor, “velocity” look to be good, as do points with “bearings”

The sequence of locations seems to be ..
wakeup, ask for location updates, get a rough location in about 5 seconds, get a better (32m) location within about 10 seconds, get a pretty good (10m) location about 15 seconds after wakeup.

So .. my options appear to be:
I can wait for better accuracy this would be a simple code change
I can force the GPS to be running full time on the phone so that it doesn’t have to wait ~15sec to get a good fix (though this might be reduced if I got a good fix in the previous request)
I can get the phone to wakeup before the watch, and start to pre-emptively get a good fix so that a good fix is already there for the watch when it wakes up — I could probably even insist on a GPS fix .. in effect transferring the battery drain from the watch to the phone.

I’ll work on this albeit at my usual slow pace.

wearRoutes more testing

I’ve been occasionally testing wearRoutes “recording” during my drive in.
I’ve found a number of problems, so far all seem to be related to the watch going into “Deep Sleep” which means that the normal way of asking for code to run in e.g. 30 seconds often means it *doesn’t*.
Even when it does run the damn watch will go back to sleep while it’s waiting for some location data and so not get the data it wants.

I’ve worked around the second problem by acquiring a partial_wake_lock – aka forcing the watch to stay awake while it’s waiting for a decent GPS reading. Fortunately it looks like this won’t kill the battery (too much) because a usable location usually arrives within 10 seconds, meaning the watch can sleep for 20 seconds out of every 30. Not perfect, but not bad either.

The first problem manifests like so…
a) I schedule in some code to run in 30 seconds (this code asks for the Location)
b) The code actually runs anything upto 5 minutes later (varying considerably though usually about 1.5 minutes)

I’m going to have to delve even further into android and use the Alarm Manager — nothing seems to be trivial, or perhaps I’ve covered all the trivial stuff 🙂

wearRoutes real world test #2

I’ve done some tweaking to try to reduce the battery usage and ran wearRoutes on my watch for 2 hours in “record” mode, almost entirely on the “stats” screen, so no map burning, though I suspect that the stats screen actually burns more CPU than the map screen, since it has “bigger” updates.

This version differed from the previous version in may ways, but mainly the stats screen updates roughly 4 times a minute – though not actually at 15 second intervals due to this ‘n’ that.

The results were, interesting.

First the battery which drained pretty constantly at about 7..8% per hour – 14% in 2 hours (98% to 84% ), this is about half the rate at which the battery drained in the last test, so I guess I’m probably doing something right, though I was deliberately not “poking” it.

A few interesting features showed up in the location handling.

  • The “distance” travelled was at 2km before I even reached the end of the first field, and the logs show that it had briefly locked onto a cell tower with an appalling accuracy of 1.4km. So I need to discard poor accuracy points. A “feature” of these points is an elevation of exactly ZERO which is a nice little indicator.
  • The second feature is that it looks like all of the points are duplicated in the gpx log!I can’t tell if this is my code messing up or if it really truly did receive duplicate points! I’m really not sure where these are coming from, but there’s a fair chance they’re causing extra useless screen updates.
  • The “instantaneous” speed was mostly though not entirely missing from the data collected, it was present on the data with good accuracy

On the plus point I’ve separated the location gathering code from the rest of the system so it should be fairly easy to sort out.

To Do

  • filtering to exclude the “elevation = 0.000” points, a quick test produces a track with no particularly noticeable speed spikes, though there are a few “gaps” in the logs that way.
  • See if I can rework the location gathering to be “persistent” about getting quality data, this should have a side effect of getting more valid “instant-speeds”.


Long silence, broken by me droping Guild Wars 2 and taking up Final Fantasy XIV A Real Reborn, FFXIV for short.

I’m enjoying it, it doesn’t have quite the same “suck-in” that GW 2 had, but it is a slower paced game. Slower suits me well, I’m not as twitchy as I used to be.

There are quite a substantial number of improvements in this re-release over the previous version, for starters it’s quite playable.

Two things I miss from the old game though;

  • The dialog has been toned down, it used to be slightly risqué, but there seems to be a lot less of that, I suspect that what is still present in the game is a case of cut&paste from the previous version.
  • The cut scenes are more first person, in the previous version, as far as I played it at least, I was given the impression that I was a lowly adventurer overhearing, and being caught up in, bigger things. I felt that this quite suited a role-playing environment. Our characters aren’t special, at the low levels, even humble sheep could give us a run for our money! I find it a little immersion breaking when I’m greeted by NPC’s as if I were the saviour of the world.

I was really surprised to discover that I had to do dungeons to progress my personal story-line. A surprisingly nice idea. It’s a big jump for me to group together with other players and do group content,  being forced into it is exactly what I needed to get me over the initial reluctance. On the down side the “Duty Finder” (automatic LFG”) is not world specific, so there is little chance of making any real-friends.

Will post again soon about how broken the economy seems at the moment.


I was out in my gold to pounds conversion by 100 times! I’ve corrected the post now.

Guild Wars

I’m still playing, and still enjoying myself.
I’m suffering from severe alt-itis.. I keep rolling new characters to see what the gameplay is like, and I’ve had a taster of several different starting areas.

The one that I prefer is the Asura area.. there are so many things in it that make me laugh, particularly in the background NPC conversations.

I love the fact that the Asuran’s are a bunch of snide gits. Trying to get them to do anything together would be like herding cats! They’re truly useless!

Cut scenes deserve a special mention, I’ve read that they’re immersion breaking, but I haven’t found that in my story lines, though, to be fair, I do often have the sound off. I do read the text though, I think this is the only other game apart from Mass Effect 2 where I’ve actually wanted to read the stuff out of curiousity, it’s quite readable!

I love the humour, very prevalent in the Asuran areas, but also elsewhere in the game, the conversations aren’t boilerplate rolling out of the same old phrases, there’s wordplay!

There’s a bit of dialog in the story fragment “Here, There, Everywhere” that goes…

Me: Then we have ample reason to interrupt them. We’re replete with reasons to keick Teyo down a flight of stairs.

Pol: Two excellent ideas… but so hard to choose. I know, let’s do ’em both!

Me: Yeah! It’ll be like having our cake and kicking it too! Look out, Inquest! It’s payback time!

I really appreciate the mangling of the old adage, and I can see that it wasn’t just a simple wordplay, the early use of the word “replete” lets me know that the writers took at least a little care over this dialog.

And… just like Warcraft, GW2 isn’t afraid of contemporary references, I saw a story titled “Can’t Stop the Signal” (a Serenity/Firefly reference).

Guild Wars seems to be full of this kind of stuff.  SWTOR take note, I was always worried about how humourless you seemed, coming back to an entertaining MMO just makes your game look poorer for it’s lack, sorry.


I think my main is level 36 now, I’m not sure because I don’t feel trapped in the leveling game.

I tootle around doing whatever takes my fancy, crafting, fighting, gathering, collecting viewpoints and my level goes up — gone is the whole “only 8 more quests to ding” mentality, and I don’t miss it. I do sometimes try to get achievements, in fact I do these more than questing, it all ends up contributing to my experince points, and is a damn sight more fun than sticking to just one activity.

I’m going to post some screenies later.  I’ve taken a few where my “main” is in disguise for the fun of it. I would actually consider spending some real world cash for some of the disguises!

On which point, it looks like the gems -> Pound rate is considerably worse than the Gems->Dollars->Pounds rate. Silly old Arena net, I’m hoping I can buy gems in dollars.

And sticking with money, I saw what looked suspiciously like a bunch of gold farmers yesterday, 4 players, same class, same pet, all running together, all killing the same mob. Makes me suspect that ArenaNet may need to stabilise the Gold<->Gems<->real-world-money loop. You can already do a gold to dollars conversion see it’s about 30 silver to 100 gem. And 1 gem is about 1 pence (I think). So £3 will buy you 1g approximately.

If you embiggen the chart on gw2spidy it will actually give you the dollars to gold exchange rate!



Guild Wars 2 is a blast

last post was from me in the stress testing phase, since then the final version of GW2 has been released.

I’m having a total blast so far. I’m still in the trying out playstyles phase, at this point I’ve tried Mesmer, Ranger, Engineer and Elemental. Elemental seems to be me, though I was quite enjoying the Engineer also.


Guild Wars 2

In my perpetual hunt for the next game that will suck me in and spit out a drained husk I’ve pre-purchased Guild Wars 2.

I was pretty certain to buy it anyway, so buying it for a few days early access seemed like a good idea. But, fail time, I’m actually on holiday during the 3 day early access period. I’m not particularly bothered because, as I said, I’m a dead cert for buting it anyway.

What I have got out of it was the chance to play for an entire hour during a “stress test” yesterday. Sure, it was only an hour, but I’ve learn’t a couple of things.

In short. I’m more taken with this game in the first hour than I was in SW:TOR in the first hour.

The starting area runs pretty well on my 2.5 year old laptop – 25fps fullscreen at the next preset above bottom. True, not all glowy/sparkly, but definitely good enough to play.
Fair play, it was an expensive laptop, but there’s always the worry that the next fun MMO won’t run well enough. (Laptop Spec: original Dual core i5 2.3Mhz, Nvidia GT330m here).

It looks pretty nice, a bit like the later Warcraft, so not photo realistic, but then it’s a fantasy world – what is photorealistic? At below “middle” settings I didn’t feel like there was something missing.

There are rift-like “invasion” events .. I took part in 2 of these during my one hour of playtime .. I liked these in rift, and I like them in GW2. I hope they help build some community.

I should have taken a screenie… But I was so busy having fun that I clean forgot!
One of the nice little tweaks in the game is that you can take screenshots at a better quality setting than you play at. Which I think is super cool, iIf you’re going to freeze the game for half a second while you save a frame that renders in 1/30th of a second, you might as well render the frame over a comparatively much longer time and get a screenie that looks as good as that sad git over there with a 3000 pound computer 😮

From reading some of the design philosophy I think they may have some good ideas.. not too many buttons, and a design that makes griefing harder. They want ot make it so that if you see another player running towards you, you’ll think “a potential friend”.

I’m sure I will be posting about this game again. And I’m hoping there will be some of my old Munqui friends around when I get playing.

And finally, whatever happened to Final Fantasy XIV? I never quite made it. If I tire of GW2 I will probably give the “reborn” version another try.