Planet maemo: category "feed:218abbb3f30ed17e36476558d8bce9b5"

Enrique Ocaña González

I guess some of you already know about as a very useful tool to organize the random webpages about interesting stuff that you find in the internet while casually browsing.

What I’ve realized today is that Delicious can also offer your bookmarks as an RSS feed and you can take advantage of that feature to keep a TO DO list of websites and articles you’d like to have a look at. It’s simple, just bookmark the interesting pages in Delicious with a “todo” tag and then subscribe to using your favorite RSS reader.

You’ll have a nice feed ready to be reviewed. The expiration policy of you feed reader will track those pages already reviewed and hide them to you.

Categories: Personal (english)
Enrique Ocaña González

Shishen Sho compiled for N900

2010-02-21 02:11 UTC  by  Enrique Ocaña González

I’ve recalled about my old Shishen Sho game, originally developed for N810 (Maemo4) and I was wondering if it would compile for N900 (Maemo5). Well, after some minor corrections to make it work in a more recent version of Vala, it compiled. You can downloaded it here:

Disclaimer: It’s compiled “as is”, with no adaption for sliding menus, no new hardware keys and no new fancy features. It just works and will let you have a good time while waiting for the bus.

Categories: Gnome
Enrique Ocaña González

Some simple steps to do tethering over bluetooth to connect to Yoigo Spanish carrier:

  1. Enable the Maemo Extras-devel catalog (URL:, Distribution: fremantle, Components: free non-free) and install “Bluetooth Dial-up Networking”.
  2. In your computer, edit /etc/bluetooth/rfcomm.conf to look like this, but using your own bluetooth device address (use hcitool scan from your laptop to get it):
    rfcomm1 {
            # Automatically bind the device at startup
            bind yes;                                 
            # Bluetooth address of the device
            device 00:11:22:33:44:55         
            # RFCOMM channel for the connection
            channel 2;                         
            # Description of the connection
            comment "N900";

    Channels 1 and 3 are also available and can be defined as rfcomm0 and rfcomm2, but the scope of that is out of this post.

  3. Now edit the file /home/youruser/.wvdialrc in your laptop (using your own username) to look like this:
    [Dialer YoigoBT]
    init1 = AT+CGDCONT=1,"IP","internet"
    Username = ''
    Password = ''
    Modem = /dev/rfcomm1
    Phone = *99#

To connect to the internet, simply open a terminal and type:

sudo wvdial YoigoBT

To disconnect, just press CTRL+c and it’s done.

Thanks to this post, which was used as a reference on how to connect using Nokia devices.

Categories: Hacking (english)
Enrique Ocaña González

Today I’ve finally figured out how to syncronize my contacts, calendar, bookmarks, tasks and notes between my Sony Ericsson K800i mobile phone and Gmail, learning how to synchronize them with the data utility in in the way.

I’ve googled around and read so many web pages that I can’t list all them here. I’ll just post the result here as a recipe for people having a similar phone model:


Just go to , create an account, tell them your phone model and number and follow the instrucions. They will send you an SMS, but if you don’t receive it (as it was for me), there’s a link to get the connection instructions by hand. These are my settings:

  • Server address:
  • User name: A random alphanumeric sequence that they create for you
  • Password: Another random alphanumeric sequence that they create for you
  • Connection: Choose your default internet connection here
  • Applications: Contacts, Calendar, Tasks, Notes, Bookmarks (choose the ones you want to sync)
  • Apps. settings: Use the following database names for each one of the services: con, cal, task, pnote, bmark
  • Sync interval: disabled
  • Remote initialization: Always ask
  • Remote security: leave it empty

For Gmail:

  • Server address:
  • User name: Your gmail name without “”
  • Password: Your gmail password
  • Connection: Choose your default internet connection here
  • Applications: Contacts, Calendar, Tasks, Notes, Bookmarks (choose the ones you want to sync)
  • Apps. settings: Use the following name for the contacts database: contacts. i don’t know if the other services are available.
  • Sync interval: disabled
  • Remote initialization: Always ask
  • Remote security: leave it empty

I hope this post to be useful for other people struggling around out there to do the same task. I’d liked very much to have found it while I was googling. If this info is useful to set up other phone models/brands with slight variations, I’d also like to know about them. Please, post a comment about your own experience.

Enjoy it!

Categories: Hacking (english)
Enrique Ocaña González

Simple HTTP server in Python

2009-06-29 07:59 UTC  by  Enrique Ocaña González

Reading blog comments about Meiga out there, I’ve found one particularly interesting. Python has an embedded HTTP server that can serve the current directory from a given port. It can be instanced for port 8282 simply issuing this command:

  python -m SimpleHTTPServer 8282

The funny thing is that… it works on the N810 also!

More info about SimpleHTTPServer here.

Categories: Free Software Master
Enrique Ocaña González

A new pet

2008-11-03 17:26 UTC  by  Enrique Ocaña González

Today I’ve received a brand new elePHPant. Will it survive in the hard ecosystem of my table? For the moment, it seems to be happy…

Categories: Personal (english)
Enrique Ocaña González

A safe upgrade to Diablo

2008-06-25 09:53 UTC  by  Enrique Ocaña González

At the end, Maemo Diablo release for N810 is out. But if you have valuable information, programs or configuration on it maybe you’re worried about what you’ll loose in a reflashing. In fact, if you’ve done the upgrade yet you’ll notice that the main part of the apps from Extras repository are missing in Diablo for the moment. Fortunately, there’s a way to install the apps from the old Chinook repository.

Here are six simple steps to perform the upgrade process and restore all your current applications:

  1. Backup your /home/user to a safe place by hand. Standard backup tool won’t
    backup every file you’ve at home and maybe you could need them later…
  2. Do a backup using the backup tool.
  3. Reflash the device with the new image using the flasher tool according to the reflashing instructions
  4. Restore the backup. Some old apps will remain grayshaded because the backup
    tool can’t find them in the now current Diablo repository.
  5. Open Application Manager. Menu, tools, application catalog. Maemo Extras,
    edit. Distribution: chinook, uncheck the “disabled” checkbox, Accept. Close.
  6. Menu, tools, restore applications. Accept.

That’s all. Enjoy your updated device!

Categories: Hacking (english)
Enrique Ocaña González

Shishen Sho Mahjongg 0.3 released

2008-05-26 00:39 UTC  by  Enrique Ocaña González

Version 0.3 of Shishen Sho Mahjongg has just been released. The main improvements since 0.2 are: Gravity, hints, undo history, time counter and speed improvements.

You can download the game and know more about it visiting the project page at Maemo Garage.

Enjoy it!

Click here to install this application

28/05/2008 UPDATE: Now the application is also available in Maemo Extras repository and listed in Maemo Downloads with its own green “click to install” icon :-)

