Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 5 Oct 2006 15:21:44 -0500
From:      Karl Denninger <karl@denninger.net>
To:        freebsd-stable@freebsd.org
Subject:   Re: Recommendations for a serial port card you can actually BUY?
Message-ID:  <20061005202144.GA11105@FS.denninger.net>
In-Reply-To: <20061005190822.GA15547@icarus.home.lan>
References:  <20061005151925.GA1156@FS.denninger.net> <20061005190822.GA15547@icarus.home.lan>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Oct 05, 2006 at 12:08:22PM -0700, Jeremy Chadwick wrote:
> On Thu, Oct 05, 2006 at 10:19:25AM -0500, Karl Denninger wrote:
> > Hi folks;
> > 
> > Ok, one of my pet peeves is coming around to bite me again.
> >
> > {snip}
> > 
> > I know serial I/O is passe for many, but some of us have applications that 
> > actually require it, and can't rationally be moved to anything else due 
> > to external hardware considerations.
> 
> This is in no way flame-bait, nor does it have any negative
> implications -- as a fellow SA I'm just curious.

Fair enough.

> What exactly are you using serial cards for in this day and age?
> A serial console server (a la Cyclades TS)?  Or is there something
> that's more mission-critical (for lack-of better term).
>
> I guess my question is: what are you using these cards for, and
> can whatever the goal is be accomplished by some alternate hardware
> (serial-via-USB adaptors/hubs, serial-over-IP, etc.)?

Two things:

1. Fax servers running traditional fax modems.  There's a HUGE installed
   base of fax modems that run on POTS lines and there's simply no
   justification for moving to something like a channelized T1 system 
   for people who need a half-dozen ports (but not 20+!)

2. Embedded control systems.  There is some hardware either is RS232 or,
   for "floor automation" type stuff, is RS-422/485.  The latter is easily
   converted to using a little dongle, but it requires a 232 port on the
   computer end <and that port must actually work correctly.>

Both of these applications are timing critical or they don't work at all.

Much of the latter hardware is still only available in a serial interface,
no matter the cost.  It is not high-data-rate by any means (typically 4800
or 9600 bps) but it is what it is.

Serial over IP will not work for either.  Serial-via-USB might, and I will
look into that, but I suspect I'm going to get in trouble with that one,
especially if I have to toggle control signals (e.g. DTR, etc) or support
hardware flow control (and for the fax servers, you DO need it if you expect
things to work correctly.)

FreeBSD's USB support has always been somewhat deficient.  For example,
apcupsd can't talk to their UPSs over the USB bus, even though the software
itself knows how, because FreeBSD doesn't know what a UPS is and throws up
its hands when you plug it in.  I wasn't aware that the USB to Serial
converters would work - I can try them, but there are a lot of those out
there that don't work right even under Windows - expecting them to under
FreeBSD might be asking too much.

The problem that is nailing me particularly hard right now is the second one
- I have embedded control systems that I speak to over a RS-232 interface 
(the devices are actually '485 on a common bus but talked to via a 232/485
converter) and it simply does not work on 6.x using the Comtrol driver 
at all.  100ms delays and the like are one thing - we're talking about
delays in characters reaching the application of one second or more, and in
some cases either characters or entire <frames> (e.g. a burst of characters)
are being <repeated!>  When you're trying to manage a synchronous polling
protocol this sort of error makes the software on the other end throw up in
a really ugly way, since it looks like there's a fault in the equipment on
the other end or the wire has been compromised.

With FreeBSD 5.x being EOL'd this is now turning into a critical problem.  
I can't in good conscience put packages out there that have been EOL'd nor
offer meaningful support on them. While 5.4 has been reasonably stable for
some time, that is now declared a "dead" release.  5.5 is similarly on that
road.  The only right path forward is into the 6.x world, but I can't get
there from where I am now unless this problem can be resolved.

> BTW -- I completely agree with you about the cost of these cards,
> especially so in 2006.  There is absolutely no justified explanation
> for such a card costing US$1500, or even US$500.  These are ICs and
> basic PCBs that at most cost US$20 per device -- the profit mark-up
> is appalling.

I don't mind the $500 cards (the $1500 ones are another matter!)  I very much 
mind that it appears I can't find a board on the market today that works!  
For FreeBSD to not differentiate between hardware in their lists that is 
actually deliverable today and that which is historical is problematic 
when one tries to go shopping.  If you look at the current "serial hardware"
list you will see a LOT of stuff that simply isn't made any more - and very
little that is.

I gave up on Specialix a number of years ago after similar problems showed 
up in some of their drivers for a different OS and they were unwilling to 
fix them.  Digi has always been pretty solid, but they are passe' now and 
while I have a nice stock of ISA interface cards, finding motherboards 
with ISA slots is rapidly becoming impossible.

Among the PCI cards only Comtrol appears to be really "in the market" with
anything current, and driver support in FreeBSD doesn't exist - despite the
claim in the Hardware Notes that its "supported", it in fact hasn't worked
properly since 6.0.

IMHO either FreeBSD's team needs to find a fix for these things or take 'em
out of the supported hardware list so that when people go looking they don't
waste time (and potentially quite a bit of money) buying something that
doesn't function.

--
-- 
Karl Denninger (karl@denninger.net) Internet Consultant & Kids Rights Activist
http://www.denninger.net	My home on the net - links to everything I do!
http://scubaforum.org		Your UNCENSORED place to talk about DIVING!
http://genesis3.blogspot.com	Musings Of A Sentient Mind





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061005202144.GA11105>