![]() |
||||||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| Troubleshooting RS-232 Data Problems with the RFC-1/B
Troubleshooting RS-232 communication problems is a difficult task becuase many equipment manufacturers take liberties with RS-232 implementation and the 'AT' command set. This document does not contain switch settings for setup instructions for specific models or manufacturers--there are far too many. You will need information from the modem or printer manual to get the system functioning properly. The solutions presented here should get you started even if they don't solve your exact problem. Communications with a local printer:
Communications with a remote printer or computer:
Local Printing Installing a printer at the transmitter site to log readings requires a serial printer and the appropriate cable. In many cases, a straight-through cable is all that is necessary because the printer is setup to receive serial data. In others, a null-modem cable or null-modem adapter is required. However, most inexpensive printers are parallel printers. Parallel printers can be used with the RFC-1/B but the data stream from the RFC-1/B must first be converted from serial to parallel. Some printer manufacturers offer a serial input as an option. Call the vendor or the printer manufacturer to find out if such an accessory is available for your printer. Many third party devices are also available that perform this task. Your local computer superstore or catalog warehouse will probably have one. Global Computer Supplies usually carries them. We usually suggest that the RFC-1/B be configured to send data at 300 baud when attached directly to a printer. Even a fast printer is slow when compared to the speed of the incoming data stream. The printer or serial data adapter should be configured to accept data at 300,8,N,1. If there is an option for DTE/DCE on your printer (or adapter), it should be set to DCE. Hardware handshaking should be disabled or set to Xon/Xoff mode instead of DTR mode.
No data prints at all When no data prints, it is usually caused by something major like a bad cable. It may help to take a break for a few minutes to gain a fresh perspective.
The final two items may require some clarification. The proper arrangement is shown in the following block diagram.
If DCE/DTE is a DIP switch or jumper selectable option, try the other position. If it is not selectable or you do not know how the device is setup, try using a null-modem cable. This is a very common problem.
Data is printing but some or all characters are wrong When data is printing, the proper cable configuration and DTE/DCE arrangement have been achieved. Garbled data usually indicates that one of the devices is attempting to communicate at the wrong protocol.
Data prints but columns are not in line and data is missing Solutions: When data is printing, the proper cable configuration and DTE/DCE arrangement have been achieved. Incomplete data is typically a symptom of attempting to send data to the printer or adapter too quickly (or too slowly but this is an extremely rare case). Printers typically have very small buffers that will fill quickly and ignore further data until the buffer has space. The RFC-1/B does not recognize that the buffer is full and continues sending data to the printer.
To attach a modem to the RFC-1/B you need an 'AT' command set (Hayes® compatible) modem and a straight-through data cable. Connect the devices as shown in the following diagram. If the modem does not have a loop-through jack for an external handset, use a "T-connector" to split the telephone line to both the RFC-1/B and the modem. It is absolutely necessary that the telephone line be connected to both devices.
The factory settings for many modems are acceptable for the RFC-1/B. It is quite impossible for Sine Systems to exhaustively test every modem on the market for compatibility. However, we have found that most AT command set modems have similar factory configurations and many modems will work with the RFC-1/B It has become somewhat difficult to find a quality external modem since that function is being built into so many computers. A 2400 baud industrial modem is the best choice for an RF environment. The Zypex ZM24A is one possibility. It is a little pricey but it has lightning and surge supression built in and it connects quickly. Try to keep the modem as simple as possible. The RFC-1/B does not utilize the advanced data compression features of modems that are geared toward internet use. Modems from most manufacturers will work, but each manufacturer has a slightly different implementation of the 'AT' command set. Many modems require the default parameters to be changed before they will work reliably with the RFC-1/B. Finding the correct parameters can be a time consuming and frustrating process. Sine Systems maintains a demo transmitter site for those who are interested in testing the operation of an RFC-1/B in voice mode or data mode.
The RFC-1/B does not answer a ringing line after installing the RS-232 adapter The RS-232 adapter does not interfere with normal voice operation of the RFC-1/B. The RFC-1/B should answer the line on the programmed ring number even with the RS-232 adapter installed.
Cannot establish a connection between the modems when trying to connect from a computer If you do not hear the remote modem carrier tones coming from the speaker of the calling modem, the problem is probably power or cable related. If you do hear the carrier tones and the modems are at least making an attempt to connect, the solution may be any of several things.
If the receiving modem (the one attached to the RFC-1) is a high speed data/fax modem, it needs to be forced into a mode where it is as 'dumb' as possible. Many modem manufacturers have created their own super set of the original 'AT' command set with the proliferation of inexpensive, high speed modems. Because of this, the commands necessary to disable all the fancy modem features vary widely. Here, at least, are some suggested commands that have worked with many modems. The following commands must be issued to the modem that is attached to the RFC-1/B. Obviously, this cannot be accomplished in the normal operating setup. Move the modem to a computer with appropriate communications software that will allow you to feed commands directly to the modem. If you are unsure as to whether or not your software package lets you speak directly to the modem, type AT [enter] into the terminal/communications window. The modem should respond with 'OK'. Remember, the goal is to force the modem to communicate at a preset baud rate through the entire communications link. We will assume a baud rate of 2400 baud because this the factory setting of the RFC-1/B. Set your communications software to operate at this speed as well so that commands are sent to the modem at 2400 baud. To accomplish our goal, we shut down as many speed enhancement features of the modem as possible. It is also extremely helpful to shut down the fax capability, if possible, because the extra connect tones during the initial connection/negotiation will only confuse matters worse. Try issuing commands to the modem one at a time. If the modem responds with 'OK', you have given a valid command for that modem. That does not necessarily mean that the problem is solved, but at least the modem knows what you want it to do. If the modem responds with 'ERROR', the command is not valid for that modem. Make sure that you have typed the command correctly before you hit the Enter key. Do not confuse '/' and '\' as they are not interchangeable. Most importantly, READ YOUR MODEM MANUAL! The following list of commands is far from exhaustive. Your modem manual has specific commands for your modem. Your modem may have a strange command set. Sine Systems probably does not have a modem exactly like yours and cannot possibly know all the commands from every modem manufacturer the world over.
After you issue the command(s) for the setup that you want to try, you must store the modem setup to its non-volatile memory before you remove power and reconnect the modem to the RFC-1/B. If you do not store the setup to memory it will be lost when you remove power from the modem and you will test the same wrong setup again and again. To return the modem to factory default settings, issue the command AT&F&WØ&YØ. Most commuication programs send an initialization string to the modem as a part of the program loading sequence. This will corrupt any changes you have made to the modem setup. Use the command AT&F to restore the factory settings before you make a new attempt.
Using communications mode 2, the voice prompt occurs but the modem does not connect The calling modem is probably not waiting long enough for the RFC-1/B to cycle through the voice prompt and tell its modem to connect. Add the command ATS7=12Ø to the setup string on the calling modem. This should allow plenty of time for all of this to take place and establish a connection. This section applies only to early models of the RS-232 Serial Data Adapter. These models are usually on bone colored board instead of green. If the RFC-1/B hangs up before its modem ever comes online, try establishing a connection using communications mode 3 (data only). If everything works fine, there may be a problem with the modem not waking properly. Some modems get confused when the RFC-1/B powers up the RS-232 adapter to switch between voice and data mode.
Installing a 560 or 620 ohm resistor from the modem receive data line to ground (pin 2 to pin 7) will often eliminate this problem. You can open the protective hood at the modem end of the cable and install the resistor at the point where the individual wires attach to the connector pins. This will keep you from having to open the modem case and void the warranty. This modification can also be made on the RS-232 adapter board. Newer adapters (on green boards) have this resistor installed already. Using communications mode 2, the voice prompt occurs but the modem claims that the line is busy and hangs up. The voice prompt "Enter" seems to confuse many modems into thinking that a busy signal is present. Disable "BUSY" from the call detection with the command ATX2. If this does not work, try ATX1 or ATXØ. Using communications mode 2, the modem always answers--even if the call is a voice call. Auto answer is probably enabled on the modem connected to the RFC-1/B. If the modem has jumpers or switches, disable auto answer. If the modem setup is stored in ROM, connect the modem to a computer and issue the command ATSØ=Ø to disable auto answer. Then give the command AT&WØ&YØ to write this information back to ROM.
My high speed fax modem connects to other devices but does not connect to the RFC-1/B Most high speed fax modems have built-in error correction and/or data compression. When establishing a connection, high speed modems send some extra tones to see if the receiving modem knows how to match these speed enhancing features. Unfortunately, the tones confuse the RFC-1/B and it hangs up. The command AT&QØ should stop the modem from sending the strange tones.
The AA (Auto Answer) LED turns off when you power up the RFC-1/B This is not a problem! The modem connected to the RFC-1/B should not be set to auto-answer. The RFC-1/B will instruct the modem to answer at the appropriate time.
The modems establish a connection but the data is garbled Check that all devices are communicating at the same baud rate. This includes the serial to parallel adapter if one is in use. For printers we recommend 300 baud because printers are slow compared to the data stream. The RFC-1/B comes factory programmed to 2400 baud to be used with a modem. Baud rate is set by programming at address 1005 in the RFC-1/B memory. Consult the instructions that came with your RFC-1/B for programming information.The RFC-1/B baud rate needs to be programmed only one time--it will retain the setting even if power is lost. The communications protocol is 8 data bits, no parity bit, and 1 stop bit (8, N, 1). No other protocol options are available from the RFC-1/B but this is a widely used standard so it is not normally a problem. |
||||||
|   | ||||||
![]() |
||||||