Wednesday, February 27, 2008

FOSDEM 2008

So the FOSDEM 2008 is now over. Writing down some experiences about it. First of all, there seemed to be a lot of people in there. Their broschyr said there will be 4000+ geeks at the place. But nobody was counting, so the number is just an estimation. However the place was crowded, some lectures was too full, people was just standing like sardines in can. There was space in some places too, but the most popular events was just nightmare.


Janson lecture room

Picked some interesting lectures, such as Clutter, integrating the Web into GTK+ with WebKit, Mozilla Mobile, tangoGPS lighting talk, among other full lectures and lightning talks (15 minutes time limit) which I was watching.

Also spent some time watching the stands. There was many Asus Eee PC's and OLPC (One Laptop Per Child) computers, as well as different embedded devices running free software, for example OpenEmbedded stand was interesting.


Eee PC


OLPC

It was not only strict business but also fun time, spending nice time at Friday Beer Event at Delirium cafe and GNOME Beer Party on Saturday. Had a change to talk to people in a relaxed environment. Somebody said that the real conference starts when people gets some beer.

But after all met some good people and changed thoughts, talked about different open source related stuff. And I was able to show my demo with FIC Neo1973. The demo itself was not impressive, it was just a Debian etch booting with working X, touch screen and Matchbox window manager. But what makes it great, is the time spent on that: only a single day. I'd probably talk more closely about it and about the progress in this blog.

But I was nice to be there! Thanks to the organizers, all speakers and people I met.

Wednesday, February 06, 2008

Going to Fosdem 2008

I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting

As said I will be at FOSDEM 2008 in Brussels, Belgium. I'm going there with a co-worker, and our employer, Nomovok, is kindly paying the trip.

