
Freetserv: a free serial terminal server - secure
https://freetserv.github.io/
======
Animats
Cheap multiport terminal servers are available surplus.[1] This one is $69 for
24 ports. You'll need a 48VDC power supply for it, though; this must have been
for a telco installation.

[1] [http://www.unixsurplus.com/product/digi-cm-32-console-
termin...](http://www.unixsurplus.com/product/digi-cm-32-console-terminal-
server-32-ports)

~~~
secure
Thanks for the link.

Before starting this project, we actually bought an old commercial serial
terminal server, but ran into multiple issues with it.

One of them was a hardware issue where the vendor suggested the only fix was
to replace the entire CPU.

Another is that these devices are so old by now that the software is full of
security holes that will never be addressed.

Hence, I’m a bit sceptical of commercial serial terminal servers now :).

~~~
fit2rule
I remember back in '95, someone basically saying exactly the same thing when
asked why they were using a Linux machine stuffed with a couple of Cyclades
cards to do the exact same thing. The more things change, the more they stay
the same ..

------
rdl
I'd love an open/non-shit IP-KVM, too. Right now it's basically a Raritan vs.
Avocent duopoly (with lots of other rebrandings), and then IPMI (which is the
right choice for huge numbers of homogenous machines, but wrong for a test
lab).

~~~
astrodust
I've often wondered about this as well. A Raspberry Pi 2 seems to have enough
horsepower to act as a very capable KVM type unit, and has an Ethernet port.

How hard is it to digitize analog VGA or interface directly with HDMI and
encode to something like VNC using the GPU if necessary?

~~~
mmetzger
I've been fiddling with this idea for a while and have basically come to the
conclusion direct VGA capture isn't worth the trouble. There are VGA to HDMI
converters available for about $20-$30 that do the job surprisingly well.
There used to be a number of VGA -> digital chips available (TI TVP7002, etc)
but they've all been EOL'd or NRND (Not recommended for new designs.)

For HDMI/DVI capture at this scale, the best option seems to be an FPGA based
system. There are several boards available that have the necessary hardware
but are expensive (relative to a 1-port IP-KVM), power hungry, or large (or
all of the above.) The Digilent Zybo may have enough to pull it off (and has
the ARM cores to boot) but is still a bit on the pricey / power hungry side.
I'm hoping the new Snickerdoodle Zynq based boards will be able to do the job
(with an add-on board)

Regarding using the Pi2, it might work, especially if it can be fed via the
camera interface. The lack of USB-OTG (linux gadget support for KB / Mouse /
Mass Storage) limits the usefulness somewhat.

I've been hopeful about the Beaglebone Black / X15 due to the USB-OTG and the
tons of extra IO.

The other board of interest is the Dragonboard 410C - it can supposedly
capture at 1080p60 (more than enough for the average system you'll stick a KVM
on) but I'm not sure what that means explicitly (yet.) It does have USB-OTG
(though it can't do USB Host / Device simultaneously.)

~~~
Sanddancer
There is a board that'll pull hdmi to the CSI port. It's abou 150 euros, but
there have been success reports, up to 60 fps

[http://www.auvidea.eu/index.php/theme-
styles/2014-12-30-22-3...](http://www.auvidea.eu/index.php/theme-
styles/2014-12-30-22-32-06/b100-hdmi-to-csi-2-bridge)

Regarding emulating a USB device, first thing that comes to mind is possibly
using a micro of some sort that can act as a usb device, like an arduino or
teensy. it's a bit hackish, but sending things over SPI should get more than
ample speed for keyboard/mouse emulation, and there's code written already for
a lot of micro platforms to do both.

------
kev009
This would pair like fine wine with
[http://www.conserver.com/](http://www.conserver.com/) to make a distributed
console server system for large infrastructures.

------
jhallenworld
Turn an old Linux pc into a terminal server: [https://github.com/jhallen/joes-
sandbox/tree/master/utils](https://github.com/jhallen/joes-
sandbox/tree/master/utils)

(look for serial connect / c.c)

This lets you telnet to a serial port (uses xinetd and telnetd), just like
commercial ones. It includes locking and a way to force disconnect of an
inactive user hogging a port. I think it should work on the raspberry pi /
Freetserv.

Other features: hex dump mode, suppress ansi mode, logging, reports name / ip
address of user already connected to port.

Also there is a script to control the outlets on this device:
[http://www.cpscom.com/controlled-ac-power-strip-
cps-468.html](http://www.cpscom.com/controlled-ac-power-strip-cps-468.html)
(which is the cheapest computer controlled outlet strip I could find).

The idea is you can connect to the console port of some machine under test.
Once connected, you can also control its power. This is great for working on
hardware remotely or linux kernel development.

------
revelation
Using a raspberry in one of these would make me scared that it won't come back
after a power cycle because it has inevitably killed the filesystem or SD
card.

A MIPS system from a router running OpenWRT would be a good fit, they usually
boot from read-only mounted rock stable flash and have proper networking
hardware.

~~~
cnvogel
freetserv also recommend going readonly...

[https://freetserv.github.io/software-
setup.html](https://freetserv.github.io/software-setup.html) (last section)

~~~
secure
Exactly — I’ve been running a couple of Raspberry Pis in a read-only setup
ever since they were released, and they are still working fine with the same
SD card and filesystem :).

~~~
icebraining
I've been running my home server off of a cheap USB flash drive for years, and
mounting it read-only essentially fixed all my fs troubles, even when the
power cuts off (I don't use an UPS). The only problem is having to disable
logging (I don't have anywhere to ship them to).

------
pkaye
I haven't looked at the details of this design but from past experience, I've
found USB based serial ports to lose data at high speeds. I tend to use
PCI/PCIe based cards instead.

------
mmastrac
This is very cool. I'm amazed at how expensive it is even built yourself. How
much is the equivalent professional version?

~~~
secure
Commercial serial terminal servers (used to?) go for about a thousand bucks.

Bottom line, I think it’s (barely) cheaper to build one yourself, but only if
all the research & development (read: ordering multiple prototypes) is already
done, like it is now :).

~~~
busterarm
You can buy used ones on ebay for $100 though.

I picked one up for $90ish shipped a few years ago. Not with anywhere near
this many connections though.

I can hardly give the thing away now.

~~~
scurvy
I buy the Perles off of eBay for a few hundred dollars. Way cheaper than this,
good software support, multiple gig PHY's, and often dual psus.

------
tiatia
What I would be interested in is:

USB HUB, 10-20 Ports

Each Port switchable

19" Rack-mount case

Was once available from a Russian company for an insane price (2k US$).

~~~
secure
We actually considered that as an alternative in the beginning, i.e. use a
bunch of usb2serial adapters on a 1U rack-mountable USB hub.

We decided to go for serial ports because that ultimately is less clutter in
the rack, i.e. the usb2serial adapters “go into” the unit instead, and you get
to use rj45 connectors instead of bulky db-9 connectors.

That said, of course a generic usb hub could satisfy more use-cases. What’s
yours?

~~~
tiatia
I have a bunch of USB Devices and don't like the cable chaos. Also, some of
the USB powered USB devices I use rarely, hence each USB plug should be
switchable.

