Sunday, February 18, 2007

updates on simputer and mobilis

It has been a long time since I kept track for developments on Simputer and Mobilies, largely so as I got absorbed in other work as well as was seeing a tremendous revolution in the Mobile Smartphone segment. Infact, if you see my previous posts, I have been personally involved in writing many first time applications specifically using the Python port on S60 devices by Nokia.

Not so long ago I had written a small article on Simputer, mainly questioning its marketing strategy and support for developers (those interested can read this here: and a copy at It appears to me now, that people at PecoPeta (who manufactured Amida Simputer) have probably been thinking the same. PecoPeta (or rather the Amida Simputer) has a new owner,, which is a company based in Mumbai. Read this news item for some more info.

Geodesic on its part has taken some important initial steps in reaching out to the developer community as a whole. Like it has GPLed the Alchemy UI framework used in Amida Simputer (see:, but I feel even this step is not enough to light up the Simputer passion among the developers. To reach a larger mass of developer community, you not only need the software stack open-sourced, but the hardware also needs to be easily accessible (read: can be bought from a local vendor or an online store). And this aspect seem to be still missing in the case of a Simputer.

Another company that has been selling Simputer (largely to Government and Corporate customers) is Bangalore based Encore ltd. Apart from Simputer, Encore had last year introduced a so called "cheap laptop" called as Mobilis, which again seems to be difficult to purchase! However a look at their website ( indicates that Mobilis has had a substantial software stack + hardware update, providing features like better Linux support, J2ME support, wider connectivity options (WiFi, Ethernet, GPRS, Modem support) etc.

In the end, a feeling of "we have it in us, but can't sell it to others" crosses my mind as I go through the revised product sheet of Mobilis (

Friday, February 16, 2007

compiling mobihf python extension module on linux

As Nokia doesn't seem to provide S60 SDK on Linux (largely due to copyright issues), you could do the compilation (generating the Python extension module in my case) by using either gnupoc or using the how to at Simon Woodside.

Somehow, I was not able to get stuff working using Simon Woodside's instructions, neither gnupoc installation worked straight forward. But I was finally able to use gnupoc to get the Python extension modules compiled (for mobihf, see the previous post).

This is what I did. Follow the gnupoc instructions provided at:

I used the 2.0 SDK for my work (that what is required to get programs compiled for my Nokia 6600). The only thing I am not so sure about the above instructions is whether Wine is really required to get the stuff working. What appears to me is that only if you need the emulator and a few windows only SDK tools. gnupoc use the gnu-arm cross compiler, which is natively compiled for linux and can be obtained from gnupoc site itself. In any case I have done this installation on an FC6 machine, where Wine refuses to work properly (it simply freezes up any windows program i try to execute, even winecfg). So, I have really not cared about this aspect of the SDK while performing the installation and running the tests.

After following the above procedure, I unzipped the Python SDK files from PyS60 site:
into $EPOCROOT/. The .bash_profile file had the following entries for PATH and EPOCROOT:

export EPOCROOT=/data/sdk/gnupoc/


So my SDK is installed in /data/sdk/gnupoc directory. Note that EPOCROOT needs the last '/'.
Also the GCC-ARM cross compiler is placed in /usr/local/er6/bin directory. Now, make sure that all the files in $EPOCROOT/epoc32 are executable.

You will also need to UNIXify (use dos2unix) all the .h files unzipped from the Python SDK distribution.

Finally, you need to edit file in $EPOCROOT/epoc32/tools directory to replace:

$Candidate=uc $Candidate;

to :

$Candidate=lc $Candidate;

near the following line:

if ($Section eq 'PLATFORMS') {

This is to allow it to properly find the armi build directory. After this you should be able to use the SDK for compiling Python extension modules as you do in Windows using:

bldmake bldfiles
abld build armi urel
abld freez
abld build armi urel

Hope all this is of some use to somebody! :)

new version of mobihf (v0.3)

a new version of mobihf (along with the C++ compiled module for 2E integral evaluation) is available from:

this is just a bug fix release. no new "features" are added, except that now mobihf reports time and also indicates if it is using a python or C module for integral evaluation.

after the long expected "retirement" of my windows machine, i needed to fix a few bugs with the C++ module. as i was not planning for investing in a new windows vista machine immediately, i had to use gnupoc ( with a few modifications (will post soon on how i got the python module compiled for my 6600 on my linux box), till then enjoy the new version ;)

Thursday, February 15, 2007

Putin talks

Hindu has a report on recent speech given by Russian president, an interesting read:

... and reminds me of revival of cold war, probably with more players this time!

Monday, February 12, 2007

Teraflops on a chip!

Intel has recently announced that their researchers have developed the first programmable chip that can deliver Teraflops computing power!

For more details on this check:

.... soon you will have gigaflop processors for mobile devices, and then probably things like this: might make more sense :)

Thursday, February 08, 2007