What Initialization String should I use with my modem?
Init Strings are an essential part to establishing a reliable connection to a processing instition. The basic rules that you are required to follow when generating an init string are simple:
# 1200 BAUD -- Connections established at lower speeds take less time to connect. Since the actual data sent to the processing institutions is relatively small, 1200 BAUD is more than enough speed. Most time is spent waiting for responses. Anything you can do to reduce the total turn-around time of transaction processing is a plus, and this is a major part of that. (Connection times: 1200 baud < 12s -- 57600 baud > 45s). Some modems may require a speed cap to be specified in the Init string, otherwise they may try to renegotiate continuously.
# NO FLOW CONTROL -- No Hardware (RTS/CTS) or Software (XON/XOFF) flow control should be used for credit card processing. All remote modem banks are configured this way, and enabling those options on your modem could cause you not to be able to establish a connection, or establish a faulty connection.
# NO ERROR CORRECTION -- No error correction. Having this turned on imposes the same caveats as the last line-item.
# NO COMPRESSION -- You must disable your modem from attempting to compress data communications. The remote modems are not configured to do this, therefore has the same caveats of the last 2 line-items.
# 7E1 -- Seven data bits, Even parity, One stop bit. This is the configuration for how the remote modem banks at the processing institions are set up. Using anything else will cause unpredictable behavior.
What Monetra sets for you
Monetra has the ability to internally set some of these options for you when opening the hardware port. The options that Monetra can set internally are 1200 BAUD (on some internal modems, otherwise it only sets the hardware port speed, not connection speed), NO FLOW CONTROL, and 7E1. The only time you should need to worry about setting these manually is if you use a port emulator or an IP serialmaster; though it may be advantagous to strictly set NO FLOW CONTROL in the init strings, as not all modems seem to obey Monetra's settings. Also, on some soft-modems (aka winmodems), these settings do not work (notably Motorolla based modems, and some conexant external modems), so those modems should be set via the init string.
How to determine the proper init string for your modem
All modem manufacturers keep an updated EXTENDED AT COMMAND SET reference that is specific to their make and model on the respective websites. Simply reading through the different options and information of the init string should provide you a clear view of how to structure the init string for your modem.
Init Strings for known modems
New to Monetra 4.4+: For our Monetra Manager GUI users, init string recommendations are now made for known modem types. For non-GUI users, a new utility is included with monetra known as monetra_mdmquery, which will attempt list which modems exist on the system, and can also recommend init-strings based off the same database as our Monetra Manager GUI. If you are using the Monetra Manager GUI, and your modem is not in our database, please save the output of the modem query, and e-mail it to us (along with a working init string if you have gotten it to work), and we will add it to our database.
To assist you in your efforts we will provide you with init strings for which our clients have had success.
-
US Robotics Sportster, Courier & WinModem
AT &F0 &C1 &D2 &K0 &N2 &H0 &M0 S11=65
AT &M0 S11=65 (Simplified init string. May not work on WinModems.) -
US Robotics PCI SoftModems (e.g. 5660A or XX3090 models)
AT &B1 &H0 &M0 &I0 &K0 S11=65 +MS=B212 -
Most Hayes Compatible: Rockwell/Conexant, NetoDragon, Intel/Ambient, Lucent/Agere, & SmartLink chipset internal modems
AT \N0 &K0 %E0 %C0 S11=65 (no speed cap, which may be necessary)
AT \N0 &K0 %E0 %C0 S11=65 +MS=V22,0,1200,1200 (Rockwell/Conexant, Intel/Ambient, SmartLink speedcap)
AT \N0 &K0 %E0 %C0 S37=5 S11=65 (Lucent/Agere speedcap) -
Motorola Chipset Modems
AT M1 V1 X4 &C1 &D2 %C0 %B2 \N0 \Q0 S11=65