Tuesday, June 28, 2011

HOW-TO: Try out MeeGo releases [for newbies]



This could be You!
This is a little how-to on MeeGo for you folks that are like me: we enjoy the latest tech and we're extremeley curious, but don't really have what it takes to be "power users". I will try to explain in easy to understand steps what it takes to try out a MeeGo image on your USB or MicroSD compatible devices. Personally I'm using the ExoPC -tablet and the Nokia N900.

This guide is only to get you started, so I will avoid giving instructions on how to install these images on your devices for good or upgrading them, as I want this guide to give you the possibility to preview them with the least risk of actually fumbling your device up completely.

NOTE: These instructions are for installing MeeGo using Windows (7)!


Basic principles and tools

Getting MeeGo on the screen of your device happens through these steps:

1. Download the image suitable for your device
1.1 Note about the N900 Community Edition
2. Unpack or in other ways prepare the image file
3. Write the image onto a removable media (microSD, USB stick)
4. Prepare your device into understanding that it should boot off removable media.
5. Boot up your device with the removable media in the device.
6. Enjoy the preview!

Tools I use:
- Any browser
- 7zip (download link), but any similar program will probably do
- Win32DiskImager (download link)
- ExoPC, N900.

So let's get cracking!


1. Download the image suitable for your device

All MeeGo images that are ready for download can be found here: http://repo.meego.com/MeeGo/builds/stable/1.2.0.90/latest/images/

Now it might look a little bit messy, but here's a run-down of what you should be looking for:

MeeGo-Core (meego-core-ia32-madde-sysroot/): I've no idea what this is, probably for developers wanting to fiddle with something completely without a user interface. Probably a developing program. We're not interested in this.

MeeGo-Handset: Handset images, currently only for the Nokia N900 handset. Notice the "devel" behind the second folder. I suppose this is more unstable.

MeeGo-ivi: In Vehicle Infotainment, unless you're putting the MeeGo image in your car, forget about this.

MeeGo-Netbook: If you have a 10-11" laptop around with in-built 3G and an USB slot, then this is the image for you.

MeeGo-Tablet (Pinetrail, Oaktrail, mrst, mfld, madde-sysroot): The tablet image of MeeGo, meant for well, tablets. In order to chose the right folder, you must know of the processor inside your tablet. The ExoPC runs on the Intel Pinetrail processor, so this is the image you want for the ExoPC.

If you venture deeper into the folders, you will find folders called "stable", "daily", "devel", "testing" etc. Stable releases are the ones you should go for, as they are the "most ready" images. You can try out daily builds to experience the absolute latest, but be aware that daily builds might include showstopping bugs.


1.1 Note about the N900 Community Edition


If, however, you are looking for the N900 Community Edition MeeGo releases, look here:
http://repository.maemo.org/meego/n900-de/

I selected an image from the "daily" folder, as I wanted to try out the latest.
http://repository.maemo.org/meego/n900-de/daily/


Downloading the correct image:

Just look for the .BZ2 file in the folder. For example, the image I chose was:

mg-handset-armv7nhl-n900-ce-stable-1.2.0.90.5.20110621.5.DE.2011-06-23.1-mmcblk0p.raw.bz2



N900 Community Edition


2. Unpacking or in other ways preparing the image file


When playing around with MeeGo images that go on the N900 or any handset, you will always have unpack the image you just downloaded. A lot of guides will point you to downloading BZip2 for doing the unpacking, but its not the only way. The images can probably be unpacked by applications you are familiar with, such as 7Zip or WinRAR. The only requirement is that the program must understand .bz2 files. It is easier to check whether your current unpacking program supports .bz2 than it is to learn using the command prompt in Windows.

Unpack the image into any folder you see appropriate, such as the one where you downloaded the image.


3. Write the image onto a removable media (microSD, USB stick)


I searched far and wide to find a program that does the same as Win32DiskImager (download link), but couldn't find one. I never like relying on a single app because once that stops working, I like to have a backup plan. Win32DiskImager (download link) is the easiest tool to use for burning the bootable MeeGo image onto removable media.

