All of the machines are running image of Maemo development environment. It has Maemo SDK installed, which means emulator and Esbox (a customized version of Eclipse). With these two tools it is possible to “easily” create python -based programs for the Nokia n900.


Creating a Python Project

First, open the Esbox on your desktop

Esbox Icon

After this, the Esbox will start and ask you for the workspace path. Please, keep the suggested one, as this one works with the emulator. If you change this, there is a probability of NOT GETTING THE EMULATOR TO WORK!

Select your workspace

After this, select File→New Python Maemo Project

Now you should see the following picture:

Project Template Selector

Select the name monster Maemo Python Hildon Hello World Project and then select next

Project Configuration

Now you are in the project configuration window. This is probably the most important window here and you will return here to play with this one later in the future. For now, use the suggested project name.

Select all the boxes, so you will have all the options working (scratchbox, X86 and ARMEL) AND DOUBLE CLICK THE X86 SO IT BECOMES HIGHLIGHTED AS BOLD TEXT

Now, just click next.

Extra Configurations

In this window you can configure the author, the version number and the hello world text to display here. If you want, you can define the group name as the author (e.g. Masters of the Universe). Then just click finish.

Check Packages

Here the Esbox asks whether you want to check the packages or not. I highly suggest to click yes here, as soemthing might have changed (Esbox is a magical thing, you never know). So, just to be sure, click yes ;-)

Validate Packages

All you need to do here is just to check all the boxes and continue forwards on your voyage of discovery.

Package operations

This is the last screen (FINALLY!). DO YOU WANT TO PROCEED? - HECK YEAH!

And after some more magic, KAZING! You have the project visible (and if you're lucky, it's even a working one :-P)

Esbox Explained

This is self-explanatory. No need for explaining. Try and see for youself :-P

Running the Project in the Emulator

When you start the application with Run As → Pythom Maemo Local Application you probably get the following screen

Launch Maemo Emulator?

Just click yes and it should start your emulator. If you did have X86 selected as the exection environment, everything should go just fine and you should see the following result:

Hello World on Emulator

Unless you just got a blank screen, you are trying to run the project under ARMEL settings. Change the run configuration to X86 and try again.

Running the Project in a Real Machine

Doing the Preconfiguration (one-time only!)

Here are the instructions on how run your project on the real physical n900. Note that before this, you have to have switched the project run settings to ARMEL in order to run the code on the device.

Starting SSH Shell

Select the Remote Systems tab → Maemo Device (USB) → SSH shells and right click. Select Connect… from the right-click menu.

Password dialog

After this you will be queried for the password and username. The details are the following:

  • Username: user
  • password: lut

And I suggest saving the info so you don't have to give it again.

RSA Keys

If this is the first run, you will be asked to accept the RSA keys. Just choose yes here.

Password required - again

And in this final screen just input the same information as in the previous password dialog. Remember settings and voilá! You should have SSH connection working.

After this just Run the project as a Remote Project and it should run in the real machine. Enjoy! ;-)

Changing Run Settings

Here is the instructions on changing the Run Settings. This is needed to switch between Local Emulator and Remote Real Device.

Right click your Project folder in Esbox and choose Preferences from the right-click menu. After this you should see the following picture

Changing Running settings

Here you need to double click the wanted Interpreter (either X86 or ARMEL). The wanted interpreter should change to bold font.

ARMEL = Real Device X86 = Virtual Device

Running the Project Remotely

To run the project remotely, you need to first change to the correct interpreter from the project settings (ARMEL is for Remote).

After this, right click the main python file you want to run and select Run As → Maemo Remote Application. If you don't see option for Remote Application, you have not changed the Interperter to ARMEL.

Now, when running remotely, you should see the following:

Configuring Python Interpreter

Just click okay here and things should go just fine. Unless the great Cthulhu decides otherwise.

Download Methods to Use

Here you have to choose the Copy Program (SSH) options. The other one should not even work and just give you bunch of errors. So please, don't choose that :-D Now click okay and you get the following dialog:

Selecting the Target

Choose the right remote connection you are using. The correct answer here might be USB. Or it might not be? Who knows, but you. However, if you ARE indeed use the usb cable, then USB is your best choice. However, feel free to try Bluetooth or a tin hat. As you like.

Password required

just put the same stuff as before here. user & lut and your soul will be transferred to Nokia in a blink of an eye. Enjoy!