Forum Nokia
Nokia Connecting People

Login Register

 

Home: Platforms: The maemo platform

The maemo platform



Contents

Maemo platform overview

Maemo is a computer architecture platform built on desktop open source components. It is aimed at enabling applications and innovative technology for mobile handheld devices.

The platform is based on the GNU/Linux operating system and the GNOME desktop. Maemo brings developers an easy to use development environment. Its new, optimized, and evolving Hildon UI is customized for the screen size and usage typical for a touch screen enabled handheld device. The development platform is targeted at innovative developers and innovation houses developing applications and new technologies for the mobile space. Utilizing the maemo platform it is easy to mobilize existing desktop solutions. Maemo enables various business models on the top of the platform, including proprietary application distribution.

Maemo, first introduced in 2005, is one of the core platforms for Nokia’s high-end products. Today maemo is the basis of the OS used in a range of Wi-Fi enabled Internet Tablets. These miniature computer handsets are targeted at a high-tech, Internet savvy audience, including small business verticals. The Internet Tablet models on market are the Nokia N800 and the new Nokia N810. Maemo has reached a level of functionality to provide a full internet experience in pocket sized device – with an intuitive UI.

Nokia hosts the active open source maemo community (maemo.org) that exists around the platform, and is an active contributor in various projects. Here you can find a detailed description of the maemo platform architecture and the latest maemo 4.0 release, called Chinook. If you are a beginner with the maemo platform, we suggest you refer to the section Documentation and how-to guides. We have a special introductory document for current S60 and .Net developers.

Back to top

Why should I start developing for the maemo platform?

Nokia Internet Tablets provide end users with an omnipresent Internet experience using a rich UI together with computer performance in a mobile device. These devices enable end users to utilize the power of the Internet and rich applications while on the go. A big touch screen, an integrated hardware QWERTY keyboard, and function keys enable fast and easy navigation between applications and content. As a software developer you are able to utilize these versatile and powerful devices, containing multiple radio connectivity, expandable flash storage, integrated GPS, stereo audio and much more.

The maemo platform provides developers with a powerful and easy to use development, build, and test environment. The platform provides you with similar capabilities to a desktop environment. Maemo is composed of mainstream open source software widely deployed in the most popular Linux distributions, so the necessary skills, tools, and community support are readily available. Since the maemo platform is a standard development environment, porting existing applications is easy. Simplification of development for handheld devices enhances developer productivity and reduces the learning curve. Application testing and debugging is convenient, as the development environment runs the same software as the target devices. In practice there is little need for target hardware emulation on the development host. This provides a very accurate test environment. Maemo based devices run on the ARM architecture and the software development kit is currently provided for desktop Linux distributions such as Debian and Ubuntu.

The maemo platform currently offers a native C runtime for developers complemented by officially supported C++ bindings. A complete set of Python bindings are provided by the community, and the runtime will be officially supported by Nokia during 2008. Web runtime with Mozilla Gecko engine and Flash 9 will also be implemented in 2008. Mono, Java and Ruby runtimes are provided by the maemo community, among others.

Nokia has already launched three devices based on maemo, and there are more devices on the way. In the future, fueled by this technology, Nokia will be able to provide a genuine, strong computer architecture combined with the classical benefits of today’s mainstream handsets. To support this commitment, Forum Nokia has launched support services for developers working on the maemo platform.

The global market for convergent devices with a strong architecture and rich mobile applications is growing strongly. These services provide you with guidance and help not only in the application development stage but also when it is time to commercialize your work. We offer you active online sales and distribution channels to gain global exposure. Now is a good time to enter this market and establish your name as a top application provider for the maemo platform.

There are many companies working on the platform. Here is an example of the valuable and robust solutions built on the maemo platform.

"Linux platform used in Nokia 770 and it’s successors have been one of the most rewarding platforms to develop commercial software" says Juha Murtopuro, Chief Marketing Officer of Wayfinder, "feedback from our development team has been very positive towards this platform and project planning has been also easier than in other platforms" he continues. Wayfinder has delivered voice guided turn-by-turn navigation solution for the Nokia 770 and Nokia N800 since October 2006.

Back to top

SDKs and tools

The development environment for maemo, running on the desktop, is called maemo SDK. It will only install and run on a Linux operating system. On other operating systems such as Windows, a VMWare image can be used to provide a working Linux environment. The maemo SDK creates a sandboxed maemo development environment on a GNOME/Linux desktop system. The sandboxed environment is built principally on a tool called Scratchbox. In most ways this environment behaves like the operating system on the device, but with added development tools. This means that the development process is very similar to normal desktop Linux and GNOME/GTK+ development and the unique features of embedded development, such as cross-compiling, are handled transparently by Scratchbox.

The main maemo SDKs page (maemo.org - SDKs) provides access to all the available SDKs.

The list of tools for maemo developers will grow over time. Developers can install various tools, downloaded from the maemo repositories, in to the Scratchbox environment and a maemo device. Nokia also offers an Eclipse plug-in for Scratchbox to enable efficient IDE development.

The main maemo tools page (maemo.org - tools) provides access to the plug-ins and a variety of other useful tools.

Back to top

Documentation & how-to guides

Not yet developing for the maemo platform? These documents provide an introduction to the platform and to developing applications.