Writing the image:
- First, plug your device into your PC: put the USB stick in one of the ports or attach the N900 in Mass Media mode.
- Then open the app.
- Then click the folder icon and browse to the folder where you unpacked the image.
- You will not see it, but by typing " * " into the text-entry field all files in the folder will become visible. Select the one ending in .RAW.
- You will see "[A]" selected as the default target drive where to burn the image. Chose the drive letter of the USB stick or the MicroSD drive of your N900.
- Press Write. Click "OK" on the error talking about corrupting a device.
- Watch the progress of the burning, DiskImager doesn't really have a "Ready" notification. It will simply state "Done." in the lower left corner.


4. Prepare your device into understanding that it should boot off removable media.


Now that you have your bootable media ready, you need to make sure your device will notice it on startup.

N900:

Download u-boot from Extras-Devel.

After installing u-boot, upon starting the N900 you will always be greeted by a Penguin logo and a countdown. The functioning of your device has changed to the following:

- If you have your MeeGo MicroSD card in your device, it will attempt to boot into MeeGo off the MicroSD automatically.
- If you have your ordinary MicroSD card in the device (I have a second MicroSD for my music etc.), after the countdown it will boot into Maemo.
- If you press a key during the countdown, you can type "run noloboot" to boot into Maemo or "run mmcboot" to boot off the MicroSD.

You might get an error message talking about an erroneus image, but if the last line reads "reading uImage", then MeeGo is booting. At the writing of this, MeeGo needs about 5 mins to boot up on a class 4 MicroSD (class 6 or above MicroSD cards recommended).

ExoPC:

The ExoPC functions a lot more like your ordinary desktop PC. Upon startup, press "BBS" and select your USB stick as the media to boot from. Bootup to MeeGo should start nicely.

Note: it will ask you to install MeeGo, but unless you are ready to do this, select the option "Boot MeeGo".

5. Boot up your device with the removable media in the device.
6. Enjoy the preview!






Things that went wrong for me, guidance


The title sounds spookier than what this section is. I ran into a couple of snags every now and then, but luckily nothing device-threatening:

1. "RX-51 OMAP" at attempting to boot MeeGo image on my N900.

If you get stuck at what looks like the phone asking you to type something in with "RX-51 OMAP" to the left, the image is somehow corrupted or unsuccesfully burned onto your MicroSD. Just try burning the image again.

2. Win32DiskImager crashes at X%.

I ran into this problem and it held me back for a good month before I had the energy to figure out what was wrong. Turns out I had to do a quick-format to my MicroSD card for DiskImager to write the image to a 100% again. If DiskImager crashes and you can't close it (not even with CTRL+ALT+DEL), just unplug the N900 and the window will dissappear.


Further reading


Typical to Peakmob, I will leave you with further reading after a monster post:

Wap Review: "getting Started with MeeGo Tablet - upgrading the OS and installing apps" http://blog.wapreview.com/10130/

Wap Review: "Running the WeTab MeeGo OS on the ExoPC" http://blog.wapreview.com/10254/


If you have some great MeeGo-related links to share, give me a shout and I will add them to the story!

Tweet them to me on Twitter (@creip) or post a comment.


Thanks for reading!


Monday, June 6, 2011

So what the hell is taking MeeGo so long? Do we always have to wait this long?



Recently news have surfaced on Nokia's reasons to shift emphasis away from MeeGo as their primary smartphone strategy. Elop is quoted saying that Kai Öistämö and him were devastated to see MeeGo (or Maemo6 to be accurate) in too of a rough form at at the beginning of 2011, influencing adoption of Windows Phone 7 as the primary strategy.

Because of Nokia's hardships in shipping its MeeGo device (we've been expecting a device for almost 7 months now) and now these news of Elop saying that MeeGo is still too raw to be a primary platform, a lot of bad light is being shunned in MeeGo's direction as well.

Quick disclamer before I continue: for most people, what Nokia is about to release as the "N950", "N9" or "Jessie's girl" is a pure MeeGo product, built from the building blocks released at MeeGo.com. What Nokia in truth is about to release, is their sixth iteration of Maemo, with some MeeGo API's. Therefore Nokia's MeeGo product can't be compared to a "pure" release of MeeGo and therefore any progress or lack of it doesn't necessarily have anything to do with MeeGo.com MeeGo.

Images you can download from MeeGo.com seem very raw with incomplete UIs and  functions. And with Nokia's set backs widely reported on the media, is MeeGo totally late and too raw to be taken seriously? Is MeeGo in fact developing too slowly to ever mount to anything worth writing home about?


Examining how the competition have done it