I'm quite excited to see other people working on open source projects and talk to them about all kind of open source related things. If you're going to FOSDEM as well and are intrested to talk with me, please contact me beforehand with a email (you're able to see the email in my profile) and let see if we can arrange a meeting.

I probably have my FIC Neo1973 with me so that I can show it for curious people. Also my Nokia N800 will be there. I can also tell about some personal intrests of mine in area of open source. So don't hesitate to contact me. See you at the FOSDEM.

Thursday, January 24, 2008

Running ARM Debian in qemu

I wanted a whole running ARM Linux system, but considered my real ARM devices (for example FIC Neo 1973) too slow and limited for the most tasks I wanted to perform. So had an idea of fully emulated ARM system, running on qemu. Best option for the installable system seemed to be Debian since it had a prebuilt packages and quite easy install system. And of course, I like Debian.

Fortunately I found a good guide for my adventure: http://www.aurel32.net/info/debian_arm_qemu.php. First started by getting the latest qemu, and built it for my system. Fine, then installed it and everything seemed good. So continued with the next step: installing Debian to the qemu system. Installer started fine. The installation went fine. Then the first boot and the first problem. For some reason the boot process hanged every time when the system was checking the disc image. The check was forced in first place because the clock of the qemu system was reseted to zero on every boot (back to 1970's) and the system thought that we have been too long without performing the check. Just spent a day trying to solve the issue and googled for solution. The main problem seemed to be qemu but even the newest CVS version didn't help. Finally made a dirty but a working solution: changed disc image parameters with tune2fs so that the image won't be checked any more. Success.

Finally logged to the Debian system and was able to operate as in any other system. I was able to install new packages, build packages and perform other operations. Then I downloaded a third party ARM Linux application which just didn't work. I was unable to execute it. Then figured out something. The kernel which was provided by the tutorial didn't support EABI. I wanted EABI. So I thought that building a own kernel would be nice and easy. Thought wrong.

First I needed cross compiling toolchain for ARM EABI, it was fortunately found from http://www.codesourcery.com/gnu_toolchains/arm/download.html. Then I downloaded newest kernel, set up cross compiling and chosen the default versatile kernel configure. And changed it to support EABI. Then built it. Success. Try to boot - and fail. The default versatile configure was not the right one. Since the tutorial didn't bother to provide kernel configuration to build the kernel, I was forced to figure it out myself. Gone through hundreds of different configuration and finally found one which worked almost. It just didn't found my hard disk or the disk image where my Debian installation was. I thought I had everything: PCI (took also some time to figure out that I need support for it) and SCSI disc support, but something just was missing. Hit my head against the wall until figured it out: SCSI low level driver. I had to check it from qemu home page, selected it from the configure and built. Finally a success!

Now everything was working again on my qemu ARM system. The lesson learned: you should always know the platform for which you're building the kernel for. To know all the devices, chips and drivers possibly needed. And the kernel configuration seems to hide some options, making unable to select or even see them, if they depend on other configuration option. Next time I will double check all the device drivers that I really need and study the platform better. No guesses any more. Only cold facts.

Monday, November 19, 2007

Some recent FIC Neo 1973 experiences

I have been playing with my Neo 1973 phone for some time. I tested Qtopia and it looked nice and got phone calls working for the first time. However it's not designed mainly for Neo 1973 and the experience was not too nice. It lacks something.

Recently there was a new OpenMoko image released, and of course I had to flash it to my device. The look was upgraded and the phone calls was finally working! Had some bugs, but it was working. I was able to make and receive calls.



Also tried to compile my own test application, and had some success. I was able to get "Hello world" on the console. Waiting to get something more working, for example a GTK+ app would be nice to get running. But until that I keep on playing with this thing and will report as soon I get some results...

Monday, October 15, 2007

Got my FIC Neo1973

Today I finally got my FIC Neo1973, a OpenMoko based mobile phone. Man from the packet service called and woke me up telling that he'll bring the packet in five minutes. I was ready in a minute and counting seconds until the doorbell rang.

It was like a Christmas when I opened the package revealing it's contents:



The phone on the left, stylus package, battery, wires and all other stuff on the right side of the package.

Finally I took the phone on my hand:



Great. It's a little bit bigger than I thought. But it fits to my hand and isn't too heavy. There's a handy pouch included in which you can carry the stylus and Neo1973 with you without a fear to scratch the screen. Memory card slot is under SIM slot and both of them are under the battery so changing a memory card is not a easy task. Here's picture about the interiors:



The phone was shipped without rootfs installed, only uboot and kernel. As a first thing I flashed new kernel and newest devlopment rootfs. Got the device booting:



And here's finally the UI up and running:




First impressions is that the boot process takes quite a long time. It's not like forever, but have to be patient. The software is not quite ready yet and they have a lot to do, some apps simply does not work or works only partially. I faced also problems with GSM calls, the GSM just doesn't seem to work. Find out that this bug might cause the problems since doing things on the command line as they told in the comments made it power up the GSM and to make it able to call (with AT commands).

However I keep on testing the device and will definately report more impressions about the device and the software.

Friday, September 28, 2007

About Clutter

I've been playing around with Clutter lately and find it intresting project. So shortly it's a library to create fast, visually rich and animated graphical user interfaces. It uses OpenGL or OpenGL ES for rendering, but hides their complex API.

It uses GObject as base of it's classes and people who has been coding with GTK or glib are very home with Clutter. Additional libraries provides features like GStreamer playback support, Cairo rendering and embedding into GTK.

Building an simple application seems to be easy following the documentation. There seems to be lot of features, and basic operations works nicely. I made a test app utilizing clutter-gtk for GTK embedding, an it run smoothly on my desktop. However when I tried same application using OpenGL ES backend I faced problems. Clutter was missing XEMBED support for ES backed. I found this support in normal OpenGL version and find out making support for ES was quite easy job. I made a patch and posted it into Clutter's Bugzilla. Now I got a response and they seems to be excited about this patch.

It seems that Clutter is a nice project and the project team members are doign a good work. The library could be used more widely to make some nice, smooth UI's. However I'm not a graphic so didn't manage to create too smooth UI, but maybe somebody else success more better than me.

Monday, September 03, 2007

A word about Ubuntu Mobile and Embedded

The most popular Linux distribution (according DistroWatch.com) on desktop, Ubuntu, is aiming on the embedded market. They aim their embedded distribution mainly on devices which are called "Internet tablets" or "mobile Internet devices".

Currently the target is on Intel platform called MID (Mobile Internet Device) and available devices such as Samsung Q1 Ultra, HTC Shift and Elektrobit EB MIMD. The distro will aim on Intel based system leaving for example ARM based devices like Nokia N800 out of the scope.

About the project itself. It tries to use existing software as it's base, but is not afraid to implement it's own applications when suitable one not available. It's intresting that the project took Hildon as it's UI framework. Hildon is originally developed by Nokia for it's maemo platform. However, Hildon is open source and such thing is possible to do and kind of open source spirit, and in the line with the policy to use existing components if availble.

They're targeting to release first version with Ubuntu 7.10, meaning very soon from now. As I see these Intel based devices are yet to come to the markets and we'll not see this in use in this year but in a year or two those devices with Ubuntu's embedded version might be a everyday. Only the time will show...