Modem Support

Communication drivers are responsible for triggering outgoing modem connections if required.  Regardless of whether the driver will be connecting to the device using a modem or not, this mechanism should be implemented as it is required in order to support TCP/IP connections. 

Also, regardless of whether the hardware supports a TCP connection or not, TCP support should be implemented so that devices such as Lantronix, which provide TCP/IP to serial conversion, can be used.

In order to connect to hardware using a modem, the driver must call the port tag’s Port\Connect() module.  Before calling the connect module, the driver should check the Port\Modem variable to make sure a connection must be established before communications can begin.  The variable Port\IsConnected() can be checked to determine if the connection has been made.

In order for the driver to accept an incoming modem connection (“hardware dialed in”), a discriminator must be written. This module will inform the modem manager which calls should be handed to the driver.  This is required since many different units and types of hardware may be dialing in.  Details on creating discriminators and registering them with the modem manager are covered in the Modem Manager Service document.