I've been juggling questions like the ones in the previous paragraph ever since the beginning of 2010, the announcement of MeeGo. And so I deciced to compare how long other mobile OS's took to mature from rumours or announcements into commercially sold products. I decided to find out how well does MeeGo's development rate fare with what competitors' platforms have achieved before it.

So here's a brief listing of some of the important dates in competitors' OS's histories. The OS's arent't listed in any specific order. My intention is to figure out how long did each manufacturer's device spend in the works, ie since which date can it be said that it was probably being developed, and how long did it take to end up in consumers' hands.

Let's start with Samsung's Bada. Samsung's Bada was first announced 10th of November 2009. The first Bada device, the Samsung Wave S8500 was released June 1st, 2010. Time from announce to market: 8 months. [Source]

Android was speculated about early as 2003. In 2006, things really got rolling and in October in 2008 the first consumer Android device, the "T-Mobile G1" launched in US. Production time: about 5 years. [Source]

Maemo saw its first release in 2005, but I couldn't find any old rumours about when it might've been started. Nokia has said that the fifth iteration of Maemo was step 5 out of 6 in making it truly a commercial product. Maemo 6 is coming out in just a few weeks, so we shall regard that as the "final product", although many would argue Maemo 5 is that already. Production time: 6 years [Source]

2001 the first photo surfaced of what many believed to be the iPhone. Jobs and Wozaniak played it cool in not revealing too much about it, but constant rumours made it likely, that something was in the works. In 2007 the world finally saw the launch of the first iPhone. Production time: 6 years [Source]

Symbian first surfaced on the Psion PDA device in 1994, in 1998 it became Symbian and 2001 brought about the first commercially sold Symbian OS device, the Nokia 9210 Communicator. All versions were considered as final, but for our discussion's sake the Communicator shall mark Symbian's maturing. Production time: 6 years [Source]

In the beginning of 2010 Maemo would merge into Intel's Moblin to form MeeGo. MeeGo was announced in 2010 and the first commercially sold product the WeTab came out September 2010. Production on the WeTab had (probably) started before the MeeGo project was announced, but perhaps it can be held as an example of how easily MeeGo can be utilised. (Please feel free to comment on this if you have more details about the weTab!) Naturally the very first fully usable version of MeeGo was the Notebook release with MeeGo 1.1 in October of 2010, but at least to my knowledge it didn't necessarily immediately surface on manufacturer sold devices. [Source1, source2]


Conclusions


Here are the "from production to market" times in summary:
Bada took 8 months
Android took 5 years
Apple took 7 years
Symbian took 7 years
Maemo took 5 years to mature, although first versions served as complete, ready releases.
MeeGo took 7 months to appear in a commercially sold product, the WeTab.

So according to these results, MeeGo would in fact be the fastest OS to go from production to market. Of course we must remember that MeeGo was formed from two already mature platforms, giving it a slight edge perhaps. How much this is true, only coders can say and feel free to comment on this as well. However, Samsung's Bada platform's maturing process seems quite impressive, although Bada at least at the moment cators a more featurephone variety of functions.

Another note to keep in mind is, that biggest expectations of MeeGo are pointed at the handset release, and Intel is currently saying that the first MeeGo driven handsets are probably 2012's news. So in that regard it will be somewhat "late", but its still nothing compared to the 5-7 years competitors' OS's have needed to mature. And many would argue, that for example even Android 1.6 was far from mature on launch as it lacked some features as syncing and MMS, that both are included in the already released MeeGo handset image.

Yet I think the greatest difference between MeeGo and the competition is, that MeeGo is developed about 90% in the open (there was a slight fumbling with the Tablet UI's openness...), unlike any of its competitors. Imagine how people would've reacted seeing alpha images of Android back in 2003 or 2006. I don't think anyone who wasn't a software engineer could've seen promise in it, and that's what's happening now with MeeGo, I think. People that aren't used to judging anything but finalized products can't have a sense of how far along work-in-progress projects are.

So to really understand MeeGo, people should patiently wait for the commercial releases before shelling out judgement. MeeGo IS making good progress in my opinion. Below I've included a good read written by Henri Bergius on what MeeGo is, which should further help people understand just where (and how) MeeGo stands. Thanks for reading.

Further reading:
Henri Bergius on his blog about MeeGo: http://bergie.iki.fi/midcom-permalink-1e08f280b5a502e8f2811e0af0885b702a2a1fea1fe