Thursday, February 19, 2009

LocateMe 1.1 Released - Free Java ME GPS Tracking Software

UPDATE: LocateMe 1.1 has been updated and renamed to FollowMe 1.2

LocateMe - Free open source GPS tracking software for MIDP 2.0 mobile phones.

This small (30-35K) application requires a mobile phone with an integrated GPS or a separate Bluetooth GPS and will show you the direction to a given location (a "target") without maps, using a pulsing direction arrow. You can request the location of other LocateMe users by text message, send your own location, or just simply save a location for directions back to it later.

The Features:

* "Target" other LocateMe users' locations via a request text message
* Send your location to other LocateMe users via text message (can use your contacts list)
* Record your last location as a target
* View all the satellites around you on a "radar" style view
* Display RAW GPS data (suitable for testing)
* Connects to any mobile phone integrated GPS or Bluetooth GPS
* Saves your GPS and target settings between runs.

New Features for 1.1:

* Complete integrated GPS support (some features may not be available depending on phone GPS capability).
* Last known target direction shown when stationary (arrow stops pulsing when stationary and an accurate direction cannot be calculated due to GPS fix precision errors)
* Added a new option to invert display colours (you can choose depending on light)
* Fixed the speed error for bluetooth GPS knots to km/h - the value was off by 0.001 km/h per knot
* Fixed the speed bug for integrated GPS (would you believe - integrated GPS use metres/second, normal GPS use knots!)
* Added a warning before setting a new target
* Added support for viewing satellites positions using an integrated GPS (Bluetooth always could) but only if the phone can support this feature
* Moved "Target here" to "Target" which on most devices will now be at the top of the menu or centred
* Sats button is now "Satellites"
* Marquee time is 45 seconds before next reading shown
* Moved "Dist. to target" to start of marquee text
* Distance shown is in km when metres > 1000
* Removed the About menu item (it now shows (C) Silent Software in the marquee on first run)

For developers the fully commented source code is a good example of:

* Design patterns, i.e. lazy initialization, command, strategy patterns
* 2 Tier system
* How to use PushRegistry (JSR 118)
* How to use the Record Store (JSR 118)
* How to use Bluetooth (JSR 82)
* How to use Text Messaging (JSR 120)
* How to use the PIM (and hack to minimise the security notices - JSR 75)
* How to use the Location Based API (JSR 179 - Nokia lapi.jar included)
* How to use simple graphics (not using a Game Canvas however)
* How to multi thread effectively
* How to process raw NMEA GPS data
* Provide a basic understanding into Graphical and GPS trigonometry

Known Issues:

* The application is not security signed (this costs money!), so you will be shown numerous security popups when you start it.
* As your phone is not a compass the direction target arrow will only point to the correct direction once you start walking, and the phone can determine which way relative to North you are going, i.e. when you are stood still your phone doesn't know which direction you are facing! :) On startup, until the GPS gets an accurate fix, the direction arrow to the target will not be shown.
* On first run there can be some delay discovering the Bluetooth devices in busy areas (i.e. it may display "Waiting for GPS..." on first run for some time). This is down to the Bluetooth device discovery picking up a large number of devices and querying them. Once you have located your GPS, future connections to the GPS do not require this discovery period and will be relatively quick

This software has been tested on Nokia Series 40 3rd edition phones at a minimum resolution of 128x128 pixels and Sun WTK emulator at 240x320. It has also been successfully tested on a Nokia N95 and Nokia 6650 with integrated GPS'.

The software is licenced under the modified for UK Law CPL 1.0 licence which is included with the distributions.

Download for mobile phones with an integrated GPS
Download for mobile phones using a separate Bluetooth GPS
Download LocateMe source code (and full javadoc)

Tuesday, February 17, 2009

LocateMe Update! Hooray!

Thanks to a very helpful user I've been able to improve integrated GPS support in LocateMe 1.0.1 Beta. Subject to extra testing I'll be releasing this as full 1.0.1 with source shortly. This isn't the rewrite I wanted for V2 (with all the extra bluetooth/logging/radar etc. features) but improved support/feature completion for the V1 lineage.

