Seneca Software & Solar - Projects






I've been programming since 1977 in a multitude of languages, primarily C, C++, or assembler. Over the years I've worked on everything from super-computers, to tiny embedded consumer devices.

I've also authored several Open Source (usually under the GPL) projects during the many years I worked for Cygnus Solutions (now part of RedHat) and as "side" projects for the Free Software Foundation when working elsewhere.

I am 20+ year developer & supporter of Free and Open Source Software from long before it was a fad. Software I've authored is on all the GNU/Linux CD distributions shipped today. Here is a brief list of the major Open Source Projects projects on which I have worked on.

Recent Projects

    Gnash
    John Gilmore and I created the Gnash project to develop a free flash player plugin for browsers, and as a UI layer for embedded devices. Gnash runs on many architectures, and has a set of unique features, including it's support for patent free codecs. Gnash is also a high-priority project for the Free Software Foundation.
    FAA
    Since I worked on air traffic control software at NASA, lately I've been consulting on the FAA's NextGen project, to moderize the ATC system.
    NASA
    I somehow found myself drafted to work on the "Center-TRACON Automation System, or CTAS", which is a set of tools designed to help air traffic controllers manage the increasingly complex air traffic flows at large airports. I ported it to GNU/Linux. :-) Since then I've built a few clusters, and help NASA/FAA with custom GNU/Linux and GCC support for a variety of processors.
    Ouray Ice Park
    Along with lots of computer projects, I've also wound up as a festival electrician. As a long time Ice climber and supporter of the Ouray Ice Park, with my son Abe we do all the electrical, and AV work for the Ouray Ice Festival. After 14+ years of building a temporary system, I finally wired the entire park area permantely.
    NedFest
    I'm one of the organizers and the electrician for NedFest, a great little music festival in my home town. This entire festival runs on a temporary power system I build, and then tear down. This requires an interesting mix of powering the stage and all the food vendors.
    GnuAE
    It was brought to my attention that people need good design software for off-grid houses and other projects than they currently need power-management. So I created GnuAE to address this problem. This is a GTK/GNOME compliant application that helps with sizing and design issues, then calculates the equipment needed to support these uses, as well as all the NEC compliant wiring. I'm currently refactoring GnuAE as a php extension and web site backend.
    Portable Power Systems
    I spend alot of time out in the field, and these days that means a need to power equipment in remote places. This page covers some of those systems, complete with photos and wiring diagram.
    Solar Powered, Wireless Phone System
    I've added a long-range, wireless phone system to my off-grid house and lab. The landline end of this wireless connection is also off the grid. This is a more detail version of an article that was in Home Power magazine in issue #88.
    AbelMon
    As part of why I'm building my own Solar lab, is I've been busy working on a GNU/Linux based power management system for off-grid houses. This is a huge project which recently I've broken into several smaller standalone pieces.
    PowerGuru
    This project was part of Abelmon till recently, and was called TraceGUI. Well, Trace is now owned by Xantrex, and I also addd an Outback MX 60 charge controller recently, so I've rewritten this to be a standalone project that support both Outback Power Systems and Xantrex products.
    Solar Lab
    I'm currently building a state of the art, alternate energy lab at my off grid geodesic domes near Ward. This is where I plan to develop a several products in the alternate energy field. While I know there are many excellent engineers in this field, I don't think most are looking at the whole system design. My goal is to be able to do my own research that will hopefully lead to improved designs. Towards that goal, I've been rewiring the house, which is documented here. I recently installed a new PV array on the roof of the lab. More details are in this article
    DejaGnu
    DejaGnu is a framework for testing other programs. Think of it as a custom library of Tcl procedures crafted to support writing a test harness. DejaGnu is heavily used by many GNU projects, companies, and universities because it is the only testing tool designed from the beginning to work with embedded targets and remote hosts. Also because I was a member of the X/Open POSIX standards committee on Testing Methodologies, DejaGnu is one of 2 POSIX conforming testing tools in the world.

