Metrowerks’ CodeWarrior Wireless Development Kit for Symbian OS, Nokia 3650 Edition is the second kit Metrowerks have released for Symbian OS development, the first being for the Sony Ericsson P800. This week we take a look at the kit and find out whether it really does have everything you need to start Symbian OS development.
- Printer Friendly Version
If you have followed this column for any length of time you will have seen that Metrowerks have featured perhaps more than most. This is in part a reflection of the fact that, until recently, they supplied the only dedicated development environment for the Symbian OS but also their consistently responsive attitude to my questions and queries – something which has been true of both the marketing and technical people. Metrowerks Development Kits are probably a reflection of this attitude, a desire to both promote the CodeWarrior tools but also to provide a convenient one-stop pack to get the developer new to Symbian OS set-up with everything they need.
The Development Kit comes in a black suitcase and contains:
A retail version of the Nokia 3650, the one in the review kit was the gray (well virtually silver) version and included a printed user manual, handsfree headset, 16Mb MMC card and a US charger capable of operating from main with voltages between 100 and 240 volts
A set of international plug adapters
CD’s containing CodeWarrior Development Studio for Symbian OS Personal Edition, the Series 60 SDK and the UIQ SDK
Printed CodeWarrior manuals
A Nokia information pack including a fact sheet on Nokia phones and a guide to developing mobile games (booklet and CD)
A multitool
A Metrowerks T-shirt and
Finally a Nokia N-Gage™ mobile game deck luggage tag
Inside The Development Kit
Now Metrowerks product naming is perhaps a bit odd, at least to those of us used to Personal editions of IDEs being a stripped down, bare bones version of an IDE suited to the student or hobby coder. The versions of CodeWarrior for Symbian OS are as follows:
Personal Edition contains the core set of tools to write and build applications for Symbian OS emulators as well as phones. It contains an editor, project manager with project creation tools including a wizard and .mmp importer, compiler, linker, and debugger for debugging applications running in the emulator.
Professional Edition is essentially the same as the Personal Edition except that it will allow applications to be debug on a target device over a serial connection using MetroTRK, Metrowerks' Target Reference Kernel, so that CodeWarrior’s Debugger can connect to a remote target device for application but not kernel debugging. This version is designed for ISV's working with special, debug enabled hardware, and Symbian licensees who are most frequently phone manufacturers. To use the Professional Edition developers will need a special debug-enabled phone, a reference board or custom hardware with Symbian OS on it. As all Nokia’s Series 60 handsets currently ship with firmware that is not enabled for on-device debugging Series 60 developers would not be able to use this feature anyway. For most applications development debugging requirements can be satisfied by debugging in the emulator.
OEM Edition is intended for developers involved in creating new Symbian devices, porting Symbian OS to new hardware or developing peripheral device drivers. It enables debug of the Symbian OS kernel, as well as application code, via JTAG (named from the Joint Test Action Group who defined the connection). The developer would need a development board and have access to Symbian source code to take full advantage of the OEM version.
So CodeWarrior Personal Edition is a fully capable version of CodeWarrior only missing the ability to debug applications on phones or hardware boards. It’s not a version that application developers will find they end up needing to upgrade to be able to create fully featured Series 60 applications. Developer edition may have been a better name
The installation process for CodeWarrior is straightforward and really does not require any description – if you can code C++ you will be able to install CodeWarrior and the SDKs. You will still need to register the software to get the unlock code for the PC it is installed on – without registration you can use the IDE for 15 days.
Once CodeWarrior is installed you can then install the Series 60 SDK and the UIQ SDK which Metrowerks have slipped into the kit. Both are effectively beta versions, the Series 60 SDK is version number 0.9 and the UIQ SDK simply marked Beta. A final version of the UIQ SDK can now be obtained from Ericsson Mobility World and it is likely that a final version of the Series 60 SDK will be available from Forum Nokia in the not too distant future. However both versions work acceptably.
I won’t go into detail about the CodeWarrior IDE as we have covered it in some detail in the past here in the SymbianDevZone – see CodeWarrior Symbian OS Products (http://www.wirelessdevnet.com/symbian/rb_12.html) and Introduction to CodeWarrior Development (http://www.wirelessdevnet.com/symbian/rb_13.html). We will also bring you a more in-depth look at development for Series 60 in a future article. It is probably sufficient to say that this latest version improves on an already excellent development tool with tighter integration of the Symbian OS tools into the CodeWarrior environment.
There is one interesting omission from the Series 60 SDK and that is Stationery. Stationery is CodeWarrior’s template for software projects which contain the files and information on target platforms (for Series 60 the emulator and phone) you are developing for. It’s an odd omission, given that Stationery is the starting point for new projects, but it is not a major problem, Stationery is relatively straightforward to construct. The easier approach is to import an existing Series 60 code example, which if you select carefully may provide a good starting point for your development.
Once you have created your application you run it in the Emulator included in the SDK from where you can debug via CodeWarrior if necessary, before using the Symbian OS tools built into CodeWarrior to create a SIS file to deploy the application to the Nokia 3650.
So as the emulator allows you to test your software without a phone what is the point of a developer’s kit with phone? The emulator runs over the host operating system which in turn is running on a PC whose specification could be as low as an early Pentium processor with 64MB of RAM running Windows NT through to a high end system running Windows XP. As a result the performance of the Emulator will not necessarily provide an accurate simulation of the applications execution speed on a device. While this may not be critical for most applications for games it is a different matter. Accurate evaluation of a games performance, sound rendition and use of features such as a vibrate function to enhance play are critical to ensuring the game will be both playable and compelling can only be done on a target device.
So is the kit complete? The Nokia 3650 can only connect to a PC via either infrared or Bluetooth, there is no cable connection option, and you will need the appropriate hardware to be able to transfer your developed software to the Nokia 3650. Having said that you could email the software to the phone or create a web page to access the software via the Nokia 3650’s Browser (which will probably be a more accurate replication of how most users will receive your software). A Bluetooth or Infrared connection would however be the more convenient way to achieve this.
While it is not essential you may also want to download and install Nokia PC Suite, the latest version of which can be found on the Nokia 3650 support site. This would allow you to install software while the Nokia 3650 was connected to your PC via infrared or Bluetooth but also allows you to perform a data back up of the phone.
And finally the Nokia 3650, what a little gem! I’ve had a Nokia 7650 for sometime and although the Nokia 3650 is essentially the same there is one thing that makes a huge difference and that’s the addition of an MMC card. The supplied 16Mb card really frees you from worrying about what you install on the Nokia 3650 with enough space left over for a healthy dollop of pictures and other content files. Personally I preferred the miniature joystick on the 7650 to the flat paddle affair on the 3650, but that would really be my only dislike, yes I’m quite comfortable with that odd circular keyboard.
The Nokia 3650
Metrowerks have put together a good package which will allow you to kick start your Symbian OS development. The primary purpose of the Kit is clearly to introduce Symbian OS and Series 60 development to games developers, it was launched at GDC Mobile, San Jose in March of this year and comes with Nokia’s introduction to games development. The kit would equally serve any developer interested in starting with CodeWarrior and Series 60 well.
There is perhaps one disadvantage to the Kit, at US $1150 it certainly is not buying you the components at a discount. This is because Metrowerks can not subsidize the phone the way operators can, but with the kit you do get a phone without any commitments to a connection contract. So if you were to shop around it is likely you can put together the same basic components for less upfront. You just have to ask whether your time will be more productively spent going shopping or starting to develop for Series 60.
About the WDN Symbian Editor, Richard Bloor:
Richard Bloor is a freelance writer and editor with 18 years experience in the IT industry as a developer, analyst and latterly Project Manager with a particularly focus on software testing. Richard has been involved with the Symbian OS since 1995 and has been writing about it for the last 3 years.
Richard is also an associate with System Architecture consultancy Equinox of Wellington, New Zealand.