Services for All (S4ALL)

Project duration: 19.1.2005–30.9.2007

The ITEA Services for All (S4ALL) project set out to make possible a world of user-centric services that are easy to create, share, and use. HIIT's contribution focused on developing the Interactive Service Composer for S60, and demonstrating the usefulness of this in the device management domain in collaboration with Capricode Oy. We also developed a number of useful open source libraries and tools for rapid service development on mobile phones using scripting language technologies. Much of our work was done with the Python programming language on S60 phones.

S4ALL was a European project labeled by ITEA and led by Alcatel, with partners in France, Finland, Germany, and Spain. The Finnish partners were HIIT, Capricode Oy, and Nokia. This summary addresses only HIIT’s contribution.

S4ALL envisioned providing end users with an interactive application enabling them to compose useful applications by combining component web services. HIIT created a working prototype of this Service Composer for the mobile phone. We then proceeded to develop this as a flexible controller for the SyncShield device management server from Capricode (see their press release).

We also developed a number of enhancements to the scripting tool set, such as a wrapper generator to facilitate access from scripts to the phone's various native application database APIs, and a compatibility library enabling running of many scripts on the desktop for testing purposes.


  • Kenneth Rimey
  • Tero Hasu
  • Ville Mäntysaari
  • Pekka Kanerva
  • Tea Silander (2005-2006)
  • Tuomas Piispanen (2006-2007)
  • Tancred Lindholm (2005)
  • Sasu Tarkoma (2007)


The project resulted in two masters theses, one workshop paper, and one HIIT technical report, as well as some internal reports.


Open source software published by HIIT included the following.

  • Pretty-printing engine (qretty) for generating C++ code.
  • Miso Toolkit — a set of libraries and development tools for Python for S60 programming. The libraries expose some of the S60 platform functionality to Python programmers, while the tools are intended to assist in creating and building more Python extensions.
    • Miso Utilities (PyS60 library)
    • Miso Alarm (PyS60 library)
    • Miso Build Tool aka Sake (PyS60 extension build system)
    • Miso Compiler aka wrapgen (C++ metaprogramming system)
  • Ports to S60 of the Python ctypes module and libffi (foreign function interface).

Contact Information

For further information, please contact the project leader:

Kenneth Rimey
Senior Research Scientist
Helsinki Institute for Information Technology (HIIT)
+358-40-580 7717

Last updated on 1 Dec 2008 by WWW administrator - Page created on 13 Jan 2007 by Webmaster