leJOS: Java based OS for Lego RCX

[ API Reference | TinyVM | Thanks ]
[ leJOS at SourceForge | Download Area | News | Bug Reports | Mailing Lists | CVS Repository ]

Like its predecessor (TinyVM), leJOS is a tiny JavaTM runtime. It functions as replacement firmware for the Lego MindstormsTM RCX, a programmable brick which is part of Lego's Robotics Invention SystemTM (RIS). The RCX contains a Hitachi H8300 processor and 32 Kb of RAM (of which 28 Kb are safe for the firmware to use). We have plans to port leJOS to other small devices.

Latest Release

Unix or CygWin lejos_1_0_0alpha4.tar.gz Installation Instructions
Windows 95/98/2000/NT lejos_win32_1_0_0alpha4.zip Installation Instructions

Downloading the Windows distribution may take around 10 minutes, depending on your connection. The Unix distribution is considerably smaller, and it should run under CygWin (B20.1 preferably). Other releases, notes, dates and sizes are available at the SourceForge download area.

This is an early release. Assume that APIs, tool names, firmware behavior, and so on, are not stable. Check the README file for further instructions.

You can also access the CVS repository. The module name is lejos.

TinyVM vs. leJOS

TinyVM's focus differs from that of leJOS. TinyVM is a low footprint replacement firmware (< 10 Kb), whereas the focus in leJOS is completeness, and performance to some extent (although TinyVM performs better than early leJOS versions). The current footprint of leJOS in the RCX is 16 Kb, but it will probably grow. Additionally, TinyVM is stable, while leJOS is somewhat experimental.

The most important features missing in TinyVM which are currently implemented in leJOS are:

Additionally, all references in the operand stack are marked as such in leJOS. This means that garbage collection can be implemented without much extra effort. Other planned enhancements include: Multi-program downloading, program arguments, auto power off, java.io APIs, java.net APIs, etc.

Comments? Questions?

Please direct feedback to Jose Solorzano at jhsolorz at yahoo.com. You can also subscribe to the tinyvm-discussion mailing list.

Thanks for stopping by!