Logo

About Archos-Ångström

Compositing support in the X server allows a transparent, floating virtual keyboard to be implemented
The Archos-Ångström project aims to develop a useable, stable small desktop operating system for the Archos 5 and Archos 7 media players based on Ångström Linux. The project does not intend to replace or extend the media capabilities of the Archos units, but to provide a desktop-like Linux platform on which ordinary Linux applications can be installed. In fact, Archos-Ångström is designed to run alongside the stock Archos firmware in a sort of dual-boot arrangement, so users can get the best of both Worlds -- desktop application support from Ångström, and media support from Archos. This dual-boot system is currently rather fiddly to set up, but worth the effort for the advantages it brings. Applications which are currently known to work, at least in part, include:
  • The Midori web browser
  • The Abiword word processor
  • The mplayer media player (user interface is a bit awkward on a small unit, but it works)
  • The standard GPE PIM apps -- calendar, contacts, to-do, etc
  • The FBreader e-book reader, which supports many popular e-book formats
  • Many useful utilities -- calculator, IRC client, VNC client and server

Why Ångström? (And not Ubuntu/Puppy/Fedora/Younameit)

Using the wpa-supplicant GUI to configure a WiFi network. archos-helper utility takes care of integrating the WiFi support with power management and suspend-to-RAM requirements, and provides a relatively quick way for users to switch the WiFi radio on and off
Because we needed to start with something that at least almost worked. Ångström was designed from the start for embedded systems and other small Linux devices, in which cross-compilation would feature heavily in the development process. Archos already had a proof-of-concept Ångström build and, although it lacked many essential features, it did at least boot.

The problem with Ununtu et al., is that they have not really been designed with small systems in mind. The Archos A5 has typically 88 Mb of useable RAM -- about one fortieth what a desktop system typically provides. CPU throughput is approximately one tenth that of a typical desktop system. It is possible to run Ununtu Linux on an A5, but it isn't an experience to relish. It will take a considerable amount of work just to get it to the state where it works as well as Archos' Ångström proof-of-concept, and then there's still everything to do.

Ångström is a somewhat paradoxical thing. While some parts of the base distribution are very modern, others seem to have remained unchanged since the days when the Sharp Zaurus roamed the earth. Unfortunately, some of the most archaic components are the ones that really have to be made to work: in the area of WiFi networking, power management, and user interface, among others.

Technical challenges

The Archos unit has USB host and device support, allowing it to emulate a mass storage device without suspending normal operations. This mode of operation is rare on a Linux desktop, and requires specific software to be developed to enable it
There are a number of reasons why porting a Linux distribution, even one which was designed for small systems, to the Archos A5/7 is technically challenging.
  • The A5 low-level firmware supports none of the usual Linux power management mechanisms -- no ACPI, no APM, nothing. Even an operation as seemingly trivial as turning off the screen backlight when the unit is idle has to be implemented in customer code. Much of the hardware has to be managed in highly specific ways for smooth operation. For example, specific things need to be done to the display and wifi hardware to allow them to shut down properly when suspending to RAM.
  • The screen is physically small but of high resolution. Many applications need to be modified at least slightly to be useable on such a screen.
  • The unit has some hardware for which no public Linux interface exists, and for which therefore there is no software support. Examples include the built in audio EQ and the USB device-mode support
  • The A5 has almost no hardware buttons. Many applications assume that there will be at least a few. The few buttons there are need software support to be able to do anything useful

Who might be interested in this stuff?

The all-too-familiar mplayer GUI -- rather fiddly on such a small screen, but it works. The archos-helper utility provides control of the intergrated EQ in the audio hardware
Somebody who wants to carry a desktop Linux system in his pocket :) It's important to understand what this project is not:
  • It's not a way to fill in the gaps in Archos' media support. The Archos media player firmware is already streets ahead of anything you're likely to find in the open-source world, particularly for small-device applications
  • It's not a way to circumvent Archos' intellectual property protection. It won't allow you to get codec plugins without paying for them
  • It's not a games platform (at least, not yet). Apart from anything else, the Archos units don't have enough real buttons to be useful for fast-paced games.
The target market (lacking a better expression) is still Linux enthusiasts and developers, who are looking for a way to port interesting applications to the handheld platform.