BAJOS - a java runtime environment now even for arduinos

BAJOS is a java run-time environment for microcontroller.

It consists of BAJVM, a Java Virtual Machine and of BAJOSBOOT, a collection of system classes. BAJOS can be adapted to Embedded Systems with/without operating system ( The system has been tested for 8 and 32 Bit AVR controllers on different development boards and works under Linux on PC or Linux for Embedded Systems also. Installation of Bajos requires: - C-compiler (gcc) on a cross development linux-PC - a java develoment enviroment on pc (javac) - (serial) interfaces between PC and development board for programming and interaction - at least 80 kByte program memory on the controller board - at least 4 kByte data memory on the controller board The Arduino Mega (with the atmega1280 processor 128KB flash, 8 KB data ram) or Mega256 (with the atmega256 processor 256KB flash, 16 KB data ram) is well suitable for Bajos. Boot classes in BAJOSBOOT include necessary classes of the JVM-specification, other useful system classes as well as the class for binding the run time environment to the hardware configuration.

You can install compiled binary image with the bootloader shipped with the arduino or with bamo128 ( The terminal program arduinokermit ( is well suited for communication of the linux-pc with the BAJOS-arduino. BAJOS controls a crane with magnetic grabber

BAJOS triggers an alphanumeric display

More information (sourcecode, wiki) you get at .