Past Projects

    OLPC
    I spent several years as a volunteer on the OLPC ($100 laptop) project. I was primarily focused on flash support of course, an contributed optimizations for GCC and GLIBC to improve the performance on the Geode GX and LX processors.
    Request Multimedia
    I'm working with a Troy, NY company that builds a really nice digital MP3/FLAC jukebox designed as a high-end stereo component. It scans CDs, tapes, whatever, or can download music from the Net over it's ethernet connection. Their new product runs embedded GNU/Linux.
    Interact TV
    I'm was consulting to a Boulder (now Westminster) based company doing an Open Source, embedded Linux based Interactive TV product. As a person that hasn't owned a TV in 20 years, I think an Open Source, GNU/Linux based, settop box built more like a multimedia PC would be a a great idea. Too bad they don't pay their invoices...
    GNU/Linux on HP Omnibook 6100s
    I somehow would up installing and maintaining GNU/Linux on some HP Omnibook 6100 laptops a customer is using. This document is on how to make this laptop a dual boot laptop with full device support. Note: the latest Fedora Core 2 or 3 runs out of the box on the Omnibook 6100.
    NILO
    NILO is the Network Interface Loader. NILO will boot GNU/Linux, FreeBSD, and Windows 95/98/NT4. It also supports the Intel PXE standard, and is suitable for burning into ROM. Most of this project has been migrated to the Etherboot and OSKit projects, and hence doesn't exist as a standalone project anymore.
    eCOS
    eCOS is a highly configurable, hard real-time Operating System that runs on a variety of processors, and is tighly integrated into the GNU development tools. I was the original architect of eCOS, and helped create the development team that brought this product to market in under a year.
    Libgloss
    Libgloss is a Board Support Package for the GNU tools. This includes startup code and minimum I/O support for a large collection of manufacturer's evaluation boards. It also contains working GDB stubs for a number of targets. These days it is distributed with the Newlib releases, Cygnus's (RedHat's) embedded C library for use in non eCOS environments.
    GDB
    GDB, the GNU debugger, allows you to debug programs written in C, C++, Java, and other languages, by executing them in a controlled fashion, printing their data, etc., on a wide variety of UNIX and non-UNIX systems. I added several features to GDB, all oriented towards cross debugging of embedded systems. These features include the ROM monitor interface, several embedded GDB stubs, and an unreleased multi-protocol backend for GDB that used CORBA for network access.
    GCC
    GCC is the name for the GNU compiler. It currently supports C, C++, assembler, Fortran IV, Java, Ada, and Pascal. It works either as a native compiler for most operating systems, or as a cross compiler for many embedded microprocessors. I worked heavily on adding the cross development abilities to GCC, as well as other tweaks so it could be used for embedded systems development.
    Tcl/TK
    Tcl (Tool Command Language) is the industry's first scripting language capable of handling enterprise-scale integration tasks. It's used by over half a million developers worldwide and has become a critical component in thousands of corporations. It has a simple and programmable syntax and can be either used as a standalone application or embedded in application programs. I was one of the Tcl maintainers for many years, as it is used by my DejaGnu program.
    Expect
    Expect is a tool for automating interactive applications such as telnet, ftp, passwd, fsck, rlogin, tip, etc. Expect really makes this stuff trivial. Expect is also useful for testing these same applications. And by adding Tk, you can also wrap interactive applications in X11 GUIs. I was also one of the Expect maintainers for many years, as it is used by my DejaGnu program.
    Cygwin
    The Cygwin tools are ports of the popular GNU development tools and utilities for Windows 95, 98, and NT. They function by using the Cygwin library which provides a UNIX-like API on top of the Win32 based systems (win95, win98, NT). I was an original member of the GNUish project in the 1980s porting GNU software to DOS, Xenix, and WinDoze. We then later ported a large chunk of GNU/Linux to win32, which finally became the Cygwin project.
I also have years of experience in the infrastructure of the Internet. More than just a fancy web site designer (which I'm not), my specialty is the in the guts of the Internet. Some of my websites are the oldest on the Net. (created in 1993) I have experience in the web servers, intranet creation, firewalls, and internet security.

Commerical applications I've worked were all mostly embedded or industrial projects. Needless to say, none of these companies exist anymore... Past projects include:

    Cygnus
    I was one of the original staff of Cygnus (now part of RedHat. Originally we were Cygnus Support, but later some fancy marketing people thought Cygnus Solutions sounds better...
    RIPS
    I was the Sr. Advanced Products development person, building what was the world's first RISC based color laser printer. I spent most of my time doing R&D, and authored 2 ROM debug monitors, and ported the Nucleus RTOS to the MIPS architecture.
    Technistar
    Technistar was a systems integrator in the Robotics/Automation field. There I designed and built large robotic & machine vision systems. The one project I did (other than some disk drive machines) that most people approve of was a new Reese's Peanut Butter Cup machine for Hershey Chocolate, and some packaging lines for Giradelli Chocolate.
    Topologix
    At Topologix I was the Sr. Software Architect on their supercluster, massively parallel machines. Among other things, I wrote the initial message passing based operating system, and managed the design and implementation of our parallelized versions of C, Fortran 77, and Common LISP.
    Laser Applications
    I was head of the computer group building custom CAD/CAM software and customer applications for high-precision Laser Machining.
I am available for seminars, training, consulting, or product development. Please contact me by email, or by calling me 303-258-0506.

Media Coverage

    Linux Format Interview
    This is a 2008 interview I did after the FOSDEM conference in Brussels.
    Cisco Ad
    I've long had a Cisco 2000 router for my net connection, which has survived almost 8 years of what passes for electrical power around here. So when they asked me to do an ad, I thought I'd return the favor. This was published during April, 1999 in Japanese newspapers, so it's a touch out of date.
    Interactive Week
    I got interviewed by Interactive Week for an article on Open Source programmers. Three of us were featured in the interviews.


Copyright � 2009 Seneca Software & Solar, Inc
Last modified: Dec 11, 2009 by rob at senecass.com