This huge drawing (done in ConceptDraw) was my snapshot of the system during the heyday of its development, and it even lived on the server with image-mapped links in some of the boxes, intended to become a graphic front-end to the documentation library. A few notes are below; you can click it for a big version and scroll around.
Microship Network Architecture Drawing
by Steven K. Roberts
January 28, 2001
The Microship system design can be characterized as the integration of a wide range of mostly off-the-shelf products into a hopefully harmonious whole. Since the individual components were never intended by their designers to interoperate, the core of this architecture is a set of tools that allow lots of random things to be interconnected on the fly under software control.
Unfortunately, very few products outside the computer world have convenient ethernet, firewire, or USB ports. Radio gear, sensors, cellphones, music synthesizers, navigation devices, tiny video cameras… all can be conceptually reduced to well-defined functional modules that possess some set of interconnections with the outside world: power, serial, audio, video, and maybe a few random bits. This leads directly to the core philosophy of the Microship design… every object in the system is tied to a trio of crossbar networks and simple power switching hardware, all wrapped in a layer of code that makes it feel homogenous. Atop this code layer are the system-level applications (telemetry, navigation, security, communications, and so on… all managed through a single GUI).
The implications are significant. When diverse widgets can be tied together on the fly under control of front-end code in an off-the-shelf Linux box, then operational flexibility and upgradability are unlimited. We don’t have to wait for someone to build a USB compass sensor… we just take the NMEA output of a standard marine unit and plug it in to a dense panel of DB-9 connectors. If some client wants to know the ship’s heading, a controller issues a command to conjure a virtual serial cable between the compass and the receiver. Same with audio and video channels… need to transmit a status report in synthesized speech via cellular phone? A quick command to the audio crossbar does the trick. And various video cameras and wireless links between boats can be shuttled around as needed for security monitoring, transmitting frame grabs to the website, or keeping Natasha provided with source material for her video production projects.
The point of all this is flexibility without having to design everything from scratch, as I’d like to actually get on the water, not spend the rest of my life trying in vain to keep up with technological advances. The Microshipnet is thus a huge interconnection toolset with a solid development environment on the front end.
—SKR, January 2001