Categories: Hacking (english)
Enrique Ocaña González

Shishen Sho Mahjongg 0.2 released

2008-05-19 19:06 UTC  by  Enrique Ocaña González

Last month I published Shishen Sho Mahjongg for Gtk and Maemo, a board game similar to Mahjongg where the goal is to remove all the tile pairs and two tiles can be removed if a line with a maximum of three segments can be drawn between them.

Today I’m announcing version 0.2. The main improvements since 0.1.1 are Hildon integration (fullscreen, embedded menu, notifications) through conditional compilation and drawing of matching path when two pieces are matched.

You can download the game and know more about the project following these links:

Feel free to send me your comments, suggestions or patches over the original Vala sources.

Thank you! :-)

Categories: Hacking (english)
Enrique Ocaña González

Until now, when I wanted to build some Vala source code for the Maemo platform I generated C code using the i386 Vala compiler and then builded the executable inside the scratchbox using gcc. That was fine until I wanted to use Hildon features (not available for i386). I definitely needed the Vala compiler running on the scratchbox.

This weekend I’ve put myself on the way and managed to compile Vala 0.3.2 on the scratchbox for the CHINOOK_ARMEL target. The process was much simpler than I expected and consisted of these few steps:

  1. Log into the scratchbox and choose CHINOOK_ARMEL
  2. Download the compiler from (I tried version 0.3.2)
  3. Untar it: tar jxvf vala-0.3.2.tar.bz2
  4. Enter the vala-0.3.2 directory and configure the package for ARMEL cross compiling: ./configure --host=armel
  5. Compile and install: make; make install