The improvements include:

- If you have an integrated GPS phone your bearing (course) and speed data will be read (if possible).
- Satellite View MAY work if the GPS supports providing raw NMEA data (not many phones support this feature, but it is attempted anyway).
- Uses white on black for main view (with arrow) to help conserve battery power (although I've no idea if this works it looks funky).
- Improved error handling in places.
- Updated (C) and text in places.
- Ticker (the scrolling marquee) now refreshes after 40 seconds not 30 to give more time to read it. Please remember that this data updates from the GPS every few seconds (~5 secs), so by the time it has been read it it may be old!
- You will be classed as "at the target" if within 10 metres of it (not 30 like 1.0)

So far this has been tested on the following handsets Nokia N95, Nokia 6650, Nokia 6300/3110 classic + BlueNEXT Bluetooth GPS, Nokia 6300/3110 classic + Bluetooth Holux GPS, Sun's WTK 2.5.2

Monday, February 16, 2009

Vampire Castle Progress

I spent a a whole day trying to move from the PALib library to libnds to make Vampire Castle future proof, unfortunately this proved to be more time consuming than I hoped and backed out the changes (two key problems arose - I can't use anim gifs, and I couldn't alter screen brightness without a lot of faff*). I also didn't fancy rescripting lots of PAGfx ini files to Grit scripts (i.e. the graphics resources). Perhaps further down the line I can do this conversion, but for the moment I don't want to kill programming momentum by getting stuck in the minutae.

After the roll back I added rumble pack support and some new sound effects, this has added to the realism greatly, especially when the fruit reels stop and you feel physical "ker-chunks" and "dunk" sound effects.
Hitting the bonus 4 points now also starts the feature stopper mode that will get you to the top board, although the stopper doesn't yet stop :)

I'm expecting to release either a demo or the full version within the next month or so, source code and revised releases will follow (at the very least a new youtube video will be available soon). One thing I am toying with is displaying cut scenes for collecting your winnings and so on - this is dependent on me having time.

Oh and I briefly looked at LocateMe 1.0.1 beta to help a (potential) user adding in some minor bug fixes - this code hasn't been released and probably won't be as I intend to do some refactoring to better support phone integrated GPS.

* Wintermute on #dsdev mentioned the next version of libnds will have a brightness function I can use - thanks :)

Monday, February 02, 2009

How to Remove Opendisc ® from Windows

As somebody who recently used an Opendisc® CD on my computer and found it not to be showing CD audio ".cda" files but a list of Windows files and folders (including an "autorun.exe") I suspected I'd inadvertently installed some DRM from the CD that wasn't allowing me to see the audio content.

After further investigation (Google was practically useless) and viewing the Opendisc® FAQ and Tech Notes pages contacting Opendisc® about their Opendisc® product I ended up even more frustrated because it states:

Do I need to install additional software onto my computer to use Opendisc®?

No, Opendisc® does not require additional software installation.
A small file will be stored in your user preferences so that you need not fill in the form at each visit to the artist's private web site.

So basically they won't say exactly what that file is, I thought "lest I try and remove it" - I suspected it had the potential to be doing something nasty to my machine. So I emailed Opendisc® support about their Opendisc® product and how to remove the small "file".

Opendisc® support got back to me today and specified exactly what the file was and how to remove it (quoted with typos):
Dear Sir,

You can cancel and redo your registration by following attentively this method:
- Close the Opendisc application.
- In Windows, go to "Start" and then "Run".
- Enter the command "regedit".
- Search for the key "HKEY_CURRENT_USER\Software\Opendisc" in the left pannel.
- Select this key and delete it.
- Close the Regedit tool
- Start Opendisc
- Make your subscription to Opendisc again.


The Opendisc® Support Team.

You can follow these instructions to remove it, but it will be a bit pointless, next time you (auto) run the CD the data will just get added back to the registry, which (admittedly from memory) looked like info about the CD for the enhanced content, no personal info.

The catch is this - the CD is formatted to be a "mixed-mode" CD which is perfectly above board and a standard CD format, i.e. no breaking standards, no CD formatted not to read on a computer etc. The Opendisc® website actually says:

The Opendisc® technology respects the Blue Book specifications

This is a good thing - the format is also known as an "Enhanced CD", "CD Extra" or "CD Plus". Basically it's a disc with one part CD player compatible format (the type that on a computer would just show as small ".cda" files) and the other part formatted using a standard computer readable file format, which may contain different content, the "enhanced" content. When Windows reads the disc it has two choices, it can show the .cda files (which are practically useless in Windows Explorer) or show the content it (and other operating systems) was designed to do, i.e. the files that included the "autorun.exe" that I saw. This will also affect most software that plays audio from both compact discs and filesystems, since it will make the same decision as to which part of the CD to read.

So in short, for now Opendisc® appears to be completely safe (at least the Opendisc® versions I've seen such as on the CD "The Script"). If you need to get at the "raw" CD sound files on a mixed mode CD a decent "ripper" application will do that (I do not advocate any form of piracy) and will ignore the "Windows compatible" formatted part.

- Did I mention Opendisc® was a registered trademark (yes it bugs me ;) )?
- "Windows compatible" and so forth is not strictly the correct terminology, but used here for ease of understanding for non technical readers.
- I am in no way associated or funded by Opendisc® or its associates/affiliates, just relieved to see that this appears to be all above board stuff and I thought I'd pass on the news :)

Sunday, February 01, 2009

Rumble Pack Support in Vampire Castle

Luckily nobody from the NDS scene has caught onto this project yet which is quite nice because I can spend more time on QA and less dropping alpha versions out of the door. A good example of QA is work I've done today, whilst not largely progressing the development I have looked at adding rumble pack support (useful for simulating money falling into the fruit machine tray amongst other things) and cosmetic changes, such as "Click to play" becoming "Tap to play".

The end deliverables will be

- The Fruit Machine - Vampire Castle game.
- The Fruit Machine API - a framework for developing other fruit machines easily (although in C++, nothing high level I'm afraid).
- Fully documented source code.
- All of the source code, graphics and sound, including all content not used.

The Orange Phone Fund Rip Off

UPDATE 3: 13rd December 2009

Important: The latest updates on this post can be found at this blog post.

Older updates remain on this page.

UPDATE 2: 19:12 3rd March

Orange lied to me.

I have just topped up by £10 to test and only received £10 (not £10.25) I've been moved onto the phone fund after all (a text from them after confirmed it). I've sent Orange a nasty complaint and asked them not to bother phoning me back or contact me. I'm now choosing my new plan with another network - the next time I contact them will be to get my moving code.

UPDATE: 3:09 1st Feb
Orange UK called me a couple of hours ago to fix things. The nice lady at Orange UK confirmed what I wanted to do (to keep receiving my tax as phone air time credit, not as a phone fund), put me on hold and explained it to the call centre, then transferred me across. The call centre lady then spent 5-10 minutes or so in total (with me on hold - not a problem as I wasn't paying :) ) to process the requests - I was informed that this needed some special attention (I can't remember the exact wording she used, but basically she needed to speak to someone who could implement/authorise the change to my pay as you go service plans).
This has been put through - I'll keep an eye out after Feb 11th to see if it worked!
To sum up, if you want to do the same put an email through the Orange system from their website, tell them you do not want the expense of you calling 450 customer representative (25p) to fix something you didn't want, and ask for a call back. If you still have any problems drop me a comment on this blog or on Money Saving Expect Forums where there are some posts on this issue.

Good on Orange for sorting this out quickly - I hope other readers will have the same success!

--- Original Post follows ---

I don't usually use this blog to complain, but this is one issue that gets up my nose and other people should be made aware of it - Orange is (in my personal opinion) ripping off pay-as-you-go customers out of a tax rebate.

Orange has recently sent me the text message

Hi from Orange. From 11 Feb, every £10 top-up gets you £1 towards a new phone with Orange Phone Fund. This replaces the VAT adjustment. See

At first I thought cool - I can get a free phone in a few years. What the text doesn't tell you (and is in the more detailed print at is that the fund is restricted to £200 and all funds accumulated reset after a year. Oh and you need to purchase the phone with Orange direct.

Yes, basically to get a £200 phone you need to spend £2000 in a year, even a budget phone is ~£1000.

So I complained via the Orange website that I was annoyed that they had automatically opted me in for a new plan for my two pay-as-you-go phones, yet I would never see any benefit because my phone purchase cycle is an environmentally friendly 8-10 years, and I would rather have the 25p on every £10 added to my account as had been done.

I received the quick response (within a couple of hours):

Dear Benjamin

Thank you for your email regarding the Phone Fund.

I am pleased to advise provide a better service for our customers and to give you better value for your money Orange Phone Fund will award you 10% back for every top-up made.

So if you top your phone up by £10 we will give you £1 towards your phone Fund, this gives you four times the benefit of the extra VAT credit.

Your Phone Fund builds over a maximum of 12 months with each top-up, until you decide to buy a new phone.

You can get a new phone by calling 450 or going to an Orange shop to cash in the fund towards the cost of the new phone. The maximum value of the new phone is £200.

However, if you feel that you would rather have the money as airtime on this occasion we can arrange for the credit to be applied back to your account. Please note that this would be at the rate of 25 pence (equivalent to the 2.5% VAT back) for every £10 topped up from 11 February 2009 and you would have to call 450 from your Orange handset or 07973100450 from a landline where one of our representatives will be pleased to help you.

For further information on terms and conditions please visit the link below:

Please be advised that the answers to many common queries can be found in the Frequently Asked Questions section in the Help and Support option on the Home page of our website

I trust the above is of assistance and sorry for any inconvenience caused.

Kind regards

Orange Customer Services

So basically I have to phone Orange to fix their problem.

So I rang up, went through the automated system to the final option 4 which is to speak to a customer service representative. At this point I was told I would be charged a "one off fee of 25p" - yes, that's right folks, now I would be paying for their error. I hung up the phone before it connected.

It then occurred to me, this is an Orange rep, at Orange telling me how I should fix a problem at Orange, i.e. it was deliberately scripted stock response, so I fired back a reply email:

Hi Wendy/Customer Services,

Thanks for your quick feedback. I cannot understand why the onus is on me and why *I* need to phone Orange to put right a situation Orange have created, when the information to fix it was contained in the first email (please see case number in email header for reference).
Nonetheless I have called Orange, got through the automated system to option 4, to be told I would be charged a one off fee of 25p to talk to customer representative. Is this some kind of scam to extort money? I did not go through with the process because of this however I am quite happy for a customer service representative to call me (with no reverse fee charge) on if it is a matter of the DPA.

Please can you either rectify this internally at Orange (rather than telling me how I can fix it) or call me directly on the aforementioned number. I should not be being charged, no matter the amount, or wasting anymore of my time putting right an *Orange* problem. If this cannot be arranged by yourself O2 are quite willing to give me free £30 pay as you go credit if I move my actual numbers over, and £60 (I have two phones) is looking very atractive at the moment.

Thank you for your assistance with this matter,


I have not received any further response or any calls from Orange, but that's okay. My next calls, which will cost me money will be to receive PAC codes to move my two phone numbers to get free 2x£30 credit with O2's move number feature, help move my finacĂ©e's number next month (whose Orange contract ends then anyway), and provide my parents with some free sims (curtesy of O2's free sims page)

Yes this may be overkill for £6-£18 extra credit on my phones a year, but it's the principals of:
- Changing my T&Cs without consultation to my detriment
- Poor customer service
- Onus on me to fix their problem (and wasting about 2 "person" hours in the process)
- Financial loss
- Large financial gain of moving to O2