FaxMan Jr
Faxmodem Overview


The faxing standard so loosely described above details how two facsimile devices may recognize each other and communicate data between themselves. This standard says nothing, however, about how a programmer might communicate with a faxmodem in order to make it send or receive a fax. Thus a new standard was required to allow an application programmer to work with the newly developing breed of faxmodems.


This new standard was called the Class 1 faxmodem standard, and was an extension of the standard AT modem command set. Also developed by the ITU, it quickly became commonplace in off the shelf faxmodems. Class 1 became so prevalent, in fact, that it is almost impossible to purchase a modem that doesn’t support Class 1 commands for faxing.


But Class 1 faxmodems have a problem – they require a lot of attention from the CPU in order to handle timing-sensitive fax operations. This was a distinct problem for the CPU-weak personal computers then available. Another solution was needed which offloaded much of the processing-intensive aspects of faxing onto the faxmodem hardware.


This new standard was to be known as the Class 2 faxmodem standard, and indeed many faxmodem manufacturers began producing "Class 2 compatible" faxmodems even before the Class 2 standard was finalized. What they hadn’t counted on, however, was that the Class 2 standard would be held up for several years due to bickering in the standards committees. As a result, a flood of so-called "Class 2" faxmodems entered the marketplace, each one doing its best to meet a standard that was decidedly unfinished. This resulted in a problem with these Class 2 devices: there was no real programming standard for working with them. Any manufacturer that claims their faxmodems support Class 2 is technically lying, as there is no Class 2 standard. Fortunately for us, though there isn’t a Class 2 standard, the industry has evolved a handful of Class 2 implementations that are more or less workable and fairly similar to each other, thus allowing faxmodem application developers to devise workarounds that function with most Class 2 devices.


As a result of this Class 2 debacle, when the Class 2 specification was actually finalized, the name of the new spec had to be changed to distinguish it from the many non-compatible Class 2 devices already on the market. Thus the Class 2.0 specification was born. Functionally quite similar to Class 2 operations, Class 2.0 operations are, however, much more standardized.


FaxMan Jr also now supports Class 2.1 modems which add support for faxing at 33.6K which makes faxing over twice as fast as standard 14.4K faxing.


Thus you now have a world wherein you are likely to run into faxmodems that support one or more of these three programming command languages. In fact, most faxmodems sold today support both Class 1 and Class 2.0, while many newer faxmodems also support Class 2.1


FaxMan Jr. works with all three of these specifications, though it defaults when possible to Class 1 due to the increased control it provides.



© 2014 Data Techniques, Inc. All Rights Reserved.

Send comments on this topic.