Alternately, to build for target CHINOOK_X86, repeat the previous steps but logged into the CHINOOK_X86 target. In step 3, issue ./configure without arguments instead.

That’s it. You have now the Vala compiler ready to be used. But if you want to develop a multiplatform project, you’ll need to avoid compilation of the Hildon related code when not building for Maemo target. The best way I found to do that was to use CPP as a preprocessor to allow me to use #ifdef’s in the code.

This is a simple way to use CPP to preprocess a single file:

cpp -P -Dsymbol1 -Dsymbol2 ... source.vala destination.vala

But I’ve managed to tweak my compilation script to preprocess all the files, write the result to a directory called CPP and finally compiling the result. Here’s the source:

# File
export DEFINE=""
export APPNAME="myapp"
export PACKAGES="--thread --pkg gtk+-2.0 --pkg gdk-2.0 --pkg libglade-2.0 --pkg gmodule-2.0"

# Perform preprocessing and output to CPP directory
# Arguments to this script are "defined" and passed to CPP
for i in $@
 case $i in
   PACKAGES="$PACKAGES --pkg hildon-1"
if [ ! -d CPP ]; then mkdir CPP; fi
for f in *.vala; do cpp -P $DEFINE $f CPP/$f; done
valac $PACKAGES CPP/*.vala -o $APPNAME -X -g -X "-Wl,--export-dynamic -rdynamic"`
rm -rf CPP

The script can be used by passing it the symbol set that should be defined. For instance, ./ MAEMO DEV would define both MAEMO and DEV symbols. Note that with this approach you should check the source files in the CPP directory when errors happen, because the line numbers referenced by the Vala compiler will be related to them and not to the original files.

I think this approach will be useful for other programmers too, so I’ve contributed it to the Vala FAQ (Does Vala have a preprocessor?).

Categories: Hacking (english)
Enrique Ocaña González

Hi-tech copper coil motor

2007-02-03 02:34 UTC  by  Enrique Ocaña González

During last months I’m attending CAP (Curso de Aptitude Pedagóxica, Teaching Ability Course). The subject I chose was “technology”, and we are developing some projects in the classes.

One of that projects was about making a home made electric motor using simple materials: a magnet, coiling copper wire, metal wire, cables, insulating tape and cardboard.

Cut 9 meters of coiling copper wire, loop it around two fingers and wrap it with insulating tape to fix the coil. Make an axis with straight metal wire and pierce the coil with it. Then, using insulate tape, fix the two copper wires in parallel side by side as close to the metal wire as possible, but avoiding short circuiting. Mount the axis over a framework made with cardboard and place the magnet under the coil. Scrape off the insulating varnish from the copper wire and attach two cable brushes to them, trying not to make a short circuit. Connect both cables to a 9V battery, give the coil an initial spin and… what you see is what you get:

Categories: Personal (english)
Enrique Ocaña González

Today I was looking in Google for some information about the Xerox PARC Alto computer system. Alto was the first experimental personal computer having a mouse, a window environment, ethernet booting capabilities, sound, light pen, microphone, music keyboard and SmallTalk programming language for the affordable cost of US $32000 (in 1979).

While searching for that information, I found an article written two months before I was birth by Alan Kay for Scientific American, named “Microelectronics and the Personal Computer“. In this article, Alan shows the system and unveils all its potential. Such a system was comparable, in that age, to the printing invention, radio or TV. Its main improvement was the ability to simulate an environment, to be used as a tool to rise human abstraction and trial/error capabilities.

Mr. Kay was also worried by the fact of all that potential could also be misused, in the same way that the fact for a city having a public library doesn’t automatically bring knowledge to its inhabitants, or broadcasting scientific TV programs doesn’t make the audience to become a scientific.

It’s a pity to see how some of the worst worries of Mr. Kay have become into reality. Nowadays children don’t use computers as a tool for world exploration and experimentation, but as a copy-paste machine, a hand bounded interactive movie.

It’s a pity to see how the hard work of teaching envisioners, like Seymour Papert, has been thrown away to the trash can. Learning tools, like the Logo programming language, have been dismissed, and new ones, like Squeak, are still unknown to the teachers nowadays.

We know what computers are today but, what could they have been?

Categories: Personal (english)