MC55 AT Command Set

1.6 Flow Control

s

mobile

1.6Flow Control

Flow control is essential to prevent loss of data or avoid errors when, in a data or fax call, the sending device is transferring data faster than the receiving side is ready to accept. When the receiving buffer reaches its capacity, the receiving device should be capable to cause the sending device to pause until it catches up.

There are basically two approaches to regulate data flow: software flow control and hardware flow control. The High Watermark of the input / output buffer should be set to approximately 60% of the total buffer size. The Low Watermark is recommended to be about 30%. The data flow should be stopped when the capacity rises close to the High Watermark and resumed when it drops below the Low Watermark. The time required to cause stop and go results in a hysteresis between the High and Low Watermarks.

In Multiplex mode, it is recommended to use hardware flow control.

1.6.1Software flow control (XON/OFF flow control)

Software flow control sends different characters to stop (XOFF, decimal 19) and resume (XON, decimal 17) data flow. The only advantage of software flow control is that three wires would be sufficient on the serial interface.

1.6.2Hardware flow control (RTS/CTS flow control)

Hardware flow control sets or resets the RTS/CTS wires. This approach is faster and more reliable, and there- fore, the better choice. When the High Watermark is reached, CTS is set inactive until the transfer from the buffer has completed. When the Low Watermark is passed, CTS goes active once again.

To achieve smooth data flow, ensure that the RTS/CTS lines are present on your application platform. The appli- cation should include options to enable RTS/CTS handshake with the GSM engine. This needs to be done with the AT command AT\Q3 - it is not sufficient to set RTS/CTS handshake in the used Terminal program only.

The default setting of the GSM engine is AT\Q0 (no flow control) which must be altered to AT\Q3 (RTS/CTS hardware handshake on). The setting is stored volatile and must be restored each time after the GSM engine was switched off.

AT\Q has no read command. To verify the current setting of AT\Q, simply check the settings of the active profile with AT&V.

Often, fax programs run an intialization procedure when started up. The intialization commonly includes enabling RTS/CTS hardware handshake, eliminating the need to set AT\Q3 once again. However, before setting up a CSD call, you are advised to check that RTS/CTS handshake is set.

RTS/CTS hardware handshake must also be set if you want to take advantage of the CYCLIC SLEEP modes. For further details refer to AT+CFUN.

Note: After deactivating the RTS line, the ME may still send up to 264 bytes (worst case). This can be easily handled if the buffer of the host application is sufficiently sized, and if a hysteresis is implemented in its Rx buffer. For host applications that are required to handle a large amount of data at high speed, a total buffer capacity of 512 bytes is recommended.

MC55_ATC_V01.05

Page 26 of 469

2/10/04

Confidential / Released

 

 

Page 26
Image 26
Siemens MC55 manual Flow Control, Software flow control XON/OFF flow control, Hardware flow control RTS/CTS flow control