eCos Home

RedBoot Home


About eCos

Supported Hardware

Downloading and Installation

Documentation

FAQ

Mailing lists

Problems

Licensing

Anonymous CVS

Contributions and Third Party Projects

eCos

Contributions and Third Party Projects


Introduction

Contributions to eCos are always welcome. These may be in the form of a new package, enhancements to an existing package or bug fixes. A contribution may be from a individual or part of a collaborative project. Information on how to contribute is contained within the eCos FAQ.

Third party projects

The following external projects are known to the eCos maintainers. If you are working on an eCos-based project that others could benefit from or contribute to, please let the eCos maintainers know and it will be added to this page. Sources are provided as is and are not supported at this time.

MiniGUI

Wei Yongming of Feynman Software has released an eCos port of their lightweight cross-platform Graphics User Interface support system named MiniGUI. It is available under both the GPL and a commercial license. More information can be found at the Feynman Software site, as well as the home of the open source MiniGUI project.

OpenSSL

Andrew Lunn of Ascom has made available a port of the OpenSSL library. Due to export problems this library is not available and unfortunately will not become available from ecos.sourceware.org. Instead it is hosted at eCosCentric's FTP server as this is based in the UK, not the US. The package is distributed in EPK format and can be installed using the eCos package administration tool. It is available by FTP from ftp://ftp.ecoscentric.com/pub/contrib/openssl-1.9.6b.epk. Use shift-click on this link to save the file - some browsers incorrectly treat this file as text.

Be aware of the legal status of using encryption libraries like OpenSSL. The use of some encryption algorithms are patented in various territories, especially the US. Similarly some territories control the export of products containing encryption, again including the US.

LUA language support and pre-built Configtool versions

Xylanta Ltd. hosts a eCos port for the LUA 5.0 programming language. They also host pre-built versions of the eCos Configtool (Cygwin only) and an experimental version of the Configtool for Cygwin that supports two repositories.

EtherCAT master library for eCos

The Flanders Mechatronics Technology Centre - FMTC - has decided to release their EtherCAT master implementation as open source software. The EtherCAT master library, together with its technical documentation can be obtained from http://ethercatmaster.berlios.de. The software has been written for and has been tested with the eCos operating system.

Port to Renesas H8S architecture

Uwe Kindler of cetoni GmbH has developed a port of eCos to H8S microcontroller architecture. The port includes various variant and platform ports (i.e. for EDOSK2674) and a number of drivers (i.e. Serial, Network, RTC...). cetoni also hosts a prebuild h8300-elf toolchain for eCos (Cygwin only) and a detailed porting guide for H8S variant and platform ports.

Port to Game Boy Advance

Charmed Labs has developed the Xport which turns the Nintendo Game Boy Advance into an embedded development system, complete with eCos and RedBoot port.

Technical details and ordering information are available from Charmed Labs.

Port to easyCAN3 ARM CPU

Europe Technologies has provided a port to their easyCAN3 ARM-based microcontroller and in particular the EVM-CAN low-cost high performance development platform. This is available via FTP for download as a complete source repository snapshot. The sources will be integrated into the eCos development repository shortly.

Single precision math library and termios non-canonical mode

luoqi has ported FreeBSD's single precision portion of the math library to eCos. Luoqi has also added support for non-canonical mode in the existing termios support. The necessary patches are available to download here.

3G LAB projects

3G LAB were engaged in quite a number of projects that will enhance eCos. Some of them, like ROM filesystem and iPAQ port have already been incorporated into the development repository. Other projects of interest include:

  • ELF shared library loading and run-time linking (including lazy procedure linking at call time).
  • Memory protection for loaded libraries.
  • Advanced memory allocation and virtual space management.
  • XIP (Execute in place) for ROMFS and RAMFS loaded applications.
  • User-id & group-id based permissions checking for file access.
  • ARM USER mode execution of shared library code, with SWI interfaces to the kernel.
  • Parameter checking for calls from user mode into the kernel.
  • Advanced stack checking for user applications that allow faulty applications to be terminated whilst leaving the rest of the system executing.
  • Partial POSIX process emulation, with pthread grouping and signal marshalling.
3GLab no longer exists such any more.

Microwindows port to Linux synthetic target and Assabet

I-Jui Sung has done a preliminary port of Microwindows/Nano-X to the Linux synthetic and Assabet targets. This port differs from the iPAQ demo port in that it uses POSIX mqueues instead of a loopback TCP/IP socket, which is more lightweight. The Linux port comes with a framebuffer simulator for eCos that communicates with the real desktop. Downloads are available here.

Microwindows port to x86 target and Trident VGA card

Li Hui has also separately done a Microwindows port. This is to x86 systems using a Trident VGA card. It also includes the PC mouse support he wrote earlier that is mentioned separately below. A zip file containing the complete microwindows sources he used, mouse driver, and TVGA driver is available from here.

Port to Sony Playstation 2

Yaegashi Takeshi has ported eCos and RedBoot to the Sony PlayStation 2 based on the MIPS Emotion Engine. More information is available at http://ps2hacking.sourceforge.net/.

eSoap for eCos

Rosimildo daSilva has developed an embedded SOAP toolkit named eSoap that runs under eCos. More details are available at http://www.embedding.net/eSOAP. eSoap is free for non-commercial applications.

