Archive for the 'Tutorial' Category

Displaying Exif Information from JPEG Images

Tutorial 4 Comments »

Have you wondered how Flickr publishes the most popular cameras in their community? How does Flickr get the information about camera model, such as Nokia Sony Ericsson W810i or Nokia N73?

Top Popular Cameraphones on Yahoo! Flickr

The answer to the questions above is Exif. According to Wikipedia:

Exchangeable image file format (official abbreviation Exif, not EXIF) is a specification for the image file format used by digital cameras…. The specification uses the existing JPEG, TIFF Rev. 6.0, and RIFF WAVE file formats, with the addition of specific metadata tags. It is not supported in JPEG 2000 or PNG.

Basically, Exif is metadata embedded into images captured with digital cameras, including camera phones. Not only camera model, Exif stores many other parameters, such as focal length, exposure time, aperture value and many more.

How can we view Exif information? Many photo management software, such as Google’s Picasa, and image viewer software, such as IrfanView (with additional plug-in), are able to display Exif information. The following screenshot shows Exif information from a picture taken with Nokia N73. Just for your information, I use IrfanView to display Exif information.

Displaying Exif information on IrfanView

Solving Device Certificate Problem on Nokia N91

Tutorial No Comments »

Recently, I was playing with Nokia N91 and Napster on Windows Media Player (WMP). Nokia N91 is a music phone from Nokia that can hold up to 4 GB music files. Napster is one of the largest online music store. It sells songs protected with WMDRM (Windows Media Digital Rights Management) technology from Microsoft.

OK… I bought some songs from Napster and then synchronize them to my Nokia N91. So far so good. Everything went smoothly.

At some point of time, I had to reset the phone to the default factory settings (using *#7370* key combination). Guess what, after I did that, I couldn’t synchronize my songs any more. I got the message from WMP, “A problem has occurred in obtaining the device’s certificate. Contact Microsoft product support”.

A problem has occured in obtaining the device certificate. Contact Microsoft product support.

That’s bad, isn’t it? The worse thing is that I am an engineer but I had no idea what to do. I am wondering what the end users will do if they hit the same problem.

After spending a couple of hours, finally I solved the problem. The solution is so simple: REFORMAT THE HARD DISK. Puihhh…

What’s really happening there? It seems after I reset to the factory settings, the WMDRM certificate on my device is invalid. After I reformat the hard disk, a new WMDRM certificate is generated.

Bonus links:

  • Why DRM is Great and Why DRM Sucks
  • DRM Thoughts from S60 blog - It is not really related to my post. However, Jouni highlighted an interesting point that we cannot buy digital contents for every possible digital player.

Short Tutorial of Cellular Networks

Tutorial 2 Comments »

This short tutorial is intended for you who have no ideas when reading terms like EDGE and W-CDMA. My idea of writing this blog is because there are so many acronyms in the cellular technology. Sometimes we just got confused. I have heard some people confuse cdmaOne with W-CDMA. They think both are the same thing, which is actually not the case.

How do I start? It’s a bit tricky to start the tutorial because so many things are going on. Basically, there are two cellular technology that are mostly used today, i.e. GSM and cdmaOne. Some people call it cdmaOne as CDMA only, for example, you may hear someone saying “this is a CDMA phone”. cdmaOne, which is developed by Qualcomm, is popular in North America and some other countries. GSM, which is originally from Europe, is more popular in the rest of the world. Both GSM and cdmaOne are the second generation (2G) of cellular networks. The difference between 1G and 2G is the fact that 2G is based on digital technology, while 1G is still based on analog technology.

Now, let’s go the more interesting part. As you know that 2G network is not fast enough. We need faster network. That’s why 3G has been deployed in some parts of the world. How do we go to 3G then? Since we have two technologies, i.e. GSM and CDMA, there are two upgrade paths to go there.

GSM

  • 2G: GSM
  • 2.5G: GPRS
  • 2.75G: EDGE / EGPRS
  • 3G: W-CDMA
  • 3.5G: HSDPA & HSUPA

The upgrade path for GSM operators to 3G network is W-CDMA. As you can see from the list above, there are some additional steps before we finally have 3G network. We have GPRS as 2.5G network and EDGE (or EGPRS) as 2.75G network. The reason why we have additional steps was because 3G investment is not small amount of money; while customers already need more speed.

The most common W-CDMA technology used in the world is UMTS. Sometimes UMTS is also called 3GSM, so that people notice that it is based 3G network based on GSM. Is there another W-CDMA technology beside UMTS? The answer is yes. NTT DoCoMo from Japan has developed another 3G network, called FOMA. It is actually the first 3G network deployed in the world back in 2001.

Even though 3G network is not really deployed world wide yet, people are already talking about the next generation of cellular networks. That’s why these days we hear HSDPA, which is referred as 3.5G network and HSUPA, which is sometimes referred as 3.75G network.

CDMA

  • 2G: cdmaOne
  • 2.5G: CDMA2000 1xRTT
  • 3G: CDMA2000 1xEV-DO & CDMA2000 1xEV-DV

Now, the second path to go to 3G is based on cdmaOne technology. As you can see from the list above, the real 3G network for CDMA is actually CDMA2000 1xEV. Like GSM, there is an upgrade step before going there, i.e. CDMA2000 1xRTT.

For the 3G network itself, there are two types of networks, i.e. 1xEV-DO which is optimized for data only; and then 1xEV-DV, which is optimized for data/voice.

Acronyms

Now, here is the list of all acronyms above:

  • CDMA: Code Division Multiple Access
  • CDMA2000 1xRTT: CDMA2000 1 times Radio Transmission Technology
  • CDMA2000 1xEV-DO: CDMA2000 1x Evolution Data Optimized
  • CDMA2000 1xEV-DV: CDMA2000 1x Evolution Data Voice
  • EDGE: Enhanced Data rates for GSM Evolution
  • EGPRS: Enhanced GPRS
  • FOMA: Freedom of Mobile Multimedia Access
  • GPRS: General Packet Radio Service
  • GSM: Global System for Mobile Communications
  • HSDPA: High Speed Downlink Packet Access
  • HSUPA: High Speed Uplink Packet Access
  • UMTS: Universal Mobile Telecommunication System