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.
The i2c-tiny-usb is a open source/open hardware project. It is meant to replace those i2c printer port interfaces often used to connect i2c sensor chips (e.g. temperature sensors) to a Linux PC. It is fully documented and based on cheap and easy to obtain hardware. It comes with a Linux kernel driver, and can thus re-use existing Linux i2c client chip drivers. It additionally comes with a libusb-based demo application that also works under Windows and Mac OS.
The lcd2usb interface is meant to replace existing printer port solutions to connect those ubiquitous hd44780 based text LCDs with an up-to-date USB solution. The lcd2usb comes with fully documented hardware schematics and software drivers. It is supported by lcd4linux. lcd2usb is easily accessed using libusb, and the included demo application runs under Linux, Mac OS X, and Windows.