Maemo 4 Quick Start Guide is a good general introductory document to the maemo platform. It introduces you to valuable information, such as the maemo architecture, UI development, system services, development environment, how to port existing software, and many other topics.

Maemo for Symbian & .Net developers
This is the first version of the document that describes how to start developing applications on the maemo platform. The focus is on familiarizing current C++ and .Net developers with maemo application development.

Maemo 4.0 Tutorial
Tutorial documents are a bit longer documents than the how-tos and they cover some areas in a more detailed way. The maemo 4.0 Tutorial is the basic document that every developer should read before starting developing in the maemo environment.

Setting Up The Maemo Development Environment
Maemo 4.0 eLearning is a basic introductory learning solution that every developer should learn before starting development on the maemo environment. It gives valuable information on the development environment, maemo SDK installation, porting the application to target devices, application framework, and other topics.

The main documentation page of the maemo site (maemo.org - Documentation) provides plenty of technical documentation. The maemo.org site provides developer documentation for the published maemo platform releases. Documentation includes tutorials and API documentation. The focus of the documentation is on explaining maemo specific issues for software development. Documents that are maemo release specific are collected in their own pages.

The main how-to guides page of the maemo site (maemo.org - How-tos) provides a number of how-to guides. How-to documents explain in a practical way how to undertake specific tasks in the maemo environment. Some of these documents are release specific and are collected in separate sections of the site.

Back to top

maemo.org

maemo.org is a Nokia hosted open source community site for maemo developers. Maemo.org focuses on supporting a traditional open source development community, which is working on the platform and developing the platform itself. The maemo.org site offers the official and comprehensive technical documentation, tutorials, bug reporting tools, and repositories of unstable versions for testing. It also provides services devoted to and maintained by the maemo community: software catalog, project hosting, documentation wiki, and community news plus mail and IRC support channels. Nokia is an active contributor in various maemo related projects.

Forum Nokia provides extensive services to developers who work on Nokia platforms. For that reason we have launched developer support services for the maemo platform. By utilizing the existing maemo.org services as well, we can ensure all important aspects of developers’ needs are covered.

Back to top

Forum Nokia services for maemo developers

Forum Nokia provides support for commercial application developers who work on the Maemo platform. Forum Nokia’s offering to Maemo developers consists of:

  • Technical support – Forum Nokia Technical Support offers technical expertise to mobile developers during the application building process. It is designed to solve specific problems or answer a technical question, on a case-by-case basis.


  • Technical consulting – Forum Nokia Technical Consultancy service is designed to provide personal support for the duration of a mobile-application-development project.


  • Technical documentation – Forum Nokia Technical Documentation provides you with relevant information on the features of Nokia supported technologies. Technical documentation for maemo developers can be found on maemo.org.


  • Interactive developer communities – There is an active developer community working on Nokia supported platforms. Forum Nokia offers easy-to-use and valuable channels for interaction among developers. We have made it is easy to share knowledge, post questions, find answers, and communicate with other developers.


  • Training – We provide developers with various training services in order to help you maximize the potential of mobile technologies. The training offered covers various technologies and utilizes both eLearning and on-site classes.


  • Tools and SDKs – Forum Nokia provides tools and SDKs from Nokia and associated third-party tools vendors that can be used to create mobile applications and content. Maemo related tools can be found directly through maemo.org.


  • Nokia Software Market – It is a market place that you can use both from your computer and your Nokia mobile device's Web browser. Applications vary from games and restaurant guides to business applications and corporate solutions. Here you can find information on how to make your application available through Nokia Software Market.

Back to top

Featured Devices

 
Nokia 770
(sales finished)
Nokia N800 Nokia N810

Connectivity

  • WLAN 802.11 b/g
  • Bluetooth 1.2
  • USB1.1 with Mini B connector
  • WLAN 802.11 b/g
  • Bluetooth 2.0 EDR
  • USB 2.0 high speed with Mini B connector
  • WLAN 802.11 b/g
  • Bluetooth 2.0 EDR
  • USB 2.0 High speed OTG with Micro A/B connector
Memory (Flash)
  • 128 MB + 64 MB (RAM)
  • 256 MB + 128 MB (RAM)
  • 256 MB + 128 MB (RAM)
Storage
  • 1 memory card reader compatible with RS-MMC
  • 2 memory card readers (compatible with SD, miniSD, microSD, MMC, and RS-MMC cards up to 8 GB)
  • 2 GB in-built, 1 memory card slot (compatible with miniSD and microSD cards up to 8 GB)
Engine/processor
  • TI  OMAP 1710
  • TI  OMAP 2420
  • TI  OMAP 2420
Operation times
  • Standby 7 days
  • Browsing 3 hours
  • Standby 12 days
  • Browsing 4 hours
  • Standby 12 days
  • Browsing 4 hours
Integrated GPS
  • No
  • No
  • Yes
HW QWERTY keyboard
  • No
  • No
  • Yes
Touch UI
  • Yes
  • Yes
  • Yes
Operating System Edition
  • Internet Tablet OS 2006
  • Internet Tablet OS 2007 & 2008
  • Internet Tablet OS 2008

Back to top

Learn how to
download applications

Newsletter sign up

Privacy policy   Archives

Community highlights

Press

Events

Forum Nokia feed

  • Latest devices
  • Latest documents
  • Latest tools
  • Latest blog entries

Terms & Conditions | Privacy policy | Site map | Developer feedback | © Nokia 2008