Erik Nygren's Software Projects


This is partial listing of projects I've worked on over the years. Source code may be available for many of these projects. I just started putting this list together, so it is by no means complete.


Active Networks

PAN
PAN (Practical Active Network) is a capsule-based active network system I wrote for my Master's thesis. I'm currently performing follow-up research while working on putting together a useful distribution.
Status: Working, but still a work in progress. Release expected in Fall 1998. (June 1998)

JANE
JANE (Java-based Active Network Environment) is a discrete active network system I developed while taking 6.853 (a computer systems class at MIT).
Status: Basic implementation working but unsupported (December 1996)


Graphics

PNM file plug-in for The GIMP
Soon after getting my hands on release of 0.54 of The GIMP, I wrote a plug-in for reading and writing PNM graphic files (the PPM, PGM, and PBM formats are all subsets of PNM).
Status: completed and included in the 1.0.0 release of The GIMP (1997)

SANE driver for SGI IndyCam
In a fit of insanity last fall, I hacked together a SANE driver for the SGI IndyCam. I still need to make it more flexible and useful so that it can get included in future releases of SANE.
Status: work in progress (Fall 1997)


Linux and XFree86

XFree86 P9000 driver
I helped write the Weitek P9000 driver for XFree86. This allows the P9000-based cards, such as the Diamond Viper, to work with X windows.
Status: completed and stable (1996)

PCM SSD device driver
While working at NASA in 1995, I got Linux running on a 4"x4"x4" PC/104 stack. As part of this, I wrote a Linux device driver for the PCM Solid State Disk from WinSystems.
Status: completed (1995)

Ported Pentium/PentiumPro Performance Counter driver to Linux
I spent a few hours porting the OpenBSD pctr driver written by David Mazieres to Linux. A distribution will be available shortly.
Status: alpha (June 1998)


Virtual Environments

VEVI3
For four summers I worked at NASA Ames Research Center in Mountain View, CA. I worked in the Intelligent Mechanisms Lab in the Information Sciences Division. My projects included various things relating to virtual environments and telerobotics. While working there, I was the lead designer for the VEVI3 architecture which was a finalist and runner up for the 1996 NASA Software of the Year competition. VEVI3 is available through COSMIC.
Status: completed (1995)

VETTnet
I wrote the VETTnet communications system while working on the Virtual Environment Technologies for Training (VETT) Testbed Project in the Research Lab for Electronics at MIT. The purpose of the VETTnet system is to allow the rapid integration of devices connected to multiple hosts on a network. The VETTnet system is implemented as a "blackboard". The blackboard is a networked database that clients can access, write data to, and read data from.
Status: completed (1994)

VPL DataGlove driver
While working at NASA Ames in 1992, I wrote a VPL DataGlove device driver for IRIX that included calibration and static gesture recognition functionality.
Status: completed (1992)


Erik Nygren (nygren@mit.edu)