Projects / NanoVM


NanoVM is a tiny (less than 8 kB of code including simple native classes and a bootloader) implementation of the Java VM. It currently runs on Linux and the AVR microcontroller family. Unix/Linux is supported as the main development and testing platform, whereas the VM is primarily intended to be used on tiny embedded devices such as the AVR. The VM can very easily be ported for other targets.

Recent releases

  •  09 Jul 2007 14:51

    Release Notes: Support for the Nibo robot and Asuro ATmega168 was added in this release. The package now includes HTML class documentation (Javadoc). The install scripts have been updated and the virtual machine source folder was cleaned up.

    •  20 Feb 2007 22:30

      Release Notes: This release includes various extensions to the NanoVM, and in particular includes support for the c't-bot robot. Various new robot specific classes have been added, as well as code examples.

      •  13 Jun 2006 20:46

        Release Notes: This release includes two user contributions. One is a new and improved upload protocol, and the other is float and 31-bit arithmetic support. There are several bugfixes.

        •  17 Dec 2005 19:07

          Release Notes: The support tool (NanoVMTool) has been converted from using javax.comm to rxtx, thus allowing it to now work under Linux, Windows, and MacOS. Several improvements were done to the VM. Plenty of new native methods have been added for generic AVR support. LCD support has been added together with example schematics on which to base your own projects. The Mega32 is now officially supported and can be used as an example to expand the NanoVM to further target platforms.

          •  30 Sep 2005 23:41

            Release Notes: Separate stack handling and an Asuro compilation bugfix.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.