Date: Sat, 16 Feb 2002 12:24:15 -0600 From: "Mike Meyer" <mwm-dated-1014315855.ae64d6@mired.org> To: Cliff Sarginson <cliff@raggedclown.net> Cc: questions@freebsd.org Subject: Re: USB modems Message-ID: <15470.41935.423821.425642@guru.mired.org> In-Reply-To: <32906141@toto.iv>
next in thread | previous in thread | raw e-mail | index | archive | help
Cliff Sarginson <cliff@raggedclown.net> types: > Are USB modems sometimes/always/never winmodems ? Depends on how you define "winmodem". The original winmodems provided only lowlevel hardware, and the cpu had to manipulate that everytime the tone going to the phone line changed. This makes the modems very cheap, makes using them cpu intensive, and also means they aren't very reliable because other processes on the system can interfere with the timing involved. Those are the characteristics I think define a winmodem. By that definition, USB modems are never winmodems. Note that a similar definition and problems applies to winprinters. Instead of sending characters and letting the printer print them, you have to send it a graphics image of the page of text. That makes them cheap and cpu intensive, but not as unreliable. Unlike serial modems, there are two cases where a USB modem won't work with FreeBSD. One is that the protocol used by the modem is proprietary. Getting this to work on FreeBSD requires the same thing as a winmodem or winprinter: someone gets the protocol from the manufacturer and writes a driver for it. However, it won't suffer from the problems that winmodems have, as the cpu will be sending it commands and characters, and it does all the work of talking to the phone line. If you define "winmodem" as "requiring a custom driver", then the answer is that usb modems are "sometimes" winmodems. The other case where they don't work is when they follow the spec, but don't implement the serial compatability options that the FreeBSD umodem driver uses. Those also require a driver to be written, but the spec is publicly available, and just needs someone to write the driver and rewrite various bits of userland software to work with it. If someone's interested in making part of that happen, drop me a line privately. Oh yeah - there's a third case. The spec, driver and hardware are all relatively new. So there are cases where the modem claims to meet spec - and I mean that literally, as the driver asks the modem what it can do, and if gives all the right answers it's recognized as a umodem - but a bug in the usb/umodem driver software, the modem firmware, or an ambiguity in the spec that the authors of the two interpreted differently, causes the modem to fail under some conditions. Bottom line: unlike serial modems, you can't expect them to "just work". If you've got them plugged in, and all the appropriate parts compiled into the kernel and they are recognized as a umodem, then they probably work, but you should do test everything you require while you can still return it. If they aren't recognized, then they don't support everything the umodem driver needs, so getting it to work will require writing driver code. <mike -- Mike Meyer <mwm@mired.org> http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15470.41935.423821.425642>