The idea of computers communicating with each other has fascinated me from the very beginning. When I was little, the world of networking was a “mysterious” one, as I didn’t own a modem until I was 12 and had only experienced the idea of computers talking to each other from TV and movies (read: War Games). When I finally did get my first 2400bps, I got huge into BBSes and ran my own (Pig Pen Forever!), learned everything I could about serial communication and modems. Then when I was older and had access to equipment, I got into Ethernet, TCP/IP, and the wonderful world of modern day networking. But it always goes back to that magic of seeing something pop-up on your screen that didn’t originate from the local machine – it came from somewhere else, either another computer in the room, or half way across the world.
Because of this, a favorite activity of mine is connecting my vintage machines up in one way or another so they can share data and download programs from the rest of my network. These connections range from a sophisticated TCP/IP stack over Ethernet on my Amiga 4000, to a simpler TCP/IP over PPP over serial on my Apple IIGS, to a very simple Kermit over serial on my Osborne-1.
The Problem With This
With the exception of the Amiga which actually makes use of Ethernet, there are a few issues with this setup – all of which originate from these links being RS-232 serial.
- RS-232 is physically point to point, each end needs a dedicated serial port for that connection.
- RS-232 is also logically point to point, a device can only directly communicate with the device on the other end of the serial link.
- Assuming the computers are DTE devices, a crossover adapter (null modem) needs to be used on the serial connection to flip the send/receive pins.
- Serial cables tend to be bulky and expensive, especially when you add in gender changers and null modems. Add a few of them and you have cables everywhere.
A Neat Solution
While the best way to tackle this situation is obtain a native Ethernet network card/adapter for the machine in question, this can be difficult, expensive, or impossible in many cases since for many of the lesser known vintage machines, network cards were simply never made, and there isn’t enough of a community to build one. Luckily though, most vintage machines tend to have serial port – wouldn’t it be great if we could convert that serial port into an Ethernet port? Or even better, include a range of network oriented services integrated into that network port?
Enter the Digi PortServer
For the record, I’ll say that I have no affiliation with Digi, I just think they have a really cool product and wanted to share it. Digi produces a line of hardware devices known as the “PortServer” which basically converts a serial port into a network port. What’s better, it can combine multiple serial ports onto a single network connection, so 8 machines can be plugged in over a serial link, which connect to the network via the PortServer only using a single network cable. More importantly, the PortServer supports the following to make networking vintage machines a reality:
- Virtual COM/TTY ports – Digi provides drivers that create a virtual COM port on your Windows box (or TTY on your Linux box) which transparently connects over a network to a PortServer serial port. So you can be two countries away, but as far as Windows, your software, and the software sitting on your vintage machine is concerned, you are connected over a hard serial link. This is great for applications made for serial communication that need a com port.
- Outgoing TCP connections – The PortServer can be set to automatically connect to an IP and port when serial traffic originates on the vintage computer – e.g. when I open my terminal up on my Apple IIGS, the port server will automatically connect the serial port to a telnet session on my Linux box, or on my favorite BBS.
- Incoming TCP connections – The PortServer can listen for connections made on a specific port, and then connect that traffic to the vintage computer – e.g. I can telnet to port 2002 on my PortServer from my Linux box, and it will connect me to the serial port of my Osborne 1. Now you can access your vintage machine from at work!
- Modem Emulation – The Port Server can emulate a Hayes compatible modem, while passing traffic via TCP – which means you can run your favorite old BBS like new over telnet without fear of strange compatibility issues or rewriting any code.
- PPP – The PortServer supports the PPP protocol, which means if you have a machine capable of speaking PPP (such as an Apple IIGS running Marinetti), your PortServer can take care of handling the PPP traffic. There are configuration options for IP address assignment and negotiation attributes in the PortServer setup.
- Chat Mode – The PortServer can also combine multiple sessions together at once, so more than one computer can be connected to your vintage machine at the same time. This can be a good way to monitor traffic or create a shared environment for 2+ person communication.
- Lots more – The PortServer also has options for serial printers, industrial applications, power over serial, remote waking, wireless, users and security – the list goes on and on.
I had known that serial IP extenders existed, but when I finally picked up one of the Digi boxes, I was truly amazed by how many options the firmware provides – it’s really impressive.
A 4 port wireless Digi PortServer
It’s Not All Roses
There are a few issues though:
- Latency – since the data is being converted from a hardwired RS-232 to packet based back to RS-232, there is definitely an increase in latency, and issues with the network can mean lost or slow data, which isn’t a problem for a direct, hardwired link.
- RJ-45 Ports – The PortServers don’t have DB-9 ports, rather RJ-45 ports akin to Cisco or other networking equipment console ports. They understandably do this so any range of converter cables can be used with a wide variety of ends, but in most cases you’ll just want a DB-9. I ordered a two port PortServer and it came with a single RJ-45->DB-9 cable, so I’ll need to get/build another if I want to use the other serial port on the box simultaneously.
- Price – They can get a bit expensive. A two porter can go anywhere from $250-$340 depending on the options it’s equipped with. Also available are 4 port, 8 port, and 16 serial port models, the latter which gets close to $1200. However, depending on how many machines you actively would like “networked”, 2-4 would probably suit most peoples’ needs – I know I’ll be fine with 2.
The Sky’s the Limit
I’ve only had mine hooked up for the last few hours, and already I’m thinking about a dozen uses for this thing. And while it isn’t a miracle product for anything modern that features a network jack – it is an amazing buddy for vintage computers in need of network communication.
Well, I’m off to surf some BBSes on my Osborne-1!
Digi Official Website