2003.12

mickeyl April 21st, 2005

OpenEmbedded / OpenZaurus / Opie

Introduction

As one of the few people participating on all the three above mentioned projects I recently volunteered to write regular newsletters from the inside - to keep you people informed (also to stop you from saying our projects are dead or on hibernation ;-)). We’re seeking contributors, that’s true - but we’re aliving and kicking! :D

OpenEmbedded

OpenEmbedded is our next generation build system - a set of tools and metadata to build Linux distributions for embedded devices.

Things are moving on. We have converted slightly more than two thirds of packages from the old build system to the new one. Among these are a few new packages and a lot of improved/fixed packages and patches. Kernels, GUI-packages and ‘deviceisms’ are still missing though. OpenEmbedded already is capable of building individual packages, their dependencies as well as bootable images. The menu based configuration system as found in the old buildroot has not been converted yet - whether we will continue to use CML (as found in the Linux kernel and other projects) is under discussion.

If you want to help moving things along faster, then the best strategy is to download the old buildroot, download the new buildroot (both the ‘oe’ and the ‘packages’ repositories) and start reading $OEDIR/docs - especially the TRANSITION and DEVEL documentation files. More information is in the OpenEmbedded Wiki. Developers are also invited to join #openembedded on irc.freenode.net, where the developers hang out frequently.

OpenZaurus

OpenZaurus is our alternative Linux distribution for the Sharp Zaurus family of PDA devices. It has been ported to other architectures, e.g. the HP iPAQ, the SIEMENS SIMpad, and the M&N Ramses, to name a few.

The old build system is really fading out. It is even no longer in maintenance mode, because we need to concentrate our few resources on the migration to OpenEmbedded. That means you’re pretty much on your own if you have problems building something with the old system.

OpenZaurus 3.2 feels pretty old now - especially because of kernel 2.4.6 and Opie 0.9.3. A lot has progressed since then, which is why I took the time to migrate the 2.4.18-embedix kernel to be usable with OpenZaurus. Note that this really is only an interim solution as the embedix code quality is too poor to ever be accepted for integration into an official Linux kernel tree. Chris Larson (Kergoth) already ported (more like cleanly reimplemented) most of the Zaurus specific functionality into 2.4.21-cl, however that work is on hold because of not enough time. Helping hands on this would be appreciated, as our kernel is probably the only way to get 2.6 for the SL-5×00 and SL-C7×0 devices. Even if Sharp may release new models with a 2.6 kernel any time soon (which I strongly doubt), then the chances that this will include support for the (then) stoneage models is practically nada. You may ask why this is important since 2.4.18 seems to be running good enough for you… read Linux 2.6 - What to expect or just believe me when I tell you that 2.6 contains important news for embedded devices - speedups, cleanups and better power management, to name just a few things.

OpenZaurus 3.3.5 will be the last official release made out of the old build system - so if you didn’t look at OpenEmbedded yet - it’s time. Regarding model support, OpenZaurus now works reasonably well on all available Zaurus models - most likely including the SL-C760 Mark II (also known as SL-C860). There are some problems with the bugridden usb implementation as well as occasional power management oddities in 2.4.18-embedix, but those will be history once 2.4.21-cl is finished. I will conclude this section with a few things we would like to work on if we had more manpower - this list is compiled more or less straight out of OzTODO:

  • A graphical init and boot menu for starting various GUI environments or dropping off to a console,
  • Usage of virtual terminals to enable the parallel running of X, Opie and other GUI environments - each on its dedicated virtual terminal,
  • Multilanguage support for the keyboard on the core level (GUI environments honoring the kernel keymap),
  • Switch over to a sane, stable and reliable USB implementation (USB-Gadget-Stack),
  • Incoorperate a working Bluetooth stack,
  • Switch over to a bootloader which allows a reliable system backup/restore,
  • …..

Opie

Opie is a graphical environment for PDAs, WebPads and other (embedded) devices. It contains a large number of applications in the categories PIM, Networking, Graphics, Settings, etc. Specific device supported has been integrated for all available Zaurus models, most IPAQs, the SIMpad, and the YopY.

Although - to prevent recurring misunderstandings - I can reassure you that OpenZaurus is independent from Opie, the release of version 1.0.3 has been synchronized with OpenZaurus 3.3.5. The 1.0.x branch is now closed (really - even for bugfixes) and all development goes into the HEAD - which will eventually become Opie 1.2. Since 1.0.0, a number of important things went into Opie:

  • Lots of bugfixes and improved i18n (various contributors)
  • Drastically reduced application startup times (TrollTech,zecke,harlekin)
  • The Documents Tab now is optional (mickeyl)
  • Basic support for HP iPAQ 54xx and the Jornada 5xx (chicken)

For Opie 1.2, there is also a lot of interesting stuff in the pipeline - however the Opie Team is seriously lacking personnel resources, so don’t expect any releases soon. We are glad however to have found a new packager for both the Ipaq and the Zaurus (OpenZaurus), but we are still lacking a dedicated packager for the SharpROM. Currently no one on the Opie team uses the SharpROM, so if you want to see further support, now is the time become an active participant.

Some of the planned features and capabilities for the future as well as a roadmap draft can be found on the Opie Wiki. Also under construction is a major redesign of the Opie website - we are glad to welcome our new Opie Webmaster who will introduce himself later.

Epilogue

That’s all for now. I hope you have enjoyed the first of (hopefully) many OpenZaurus/OpenEmbedded/Opie newsletters. Feel free to provide feedback or send in questions. Questions of general interest will be answered in the next newsletter.

Thanks, Michael ‘Mickey’ Lauer.