x86 NE2000 ethernet driver

Christian Plessl and Thomas Meyer have ported an Ne2000 driver from OpenBLT to eCos. It is restricted to the x86 PC port only. The README contains details and instructions from Christian's announcement to the ecos-discuss list. The driver package tarball and addto.ecos.db file can be downloaded here.

Kaffe Java VM

Ryouzaburou Suzuki has ported the Kaffe Java VM to eCos 1.3.1 on SH4. It is available for download here. Note that it is covered by the GNU General Public License.

TCP/IP stack

Tristan Gingold has ported RTEMS libnetworking to eCos. This includes a FreeBSD-derived TCP/IP stack. The sources are available for download from ftp://ecos.sourceware.org/pub/ecos/contrib/io/tcpip/rtems/

Note that this contribution is not related to the eCos TCP/IP stack and may not be usable in the current release of eCos.

Work in progress

Atmel AT91 EB01 port

Carl van Schaik has made available an unsupported port to the Atmel AT91M40400-based EB01 board. More information is available from this message to the ecos-discuss list. This is unrelated to the port in the latest versions of the eCos sources.

Floating point hardware support

Sergei Organov is working on support for floating point hardware within eCos. He is targeting the PowerPC processors initially. Sources are not yet available.

Samsung SNDS platform HAL

Grant Edwards is working on a port to the Samsung KS32C5000 microcontroller (ARM7TDMI core) and SNDS development hardware. Sources are not yet available (estimated availability - January 2000).

Thanks to our contributors

PXA250

Holger Schurig contributed a port to the PXA250.

ARM AT91 Watchdog driver

Thomas Koeller of Basler Vision Technologies has contributed a watchdog driver for the ARM AT91 CPU.

MPC5xx ports

Bob Koninckx at the Department of Mechanical Engineering at the Katholieke Universiteit Leuven has contributed ports to two PowerPC MPC555 based boards, the CME0555 eval board from Axiom Manufacturing and the ec555 from Wuerz Elektronik. Both ports include FLASH, serial and wallclock drivers.

The ports will appear in eCos v2, but until then a complete tarball may be downloaded from here. Note that this is a standalone set of sources, and may not be easy to merge with an existing repository. There are also some extra packages for the ec555 port in EPK format containing device drivers for the A/D and D/A convertors as well as the Time Processor Unit.

H8/300 port

Yoshinori Sato has contributed a port to the Hitachi H8/300. This port will be made available in the upcoming eCos v2 release, but until then you can get more details from Yoshinori's website.

lwIP lightweight TCP/IP stack

Jani Monoses at Astechnix SRL has announced an early port of the lwIP lightweight TCP/IP stack to eCos. This has now been incorporated into anonymous CVS.

Improved AT91 serial driver

John Recker at HP has written a new serial driver for the AT91 port, designed to drop fewer characters at high bit rates.

Andrew Lunn at Ascom

Andrew Lunn at Ascom has contributed many useful things back to the eCos community, including an FTP client, DNS support, OpenSSL, linux synthetic target flash driver and many many small fixes and improvements.

The entire eCos community is grateful to Andrew and Ascom for their excellent efforts!

3GLAB

The eCos community would also like to thank Richard Panton and Dominic Ostrowski working for 3GLAB who have contributed many excellent features, including the initial Compaq IPAQ port, ROMFS filesystem and (soon) JFFS2 filesystem support.

ARM Integrator HAL and drivers

Philippe Robin at ARM has contributed a port to the ARM Integrator platform. This port is available from anonymous CVS.

PC mouse driver

Li hui has developed some sample code that can be used to make a PC serial mouse driver, and is available here.

ARM Evaluator-7T serial device drivers

Lars Lindqvist of Combitech Systems contributed serial device drivers for the ARM Evaluator-7T (AEB-2) platform. The sources are in the anonymous CVS development repository.

PC platform HAL

Patrick O'Grady developed the initial port of eCos for the PC platform. The sources are included in the eCos net distribution as of release 1.3.1.

Synthetic Linux platform HAL

Chris Provenzano developed the eCos i386/Linux synthetic target. This is essentially a port of the eCos HAL to a Linux process and allows the developer to run eCos applications under Linux as if they were native Linux applications. The sources are included in the eCos net distribution as of release 1.2.1.

Motorola MPC8xxFADS platform HAL

Kevin Hester developed an eCos HAL for the Motorola MPC8xx Family Application Development System platform. The sources are included in the eCos net distribution as of release 1.2.1.

Arm Industrial Module AIM711 Port

Roland Caßebohm of Vision systems developed a full port of eCos to the Vision Systems AIM711. This port includes HAL, FLASH, serial and wallclock device drivers, plus a patch to make an existing ethernet device driver work with this hardware.

Hardware contributors

Andrew Lunn would like to thank Ronetix for the loan of a PEEDI JTAG Emulator

Individual contributors

In addition, the eCos team recognizes the following individuals who have contributed to eCos:

If we have left anyone off the list, please accept our apologies and inform the eCos maintainers of the omission.

About this site

We acknowledge the support of Red Hat to the open source community in providing the computing resources at ecos.sourceware.org.


eCos and the eCos logo are registered trademarks of eCosCentric Limited.