AN93 - Silicon Labs

AN93 - Silicon Labs

A N 9 3

S i 2 4 9 3 / 5 7 / 3 4 / 1 5 / 0 4 ( R e v i s i o n s D a n d D 1 ) a n d S i 2 4 9 4 / 3 9

( R e v i s i o n s A a n d A 1 ) M o d e m D e s i g n e r ’s G u i d e

1. Introduction

The Si2494/93/57/39/34/15/04 ISOmodem chipset family consists of a 38-pin QFN (Si2494/39) or 24-pin TSSOP

(Si2493/57/34/15/04) or 16-pin SOIC (Si2493/57/34/15/04) low-voltage modem device, and a 16-pin SOIC lineside DAA device (Si3018/10) connecting directly with the telephone local loop (Tip and Ring). This modem solution is a complete hardware (controller-based) modem that connects to a host processor through a UART, parallel or

SPI interface. Parallel and EEPROM interfaces are available only on the 38-pin QFN or 24-pin TSSOP package

option. Refer to Table 4, “ISOmodem Capabilities,” on page 10 for available part number, capability and package

combinations. Isolation is provided by Silicon Laboratories’ isolation capacitor technology, which uses high-voltage capacitors instead of a transformer. This isolation technology complies with global telecommunications standards including FCC, ETSI ES 203 021, JATE, and all known country-specific requirements.

Additional features include programmable ac/dc termination and ring impedance, on-hook and off-hook intrusion detection, Caller ID, loop voltage/loop current monitoring, overcurrent detection, ring detection, and the hookswitch function. All required program and data memory is included in the modem device. When the modem receives a software or hardware reset, all register settings revert to the default values stored in the on-chip program memory. The host processor interacts with the modem controller through AT commands used to change register settings and control modem operation. Country, EMI/EMC, and safety test reports are available from

Silicon Laboratories representatives and distributors.

This application note is intended to supplement the Si2494/39 Revision A/A1, Si2493 Revision D/D1, and the

Si2457/34/15/04 Revision D/D1 data sheets. It provides all the hardware and software information necessary to implement a variety of modem applications, including reference schematics, sample PCB layouts, AT command and register reference, country configuration tables, programming examples and more. Particular topics of interest can be easily located through the table of contents or the comprehensive index located at the back of this document.

Rev. 1.41 8/16

CLKOUT

EESD

EECLK

EECS

RXD

TXD

CTS

RTS

DCD

ESC

RI

CS

WR

RD

A0

D0-D7

SDI

SDO

SCLK

SS

INT

RESET

XTI

PLL

Clocking

EEPROM

Interface

XTO

Data Bus

UART

Interface

Parallel

Interface

SPI

Interface

Program Bus

ROM

RAM

Si3000

Interface

DAA

Interface

C1

C2

AOUT

AOUTb

To Phone

Line

FSYNC

SDO

SDI

MCLK

Figure 1. Functional Block Diagram

Copyright © 2016 by Silicon Laboratories AN93

A N 9 3

2 Rev. 1.41

AN93

T

A B L E O F

C

O N T E N TS

Section Page

1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1. Selection Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2. Modem (System-Side) Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1. Resetting the Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1.1. Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1.2. Reset Strapping: General Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.1.3. Reset-Strap Options for 16-Pin SOIC Package . . . . . . . . . . . . . . . . . . . . . . 13

2.1.4. Reset-Strap Options for 24-Pin TSSOP Package. . . . . . . . . . . . . . . . . . . . . 13

2.1.4.1. Reset Strapping Options for TSSOP-24 with UART-Interface . . . . . . . 14

2.1.4.2. Reset Strapping Options for TSSOP-24 with Parallel-Interface . . . . . . 14

2.1.4.3. Reset Strapping Options for TSSOP with SPI-Interface. . . . . . . . . . . . 15

2.1.5. Reset Strapping Options for QFN Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.1.5.1. Reset Strapping Options for QFN Parts with UART Operation . . . . . . 15

2.1.5.2. Reset Strapping Options for QFN Parts with SPI Operation . . . . . . . . 16

2.1.5.3. Reset Strapping Options for QFN Parts with Parallel Operation . . . . . 16

2.2. System Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2.1. Interface Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.2.2. Interface Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.2.3. UART Interface Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.2.3.1. UART Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.2.3.2. Autobaud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.2.3.3. Flow Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.4. Parallel and SPI Interface Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.2.4.1. Hardware Interface Register 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.2.4.2. Hardware Interface Register 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.2.4.3. Parallel Interface Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.2.4.4. SPI Interface Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.2.4.5. Interface Communication Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.3. Isolation Capacitor Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.4. Low-Power Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.4.1. Power-Down Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.4.2. Wake-on-Ring Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.4.3. Sleep Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.5. Controlling GPIOs (38-Pin QFN Only) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.6. SSI/Voice Mode (24-Pin TSSOP and 38-Pin QFN Only) . . . . . . . . . . . . . . . . . . . . . 33

2.7. EEPROM Interface (24-Pin TSSOP and 38-Pin QFN Only) . . . . . . . . . . . . . . . . . . . 34

2.7.1. Supported EEPROM Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

2.7.2. Three-Wire SPI Interface to EEPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.7.3. Detailed EEPROM Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.7.4. Boot Commands (Custom Defaults) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.7.5. AT Command Macros (Customized AT Commands) . . . . . . . . . . . . . . . . . . 37

2.7.6. Firmware Upgrades. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Rev. 1.41

3

4

A N 9 3

2.7.6.1. Boot Command Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2.7.6.2. AT Command Macro Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.7.6.3. Autoloading Firmware Upgrade Example . . . . . . . . . . . . . . . . . . . . . . . 38

2.7.6.4. Combination Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

3. DAA (Line-Side) Device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.1. Hookswitch and DC Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.2. AC Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.3. Ringer Impedance and Threshold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.4. Pulse Dialing and Spark Quenching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.5. Line Voltage and Loop Current Sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

3.6. Legacy-Mode Line Voltage and Loop Current Measurement . . . . . . . . . . . . . . . . . . 45

3.7. Billing Tone Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4. Hardware Design Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1. Component Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1.1. Power Supply and Bias Circuitry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1.2. Hookswitch and DC Termination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1.3. Clocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1.4. Ringer Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.1.5. Optional Billing-Tone Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.2. Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4.3. Bill of Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.4. Layout Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

4.4.1. ISOmodem Layout Check List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

4.4.2. Module Design and Application Considerations . . . . . . . . . . . . . . . . . . . . . . 57

4.4.2.1. Module Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4.4.2.2. Motherboard Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4.5. Analog Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

4.5.1. Interaction between the AOUT Circuit and the

Required Modem Reset Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

4.5.2. Audio Quality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

4.5.3. Power Dissipation in the Si3018 DAA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

5. Modem Reference Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.1. Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5.2. DSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.3. Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.4. AT Command Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.5. Extended AT Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

5.6. S Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

5.7. U Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

5.7.1. U-Register Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

5.7.2. U00–U16 (Dial Tone Detect Filter Registers) . . . . . . . . . . . . . . . . . . . . . . . 104

5.7.3. U17–U30 (Busy Tone Detect Filter Registers) . . . . . . . . . . . . . . . . . . . . . . 105

5.7.4. U31–U33 (Ringback Cadence Registers) . . . . . . . . . . . . . . . . . . . . . . . . . . 108

5.7.5. U34–U35 (Dial Tone Timing Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

5.7.6. U37–U45 (Pulse Dial Registers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

5.7.7. U46–U48 (DTMF Dial Registers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Rev. 1.41

AN93

5.7.8. U49–U4C (Ring Detect Registers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.7.9. U4D (Modem Control Register 1—MOD1) . . . . . . . . . . . . . . . . . . . . . . . . . 110

5.7.10. U4E (Pre-Dial Delay Time Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5.7.11. U4F (Flash Hook Time Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5.7.12. U50–U51 (Loop Current Debouncing Registers) . . . . . . . . . . . . . . . . . . . 112

5.7.13. U52 (Transmit Level Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5.7.14. U53 (Modem Control Register 2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

5.7.15. U54 (Calibration Timing Register). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

5.7.16. U62–U66 (DAA Control Registers) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

5.7.17. U67–U6A (International Configuration Registers). . . . . . . . . . . . . . . . . . . 115

5.7.18. U6C (Line-Voltage Status Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

5.7.19. U6E–U7D (Modem Control and Interface Registers) . . . . . . . . . . . . . . . . 119

5.7.20. U80 (Transmit Delay for V.22 Fast Connect) . . . . . . . . . . . . . . . . . . . . . . 129

5.7.21. U87 (Synchronous Access Mode Configuration Register) . . . . . . . . . . . . 130

5.7.22. UAA (V.29 Mode Register) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

5.8. Firmware Upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5.8.1. Method 1 (Fastest) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5.8.2. Method 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5.8.3. Method 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5.9. Escape Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.9.1. +++ Escape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

5.9.2. “9th Bit” Escape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

5.9.3. “Escape Pin” Escape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

5.10. Data Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

5.11. Error Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

5.12. Wire Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

5.13. EPOS (Electronic Point of Sale) Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

5.13.1. EPOS Fast Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

5.13.2. EPOS V.29 Fast Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

5.14. Legacy Synchronous DCE Mode/V.80 Synchronous Access Mode . . . . . . . . . . . 137

5.15. V.80 Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

6. Programming Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.1. Quick Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.2. Country-Dependent Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.2.1. DC Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.2.2. Country Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

6.2.2.1. Country Initialization Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

6.2.2.2. Country-Setting Register Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

6.2.2.3. Special Requirements for Serbia and Montenegro. . . . . . . . . . . . . . . 158

6.2.3. Blacklisting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

6.3. Caller ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

6.3.1. Force Caller ID Monitor (Always On) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

6.3.2. Caller ID After Ring Only. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

6.3.3. UK Caller ID with Wetting Pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

6.3.4. Japan Caller ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

6.3.5. DTMF Caller ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

Rev. 1.41

5

6

A N 9 3

6.4. SMS Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

6.5. Type II Caller ID/SAS Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

6.6. Intrusion/Parallel Phone Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

6.6.1. On-Hook Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

6.6.1.1. Line Not Present/In Use Indication (Method 1—Fixed) . . . . . . . . . . . 173

6.6.1.2. Line Not Present/In Use Indication (Method 2—Adaptive) . . . . . . . . . 174

6.6.2. Intrusion Explanation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174

6.7. Modem-On-Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

6.7.1. Initiating Modem-On-Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

6.7.2. Receiving Modem-On-Hold Requests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

6.8. HDLC: Bit Errors on a Noisy Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

6.9. Overcurrent Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

6.10. Pulse/Tone Dial Decision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181

6.10.1. Method 1: Multiple Off-Hook Transitions . . . . . . . . . . . . . . . . . . . . . . . 181

6.10.2. Method 2: Single Off-Hook Transition. . . . . . . . . . . . . . . . . . . . . . . . . . 182

6.10.3. Method 3: Adaptive Dialing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

6.10.4. Automatic Phone-Line Configuration Detection . . . . . . . . . . . . . . . . . . . . 182

6.10.5. Line Type Determination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182

6.11. Telephone Voting Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

6.12. V.92 Quick Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

6.13. Abort the Dialing Operation in Voice Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

7. Handset, TAM, and Speakerphone Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

7.1. Software Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

7.1.1. AT Command Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

7.1.2. AT+ Extended Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

7.1.3. <DLE> Commands (DTE-to-DCE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

7.1.4. <DLE> Events (DCE-to-DTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

7.1.4.1. Simple Event Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

7.1.4.2. Complex Event Reporting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

7.1.5. U Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

7.2. Voice Reference—Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

7.2.1. Abort the Dialing Operation in Voice Mode . . . . . . . . . . . . . . . . . . . . . . . . . 199

7.3. Si3000 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.1. Microphone and Speaker Ports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.2. Register Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3. System Voice Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.1. TAM Hands-Free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.2. TAM Handset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.3. Speakerphone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.4. Handset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.5. Si3000 Control Register Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

7.3.3.6. TAM PSTN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

7.4. Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207

7.5. Handset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

7.5.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

7.5.2. Handset Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

Rev. 1.41

AN93

7.5.3. Call – Automatic Tone Dial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.5.4. Call – Manual Off-Hook Tone Dial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.5.5. Call – Automatic Pulse Dial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.5.6. Answer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

7.5.7. Terminate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212

7.5.8. Speakerphone Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

7.6. Telephone Answering Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

7.6.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

7.6.2. TAM Hands-Free—Idle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

7.6.2.1. Record OGM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

7.6.2.2. Review OGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.2.3. Record Local ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.2.4. Review ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.2.5. Speakerphone Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.2.6. Handset Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.3. TAM Handset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.3.1. Record OGM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

7.6.3.2. Review OGM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

7.6.3.3. Record Local ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

7.6.3.4. Review ICM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

7.6.4. TAM PSTN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

7.6.4.1. Normal Answer – OGM Playback with ICM Record . . . . . . . . . . . . . . 221

7.6.4.2. Interrupted Answer – OGM Playback with DTMF Menu Entry . . . . . . 223

7.6.4.3. Speakerphone Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

7.6.4.4. Handset Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

7.7. Speakerphone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

7.7.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

7.7.2. External Microphone/Speaker Calibration. . . . . . . . . . . . . . . . . . . . . . . . . . 225

7.7.2.1. Transmit Gain Calibration—Speakerphone Disabled . . . . . . . . . . . . . 225

7.7.2.2. Receive Gain Calibration—Speakerphone Disabled . . . . . . . . . . . . . 228

7.7.2.3. Speakerphone Calibration—AEC Gain Calibration . . . . . . . . . . . . . . 229

7.7.3. Speakerphone Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

7.7.4. Simplex Speakerphone Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

7.7.5. Call—Automatic Tone Dial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

7.7.6. Call—Manual Off-Hook Tone Dial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

7.7.7. Call—Automatic Pulse Dial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

7.7.8. Answer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

7.7.9. Handset Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

7.7.10. Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

7.8. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

7.9. References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

8. Security Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

8.1. Implementing the SIA Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

8.1.1. Modem-Specific Implementation Details. . . . . . . . . . . . . . . . . . . . . . . . . . . 236

8.1.1.1. Listen-In and V-channel Periods (Voice Pass-Through). . . . . . . . . . . 236

8.1.1.2. Inserting a V.32bis period (e.g., SIA Level-3 Video Block Support) . . 236

Rev. 1.41

7

8

A N 9 3

8.1.1.3. Considerations when Disconnecting the Session. . . . . . . . . . . . . . . . 237

8.2. Implementing the Ademco® Contact ID Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . 240

8.2.1. Modem Specific Implementation Details . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

8.2.1.1. Handshake Tone Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

8.2.1.2. Session Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

9. Chinese ePOS SMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244

9.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244

9.2. SMS AT Command Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

9.2.1. SMS User Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248

9.2.2. Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

9.2.2.1. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250

9.2.2.2. Response 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

9.2.2.3. Response 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

9.2.2.4. Response 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

9.3. Example Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252

10. Testing and Diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

10.1. Prototype Bring-Up (Si3018/10) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

10.1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

10.1.2. Visual Inspection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

10.1.3. Basic Troubleshooting Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255

10.1.4. Host Interface Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

10.1.5. Isolation Capacitor Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

10.1.6. Si3018/10 Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

10.1.7. Component Troubleshooting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

10.2. Self Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262

10.3. Board Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

10.4. Compliance Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265

10.4.1. EMI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266

10.4.2. Safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

10.4.3. Surges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

10.5. AM-Band Interference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268

10.6. Debugging the DTE interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269

Appendix A—EPOS Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

VISA II (7E1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

Recommendation V.80 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

The ISOmodem in EPOS Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273

A V.29 FastPOS Sample Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274

Appendix B—Line Audio Recording . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

When to Use Audio Recording . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

Times When Audio Recording May Not Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

Hardware Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

Audio Playback and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

Examples of Line Impairments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297

Appendix C—Parallel/SPI Interface Software Implementation . . . . . . . . . . . . . . . . . . . . 302

Software Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303

Document Change List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306

Rev. 1.41

AN93

1.1. Selection Guide

Tables 1 through 3 list the modulations, protocols, carriers, tones and interface modes supported by the Si2494/39

and Si2493/57/34/15/04 ISOmodem family. The Si2493 supports all modulations and protocols from Bell 103 through V.92. The Si2457 supports all modulations and protocols from Bell 103 through V.90. The Si2434 supports all modulations and protocols from Bell 103 through V.34. The Si2415 supports all modulations and protocols from

Bell 103 through V.32bis. The Si2404 supports all modulations and protocols from Bell 103 through V.22bis.

Table 1. Modulations

Modulation

V.92*

V.90*

V.34*

V.32bis*

V.32*

Data Rates (bps)

48k, 40k, 32k, 24k

56k, 54.6k, 53.3k, 52k, 50.6k,

49.3k, 48k, 46.6k, 45.3k, 44k,

42.6k, 41.3k, 40k, 38.6k,

37.3k, 36k, 34.6k, 33.3k, 32k,

30.6k, 29.3k, 28k

33.6k, 31.2k, 28.8k, 26.4k, 24k,

21.6k, 19.2k, 16.8k, 14.4k, 12k,

9600, 7200, 4800, 2400

14.4k, 12k, 9600, 7200, 4800

V.29FC*

V.23

V.22bis

V.22

Bell 212A

V.21

Bell 103

*Note: With the Si3018 DAA only.

9600

9600, 4800

9600

1200

2400, 1200

1200

1200

300

300

Modulation Si2494/93 Si2457 Si2439/34 Si2415 Si2404

PCM

PCM

TCM

TCM

TCM

QAM

QAM

FSK

QAM

DPSK

DPSK

FSK

FSK

*

Table 2. Protocols

Protocol

*

V.44

V.42bis

V.42

MNP5

MNP2-4

Function

Compression

Compression

Error Correction

Compression

Error Correction

Si2494/93

Si2457

Si2439/34

Si2415

*Note: The Si2494/93/57/39/34/15/04 family allows any supported protocol combined with any modulation.

Si2404

Rev. 1.41

9

A N 9 3

Specification

V.92

V.90

V.34

V.32bis

V.32

V.29

V.22bis, V.22

Originate/answer

V.21

Originate/answer (M/S)

Bell 212A

Originate/answer

Bell 103

Originate/answer (M/S)

Table 3. Carriers and Tones

Transmit Carrier

(Hz)

Variable

Receive Carrier

(Hz)

Variable

Variable

Variable

1800

1800

Variable

Variable

1800

1800

1700

1200

2400

1180/980

1850/1650

1200

2400

1270/1070

2225/2025

1700

2400

1200

1850/1650

1180/980

2400

1200

2225/2025

1270/1070

Answer

Tone (Hz)

2100

2100

2100

2100

2225

2225

Carrier Detect (Acquire/

Release)

per ITU-T V.92

per ITU-T V.90

per ITU-T V.34

per ITU-T V.32bis

per ITU-T V.32

per ITU-T V.29

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

–43 dBm/–48 dBm

Package

Table 4. ISOmodem Capabilities

UART EEPROM SPI Parallel Part Numbers Voice

Si2493/57/34/15/04

1

Si2493/57/34/15/04

1

SOIC-16

TSSOP-24

2

Si2494/39 QFN-38

Notes:

1. Die Revision D or later.

2. The EEPROM interface option is available only when the UART or SPI interface is selected.

3. Si3010 does not support voice operations.

3

3

3

Speakerphone /

TAM

3

10 Rev. 1.41

AN93

2. Modem (System-Side) Device

The Si24xx ISOmodem system-side devices contain a controller, a DSP, program memory (ROM), data memory

(RAM), UART, SPI and parallel interfaces, a crystal oscillator, and an isolation capacitor interface. The following sections describe the reset sequence, the host interface, the isolation interface, low-power modes, SSI/voice mode and the EEPROM interface.

2.1. Resetting the Device

Reset is required after power-on or brownout conditions (the supply dropping to less than the data sheet minimum).

The supply must be stable throughout the minimum required reset time described here and thereafter. A reset is also required in order to come out of the power down mode.

Some operational choices, including the crystal oscillator frequency used and the command interface used (e.g.

UART vs SPI), is made during the reset time according to pull-down resistors placed on some modem pins. These pins are modem output lines, but, during reset, the modem places them into a high-impedance mode with weak internal pull-ups, then reads the user's strapping choices. It is important that the resultant state changes of these pins during reset are not misinterpreted by the host.

For example the INT output pin of the modem (and perhaps others) can be strapped low with a 10 k

 resistor to request SPI operation. If that mode is chosen, the host should take care not to enable this interrupt input before the modem reset since the INT signal will transition from high to low and back up during reset in this case and can generate an unexpected interrupt.

If an external clock signal is provided instead of a crystal attached to the modem, it is important that this external clock signal be stable before the reset ends.

2.1.1. Reset Sequence

After power-on, the modem must be reset by asserting the RESET pin (low) for the required time then waiting a fixed 300 ms before sending the first AT command. The reset recovery time of 300 ms is also applicable if the reset is a SW triggered event, such as an ATZ command.

If a 4.9152 MHz crystal or an external 27 MHz clock is used, the reset must be asserted for 5 ms, and a wait of

300 ms duration must happen before an AT command is issued. If a 32 kHz crystal is used, the reset pulse must be

500 ms long and followed by the same 300 ms duration wait as that used for higher frequency clocks.

This is adequate to reset all the on-chip registers. Note that 16 µs after the customer-applied reset pulse starts, the

I/O pins will be tri-stated with a weak pull-up, and, 16 µs after the end of this reset pulse, the IO pins will switch to inputs or outputs as appropriate to the mode indicated by the pull-down strapping. This 16 µs delay is for newer revs of the modem parts (those parts that introduce a 32 kHz crystal and SPI operation); older revs exhibit a delay of only nanoseconds.

The reset sequence described above is appropriate for all user modes of the modem including UART, SPI, and

Parallel bus operation.

A software reset of the modem can also be performed by issuing the command ATZ or by setting U-register 6E bit

4 (RST) high using AT commands. After issuing a software or hardware reset, the host must wait for the reset recovery time before issuing any subsequent AT commands.

There is no non-volatile memory on the ISOmodem other than program ROM. When reset, the ISOmodem reverts to the original factory default settings. Any set-up or configuration data and software updates must be reloaded after every reset. This is true whether the reset occurs due to a power-down/power-up cycle, a power-on reset through a manual reset switch, by writing U6E [4] (RST) = 1, or by executing ATZ.

A suggested reset sequence is as follows:

1. Apply an active-low pulse to the RESET pin; write RST bit or ATZ<CR>.

2. Wait at least the reset recovery time.

3. Load firmware updates (if required).

4. Set non-default DAA interface parameters—DCV, ACT, ILIM, OHS2, OHS, RZ, RT, (U67), LIM, (U68).

5. Set non-default cadence values—Busy Tone, Ringback, Ring.

Rev. 1.41

11

A N 9 3

6. Set non-default frequency values—Ring.

7. Set non-default filter parameters.

8. Set non-default S-register values.

The modem is now ready to detect rings, answer another modem, call, or dial out to a remote modem.

Some key default settings for the modem after reset or powerup include the following:

V.92 and fall-backs enabled (Si2494/93)

V.90 and fall-backs enabled (Si2457)

V.34 and fall-backs enabled (Si2439/34)

V.32bis and fall-backs enabled (Si2415)

V.22bis and fall-backs enabled (Si2404)

V.42/42bis enabled

+++ escape sequence enabled

Answer-on-ring is disabled

Speaker off

DTE echo enabled

Verbal result codes enabled

CTS only enabled

FCC (US) DAA and call progress settings

2.1.2. Reset Strapping: General Considerations

The different options available in the Si24xx ISOmodem family are selected by means of 10 k

 pulldown resistors placed at certain pins. During power-on or pin reset, the ISOmodem’s signal pins are read and the option resistors are taken into account to determine the required configuration. After reset, the ISOmodem assumes the functionality selected by the corresponding combination of pulldown resistors.

Below is a summary of reset-strap options. Not all options are available on all part number or packages. Refer to

Table 4, “ISOmodem Capabilities,” on page 10 for details.

Host interface: UART, parallel or SPI

Input clock frequency: 32 kHz, 4.9152 MHz or 27 MHz

Autobaud mode or fixed-rate UART communication (when UART interface is selected). Disabling the autobaud feature at reset sets the rate to 19,200 baud.

EEPROM interface

Three-wire EEPROM or four-wire EEPROM when EEPROM interface is selected

Refer to "2.7. EEPROM Interface (24-Pin TSSOP and 38-Pin QFN Only)" on page 34 for more details on the

various ISOmodem EEPROM options.

The next few sections describe the various reset options that must be selected for each package. In all the tables, the following conventions apply:

 0 means this option is selected with a 10 k

 pulldown resistor to ground.

 1 means the pin is left open. If a pin is left open, the internal pullup resistor is normally sufficient as long as the pin is not driven externally during reset. If there is noise or special power-sequencing situations, then an external pullup resistor may be needed.

12 Rev. 1.41

AN93

2.1.3. Reset-Strap Options for 16-Pin SOIC Package

The clock frequency and interface on the 16-pin SOIC package are selected according to Table 5 below. The

parallel interface, EEPROM and autobaud options are not available in the 16-pin SOIC package.

Table 5. SOIC-16 Reset-Strap Options

Interface

Mode

Input Clock

UART

SPI

32 kHz

4.9152 MHz

27 MHz

32 kHz

4.9152 MHz

27 MHz

0

1

1

1

Pin 3

RI

0

1

Reset-Strap Pins

Pin 5, RXD/MISO Pin 7, CTS/SCLK Pin 11

INT

X

X

1

1

1

1

1

1

X

1

1

X

X

X

0

0

1

0

X

0

0

1

Pin 15

DCD

X

1

2.1.4. Reset-Strap Options for 24-Pin TSSOP Package

The pin-strapping options for the 24-pin TSSOP package are described in the three subsections below, depending on the interface mode selected.

Rev. 1.41

13

A N 9 3

2.1.4.1. Reset Strapping Options for TSSOP-24 with UART-Interface

UART-interface options for the 24-pin TSSOP package are shown in Table 6 below.

Table 6. TSSOP-24 UART-Interface Options

Mode

Input Clock Autobaud

Disabled?

32 kHz

4.9152 MHz

27 MHz

No

Yes

No

Yes

No

Yes

Three-Wire

EEPROM

Interface?

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes

1

0

1

0

1

0

1

0

1

0

1

0

Pin 4

FSYNC

1

1

1

1

1

1

1

1

Pin 11, CTS

Pin 15, AOUT

Pin 16, INT

Reset-Strap Pins

Pin 17

RI

Pin 18

SDI/EESD

1

1

1

1

0

0

0

0

1

1

0

0

1

1

1

1

1

1

1

1

0

0

1

1

0

0

1

1

Pin 23

DCD

2.1.4.2. Reset Strapping Options for TSSOP-24 with Parallel-Interface

Parallel-interface options for the 24-pin TSSOP package appear in Table 7 below. The EEPROM and autobaud

options are not available when the parallel interface is selected.

Table 7. TSSOP-24 Parallel-Interface Options

Mode

Input Clock

27 MHz

4.9152 MHz

Pin 9, RD

Pin 10, WR

Reset-Strap Pins

Pin 11

SCLK

1

1

0

1

Pin 15

INT

0

0

1

1

1

1

X

X

X

X

0

0

0

0

14 Rev. 1.41

AN93

2.1.4.3. Reset Strapping Options for TSSOP with SPI-Interface

Table 8 lists the SPI-interface options for the 24-pin TSSOP package.

Table 8. TSSOP-24 SPI-Interface Clock-Frequency Options

Mode

Input Clock Three-Wire

EEPROM

Interface?

32 kHz

4.9152 MHz

27 MHz

No

Yes

No

Yes

No

Yes

Pin 4

FSYNC

1

0

1

0

1

0

Pin 9, RXD

Pin 11, SCLK

Reset-Strap Pins

Pin 16

INT

Pin 15, AOUT

Pin 18, SDI/EESD

1

1

1

1

1

1

0

0

0

0

0

0

Pin 17

RI

0

0

1

1

1

1

Pin 23

DCD

2.1.5. Reset Strapping Options for QFN Parts

2.1.5.1. Reset Strapping Options for QFN Parts with UART Operation

Table 9 lists the reset strapping options for QFN parts with UART operation.

Table 9. Reset Strapping Options for QFN Parts with UART Operation

Input Clk Auto-Baud

Disable

Three-Wire

EEPROM

Interface

FSYNCH CTS AOUT EECLK INT

32 kHz No No

Pin 2

1

Pin 21 Pin 15

1 1

Pin 13

1 1

RI

1

SDI

Pin 35 Pin 19 Pin 8

1

DCD

Pin 28

1

4.9152 MHz

Yes

No

Yes

No

Yes

No

0

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

1

0

0

1

1

X

1

1

27 MHz

Yes

No

Yes

Yes

No

Yes

No

Yes

No

Yes

0

1

0

1

0

1

0

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

0

0

1

1

1

1

1

0

0

1

1

0

0

0

0

0

X

0

X

X

X

X

1

1

0

0

Rev. 1.41

15

A N 9 3

2.1.5.2. Reset Strapping Options for QFN Parts with SPI Operation

Table 10 lists the reset strapping options for QFN parts with SPI operation.

Table 10. Reset Strapping Options for QFN parts with SPI Operation

Input Clk Three-Wire

EEPROM

Interface

FSYNCH AOUT EECLK INT RI SDI DCD

32 kHz

4.9152 MHz

27 MHz

No

Yes

No

Yes

No

Yes

0

1

0

Pin 2

1

0

1

MISO

Pin 15 Pin 13 Pin 35 Pin 19 Pin 8 Pin 28 Pin 22

1 1 0 1 1 1 1

1

1

1

1

0

0

1

0

1

1

1

X

1

1

1

1

1

1

1

1

0

0

0

0

1

1

1

1

1

X

0

0

1

1

1

2.1.5.3. Reset Strapping Options for QFN Parts with Parallel Operation

Table 11 lists the reset strapping options for QFN parts with parallel operation.

Table 11.

Reset Strapping Options for QFN Parts with Parallel Operation

Input Clk CS AOUT EECLK RD

32 kHz

4.9152 MHz

27 MHz

Pin 21

1

1

0

0

1

1

Pin 15

0

0

0

0

0

0

Pin 13

1

1

1

1

0

0

Pin 22

1

1

1

1

1

1

16 Rev. 1.41

AN93

2.2. System Interface

The ISOmodem can be connected to a host processor through a UART, SPI or parallel interface. Connection to the chip requires low-voltage CMOS signal levels from the host and any other circuitry interfacing directly. The following sections describe the digital interface options in detail.

2.2.1. Interface Selection

The interface is selected during reset, as described in "2.1. Resetting the Device". Tables 12, 13, and 14 show the

functions of the affected pins for possible interface modes for 16-, 24- and 38-pin packages, respectively.

Table 12. Pin Functions vs. Interface Mode (SOIC-16)

Pin #

3

5

6

7

11

14

15

16

UART Mode

RI

RXD

TXD

CTS

INT

ESC

DCD

RTS

SPI Mode

RI

MISO

MOSI

SCLK

INT

ESC

DCD

SS

Table 13. Pin Functions vs. Interface Mode (TSSOP-24)

22

23

24

15

16

17

18

Pin #

2

3

8

9

10

11

UART Mode

FSYNC (SSI)

CLKOUT (SSI)

RTS

RXD

TXD

CTS

AOUT

INT

RI

SDI (SSI)

ESC

DCD

SDO (SSI)

SPI Mode

FSYNC (SSI)

CLKOUT (SSI)

SS

MISO

MOSI

SCLK

AOUT

INT

RI

SDI (SSI)

ESC

DCD

SDO (SSI)

Parallel Mode

D6

A0

D7

RD

WR

CS

D3

D4

D5

INT

D0

D1

D2

Rev. 1.41

17

A N 9 3

Table 14. Pin Functions vs. Interface Mode (QFN-38)

21

20

19

28

24

23

22

32

31

30

29

Pin #

35

34

33

UART Mode

INT

GPIO18

GPIO17

GPIO16

GPIO23

GPIO24

ESC

DCD

RTS

TXD

RXD

CTS

GPIO11

RI

SPI Mode

INT

GPIO18

GPIO17

GPIO16

GPIO23

GPIO24

SS

MOSI

MISO

SCLK

GPIO11

Parallel Mode

INT

D0

D1

D2

D3

D4

D5

D6

D7

WR

RD

CS

A0

18 Rev. 1.41

AN93

2.2.2. Interface Signal Description

The following tables describe each set of UART, parallel and SPI interface signals:

Table 15. UART-Interface Signals

Signal

TXD

RXD

RTS

CTS

Direction

Input

Output

Input

Output

Description

Data input from host TXD pin

Data output to host RXD pin

Active-low request-to-send input for flow control

Clear to send: Si2493 is ready to receive data on the TXD pin (active low)

Signal

SCLK

MISO

MOSI

SS

INT

Direction

Input

Output

Input

Input

Output

Table 16. SPI-Interface Signals

Description

Serial data clock

Serial data output

Serial data input

Chip select (active low)

Interrupt (active low)

Signal

A0

CS

RD

WR

D[7:0]

INT

Table 17. Parallel-Interface Signals

Direction

Input

Input

Input

Description

Register selection (address input)

Chip select (active low)

Read enable (active low)

Input Write enable (active low)

Bidirectional Parallel data bus

Output Interrupt (active low)

2.2.3. UART Interface Operation

The UART interface allows the host processor to communicate with the modem controller through a UART driver.

In this mode, the modem is analogous to an external “box” modem. The interface pins are 5 V tolerant and communicate with TTL-compatible, low-voltage CMOS levels. RS232 interface chips, such as those used on the modem evaluation board, can be used to make the UART interface directly compatible with a PC or terminal serial port.

2.2.3.1. UART Options

The DTE rate is set by the autobaud feature after reset. When autobaud is disabled, the UART is configured to

19.2 kbps, 8-bit data, no parity and 1 stop bit on reset. The UART data rate is programmable from 300 bps to

307.2 kbps with the AT\Tn command (see Table 53, “Extended AT\ Command Set,” on page 87). After the AT\Tn

command is issued, the ISOmodem echoes the result code at the old DTE rate. After the result code is sent, all subsequent communication is at the new DTE rate.

The DTE baud clock is within the modem crystal tolerance (typically ±50 ppm), except for DTE rates that are uneven multiples of the modem clock. All DTE rates are within the +1%/–2.5% required by the V.14 specification.

Table 18 shows the ideal DTE rate, the actual DTE rate, and the approximate error.

Rev. 1.41

19

A N 9 3

The UART interface synchronizes on the start bits of incoming characters and samples the data bit field and stop bits. The interface is designed to accommodate character lengths of 8, 9, 10, and 11 bits giving data fields of 6, 7,

8, or 9 bits. Data width can be set to 6, 7, or 8 bits with the AT\Bn command. Parity can be set to odd, even, mark, or space by the AT\Pn command in conjunction with AT\B2 or AT\B5. Other AT\Bn settings have no parity.

Ideal DTE Rate (bps)

300

600

1200

2400

7200

9600

12000

14400

19200

38400

57600

115200

230400

245760

307200

Table 18. DTE Rates

Actual DTE Rate (bps)

300

600

1200

2400

7202

9600

Approximate Error(%)

0.01

12003

14400

19200

38400

0.02

57488

115651

228613 0.8

245760

307200

0.2

0.4

MARK

SPACE

BIT TIMES

START

BIT

D0 D1 D2 D3 D4 D5 D6 D7

STOP

BIT

BIT SAMPLING

MARK

SPACE

BIT TIMES

START

BIT

D0 D1 D2 D3 D4 D5 D6 D7 D8

STOP

BIT

BIT SAMPLING

Figure 2. Asychronous UART Serial Interface Timing Diagram

2.2.3.2. Autobaud

When set in UART interface mode, the ISOmodem includes an automatic baud rate detection feature that allows the host to start transmitting data at any standard DTE rate from 300 bps to 307.2 kbps. This feature is enabled by default. When autobaud is enabled, it continually adjusts the baud rate, and the ISOmodem always echoes result codes at the same baud rate as the most recently received character from the host. Autobaud can be turned off using AT commands \T0 through \T15, and \T17. Host software should disable autobaud operation once the DTE rate has been established. This prevents transients on TXD to cause inadvertent baud rate changes.

Autobaud is off when dialing, answering, and in data mode. When autobaud mode is off, the baud rate is set to the most recently-active baud rate prior to entering one of these states. When autobaud mode is on, autoparity is

performed when either “at” or “AT” is detected. Autoparity detects the formats listed in Table 19.

20 Rev. 1.41

AN93

:

Table 19. Serial Formats Detected in Autobaud Mode

Symbol Data bits

7N1 7

Parity

None (mark)

Stop bits

1

7N2

7S1

7

7

None (mark)

None (space)

2

1

7O1

7E1

8N1

8E1

8O1

9N1

7

7

8

8

8

9

Odd

Even

None (mark)

Even

Odd

None (mark)

1

1

1

1

1

1

Note: For 7N1, the modem is programmed to 7 data bits, mark parity and one stop bit. This may be changed with the AT\P and

AT\B commands. In autobaud mode, 7N1 is properly interpreted and echoed, but the AT\P and AT\B commands must be sent prior to dialing in order to lock the parity and format to 7N1. Otherwise, the ISOmodem locks to 7 bits, mark parity and two stop bits (7N2).

2.2.3.3. Flow Control

The ISOmodem supports flow control through RTS/CTS. RTS (request-to-send) is a control signal from the terminal (DTE) to the modem (DCE) indicating data may be sent from the modem to the terminal. CTS (clear-tosend) is a control signal from the modem (DCE) to the terminal (DTE) indicating data may be sent from the terminal to the modem for transmission to the remote modem. This arrangement is typically referred to as hardware flow

control. There is a 14-character FIFO and a 1024 character elastic transmit buffer (see Figure 3). CTS goes

inactive (high) when the 1024 character buffer reaches 796 characters, then reasserts (low) when the buffer falls below 128 characters. There is no provision to compensate for FIFO overflow. Data received on TXD when the

FIFO is full are lost.

XON/XOFF is a software flow control method in which the modem and terminal control the data flow by sending

XON characters (^Q/0x11) and XOFF characters (^S/0x13). XON/XOFF flow control is not supported by the

ISOmodem.

DCD does not de-assert during a retrain (see Table 56: S9, Carrier presence timer and S10, Carrier loss timer).

CTS always deasserts during initial training, retrain, and at disconnect regardless of the \Qn setting. For \Q0 CTS, flow control is disabled; CTS is inactive during data transfer. The modem remains in the data mode during normal automatic retrains. The host can force a retrain by escaping to the command mode and sending ATO1 or ATO2.

The DCD and RI pins can be used as hardware monitors of the carrier detect and ring signals. Additionally, the INT

pin can be programmed to monitor the bits in register U70 listed in Table 20. The RI, PPD, OCD, CID, and RST bits

are sticky, and the AT:I command reads and clears these signals and deactivates the INT pin if INT is enabled.

Rev. 1.41

21

A N 9 3

Signal

DCD

RI

PPD

OCD

CID

Table 20. Register U70 Signals INT Can Monitor

U70 Bit Function

0

1

Data Carrier Detect—active high (inverse of DCD pin)

Ring Indicator—active high (inverse of RI pin)

2

3

4

Parallel Phone Detect

Overcurrent Detect

Caller ID Preamble Detect

CTS

Tx Data

14-Character

Hardware

Buffer

1024 Character Elastic Tx Buffer

SRAM

CTS Deasserts

796 Characters

Transmit

22

Parallel

Mode

RXF bit

REM bit

Rx data

RTS

128 Characters

CTS Asserts

Figure 3. Transmit Data Buffers

1024 Character Elastic Rx Buffer

SRAM

796 Characters

12-Character

Hardware

Buffer

Receive

128 Characters

Figure 4. Receive Data Buffers

Rev. 1.41

.

A block diagram of the UART in the serial interface mode is shown in Figure 5.

11 Bits to Data Bus

MUX

TX FIFO

RX FIFO

AN93

TX Shift

Register

CONTROL

RX Shift

Register

TXD

(10)

CTS

(11)

RTS

(8)

INT

(16)

Figure 5. UART Serial Interface

RXD

(9)

2.2.4. Parallel and SPI Interface Operation

Refer to "2.1. Resetting the Device" on page 11 for interface selection. The parallel interface has an 8-bit data bus

and a single address bit. The SPI likewise operates with 8-bit data transfers, using a single address bit. When the parallel or SPI interface mode is selected, the modem must be configured for a DTE interface or 8N1 only. The host processor must calculate parity for the MSB. The modem sends bits as received by the host and does not calculate

parity. Refer to "Appendix C—Parallel/SPI Interface Software Implementation" on page 302 for detailed parallel or

SPI interface application information.

The parallel or SPI interface uses the FIFOs to buffer data in the same way as in UART mode, with the addition of

Hardware Interface Registers 0 (HIR0) and Hardware Interface Register 1 (HIR1). The Hardware Interface

Registers were formerly called Parallel Interface Registers (PIR0 and PIR1) in older products, because those products would support only a parallel interface. Flow control must be implemented by monitoring REM and TXE in

HIR1. There is no protection against FIFO overflow. Data transmitted when the transmit FIFO is full are lost.

Figure 6 shows the interaction of the transmit and receive FIFOs with the Hardware (Parallel) Interface Registers in

the case of a parallel interface. The arrangement is similar when the SPI interface is selected. Table 21 on page 25

shows a bit map of HIR0 and HIR1.

UART oriented control lines, such as RTS and CTS, are not used in Parallel and SPI Interface mode. They are replaced by bits in the HIR1 register.

SPI and parallel operation only supports 8-bit data words. The longer words that are implied by the \B5 (8P1) & \B6

8X1 commands are not allowed. These commands should not be used.

Rev. 1.41

23

A N 9 3

MUX

11 Bits to Data Bus

TX FIFO

14 Characters

RX FIFO

12 Characters

Shared-Serial/Parallel

CONTROL

Parallel I/F

Register 0

Parallel I/F

Register 1

24

MUX

A

0

(3)

D

0

(16)

D

1

(17)

D

2

(18)

D

3

(22)

D

4

(23)

D

5

(24)

D

6

(4)

D

7

(8)

Parallel Interface Unique

Figure 6. Parallel Interface

RD

(9)

WR

(10)

CS

(11)

INT

(15)

Rev. 1.41

AN93

Table 21. Hardware Interface Register Bit Map

A0

0

0

1

RD

0

1

0

WR

1

0

1

Action

Read

Write

Read

1 1 0 Write

*Note: REM and INT are read-only bits.

Register

HIR0

HIR1

D7 D6 D5 D4 D3 D2 D1

Modem data or command from receive FIFO

D0

Modem data or command to transmit FIFO

RXF TXE REM INTM INT ESC RTS CTS

RXF TXE *Note INTM *Note ESC RTS n/a

2.2.4.1. Hardware Interface Register 0

Hardware Interface Register 0 (HIR0) is the eight-bit wide read/write location where modem data and commands are exchanged with the host. Writing a byte to the HIR0 adds that byte to the modem’s transmit FIFO (AT command buffer in command mode or data transmission in data mode). If data are available (modem data in data mode or command responses, such as OK, in command mode), reading from the HIR0 fetches data from the modem’s receive FIFO. The maximum burst data rate is approximately 350 kbps (45 kBps).

2.2.4.2. Hardware Interface Register 1

Hardware Interface Register 1 (HIR1) contains various status and control flags for use by the host to perform data flow control, to escape to command mode and to query various interrupt conditions. The HIR1 bit map is described

in Table 22. This register is reset to 0x63.

Bit Name

7 RXF

6

5

4

TXE

REM

INTM

3

2

1

0

INT

ESC

RTS

CTS

R/W

R/W

R/W

R

R/W

R

R/W

R/W

R

Table 22. Hardware Interface Register 1

Reset Function

0

Receive FIFO Almost Full

1

1

0

Transmit FIFO Almost Empty

Receive FIFO Empty

0

Interrupt Mask

0 = INT pin triggered on rising edge of RXF or TXE only

1 = INT pin triggered on rising edge of RXF, TXE or INT (bit 3 below)

Interrupt

0 = No interrupt

1 = Interrupt triggered

0

1

1

Escape

Request-to-Send (active low) — Deprecated — for flow control, use the

TXE and REM bits for polling- or interrupt-based communication.

This bit must be written to zero.

Clear-to-Send (active low) — Deprecated — for flow control, use the TXE and REM bits for polling- or interrupt-based communication.

Bit 7 (RXF) is a read/write bit that gives the status of the 12-byte deep receive FIFO. If RXF = 0, the receive FIFO contains less than 9 bytes. If RXF = 1, the receive FIFO contains 9 bytes or more and is full or almost full. Writing

RXF = 0 clears the interrupt.

Rev. 1.41

25

A N 9 3

Bit 6 (TXE) is a read/write bit that gives the status of the 14-byte deep transmit FIFO. If TXE = 0, the transmit FIFO contains three or more bytes. If TXE = 1, the transmit FIFO contains two or fewer bytes. Writing TXE = 0 clears the interrupt but does not change the state of TXE.

Bit 5 (REM) is a read-only bit that indicates when the receive FIFO is empty. If REM = 0, the receive FIFO contains valid data. If REM = 1, the receive FIFO is empty. The timer interrupt set by U6F ensures that the receive FIFO contents

 9 bytes are serviced properly.

Bit 4 (INTM) is a read/write bit that controls whether or not INT (bit 3) triggers the INT pin.

Bit 3 (INT) is a read-only bit that reports Interrupt status. If INT = 0, no interrupt has occurred. If INT = 1, an interrupt due to CID, OCD, PPD, RI, or DCD (U70 bits 4, 3, 2, 1, 0, respectively) has occurred. This bit is reset by :I.

Bit 2 (ESC) is a read/write bit that is functionally equivalent to the ESC pin in the serial mode. The operation of this bit, like the ESC pin, is enabled by setting U70 [15] (HES) = 1.

The use of bits 1 and 0 (RTS and CTS) has been deprecated for both parallel and SPI interfaces. Instead, the use of bits 6 and 5 (TXE and REM) is recommended for polling- and interrupt-based communication.

2.2.4.3. Parallel Interface Operation

When the device is powered up for parallel interface, the pins include eight data lines (D7–D0), a single address

(A0), a read strobe (RD), a write strobe (WR), an interrupt line (INT), and chip select (CS). Table 23 summarizes

the parallel-interface signals:

Signal

CS

A0

RD

WR

D[7:0]

INT

Table 23. Parallel Interface Signals

Function

Chip Select (active low)

Register address

Read strobe (active low)

Write strobe (active low)

Data bus

Interrupt (active low)

Direction

Input

Input

Input

Input

Bidirectional

Output

Refer to the device data sheet for timing characteristics. Address pin A0 allows the host processor to choose between the two interface registers, HIR0 and HIR1. The timing diagrams below show typical parallel-interface operation. Refer to the respective product data sheets for timing specifications.

26 Rev. 1.41

AN93

Figure 7. Parallel Interface Read Timing

Figure 8. Parallel Interface Write Timing

Rev. 1.41

27

A N 9 3

2.2.4.4. SPI Interface Operation

SPI interface operation is supported in the Si2493/57/34/15/04 Revision D or later and the Si2494/39 Revision A or later. When the device is powered up for SPI interface, the modem becomes an SPI slave, and the pins are configured to SS (chip select input, active low), MOSI (serial data input to modem), MISO (serial data output from modem) and SCLK (serial data clock input). The HIR0 and HIR1 registers described above are also available in

SPI mode. Each SPI operation consists of a control-and-address byte and a data byte. The bit definitions of the

control-and-address byte are shown in Table 24. The timing diagrams that follow show SPI read and write

waveforms. Refer to the device data sheet for timing characteristics.

Bit

7

6

5:0

Table 24. SPI Control-and-Address Bit Definitions

Function

Address

Read/Write

Reserved

Meaning when High

Access HIR1

Read register

Not allowed

Meaning when Low

Access HIR0

Write register

Must be all zeroes

SCK 

NSS 

MISO 

MOSI

Address/Control

Data

Hi‐Z

Hi‐Z

SPI 2‐Byte Write Protocol

SCK 

NSS 

MISO 

Address/Control

Hi‐Z

MOSI

Data

SPI 2‐Byte Read Protocol

Figure 9. SPI Read and Write Timing Diagrams

Hi‐Z

2.2.4.5. Interface Communication Modes

Data flow control is implemented in the SPI and parallel interfaces differently from UART mode. When parallel or

SPI mode is selected, data communication may be driven by interrupts or by polling. Refer to "Appendix C—

Parallel/SPI Interface Software Implementation" on page 302 for implementation details for both methods. The

parallel and SPI interfaces have four sources of interrupts and only one interrupt pin. The four interrupts are:

1. RXF Interrupt: receive FIFO almost full

2. TXE Interrupt: transmit FIFO almost empty

3. Timer Interrupt: receive FIFO not empty

4. U70 Interrupt: various conditions, such as ringing, parallel phone pickup, etc. as defined in register U70

The source of the interrupt can be determined by reading HIR1.

28 Rev. 1.41

AN93

2.3. Isolation Capacitor Interface

The isolation capacitor is a proprietary high-speed interface connecting the modem chip and the DAA chip through a high-voltage isolation barrier provided by two capacitors. It serves three purposes. First, it transfers control signals and transmit data from the modem chip to the DAA chip. Second, it transfers receive and status data from the DAA chip to the modem chip. Finally, it provides power from the modem chip to the DAA chip while the modem is in the on-hook condition. The signaling on this interface is intended for communication between the modem and the DAA chips and cannot be used for any other purpose. It is important to keep the length of the ISOcap™ path as short and direct as possible. The layout guidelines for the pins and components associated with this interface are

described in "4.4. Layout Guidelines" on page 52 and must be carefully followed to ensure proper operation and

avoid unwanted emissions.

2.4. Low-Power Modes

2.4.1. Power-Down Mode

The Power-Down mode is a lower power state than sleep mode. It is entered immediately upon writing

U65 [13] (PDN) = 1. Once in the Power-Down mode, the modem requires a hardware reset via the RESET pin to become active again.

2.4.2. Wake-on-Ring Mode

The ISOmodem can be set to enter a low-power wake-on-ring mode when not connected. Wake-on-ring mode is entered using the command AT&Z. The ISOmodem returns to the active mode when one of the following happens:

There is a 1 to 0 transition on TXD in the UART mode

There is a 1 to 0 transition on CS in the parallel mode

There is a 1 to 0 transition on SSS in the SPI mode

An incoming ring is detected

A parallel telephone is picked up

Line polarity reversal

2.4.3. Sleep Mode

The ISOmodem can be set to enter a low-power sleep mode when not connected and after a period of inactivity determined by the S24 register.

The ISOmodem enters the sleep mode S24 seconds after the last DTE activity, after the transmit FIFO is empty, and after the last data are received from the remote modem. The ISOmodem returns to the active mode when one of the following happens:

There is a 1 to 0 transition on TXD in the UART mode

There is a 1 to 0 transition on CS in the parallel mode

There is a 1 to 0 transition on SSS in the SPI mode

An incoming ring is detected

A parallel telephone is picked up

Line polarity reversal

The delay range for S24 is 1 to 255 seconds. The default setting of S24 = 0 disables the sleep timer and keeps the modem in the normal power mode regardless of activity level.

Rev. 1.41

29

A N 9 3

2.5. Controlling GPIOs (38-Pin QFN Only)

The Si2494 and Si243939 have pins that are configurable as general-purpose I/Os. I/O pads are physically

assigned to the GPIO pins of 38-pin packages as shown in Table 25. Depending on the application, other pins may

be configured as GPIOs, but, to avoid conflicts with defined pin functions, in general, it is best to use the pins described below. If other pins are needed as GPIOs, contact Silicon Laboratories for assistance.

Table 25. GPIO Pin Assignments

32

31

30

20

Pin

34

33

GPIOn

GPIO18

GPIO17

GPIO16

GPIO25

GPIO24

GPIO11

16

25

24

11

n

18

17

PSELn Address

0x89

0x88

0x88

0x8C

0x8C

0x85

Each I/O pad is controlled by a set of registers:

Port Select—Determines that a pin is a GPIO; each Port Select register controls two adjacent I/Os. To use a pin as a GPIO, the PSELn[5:0] bits of the corresponding register are written to zero.

Port Mode—Configures a GPIO as open drain or push-pull output. The mode is controlled by registers 0x005C bits 0-15 and 0x005D, bits 0-9. GPIO11 is configured by 0x005C bit 11; GPIO16 by 0x005D bit 0, and so on.

Port Latch—Sets the output state high or low. For a GPIO input, the pin must be selected as Open Drain, and then driven high, effectively putting it in high impedance mode. The pin status can be read even if it is in output mode.

To configure a pin as an input, set the corresponding bit in the Port Mode register for an open drain output and the corresponding bit in the Port Latch register for a logic 1. The same settings are used for an output in the high impedance state.

The registers are read and written using the AT:Q and AT:W commands in conjunction with the AT*Y254 and the

AT*Y0 commands.

Example 1. Configure pin 31 as a GPIO output, Push-pull, output high:

AT*Y254

AT:W8C & C0FF

AT:W5D | 0200

AT:W5F | 0200

AT*Y0

// Initiate the memory access mode

// Clear PSEL25[5:0] to make pin 31 (n=25) a GPIO

// This is the default state - may not need to clear it again

// Select Push-Pull; by default it is Open Drain

// Write 1 to GPIO25.

// Close the memory access mode

Example 2. Configure pin 34 as a GPIO input:

AT*Y254

AT:W89 & FFC0

AT:W5D & FFFB

// Clear PSEL18[5:0], to make pin 34 (n=18) a GPIO

// This is the default state, so clearing it may not be necessary

// Select Open Drain - this is the default state

30 Rev. 1.41

AT:W5F | 0004

AT:Q5F

AT*Y0

Bit

15:14

13:8

7:6

5:0

// Write a 1 to GPIO18; this will make the port high impedance

// Read the port status, bit 2 should reflect the state of the port

// Close the special AT*Y254 command

Table 26. PSEL11_10 Bit Map (0x0085)

Name

Reserved Read returns 0

PSEL11[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Function

Reserved Read returns 0

PSEL10[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Bit

15:14

13:8

7:6

5:0

Table 27. PSEL17_16 Bit Map (0x0088)

Name

Reserved Read returns 0

PSEL17[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Reserved Read returns 0

PSEL16[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Function

Bit

15:14

13:8

7:6

5:0

Table 28. PSEL19_18 Bit Map (0x0089)

Name

Reserved Read returns 0

PSEL19[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Reserved Read returns 0

PSEL18[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Function

Bit

15:14

13:8

7:6

5:0

Table 29. PSEL25_24 Bit Map (0x008C)

Name

Reserved Read returns 0

PSEL11[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Function

Reserved Read returns 0

PSEL10[5:0] Port Mapping Select.

000000 = Corresponding pin is a GPIO

Rev. 1.41

AN93

31

A N 9 3

Bit

15:0

Table 30. Port Mode 0 Bit Map (0x005C)

Name Function

P0MD[15:0] Port Mode. Configures mode of GPIO 0 through 15.

0 = Corresponding P.n output is open drain

1 = Corresponding P.n output is push-pull

Bit

15:10

9:0

Bit

15:0

Bit

15:10

9:0

Table 31. Port Mode 1 Bit Map (0x005D)

Name

Reserved Read returns 0

Function

P1MD[9:0] Port Mode. Configures mode of GPIO 16 through 25.

0 = Corresponding P.n output is open drain

1 = Corresponding P.n output is push-pull

Name

P0[15:0]

Table 32. Port Latch 0 Bit Map (0x005E)

Function

Port Latch. Write output state or read logic state of pin.

Write:

0 = Logic low output

1 = Logic high output

Read:

0 = Corresponding pin is a logic low

1 = Corresponding pin is a logic high

Name

Reserved

P1[9:0]

Table 33. Port Latch 1 Bit Map (0x005F)

Function

Read returns 0

Port Latch. Write output state or read logic state of pin.

Write:

0 = Logic low output

1 = Logic high output

Read:

0 = Corresponding pin is a logic low

1 = Corresponding pin is a logic high

32 Rev. 1.41

AN93

2.6. SSI/Voice Mode (24-Pin TSSOP and 38-Pin QFN Only)

Voice mode is supported in the Si2439 and the Si2494. Table 34 lists the pin connections for the ISOmodem SSI

interface. This interface enables Voice Mode operation. See "7. Handset, TAM, and Speakerphone Operation" on page 185 for additional information.

Signal

Table 34. SSI Interface Pin Connection

CLKOUT

FSYNC

SDI

SDO

RESET

Pin Number

(TSSOP-24)

3

4

18

24

12

Pin Number

(QFN-38)

3

2

8

9

16

The Si3000 is used in conjunction with the ISOmodem to transmit and receive 16-bit voice samples to and from

telephone lines as shown in Figure 10.

HOST

AT commands

Responses

Si24xx Modem

FSYNC

SDI

SDO CLKOUT

TDMA Interface

Si30xx

DAA

2- wire

FSYNC

SDO SDI

MCLK

Handset

Si3000 Voice Codec

Figure 10. Voice Mode Block Diagram

Rev. 1.41

33

A N 9 3

2.7. EEPROM Interface (24-Pin TSSOP and 38-Pin QFN Only)

The 24-pin TSSOP and 38-pin QFN packages feature an optional three-wire interface (EESD, EECS and EECLK) that may be directly connected to SPI EEPROMs. An EEPROM may contain custom default settings, firmware upgrades, and/or user-defined AT command macros for use in custom AT commands or country codes. Firmware upgrades may also be automatically loaded into the ISOmodem using the BOOT format.

2.7.1. Supported EEPROM Types

The EEPROM must support SPI mode 3 with a 16-bit (8–64 kbit range) address. The EEPROM must be between

8192 and 65536 bits in size and support the commands given in Table 35. The EEPROM must also support 16-bit

addressing regardless of size, allow a clock frequency of at least 1 MHz, assert its output on falling edges of

EECLK and latch input data on rising edges of EECLK. All data are sent to and from the EEPROM with the LSB

first. Required EEPROM command format and signal timing are shown in Tables 35 to 37. A typical EEPROM-

access timing diagram is shown on Figure 11. Such EEPROMs are available from several different manufacturers,

for example:

Microchip: 25LC080..25LC640

Atmel: AT25080..AT25640

Table 35. EEPROM Commands

Instruction Name

READ

WRITE

WRDI

RDSR

WRSR

WREN

Instruction Format

0000 0011

0000 0010

0000 0100

0000 0101

0000 0001

0000 0110

Description

Read data from memory at address

Write data to memory array beginning at address

Clear write enable bit (disable write operation)

Read status register

Write status register

Set write enable bit (enable write operations)

7

Table 36. EEPROM Status Register (Any Other Bits are Unused)

6

5

4

3

2

1

WEL

WEL = write enable latch

WIP = write in progress

Parameter

EECLK period

EESD input setup time

EESD input hold time

EESD output setup time*

EESD output hold time*

EECS asserted to EECLK positive edge

Table 37. EEPROM Timing

Symbol Min.

ECLK 1.0

EISU

EIH

100

100

EOSU

EOH

ECSS

500

500

500

Typ.

Max.

0

WIP ns ns ns

Unit

µs ns ns

34 Rev. 1.41

AN93

Table 37. EEPROM Timing

Parameter Symbol Min.

EESD tristated before last falling EECLK edge during read cycle. Last positive half of EECLK cycle is extended to provide both 500 ns minimum EOH and 100 ns EESD before EECLK falling edge.

EECS disable time between accesses

EOZ

ECSW

EECS asserted after final EECLK edge

*Note:

EESD

output at negative EECLK edge

ECSH

100

500

1

Typ.

Max.

Unit

— ns ns

µs

EOZ

ECLK

EOH

MSB

EISU

EOSU

EIH

EDH

LSB

ECSS

EEPROM Data Format

EESD

8-bit instruction

EECS

16-bit address

Figure 11. EEPROM Serial I/O Timing

ECSH ECSW

8-bit data

Rev. 1.41

35

A N 9 3

2.7.2. Three-Wire SPI Interface to EEPROM

To enable the 3-wire SPI interface to EEPROM on the 24-pin TSSOP package, appropriate pins must be reset

strapped according to Table 6 on page 14, or Table 8 on page 15, depending on the interface selected. The

EEPROM option is not available on the 24-pin TSSOP package if the parallel host interface is selected.

Figure 12 shows the connection diagram for the 3-wire SPI interface to EEPROM. A four-wire EEPROM (with

separate serial input and output data wires) may also be used with the input and output pins connected to EESD, if its SO output is tristated on the last falling edge of EECLK during a read cycle.

SI/SO

SPI EEPROM

CS SCLK

EESD EECS SCLK

TELEPHONE LINE

HOST Si3018/10

MODEM

Figure 12. Three-Wire EEPROM Connection Diagram

2.7.3. Detailed EEPROM Examples

Upon powerup, if the option is selected, the ISOmodem attempts to detect an EEPROM. The modem looks for a carriage return in the first 10 memory locations. If none is found, the modem assumes the EEPROM is not programmed and stops reading it. If a programmed EEPROM is detected, customer defaults that are programmed into the EEPROM between the optional heading "BOOT" and the "<CR><CR>" delimiter are executed immediately, and AT command macros are loaded into the ISOmodem RAM. The memory that may be allocated to the

<commands> portion of the EEPROM is limited to 1000 bytes. Three <CR> must be the last three entries in the

EEPROM.

EEPROM Data are stored and read in hexadecimal ASCII format in eight address blocks beginning at a specified hexadecimal address. For example, the AT:M0000,y0,y1,y2,y3,y4,y5,y6,y7 command writes the hexadecimal values y0…y7 at addresses from 0 to 7, respectively. The AT:E0000 command reads the hexadecimal values y0…y7 from addresses 0 to 7, respectively.

The following sections give specific examples of EEPROM usage for command macros, firmware upgrades, boot commands, etc.

2.7.4. Boot Commands (Custom Defaults)

Commands to be executed upon boot-up are stored between the heading BOOT and the first <CR><CR> delimiter.

The boot command has the following format:

BOOT<CR>

<commands><CR>

<commands><CR>

<CR>

36 Rev. 1.41

AN93

The commands end with a <CR>, which, in combination with the final<CR>, provides the <CR><CR> delimiter.

Boot commands must be the first entry in the EEPROM and are used to set the modem up with custom defaults, such as settings for specific countries, auto answer, or other special settings upon power up or after a hardware or software reset.

This saves the host processor from reloading special configuration strings at power up or after a reset, and allows the modem to be customized by programming the EEPROM or by substituting preprogrammed EEPROMs. If the

BOOT command is the final entry in the EEPROM, it must end with an additional <CR> to provide the

<CR><CR><CR> delimiter indicating the end of the EEPROM.

2.7.5. AT Command Macros (Customized AT Commands)

Macros allow the creation of single custom AT commands that execute combinations of default AT commands including special register configurations. AT command macros have the following format:

<command name><CR>

<commands><CR>

<commands><CR>

<CR>

Each AT Command Macro ends with a <CR><CR>. The final entry in the EEPROM ends with an additional <CR> to provide the <CR><CR><CR> delimiter indicating the end of the EEPROM. AT command macros can have a name consisting of any string of characters but must be the only command on a line.

2.7.6. Firmware Upgrades

Firmware upgrades (“patches”) are typically executed upon boot-up and stored between the heading, BOOT, and the first <CR><CR> delimiter. A firmware upgrade has the format: BOOT<firmware upgrade><CR>. The firmware upgrade ends with a <CR>, which, in combination with the final<CR>, provides the <CR><CR> delimiter, which marks the end of the EEPROM contents. A firmware upgrade can also be stored as an AT command macro in a system where using the firmware upgrade is optional. The following are examples of boot commands, AT command macros, and automatically-loaded firmware upgrades.

2.7.6.1. Boot Command Example

On power-up or reset, it is desired to set the UART rate to 115.2 kbps and limit the ISOmodem to V.34 and lower operation.

The AT commands required to do this manually are:

AT\T12<CR>

AT&H2<CR>

To implement this as a boot command, the commands are:

BOOT<CR>

AT\T12<CR>

AT&H2<CR>

<CR>

This must be written to the EEPROM as ASCII hexadecimal in eight address blocks. The actual AT commands to store this boot command in the EEPROM starting at address 0 are:

AT:M0000,42,4F,4F,54,0D,41,54,5C

AT:M0008,54,31,32,0D,41,54,26,48

AT:M0010,32,0D,0D,00,00,00

The value 0x41 corresponds to the display character A, 0x54 to T, 0x42 to B, 0x4F to O etc., and the value 0x0D,

for carriage return corresponds to the decimal value, 13, stored in S-register 3 (S3). Table 39 shows the

relationship between the decimal values, hexadecimal values, and display characters.

Rev. 1.41

37

A N 9 3

2.7.6.2. AT Command Macro Example

This example creates the AT command macro ATN<CR> to configure the ISOmodem for operation in Norway.

The AT commands required to do this manually are:

AT:U2C,00B0,0080<CR>

AT:U67,000C,0010,0004<CR>

AT:U4D,001<CR>

To implement this as an AT command macro, the EEPROM contents should be:

N<CR>

AT:U2C,00B0,0080<CR>

AT:U67,000C,0010,0004<CR>

AT:U4D,001<CR>

<CR><CR>

This must be written to the EEPROM as ASCII hexadecimal in eight address blocks. The actual AT commands to store this boot command in the EEPROM starting at address 0 are:

AT:M0000,4E,0D,41,54,3A,55,32,43

AT:M0008,2C,30,30,42,30,0D,0D,30

AT:M0010,38,30,0D,41,54,3A,55,36

AT:M0018,37,2C,30,30,30,43,2C,30

AT:M0020,30,31,30,2C,30,30,30,34

AT:M0028,0D,41,54,3A,55,34,44,2C

AT:M0030,30,30,31,0D,0D,0D

With this macro installed in the EEPROM, the command ATN<CR> configures the modem for operation in Norway.

2.7.6.3. Autoloading Firmware Upgrade Example

This example stores a firmware upgrade in EEPROM that is automatically loaded into the modem after power-up or hardware/software reset if the EEPROM option is selected.

The AT commands required to load the firmware upgrade manually are:

AT*Y254:W0050,0000<CR>

AT:PF800.08D5

To implement this as a boot command macro, the commands are:

BOOT<CR>

AT*Y254:W0050,0000<CR>

AT:PF800.08D5

This must be written to the EEPROM as ASCII hexadecimal in eight address blocks. The actual AT commands to store this boot command in the EEPROM starting at address 0 are:

AT:M0000,42,4F,4F,54,0D,41,54,2A

AT:M0008,59,32,35,34,3A,57,30,30

AT:M0010,35,30,2C,30,30,30,30,0D

AT:M0018,41,54,3A,50,46,34,30,30

AT:M0020,2C,30,38,44,35,0D,0D,0D

This firmware upgrade (patch) is only an example meant to illustrate the procedure for loading a patch into the

EEPROM. Loading this code into a ISOmodem causes undesirable behavior.

38 Rev. 1.41

2.7.6.4. Combination Example

This example shows boot commands and custom AT commands stored in the same EEPROM.

Table 38. Combination Example

Command

BOOT<CR>

<commands><CR>

<commands><CR>

Function

Start of EEPROM contents

<CR>

<Custom AT Command Name 1><CR>

End of BOOT string

Start of Custom AT Command 1

<commands><CR>

<commands><CR>

<CR>

<Custom AT Command Name 2><CR>

End of Custom AT Command 1

Start of Custom AT Command 2

<commands><CR>

<commands><CR>

<CR>

<Custom AT Command Name 3><CR>

End of Custom AT Command 2

Start of Custom AT Command 3

<commands><CR>

<commands><CR>

<CR>

<CR>

End of Custom AT Command 3

End of EEPROM Contents

AN93

Rev. 1.41

39

A N 9 3

1C

1D

1E

1F

18

19

1A

1B

12

13

14

15

16

17

0E

0F

10

11

05

06

07

08

hex

00

01

02

03

04

09

0A

0B

0C

0D

28

29

30

31

24

25

26

27

18

19

20

21

22

23

14

15

16

17

7

8

5

6

dec

0

1

2

3

4

9

10

11

12

13

<CAN>

<EM>

<SUB>

<ESC>

<FS>

<GS>

<RS>

<US>

<SO>

<SI>

<DLE>

<DC1>

<DC2>

<DC3>

<DC4>

<NAK>

<SYN>

<ETB>

Display

<NUL>

<SOH>

<STX>

<ETX>

<EOT>

<ENQ>

<ACK>

<BEL>

<BS>

<HT>

<LF>

<VT>

<FF>

<CR>

Table 39. ASCII Chart

>

?

<

=

;

:

8

9

4

5

6

7

2

3

0

1

/

.

Display

<space>

!

#

$

(

'

%

&

+

,

-

)

*

92

93

94

95

88

89

90

91

82

83

84

85

86

87

78

79

80

81

69

70

71

72

dec

64

65

66

67

68

73

74

75

76

77

5C

5D

5E

5F

58

59

5A

5B

52

53

54

55

56

57

4E

4F

50

51

45

46

47

48

hex

40

41

42

43

44

49

4A

4B

4C

4D

3C

3D

3E

3F

38

39

3A

3B

32

33

34

35

36

37

2E

2F

30

31

25

26

27

28

hex

20

21

22

23

24

29

2A

2B

2C

2D

60

61

62

63

56

57

58

59

50

51

52

53

54

55

46

47

48

49

37

38

39

40

dec

32

33

34

35

36

41

42

43

44

45

7C

7D

7E

7F

78

79

7A

7B

72

73

74

75

76

77

6E

6F

70

71

65

66

67

68

hex

60

61

62

63

64

69

6A

6B

6C

6D

124

125

126

127

120

121

122

123

114

115

116

117

118

119

110

111

112

113

101

102

103

104

dec

96

97

98

99

100

105

106

107

108

109

|

}

~ z

{ x y t u v w r s p q n o

Display

` a b c d g h e f k l m j i

^

_

]

\

Z

[

X

Y

V

W

T

U

R

S

P

Q

N

O

Display

@

A

B

C

D

G

H

E

F

K

L

M

I

J

40 Rev. 1.41

AN93

3. DAA (Line-Side) Device

The Si3018/10 DAA or line-side device, contains an ADC, a DAC, control circuitry, and an isolation capacitor interface. The Si3018/10 and surrounding circuitry provide all functionality for telephone line interface requirement compliance, including a full-wave rectifier bridge, hookswitch, dc termination, ac termination, ring detection, loop voltage and current monitoring, and call-progress monitoring. The Si3018/10 external circuitry is largely responsible for EMI, EMC, safety, and surge performance.

3.1. Hookswitch and DC Termination

The DAA has programmable settings for the dc impedance, current limiting, minimum operational loop current, and

Tip-to-Ring voltage. The dc impedance of the DAA is normally represented by a 50

 slope as shown in Figure 13,

but can be changed to an 800

 slope by setting the DCR bit. This higher dc termination presents a higher resistance to the line as the loop current increases.

FCC DCT Mode

12

11

10

9

8

7

6

.01 .02 .03 .04 .05 .06 .07 .08 .09 .1 .11

Loop Current (A)

Figure 13. FCC Mode I/V Characteristics

DCV[1:0]

=

11, MINI[1:0]

=

00

For applications requiring current limiting per the legacy TBR21 standard, the ILIM bit may be set to select this mode. In this mode, the dc I/V curve is changed to a 2000 allows the DAA to operate with a 50 V, 230

 slope above 40 mA, as shown in Figure 14. This

 feed, which results in the highest current possible in the old TBR21 standard.

TBR21 DCT Mode

45

40

35

30

25

20

15

10

5

.015 .02 .025 .03 .035 .04 .045 .05 .055 .06

Loop Current (A)

Figure 14. TBR21 (Legacy) Mode I/V Characteristics

DCV[1:0]

=

11, MINI[1:0]

=

00

The MINI[1:0] bits select the minimum operational loop current for the DAA, and the DCV[1:0] bits adjust the DCT pin voltage, which affects the Tip-to-Ring voltage of the DAA. These bits allow important trade-offs to be made between signal headroom and minimum operational loop current. Increasing the Tip-Ring voltage increases signal headroom, whereas decreasing the voltage allows compliance to PTT standards in low-voltage countries, such as

Japan or Malaysia. Increasing the minimum operational loop current above 10 mA also increases signal headroom and prevents degradation of the signal level in low-voltage countries.

Rev. 1.41

41

A N 9 3

3.2. AC Termination

The ISOmodem has four ac termination impedances when used with the Si3018 line-side device, selected by the

ACT bits in Register U63. The four available settings for the Si3018 are listed in Table 40. If an ACT[3:0] setting other than the four listed in Table 40 is selected, the ac termination is forced to 600

 (ACT[3:0] = 0000).

Table 40. AC Termination Settings for the Si3018 Line-Side Device

ACT[3:0]

0000

0011

0100

1111

AC Termination

600

220

 + (820  || 120 nF) and 220  + (820  || 115 nF)

370

 + (620  || 310 nF)

Global complex impedance

3.3. Ringer Impedance and Threshold

The ring detector in many DAAs is ac coupled to the line with a large 1 µF, 250 V decoupling capacitor. The ring detector on the ISOmodem is resistively coupled to the line. This produces a high ringer impedance to the line of approximately 20 M

. This meets the majority of country PTT specifications, including FCC and ETSI ES 203 021.

Several countries, including Poland, South Africa, and Slovenia, require a maximum ringer impedance that can be met with an internally synthesized impedance by setting the RZ bit (Register 67, bit 1).

Some countries specify different ringer thresholds. The RT bit (Register U67, bit 0) selects between two different ringer thresholds: 15 V ±10% and 21.5 V ±10%. These two settings satisfy ringer threshold requirements worldwide. The thresholds are set so that a ring signal is guaranteed to be detected above the maximum and not detected below the minimum.

3.4. Pulse Dialing and Spark Quenching

Pulse dialing is accomplished by going off- and on-hook at a certain cadence to generate make and break pulses.

The nominal rate is ten pulses per second. Some countries have strict specifications for pulse fidelity that include make and break times, make resistance, and rise and fall times. In a traditional, solid-state dc holding circuit, there are many problems in meeting these requirements. The ISOmodem dc holding circuit actively controls the on-hook and off-hook transients to maintain pulse dialing fidelity.

Spark-quenching requirements in countries such as Italy, the Netherlands, South Africa and Australia deal with the on-hook transition during pulse dialing. These tests provide an inductive dc feed resulting in a large voltage spike.

This spike is caused by the line inductance and sudden decrease in current through the loop when going on-hook.

The traditional solution to the problem is to put a parallel resistive capacitor (RC) shunt across the hookswitch relay. However, the capacitor required is bulky (~1 µF, 250 V) and relatively costly. In the ISOmodem, the loop current can be controlled to achieve three distinct on-hook speeds to pass spark-quenching tests without additional

BOM components. Through settings of two bits in two registers, OHS (Register U67, bit 6) and OHS2 (Register

U62, bit 8), a delay between the time the OH bit is cleared and the time the DAA actually goes on-hook, can be created, which induces a slow ramp-down of the loop current.

3.5. Line Voltage and Loop Current Sensing

There are two methods for line voltage and loop current sensing. The first method is the legacy mode using

U79 (LVCS) [4:0]. The legacy mode is intended for backward compatibility in applications originally designed for the previous generation ISOmodem. This mode is used in the intrusion detection algorithm implemented on the device. The legacy mode is set when LLP (UAD [4] = 1 (default).

The second method of measuring line voltage and loop current takes advantage of the improved resolution available on the Si3018 and Si3010 DAA chips. U63 (LCS) [15:8] represents the value of off-hook loop current as a non-polar binary number with 1.1 mA/bit resolution. Accuracy is not guaranteed if the loop current is less than the minimum required for normal DAA operation. U6C (LVS) [15:8] represents the value of on-hook and off-hook loop voltage as a signed, two’s complement number with a resolution of 1 V/bit.

42 Rev. 1.41

AN93

Bit 15 represents the polarity of the Tip-Ring voltage, and a reversal of this bit represents a Tip-Ring polarity reversal. LVS = 0x0000 if the Tip-Ring voltage is less than 3.0 V and, in the on-hook state, can be taken as “no line connected.”

The ISOmodem reports the on-hook line voltage with the LVS bits in two’s complement. LVS has a full scale of 87 V with an LSB of 1 V. The first code step (going from 0 to 1) is offset so that a 0 indicates a line voltage of less than

3 V. The accuracy of the LVS bits is ±10%. The user can read these bits directly through the LVS register. A typical

transfer function is shown in Figure 15.

When the ISOmodem is off-hook, the LCS bits measure loop current in 1.1 mA/bit resolution. These bits enable the user to detect another phone going off-hook by monitoring the dc loop current. Line-current sensing is detailed in

Figure 16 and Table 41.

128

64

48

32

16

0

0

112

96

80

128 16 32 48 64 80 96

Tip/Ring V oltage (V olts )

Figure 15. Typical Loop Voltage LVS Transfer Function

112

Rev. 1.41

43

A N 9 3

160

128

96

64

32

0

0

256

224

192

ILIM = 1

ILIM = 0

16 32 48 64 80

Loop Curr e nt (m A)

96 112 128 144

LVCS[4:0]

00000

11111

Figure 16. Typical Loop Current LCS Transfer Function

Table 41. Loop Current Transfer Function

Condition

Insufficient line current for normal operation.

Loop current overload. Overload is defined as 128 mA or more, except in TBR21, where overload is defined as 56 mA or more.

44 Rev. 1.41

AN93

3.6. Legacy-Mode Line Voltage and Loop Current Measurement

The 5-bit LVCS register, U79 (LVCS) [4:0], reports line voltage measurements when on-hook and loop current measurements when off-hook.

Using the LVCS bits, the user can determine the following:

When on-hook, detect if a line is connected.

When on-hook, detect if a parallel phone is off-hook.

When off-hook, detect if a parallel phone goes on or off-hook.

Detect if enough loop current is available to operate.

3.7. Billing Tone Detection

Billing tones or metering pulses generated by the central office can cause connection difficulties in modems. The billing tone is typically a 12 kHz or 16 kHz signal and is sometimes used in Germany, Switzerland, and South

Africa. Depending on line conditions, the billing tone may be large enough to cause major modem errors. The

ISOmodem chipset can provide feedback when a billing tone occurs and when it ends.

Billing tone detection is enabled by setting the BTE bit (U68, bit 2). Billing tones less than 1.1 V

PK

on the line are filtered out by the low-pass digital filter on the ISOmodem. The ROV bit (U68, bit 1) is set when a line signal is greater than 1.1 V

PK

, indicating a receive overload condition. The BTD bit is set when a line signal (billing tone) is large enough to excessively reduce the line-derived power supply of the line-side device (Si3018/10). When the

BTE bit is set, the dc termination is changed to an 800

 dc impedance. This ensures minimum line voltage levels even in the presence of billing tones.

The OVL bit should be polled following billing-tone detection. When the OVL bit returns to 0, indicating that the billing tone has passed, the BTE bit should be written to 0 to return the dc termination to its original state. It takes approximately 1 second to return to normal dc operating conditions. The BTD and ROV bits are sticky and must be written to 0 to be reset. After the BTE, ROV, and BTD bits are cleared, the BTE bit can be set to reenable billingtone detection.

Certain line events, such as an off-hook event on a parallel phone or a polarity reversal, may trigger the ROV bit or the BTD bit, after which the billing-tone detector must be reset. Look for multiple events before qualifying whether billing tones are actually present.

Although the DAA remains off-hook during a billing-tone event, the received data from the line is corrupted (or a modem disconnect or retrain may occur) in the presence of large billing tones. To receive data in the presence of a billing tone, an external LC filter must be added. A modem manufacturer can provide this filter to users in the form of a dongle that connects on the phone line before the DAA. This keeps the manufacturer from having to include a costly LC filter internal to the modem when it may only be necessary to support a few countries or customers.

Alternatively, when a billing tone is detected, the host software may notify the user that a billing tone has occurred.

This notification can be used to prompt the user to contact the telephone company to have the billing tones disabled or purchase an external LC filter.

Rev. 1.41

45

A N 9 3

4. Hardware Design Reference

This section describes hardware design requirements for optimum Si24xx ISOmodem chipset implementation.

There are three important considerations for any hardware design. First, the reference design and components listed in the associated bill of materials should be followed exactly. These designs reflect field experience with millions of deployed units throughout the world and are optimized for cost and performance. Any deviation from the reference design schematic and components will likely have an adverse affect on performance. Second, circuit

board layouts must follow "4.4. Layout Guidelines" rigorously. Deviations from these layout techniques will likely

affect modem performance and regulatory compliance. Finally, all reference designs use a standard component numbering scheme. This simplifies documentation references and communication with the Silicon Laboratories technical support team. It is strongly recommended that these same component reference designators be used in all ISOmodem designs.

4.1. Component Functions

In spite of the significant internal complexity of the chip, the external support circuitry is very simple. The following section describes the modem’s functions in detail.

4.1.1. Power Supply and Bias Circuitry

Power supply bypassing is important for the proper operation of the ISOmodem, suppression of unwanted radiation, and prevention of interfering signals and noise from being coupled into the modem via the power supply.

C50 and C52 provide filtering of the 3.3 V system power and must be located as close to the ISOmodem chip as possible to minimize lead lengths. The best practice is to use surface-mount components connected between a power plane and a ground plane. This technique minimizes the inductive effects of component leads and PCB traces and provides bypassing over the widest possible frequency range, and minimizes loop areas that can radiate radio frequency energy.

Two bias voltages used inside the modem chip require external bypassing and/or clamping. VDA (pin 7) is bypassed by C51. VDB (pin 19) is bypassed by C53. R12 and R13 are optional resistors that can, in some cases, reduce radiated emissions due to signals associated with the isolation capacitors. These components must be located as close to the ISOmodem chip as possible to minimize lead lengths.

The Si3018/10 is powered by a small current passed across the ISOcap in the on-hook mode and by the loop current in the off-hook mode. Since there is no system ground reference for the line-side chip due to isolation requirements, a virtual ground, IGND, is used as a reference point for the Si3018/10. Several bias voltages and signal reference points used inside the DAA chip require external bypassing, filtering, and/or clamping. VREG2

(pin 10) is bypassed by C6. VREG (pin 7) is bypassed by C5. These components must be located as close to the

Si3018/10 chip as possible to minimize lead lengths.

4.1.2. Hookswitch and DC Termination

The hookswitch and dc termination circuitry are shown in Figure 18 on page 49. Q1, Q2, Q3, Q4, R5. R6, R7, R8,

R15, R16, R17, R19, and R24 perform the hookswitch function. The on-hook/off-hook condition of the modem is controlled by Si3018/10 pins 13 (QB) and 1 (QE).

4.1.3. Clocks

The crystal oscillator circuit has three operating frequencies/modes that are selected by using the correct clock source and by installing the correct pulldown resistors on the modem in order to signal the ISOmodem which mode to operate.

Selecting among these modes of operation is described in "2.1. Resetting the Device" on page 11.

One mode requires a 4.9152 MHz fundamental mode parallel-resonant crystal. Typical crystals require a 20 pF load capacitance. This load is calculated as the series combination of the capacitance from each crystal terminal to ground, including parasitic capacitance due to package pins and PCB traces. The parasitic capacitance is estimated as 7 pF per terminal. This, in combination with the 33 pF capacitor, provides 40 pF per terminal, which, in series, yields the proper 20 pF load for the crystal.

Instead of using a 4.9152 MHz crystal, a signal at 4.9152 MHz can be applied to the XTALI pin. In such a case, the crystal loading caps should not be used.

46 Rev. 1.41

AN93

The second mode is a 32.768 kHz fundamental mode parallel-resonant crystal. Typical crystals require a 12.5 pF load capacitance. This load is calculated as the series combination of the capacitance from each crystal terminal to ground, including parasitic capacitance due to package pins and PCB traces. The parasitic capacitance is estimated as 7 pF per terminal. This, in combination with the 18 pF capacitors, provides 25 pF per terminal, which, in series, yields the proper 12.5 pF load for the crystal.

Instead of a using a 32.768 kHz crystal, a signal at 32.768 kHz can be applied to the XTALI pin. In such a case, the crystal loading caps should not be used.

The third mode is to use a 27 MHz clock signal. A crystal cannot be used for this mode, and the signal must be applied to the XTALI pin.

Frequency stability and accuracy are critically important to the performance of the modem. ITU-T specifications require less than 200 ppm difference between the carrier frequencies of two modems. This value, split between the two modems, requires the oscillator frequency of each modem to be accurate and stable over all operating conditions within ±100 ppm. This tolerance includes the initial accuracy of the crystal, the frequency drift over the temperature range that the crystal is expected to experience, and the five-year aging of the crystal. Other factors affecting the oscillator frequency include the tolerance and temperature drift of the load capacitor values. For optimal V.92 performance, it is recommended to increase the oscillator stability to ±25 ppm.

For all the above three modes of operation, the CLKIN/XTALI pin (Pin 1) can accept a 3.3 V external clock signal meeting the accuracy and stability requirements described above.

The CLKOUT/A0 pin outputs a signal derived from the 4.9152 MHz clock. If the frequency of the output is controlled via register U6E (CK1) using the Si2404 or Si2415, this signal is programmable from 2.64 MHz to

40.96 MHz. If using the Si2434 or Si2457, this signal is programmable from 3.17 MHz to 49.152 MHz. There are two special cases for the value of R1: R1 = 00000, CLKOUT is disabled, and R1 = 11111 (default),

CLKOUT = 2.048 MHz.

On older parts, the CLKOUT pulse starts immediately after RESET goes high, but, on the most recent versions

(those including SPI and 32 kHz operation), there is a small delay after RESET goes high. The delay is of approximately 200 µs when using 4.91592 MHz or 27 MHz and approximately 8 ms when using a 32 kHz clock.

4.1.4. Ringer Network

R7 and R8 comprise the ringer network. These components determine the modem’s on-hook impedance at Tip and Ring. These components are selected to present a high impedance to the line, and care must be taken to ensure the circuit board area around these components is clean and free of contaminants, such as solder flux and solder flakes. Leakage on RNG1 (Si3018/10 pin 8) and RNG2 (Si3018/10 pin 9) can impair modem performance.

R7 and R8 are also used by the modem to monitor the line voltage.

4.1.5. Optional Billing-Tone Filter

To operate without degradation during billing tones in Germany, Switzerland, and South Africa, an external LC notch filter is required. (The Si3018/10 will remain off-hook during a billing tone event, but modem data may be lost, or a modem disconnect or retrain may occur, in the presence of large billing-tone signals.) The notch filter design requires two notches: one at 12 kHz and one at 16 kHz. Because these components are expensive and few countries require billing-tone support, this filter is typically placed in an external dongle or added as a population

option. Figure 17 shows an example billing tone filter. L3 must carry the entire loop current. The series resistance

of the inductors is important to achieve a narrow and deep notch. This design has more than 25 dB of attenuation at 12 kHz and 16 kHz. The billing tone filter degrades the ac termination and return loss slightly, but the global complex ac termination passes worldwide return-loss specifications with and without the billing tone filter by at least 3 dB.

Rev. 1.41

47

A N 9 3

C1

C2

L3

TIP

FROM

LINE

L4

C3

To

DAA

RING

Figure 17. Billing-Tone Filter

Table 42. Optional Billing Tone Filters Component Values

Symbol

C1,C2

C3

L3

L4

Value

0.027 µF, 50 V, ±10%

0.01 µF, 250 V, ±10%

3.3 mH, >120 mA, <10

, ±10%

Coilcraft RFB0810-332 or equivalent

10 mH, >40 mA, <10

, ±10%

Coilcraft RFB0810-103 or equivalent

48 Rev. 1.41

AN93

+

2

21

5

VD 3.3

VD3.3

VDB

VDA

GND

GND

20

6

19

7

IGND

SC

11

15

Rev. 1.41

49

A N 9 3

4.2. Schematic

50

+

2

21

5

VD 3.3

VD3.3

VDB

VDA

GND

GND

20

6

7

19

IGND

SC

11

15

Rev. 1.41

AN93

4.3. Bill of Materials

Component

C1, C2

C3

C4

C5, C6, C50, C52

1

C7

C8, C9

Value

33 pF, Y2, X7R, ±20%

10 nF, 250 V, X7R, ±20%

1.0 µF, 50 V, Elec/Tant, ±20%

0.1 µF, 16 V, X7R, ±20%

2.7 nF, 50 V, X7R, ±20%

680 pF, Y2, X7R, ±10%

Supplier(s)

Panasonic, Murata, Vishay,

Holy Stone

Venkel, SMEC

Panasonic

Venkel, SMEC

Venkel, SMEC

Panasonic, Murata, Vishay,

Holy Stone

Venkel, SMEC C10

C40

C41

C51, C53

1

D1, D2

2

FB1, FB2

0.01 µF, 16 V, X7R, ±20%

32.768 kHz, 18 pF, 16 V, NPO, ±5%

4.9152 MHz, 27 MHz, 33 pF, 16 V, NPO, ±5%

0.22 µF, 16 V, X7R, ±20%

Dual Diode, 225 mA, 300 V, MMBT3004S

Ferrite Bead, BLM18AG601SN1

Venkel, SMEC

Venkel, SMEC

Diodes Inc.

Murata

Q1, Q3

Q2

Q4, Q5

RV1

R1

R2

R3

R4

R5, R6

R7, R8

R9

R10

R11

R12, R13

R15, R16

3

NPN, 300 V, MMBTA42

PNP, 300 V, MMBTA92

NPN, 80 V, 330 mW, MMBTA06

Sidactor, 275 V, 100 A

1.07 k

, 1/2 W, 1%

150

, 1/16 W, 5%

3.65 k

, 1/2 W, 1%

2.49 k

, 1/2 W, 1%

100 k

, 1/16 W, 5%

20 M

, 1/16 W, 5%

1 M

, 1/16 W, 1%

536

, 1/4 W, 1%

73.2

, 1/2 W, 1%

56

, 1/16 W, 1%

0

, 1/16 W

Diodes Inc., Fairchild

Diodes Inc., Fairchild

Diodes Inc., Fairchild

Teccor, Protek, ST Micro

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

Venkel, SMEC, Panasonic

U1

U2

Y1

4

Si24xx ISOmodem

Si3018

32.768 kHz, 12 pF, 100 ppm, 35 k

 max ESR

4.9152 MHz, 20 pF, 100 ppm, 150

 ESR

27 MHz (from external clock)

Silicon Labs

Silicon Labs

ECS Inc., Siward, Abracon

Z1 Zener Diode, 43 V, 1/2 W, BZT84C43 On Semi

Notes:

1. C52 and C53 should not be populated with the Si2493 16-pin package option.

2. Several diode bridge configurations are acceptable. For example, a single DF04S or four 1N4004 diodes may be used.

3. Murata BLM18AG601SN1 may be substituted for R15–R16 (0

) to decrease emissions.

4. To ensure compliance with ITU specifications, frequency tolerance must be less than 100 ppm including initial accuracy, 5-year aging, 0 to 70 °C, and capacitive loading. For optimal V.92 PCM upstream performance, the recommended crystal accuracy is ±25 ppm.

Rev. 1.41

51

A N 9 3

4.4. Layout Guidelines

The key to a good layout is proper placement of the components. It is best to copy the placement shown in

Figure 20. Alternatively, follow the following steps, referring to the schematics and Figure 21. It is strongly recommended to complete the checklist in Table 43 on page 54 while reviewing the final layout.

1. All traces, open pad sites, and vias connected to the following components are considered to be in the DAA section and must be physically separated from non-DAA circuits by 5 mm to achieve the best possible surge performance: R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R15, R16, U2, Z1, D1, FB1, FB2, RJ11, Q1, Q2,

Q3, Q4, Q5, C3, C4, C5, C6, C7, C8, C9, C10, RV1, C1 pin 2 only, C2 pin 2 only, C8 pin 2 only, and C9 pin 2 only.

2. The isolation capacitors, C1, C2, C8 and C9, are the only components permitted to straddle between the DAA section and non-DAA section components and traces. This means that for each of these capacitors, one of the terminals is on the DAA side, and the other is not. Maximize the spacing between the terminals (between pin 1 and pin 2) of each of these capacitors.

3. Place and group the following components: U1, U2, R12*, R13*, C1, C2.

*Note: Do not use ferrite beads in place of R12 and R13.

a.U1 and U2 are placed so that the right side of U1 faces the left side of U2.

b.C1 and C2 are placed directly between U1 and U2.

c.Keep R12 and R13 close to U1.

d.Place U1, U2, C1, and C2 so that the minimum creepage distance for the target application is met.

e.Place C1 and C2 so that traces connected to U2 pin 5 (C1B) and U2 pin 6 (C2B) are physically separated from traces connected to: i.C8, R15, FB1 ii.C9, R16, FB2 iii.U2 pin 8, R7 iv.U2 pin 9, R9

4. Place and group the following components around U2: C4, R9, C7, R2, C5, C6, R7, R8. These components should form the critical “inner circle” of components around U2.

a.Place C4 close to U2 pin 3. This is best achieved by placing C4 northwest of U2.

b.Place R9 close to U2 pin 4. This is best achieved by placing R9 horizontally, directly to the north of U2.

c.Place C7 close to U2 pin 15. This is best achieved by placing C7 next to R9.

d.Place R2 next to U2 pin 16. This is best achieved by placing R2 northeast of U2.

e.Place C6 close to U2 pin 10. This is best achieved by placing C6 southeast of U2.

f.Place R7 and R8 close to U2. This is best achieved by placing these components to the south of U2.

g.Place C5 close to U2 pin 7. This is best achieved by placing C5 southwest of U2.

5. Place Q5 next to R2 so that the base of Q5 can be connected to R2 directly.

6. Place Q4 so that the base of Q4 can be routed to pin 13 of U2 easily and the emitter of Q4 can be routed to U2 pin 12 easily. Route these two traces next to each other so that the loop area formed by these two traces is minimized.

7. Place and group the following components around the RJ11 jack: FB1, FB2, RV1, R15, R16, C8, and C9.

a.Use 20-mil-wide traces on this grouping to minimize impedance.

b.Place C8 and C9 close to the RJ11 jack, recognizing that a GND trace will be routed between C8 and C9 back to the Si24xx GND pin through a 20-mil-wide trace. The GND trace from C8 and C9 must be isolated from the rest of the Si3018/10 traces.

c.The trace from C8 to GND and the trace from C9 to GND must be short and of equal lengths.

52 Rev. 1.41

AN93

8. After the previous step, there should be some space between the grouping around U2 and the grouping of components around the RJ11 jack. Place the rest of the components in this area, given the following guidelines: a.Space U2, Q4, Q5, R1, R3, R4, R10 and R11 away from each other for best thermal performance.

b.The tightest layout can be achieved by grouping R6, C10, Q2, R3, R5, and Q1.

c.Place C3 next to D1.

d.Make the size of the Q1, Q3, Q4, and Q5 collector pads each sufficiently large for the transistor to safely dissipate 0.5 W under worst case conditions. See the transistor data sheet for thermal resistance and maximum operating temperature information. Implement collector pads on both the component and solder side, and use vias between them to improve heat transfer for best performance. When ambient conditions are a moderate 50 deg or less, use 0.05 square inches of copper at the collectors of Q1, Q3, Q4, Q5. Both sides of the PCB can be used to double the available area.

9. U2, IGND, is the return path for many of the discrete components and requires special mention: a.Traces associated with IGND should be 20 mils wide.

b.U2's IGND should not be a large ground plane and should only occupy the space under U2. Beyond this area, use traces and avoid getting close to the components on the other side of the diode bridge.

c.C5, C6, C7 IGND return path should be direct.

10.The traces from R7 to FB1 and from R8 to FB2 should be well matched. This can be achieved by routing these traces next to each other as much as possible. Ensure that these traces are not routed close to the traces connected to C1 or C2.

11. Minimize all traces associated with Y1, C40, and C41.

12.Decoupling capacitors (0.22 µF and 0.1 µF capacitors connected to V

DA

, V

DB

, V

DD

) must be placed next to those pins. Traces of these decoupling capacitors back to the Si24xx GND pin should be direct and short.

Figure 20. Reference Placement

Rev. 1.41

53

A N 9 3

11

C27 C26

11

1

C50

12

Y1

2

11

C51

5

6

7

1

2

U1 Si24HS

3A

XTALI

XTALO

VDD3.3

VDD3.3

GND

GND

VDDA

VDDB

21

20

19

12

12

C53

C52

12

*Note: Do NOT use ferrite beads in place of R12 and

R13.

C1A

C1B

14

13

4C

4B

R12*

R13*

2

3C 3E

2

C1

C2

3B

4G

4A

C4

+

3A

C5

6

7

4

5

8

1

2

3

QE

DCT

RX

IB

C1B

C2B

VREG

RNG1

3E

R7

U2

4F

9C

9A

C7

R9

DCT2

IGND

DCT3

QB

QE2

SC

VREG2

RNG2

9B

Si3018

3E

4F

16

15

14

13

12

11

10

9

9C

R2

4D

R8

C6

4E

9C

3E

6

5

8D

Q5

Q4

8D

C3

8C

10

+

D1

3E

10

1

Traces, pad sites and vias enclosed in box are in the DAA section, and must be separated from all other circuits by 5 mm.

FB2

7A

R16

RV1

RING

TIP

7B

FB1

7B 7C

2

C9

R15

C8

7C 7B

2

Note: Encircled references are described in the numbered paragraphs in Appendix A.

This is not a complete schematic. Only critical component placement and nets are drawn.

Figure 21. Illustrated Layout Guidelines

4.4.1. ISOmodem Layout Check List

Table 43 is a checklist that the designer can use during the layout process to ensure that all the recommendations in this application note have been implemented. Additionally, Figure 21 provides an annotated diagram of all

relevant layout guidelines for the SI3054 CNR/AMR/ACR applications. See "10.4.2. Safety" on page 267 for

information about design for safety compliance.

Table 43. Layout Checklist

P # Layout Items

1 U1 and U2 are placed so that pins 9–16 of U1 are facing pins 1–8 of U2. C1 and C2 are placed directly between U1 and U2.

2

Place U1, U2, C1, and C2 so that the recommended minimum creepage spacing for the target application is implemented. R12 and R13 should be close to U1.

3

C1 and C2 should be placed directly between U1 and U2. Short, direct traces should be used to connect C1 and C2 to U1 and U2. These traces should not be longer than two inches (measured between the system side pins and the DAA pins) and should be minimized in length. Place C2 such that its accompanying trace to the C2B pin (pin 6) on the Si3018 is not close to the trace from R7 to the

RNG1 pin on the Si3018 (pin 8).

If the system demands that the traces between U1 and U2 be between two and six inches in length, then special trace layout techniques must be used, as shown in

Figure 22.

Required

54 Rev. 1.41

P

AN93

Table 43. Layout Checklist (Continued)

# Layout Items

4

Place R7 and R8 as close as possible to the RNG1 and RNG2 pins (pins 8 and 9), ensuring a minimum trace length from the RNG1 or RNG2 pin to the R7 or R8 resistor.

In order to space the R7 component further from the trace from C2 to the C2B pin, it is acceptable to orient it 90 degrees relative to the RNG1 pin (pin 8).

5

The area of the loop from C50 to U1 pin 4 and from C51 to pin 13 back to pin 12

(DGND) should be minimized. The return traces to U2 pin 12 (DGND) should be on the component side.

6 The loop formed by XTALI, Y1, and XTALO should be minimized and routed on one layer. The loop formed by Y1, C40, and C41 should be minimized and routed on one layer.

7

The digital ground plane is made as small as possible, and the ground plane has rounded corners.

8

Series resistors on clock signals are placed near source.

9

Use a minimum of 15-mil-wide traces in DAA section, use a minimum of 20-mil-wide traces for IGND.

10

C3 should be placed across the diode bridge, and the area of the loop formed from

Si3018 pin 11 through C3 to the diode bridge and back to Si3018 pin 15 should be minimized.

11

FB1, FB2, and RV1 should be placed as close as possible to the RJ11.

12

C8 and C9 should be placed so that there is a minimal distance between the nodes where they connect to digital ground.

13

Use at least a 20-mil-wide trace from RJ11 to FB1, FB2, RV1, C8, and C9.

14

The routing from Tip and Ring of the RJ11 to the ferrite beads should be wellmatched.

15

The traces from the RJ11 through R7 and R8 to U2 Pin 8 and Pin 9 should be well matched. These traces may be up to 10 cm long.

16

The distance from Tip and Ring through EMC capacitors C8 and C9 to digital ground must be short.

17

There should be no digital ground plane in the DAA Section.

18

Minimize the area of the loop from U2 pin 7 and pin 10 to C5 and C6 and from those components to U2 pin 15 (IGND).

19

R2 should be placed next to the base of Q5, and the trace from R2 to U2 pin16 should be less than 20 mm.

20

Place C4 close to U2 and connect C4 to U2 using a short, direct trace.

21

The area of the loop formed from U2 pin 13 to the base of Q4 and from U2 pin 12 to the emitter of Q4 should be minimized.

22

The trace from C7 to U2 pin 15 should be short and direct.

Required

Rev. 1.41

55

A N 9 3

P

Table 43. Layout Checklist (Continued)

# Layout Items

23

The trace from C3 to the D1/D2 node should be short and direct.

24

Provide a minimum of 5 mm creepage (or use the capacitor terminal plating spacing as a guideline for small form factor applications) from any TNV component, pad or trace, to any SELV component, pad or trace.

25

Minimize the area of the loop formed from U2 pin 4 to R9 to U2 pin 15.

26

Cathode marking for Z1.

27

Pin 1 marking for U1 and U2.

28

Space and mounting holes to accommodate for fire enclosure if necessary.

29

IGND does not extend under C3, D1, FB1, FB2, R15, R16, C8, C9, or RV1.

30

Size Q1, Q3, Q4, and Q5 collector pads to safely dissipate 0.5 W (see text).

31

Submit layout to Silicon Laboratories for review.

Required

56

Figure 22. Special Trace Layout Technique

Rev. 1.41

AN93

4.4.2. Module Design and Application Considerations

Modem modules are more susceptible to radiated fields and ESD discharges than modems routed directly on the motherboard because the module ground plane is discontinuous and elevated from the motherboard’s ground plane. This separation also creates the possibility of loops that couple interfering signals to the modem. Moreover, a poor motherboard layout can degrade the ESD and EMI performance of a well-designed module.

4.4.2.1. Module Design

Particular attention should be paid to power-supply bypassing and reset-line filtering when designing a modem module. Trace routing is normally very short on modules since they are generally designed to be as small as possible. Care should be taken to use ground and power planes in the low-voltage circuitry whenever possible and to minimize the number of vias in the ground and power traces. Ground and power should each be connected to the motherboard through only one pin so as not to create loops. Bypassing and filtering components should be placed as close to the modem chip as possible with the shortest possible traces to a solid ground. It is recommended that a pi filter be placed in series with the module V

CC

pin with a filter such as the one shown in

Figure 23 on the reset line. This filter also provides a proper power-on reset to the modem. Careful module design

is critical since the module designer often has little control over the motherboard design and the environment in which the module will be used.

4.4.2.2. Motherboard Design

Motherboard design is critical to proper modem module performance and immunity to EMI and ESD events. First and foremost, good design and layout practices must be followed. Use ground and power planes whenever possible. Keep all traces short and direct. Use ground fill on the top and bottom layers. Use adequate power supply bypassing, and use special precautions with the power and reset lines to the modem module. Bypass V

CC

right at the modem module connector. Be sure the modem module is connected to V

CC

through a single pin. Likewise, be sure ground is connected to the modem module through one pin connected to the motherboard ground plane. The modem reset line is sensitive and must be kept very short and routed well away from any circuitry or components that could be subjected to an ESD event. Finally, mount the modem module as close to the motherboard as possible. Avoid high-profile sockets that increase the separation between the modem module and the motherboard.

Motherboard

Connector

VCC

GND

1.0

F

Murata BLM 18A

G601 SN1

To Modem Chip V

CC

(Si24xx Pins 5, 21)

0.1

F 1.0

10 k

To RESET

(Si24xx Pin 12)

2.2

F

GND

RESET

Figure 23. Modem Module V

CC

and RESET Filter

Rev. 1.41

57

A N 9 3

4.5. Analog Output

The call progress tone provided by AOUT and discussed in this section comes from a PWM output pin on the

ISOmodem. AOUT is a 50% duty cycle, 32 kHz square wave, pulse-width modulated (PWM) by voice band audio, such as call progress tones.

The PWM signal should be processed by a high-pass filter (R2, R3, R4, C2,C3 and C4), and, with the aid of a bridge mode amplifier, provides low-cost 100 mW to 250 mW power with a 3 to 5 V supply. See the circuit in

Figure 24. A slightly more expensive amplifier (LM4862) is available and, while still pin-compatible, provides twice

as much power.

Figure 24. PWM Audio Processing and Amplifying Circuit

4.5.1. Interaction between the AOUT Circuit and the Required Modem Reset Time

When modifying the circuit shown in Figure 24, it is important to examine the reset timing and know that when

external reset is applied to the modem, the AOUT pin still has time to rise to VCC due to the pullup installed on it.

One has to assume that the modem has been operating prior to reset and has put AOUT into a PWM state that is

100% low.

This is important because the AOUT pin, which is shared with INT in some packages, is read by the strapping

option logic in the modem at the end of the reset time to set the operational mode as shown in "2.1.3. Reset-Strap

Options for 16-Pin SOIC Package" and "2.1.4. Reset-Strap Options for 24-Pin TSSOP Package" on page 13 and

"2.1.5. Reset Strapping Options for QFN Parts" on page 15.

The value of the capacitors and resistors in the above circuit thus has an effect on the minimum required

ISOmodem reset time.

58 Rev. 1.41

AN93

4.5.2. Audio Quality

The mulipole filter illustrated in this diagram is designed to shape the response for a pleasant sound and remove interference, but note that, when PWM is demodulated in this way, it carries all the audio spectrum noise that is present in the power supply of the modem minus 6 dB. This requires VCC to be as clean as one wants the call progress audio to be. An alternative is for the AOUT signal to be buffered to a clean supply domain using a logic gate or transistor buffer.

The 3-pole low-pass filter, with a 3 dB point at approximately 2 kHz, filters the 32 kHz square wave from AOUT and

allows only audio signals below 2 kHz to pass. See Figure 25 below. The amplifier provides differential speaker

drive, eliminating the need for a large coupling capacitor. Some additional design work and optimization must be done to select the optimum gain and frequency response of this circuit, depending on speaker efficiency, final product enclosure, and performance requirements. A two- or even one-pole filter may be adequate in some applications.

Keep this audio circuitry well away from digital signals and use generous ground fill in the PCB layout.

 

Figure 25. Audio Filter Response

4.5.3. Power Dissipation in the Si3018 DAA

The power dissipated in the DAA and its support circuitry is dependent on the operational state. Table 44 shows

how power is distributed among the components in the BOM circuit. Two examples are given: one is the modem in the default FCC termination when the loop current is at its maximum, 120 mA. The other shows the power when the modem is attached to a TBR21 termination at the maximum loop current.

Table 44. Power Dissipation

Device FCC Termination

Loop Current = 120 mA

R1 14 mW

R3

R4

R10

R11

17 mW

26 mW

7 mW

468 mW

Q1

Q2

Q3

110 mW

2 mW

70 mW

TBR21 Mode

Loop Current = 56 mA

407 mW

244 mW

432 mW

203 mW

1 mW

161 mW

Rev. 1.41

59

A N 9 3

Q4

Q5

D1,D2

Other

Total

Table 44. Power Dissipation (Continued)

176 mW

166 mW

120m A x 0.8 V

96 mW each

257 mW (Si3018)

1.498 W

172 mW

130 mW

56 mA x 0.75 V

42 mW each

243 mW (Q1+Q2+Si3018)

2.077 W

60 Rev. 1.41

AN93

5. Modem Reference Guide

This section provides information about the architecture of the modem, its functional blocks, its registers, and their interactions. The AT command set is presented, and options are explained. The accessible memory locations (S registers and U registers) are described. Instructions for writing to and reading from them are discussed along with any limitations or special considerations. A large number of configuration and programming examples are offered as illustrations of actual testable applications. These examples can be used alone or in combination to create the desired modem operation. The use of S registers and U registers to control the operation, features, and configuration of the modem is documented.

The Si24xx ISOmodem chipset family is controller-based. No modem driver is required to run on the system processor. This makes the Si24xx ISOmodem family ideal for embedded systems because a wide variety of processors and operating systems can interface with the ISOmodem through a simple UART driver.

The modems in this family operate at maximum connect rates of 48 kbps upstream/V.92 (Si2494/93), 56 kbps downstream/V.90 (Si2457), 33.6 kbps/V.34 (Si2439/34), 14.4 kbps/V.32b (Si2415), and 2400 bps/ V.22b (Si2404) with support for all standard ITU-T fallback modes. These chipsets can be programmed to comply with FCC, JATE,

ETSI ES 203 021 and other country-specific PTT requirements. They also support V.42 and MNP2–4 error correction and V.42b and MNP5 compression. “Fast connect” and “transparent HDLC” modes are also supported.

The basic ISOmodem functional blocks are shown in Figure 1 on page 1. The ISOmodem includes a controller,

data pump (DSP), ROM, RAM, an oscillator, phase-locked loop (PLL), timer, UART interface, a parallel interface option, an SPI interface option, and a DAA interface. An optional voice mode is supported through an SSI interface and an external Si3000 voice codec. The modem software is permanently stored in the on-chip ROM. Only modem setup information (other than defaults) and other software updates need to be stored on the host or optional external EEPROM and downloaded to the on-chip RAM during initialization. There is no nonvolatile on-chip memory other than program ROM.

The following memory notation conventions are followed in this document:

Single-variable U registers are identified in this document as the register type (i.e., U) followed by the register’s hexadecimal address and finally the register identifier in parenthesis, e.g. U4A (RGFD). Once the full register reference is made, continuing discussion refers to the register name to simplify the text. The address and value of a single variable U register are always read from or written to the ISOmodem in hexadecimal.

Bit-mapped U registers are identified in this document at the top level as the register type (i.e., U) followed by the register’s hexadecimal address and finally the register identifier in parenthesis, e.g. U67 (ITC1). Once the full register reference is made, continuing discussion of the register at the top level refers to the register name to simplify the text. The address and value of a bit-mapped U register is always read from or written to the

ISOmodem in hexadecimal.

Bits within bit-mapped registers are identified in this document as the register type (i.e., U) followed by the register’s hexadecimal address, the bit or bit range within the register in brackets, and finally the bit or bit range identifier in parenthesis. Example: U67 [6] (OHS) or U67 [3:2] (] (DCT). Once the full register reference is made, continuing discussion of the bits or bit range refers to the bit or bit range name to simplify the text. The bit or bit range inside the bracket represents the actual bit or bit range within the register. The value of a bit or bit range is presented in binary for clarity. However, the address and value of a bit-mapped U register is always read from or written to the ISOmodem in hexadecimal.

ISOmodem S registers are identified with a decimal address (e.g., S38), and the number stored in an S register is also a decimal value.

5.1. Controller

The controller provides several vital functions, including AT command parsing, DAA control, connect sequence control, DCE (data communication equipment) protocol control, intrusion detection, parallel phone off-hook detection, escape control, Caller ID control and formatting, ring detection, DTMF (dual tone multi-frequency) control, call progress monitoring, error correction, and data compression. The controller also writes to the control registers that configure the modem. Virtually all interaction between the host and the modem is done via the controller. The controller uses AT (ATtention) commands, S registers, and U registers to configure and control the modem.

Rev. 1.41

61

A N 9 3

5.2. DSP

The DSP (data pump) is primarily responsible for modulation, demodulation, equalization, and echo cancellation.

Because the ISOmodem is controller-based, all interaction with the DSP is via the controller through AT commands, S registers, and/or U registers.

5.3. Memory

The user-accessible memory in the ISOmodem includes the S registers, accessed via the ATSn command, and the

U registers, accessed via the AT:Rhh and AT:Uhh commands. These memory locations allow the modem to be configured for a wide variety of functions and applications and for global operation.

5.4. AT Command Set

AT commands begin with the letters AT, end with a carriage return, and are case-insensitive. However, case cannot be mixed in a single command. The only exception to this format is the A/ command. This command is neither preceded by AT nor followed by a carriage return but re-executes the previous command immediately when the “/” character is typed. Generally, AT commands can be divided into two groups: control commands and configuration commands. Control commands, such as ATD, cause the modem to perform an action (in this case, dialing). The value of this type of command is changed at a particular time to perform a particular action. For example, the command ATDT1234<CR> causes the modem to go off-hook and dial the number 1234 via DTMF. No change is made to the modem settings during the execution of an action command. Configuration commands change modem characteristics until they are modified or reversed by a subsequent configuration command or the modem is reset. Modem configuration status can be determined with the use of ATY$, ATSn?, or AT:Rhh commands where

Y is a group of AT command arguments, n is an S-register number (decimal), and hh is the hexadecimal address of a U register.

The AT commands for reading configuration status are listed in Table 45. Each command is followed by a carriage

return.

Table 45. Configuration Status

Command Action

ATY$ settings Displays status of a group of settings.

AT$ Basic AT command settings.

AT&$

AT%$

AT\$

ATSn?

AT& command settings.

AT% command settings.

AT\ command settings.

Displays contents of S-register n

ATS$

AT:Rhh

AT:R

AT+VCID?

Displays contents of all S registers

Displays contents of U-register hh

Displays the current contents of all U registers.

Displays Caller ID setting.

The examples in Table 46 assume the modem is reset to its default condition. Each command is followed by a

carriage return.

62 Rev. 1.41

AN93

Command

AT$

AT&$

ATS2?

AT:R2C

Table 46. Command Examples

Result

E = 001

M = 000

Q = 000

V = 001

X = 004

Y = 000

&D = 001

&G = 017

&H = 000

(Si2457)

&P = 000

043

Comment

Configuration status of basic

AT commands.

Configuration of &AT commands.

00A0

S-register 2 value—Escape code character (+).

Value stored in register U2C.

The modem has a 48-character buffer, which makes it possible to enter multiple AT commands on a single line.

The multiple commands can be separated with spaces or linefeed characters to improve readability. AT, space and linefeed characters are not loaded into the buffer and are not included in the 48-character count. The command line must end with carriage return for the modem to begin executing it. The modem ignores command lines longer

than 48 characters and reports ERROR. Table 47 shows examples of multiple AT commands on a single line.

Table 47. Multiple AT Commands on a Single Line

Command

ATS0=4M1X1<CR>

AT S0=4 M1 X1 <CR>

Result

The modem auto-answers on the fourth ring. The speaker is on during dial and handshake only. Blind dialing is enabled.

Same as above (spaces do not matter).

Same as above.

ATS0=4<CR>

ATM1<CR>

ATX1<CR>

When concatenating commands on the same line, the following must also be taken in to account:

A semicolon is used to append to :U or :R commands. For example, AT:U42,0022;:R43;S6=4.

The command +IPR cannot be on the same line as a :U or :R command.

The commands *Y, :W, :P, +MS and +MR cannot be appended to. They must be the last command in a string.

The command AT+GCI=9 must be on a line of its own.

Consecutive U registers can be written in a single command as AT:Uhh,xxxx,yyyy,zzzz where hh is the first Uregister address in the three register consecutive series. This command writes a value of xxxx to Uhh, yyyy to

Uhh+1, and zzzz to Uhh+2. Additional consecutive values may be written up to the 48 character limit.

Rev. 1.41

63

A N 9 3

Table 48. Consecutive U-Register Writes on a Single Line

Command Result

AT:U00,0078,67EF,C4FA 0x0078 written to U00

0x67EF written to U01

0xC4FA written to U02

Caution: Some U-register addresses are reserved for internal use and hidden from the user. Consequently, there are gaps in the addresses of available U registers. Writing to reserved registers can cause unpredictable results.

Care must therefore be taken not to write to reserved or undefined register locations. This is especially likely when writing to consecutive U-register addresses: all addresses covered by a conscutive write operation must be defined and allowed to the user.

The AT command execution time is as long as 300 ms. The host must wait for a response after each command

(e.g., OK) before issuing additional commands. The reset recovery time (the time between a hardware reset or the carriage return of an ATZ command and the time the next AT command can be executed) must also be respected,

as described in "2.1.1. Reset Sequence" on page 11.

It is recommended that the host delay a minimum of 100 ms before sending any AT commands after a modem state change. A modem state change is indicated by the modem responses listed below; thus, the host should delay the recommended minimum after any of these responses:

NO CARRIER

BUSY

LINE IN USE

NO DIALTONE

In addition, the host can initiate a modem state change with the AT commands listed below. The host should delay the recommended minimum after the OK response from any of these commands:

ATH0

AT+FCLASS (if changing classes)

AT&T0

AT+VLS

 Character Abort

Characters must not be sent between the ATDT command and the protocol message. During this time, the modem is in a transition between command and data modes. Any characters sent during this time will cause the connection attempt to fail; this is known as a character abort.

Blind dialing (dialing without waiting for dial tone) is enabled by ATX0, ATX1, and ATX3. Whether or not blind dialing is enabled, use of the W dial modifier causes the modem to look for a dial tone before dialing the number string after the W. For example, an AT command string, ATX1 DT 9, W123456<CR>, causes the modem to dial 9 immediately without detecting a dial tone but does not dial 123456 until a dial tone is detected. AT commands and

result codes are listed in Tables 49–54. The default settings are shown in bold.

Command

$

Table 49. Basic AT Command Set

Action

Display Basic AT command mode settings (see text for details).

Answer incoming call.

Re-execute last command (executes immediately, not preceded by AT or followed by <CR>)

A

A/

64 Rev. 1.41

Command

Dn

Hn

H0

H1

In

En

E0

E1

I0

I1

I3

I6

Table 49. Basic AT Command Set (Continued)

Action

Dial

The dial command, which may be followed by one or more dial command modifiers, dials a phone number:

Modifier

! or &

, or <

;

P

T

G

L

W

Local DTE echo.

Disable.

Enable.

Hook-switch.

Go on-hook (hang up modem).

Go off-hook.

Identification and checksum.

Display Si24xx revision code.

A = Revision A.

B = Revision B, etc.

Display Si24xx firmware revision code (numeric).

Display line-side revision code.

18 (10)C = Si3018/10 Revision C.

Display the ISOmodem model number.

2404 = Si2404

2415 = Si2415

2434 = Si2434

2457 = Si2457

2493 = Si2493

AN93

Rev. 1.41

65

A N 9 3

L4

Mn

M0

M1

Ln

L1

L2

L3

M2

M3

On

O0

O1

Q1

R

Sn

O2

Qn

Q0

Command

I7

I8

Table 49. Basic AT Command Set (Continued)

Action

Diagnostic Results 1.

Format

RX <rx_rate>,TX <tx_rate>

PROTOCOL: <protocol>

LOCAL NAK <rre>

REMOTE NAK <rte>

RETRN/RR <rn>

DISC REASON <dr>

Diagnostic Results 2.

Format

RX LEVEL <rx_level>

TX LEVEL <tx_level>

EFFECTIVE S/N <esn>

RESIDUAL ECHO <re>

Speaker Volume

Low

Medium

High

Very High

Speaker operation (via AOUT).

Speaker is always off.

Speaker is on while dialing and handshaking; off in data mode.

Speaker is always on.

Speaker is off while dialing; on during handshaking and retraining.

Return to data mode from command mode.

Return to data mode.

Return to data mode and perform a full retrain (at any speed except

300 bps).

Return to data mode and perform rate renegotiation.

Response mode.

Enable result codes (See Table 54.)

Disable result codes (enable quiet mode)

Initiate V.23 Reversal (U53 bit 15 must be set.)

S-register operations (see Table 56)

66 Rev. 1.41

Yn

*Y0

*Y1

*Y2

*Y254

Z

X1

X2

X3

X4

X5

:E

Command

S$

Sn?

Sn=x

Vn

V0

V1

Xn

X0

:I

Table 49. Basic AT Command Set (Continued)

List contents of all S registers.

Display contents of S-register n.

Action

Set S-register n to value x (n and x are decimal values).

Result code type (See Table 54)

Numeric result codes.

Verbal result codes.

Call Progress Monitor (CPM)—This command controls which CPM signals are monitored and reported to the host from the ISOmodem (See

Table 54).

Basic results; disable CPM—Blind dial (does not wait for dial tone).

CONNECT message does not include speed.

Extended results; disable CPM—Blind dial. CONNECT message includes speed.

Extended results and detect dial tone only. X1 with dial tone detection.

Extended results and detect busy only. X1 with busy tone detection.

Extended results, full CPM. X1 with dial and busy tone detection.

Extended results—Full CPM enabled including ringback detection. X4 with ring back detection.

Long space disconnect—Modem hangs up after 1.5 seconds or more of continuous space while on-line.

Disable data memory access by disallowing :W and :Q Commands.

Enable continuous DTMF tone (ATxY1D9 sends continuous “9” tone).

Enable continuous answer tone. To enable continuous answer tone and answer, use ATxY2A.

Enables Data Memory Access, i.e. allows :W and :Q commands.

Hard reset—This command is functionally-equivalent to pulsing the

RESET pin low.

Read from serial EEPROM. The format is AT:Ehhhh, where hhhh is the

EEPROM address in hexadecimal.

Interrupt read—This command causes the ISOmodem to report the lower eight bits of the interrupt register U70 (IO0). The CID, OCD, PPD, and RI bits of this register are cleared, and the INT pin (HIR1 INT flag in parallel or SPI mode) is deactivated on this read.

AN93

Rev. 1.41

67

A N 9 3

Command

:LPhh

:M

:P

:Q

:R

:U

:W

Table 49. Basic AT Command Set (Continued)

Action

Read Quick Connect data.

hh is a hexadecimal value. Data are read as follows:

:LP

0

:LP

8

:LP

10

:LP

18 d

1

...d

8 d

9

...d

16 d

17

...d

24 d

25

...d

32

Write to serial EEPROM. The format is AT:Mhhhh,xxxx, where hhhh is the EEPROM address in hexadecimal and xxxx is the EEPROM data in hexadecimal.

Program RAM write: this command is used to upload firmware supplied by Silicon Labs to the ISOmodem. The format for this command is

AT:Phhhh,xxxx,yyyy,.... where hhhh is the first address in hexadecimal, and xxxx,yyyy,.... is data in hexadecimal. Only one :P command is allowed per AT command line. No other command can be concatenated in the :P command line. This command is only for use with special files provided by Silicon Laboratories. Do not attempt to use this command for any other purpose. Use &T6 to display checksum for patch verification.

:Qaaaa reads hexadecimal address aaaa. Returns hexadecimal data value dddd. Only one command per line.

U-register read—This command reads U-register values in hexadecimal.

The format is AT:Rhh, where hh = A particular U-register address in hexadecimal.

The AT:R command displays all U-register values.

Only one :R command is allowed per AT command line.

U-register write—This command writes to the 16-bit U registers. The format is AT:Uhh,xxxx,yyyy,zzzz,..., where hh = user-access address in hexadecimal.

xxxx = data in hexadecimal to be written to location hh.

yyyy = data in hexadecimal to be written to location (hh + 1).

zzzz = data in hexadecimal to be written to location (hh + 2).

etc.

Only one :U command is allowed per AT command line.

:Waaaa,dddd writes hexadecimal data value dddd to hexadecimal data address aaaa. Only one command per line.

68 Rev. 1.41

Command

*Y[sequence]

+DR=X

Table 49. Basic AT Command Set (Continued)

Action

Special Access Mode—This command enables special modes and data memory access.

[sequence] Description

254:Waaaa,dddd

254:Qaaaa

Write hexadecimal data value dddd to hexadecimal data address aaaa. Only one 254:W command per line.

Read hexadecimal address aaaa. Returns hexadecimal data value dddd. Only one 254:Q command per line.

2

1

0

Enable continuous answer tone for the ATA command. Use ATZ to clear this mode. For example, the single-line, multiple command is

AT*Y2A.

Enable continuous DTMF tone for first digit used in the ATD command. Use ATZ to clear this mode. For example, the single-line, multiple command for a continuous DTMF “1” digit would be AT*Y1D1.

Exit from 254:W or 254:Q access mode. Must reside on a separate line and must be the final sequence be sent after the final 254:W or 254:Q command.

Data compression reporting.

X Mode

0 Disabled

1 Enabled

If enabled, the intermediate result code is transmitted at the point after error control negotiation. The format of this result code is as follows:

Result code Mode

+DR:NONE Data compression is not in use

+DR:V42B Rec. V.42bis is in use in both directions

+DR:V42B RD Rec. V.42bis is in use in receive direction only

+DR:V42B TD Rec. V.42bis is in use in transmit directions only

+DR:V44 Rec. V.44 is in use in both directions

+DR:V44 RD Rec. V.44 is in use in receive direction only

+DR:V44 TD Rec. V.44 is in use in transmit directions only

Controls V.42bis data compression function.

A Direction

0 No compression (V.42bis P0 = 0)

AN93

+DS=

A,B,C,D

3

0

1

C

D

Both Directions (V.42bis P0 = 11)

Do not disconnect if Rec. V.42 is not negotiated.

Disconnect is Rec. V.42 is not negotiated.

Max_dict 512 to 65535

Max_string 6 to 250

Rev. 1.41

69

A N 9 3

Command

Table 49. Basic AT Command Set (Continued)

Action

Controls V.44 data compression function*

A Direction

0 No compression (V.42bis P0 = 0)

3 Both Directions (V.42bis P0 = 11)

+DS44 =

A,B,C,D,E,F,G,H,I

0 Do not disconnect if Rec. V.42 is not negotiated

1 Disconnect is Rec. V.42 is not negotiated

C Capability

D Max_codewords_tx 256 to 65536

E Max_codewords_rx 256 to 65536

F Max_string_tx 32 to 255

G Max_string_rx 32 to 255

+ES = A, B, C

*Note: Si2493 only

Enable synchronous access mode

A – specifies the mode of operation when initiating a modem connection

D = Disable synchronous access mode

6 = Enable synchronous access mode when connection is completed and data state is entered.

B – This parameter should not be used.

C – Specifies the mode of operation when answer a modem connection

D = Disable synchronous access mode

8 = Enable synchronous access mode when connection is completed and data state is entered.

70 Rev. 1.41

Command

+ESA =

A,B,C,D,E,F,G

+FCLASS = X

+FRM = X

Table 49. Basic AT Command Set (Continued)

Action

Synchronous access mode control options

A – Specifies action taken if an underrun condition occurs during transparent sub-mode

0 = Modem transmits 8-bit SYN sequences (see +ESA[G]) on

idle.

B – Specifies action taken if an underrun condition occurs after a flag during framed sub-mode

0 = Modem transmits 8-bit HDLC flags on idle.

C – Specifies action taken if an underrun or overrun condition occurs after a non-flag during framed sub-mode

0 = Modem transmits abort on underrun in middle of frame.

1 = Modem transmits flag on underrun in middle of frame and notifies host of underrun or overrun.

D – Specifies V.34 half duplex operation. This parameter should not be used.

E – Specifies CRC polynomial used while in framed sub-mode

0 = CRC generation checking disable

1 = 16-bit CRC generation and checking is performed by the modem

F – Specifies NRZI encoding and decoding

0 = NRZI encoding and decoding disabled

G – Defines 8-bit SYN

255 = Fixed at 255 (marks)

0

1

Class 1 Mode Enable.

X Mode

Off

Enables support for V.29 Fast Connect mode.

8

256

Enables voice mode.

SMS mode

Class 1 Receive Carrier.

X Mode

2

95

Detect V.21 (980 Hz) tone for longer than 100 ms, then send answer tone

(2100/2225 Hz) for 200 ms.

V.29 short synchronous.

96

200

V.29 full synchronous.

Returns to data mode prepared to receive an SMS message.

AN93

Rev. 1.41

71

A N 9 3

Command

+FTM = X

Table 49. Basic AT Command Set (Continued)

Action

Class 1 Transmit Carrier.

X Mode

2

53

Transmit V.21 (980 Hz) tone and detect (2100/2225 Hz). Stop transmit 980 Hz when (2100/2225 Hz is detected.

Same as &T4, but transmit V.29 7200 bps. Data pattern set by

S40 register. AT + FCLASS = 0 must be sent to restore the

ISOmodem to normal operation after test.

54 Same as &T4, but transmit V.29 9600 bps. Data pattern set by

S40 register. AT + FCLASS = 0 must be sent to restore the

ISOmodem to normal operation after test.

V.29 short synchronous.

95

96 V.29 full synchronous.

201 message.

Returns to data mode prepared to transmit an SMS protocol 1

202 message.

Returns to data mode prepared to transmit an SMS protocol 2

72 Rev. 1.41

Command

+GCI = X

Table 49. Basic AT Command Set (Continued)

Action

Country settings: Automatically configure all registers for a particular country.

X Country

82

87

89

8A

6C

73

7B

7E

59

0

61

69

51

53

57

58

3D

42

46

50

2E

31

35

3C

1B

20

26

27

9

A

F

16

Australia

Austria

Belgium

Brazil

Bulgaria

Canada

China

Columbia

Czech Republic

Denmark

Ecuador

Finland

France

Germany

Greece

Hong Kong

Hungary

India

Ireland

Israel

Italy

Japan

South Korea

Luxembourg

Malaysia

Mexico

Netherlands

New Zealand

Norway

Paraguay

Philippines

Poland

A0

A5

A6

FE

8B

B8

9C

9F

Portugal

Russia

Singapore

South Africa

Spain

Sweden

Switzerland

Taiwan

B4

B5

United Kingdom

United States (default)

Note: U registers are configured to Silicon Laboratories’ recommended values.

Changes may be made by writing individual registers after sending the

AT+GCI command. The +GCI command resets U registers through U86 and S6 (in Japan) to default values before setting country-specific values.

Refer to the chart and setup tables beginning with "6.2.2.1. Country

Initialization Table" on page 146.

AN93

Rev. 1.41

73

A N 9 3

Command

+GCI?

+GCI = ?

+IFC Options

+IFC = A

+IFC = A,B

+IPR = <rate>

Table 49. Basic AT Command Set (Continued)

Action

List current country code setting (response is: + GCI:<setting>)

List all possible country code settings.

Specifies the flow control to be implemented.

A Specifies the flow control method used by the host to control data from the modem

0 None

2 Hardware flow control (RTS)

B Specifies the flow control method used by the modem to control data from the host

0 None

2 Hardware flow control (CTS).

Fixed DTE Rate.

<rate>

0

Description

Automatically detect the baud rate.

[BPS] The decimal value of the rate in bits per second.

Note that the <rate> parameter represents the DTE rate in bps and may be set to any of the following values: 300, 600, 1200, 2400, 4800, 7200,

9600, 12000, 14400, 19200, 38400, 57600, 115200, 230400, 245760, and 307200.

74 Rev. 1.41

Command

+ITF = <high>,

<low>,

<report_period>

Table 49. Basic AT Command Set (Continued)

Action

Transmit Flow Control Thresholds.

+MR=X off signal. The parameter's unit is a byte. The valid range is 0-1023. The

default is 895.

<low> Threshold below which the modem will generate a flow on signal. The parameter's unit is a byte. The valid range is 0-1023. The

default is 128.

<report_period>The poll interval for the <EM><bnum><octnum0><octnum1> report. The valid range is 0–300 in 10 ms units. The default

value of 0 indicates that reporting is disabled.

Prior to a V.34 call, the modem dynamically splits the TX buffer to accommodate the required DLE-shielding of in-band data. This resizing affects the Transmit Flow Control Threshold settings. If the <on> or <off> threshold setting is greater than 512, it is reduced by 512 to accommodate the buffer splitting. For example, the default <high> setting of 895 would be reduced to 383 (895 – 512 = 383) prior to a V.34 call. See

Figure 3, “Transmit Data Buffers,” on page 22 and Figure 4, “Receive

Data Buffers,” on page 22 for the sizing and operation of TX and RX

elastic buffers.

Notes:

1. The <low> parameter must be set greater than the data frame size plus 2

(to accommodate the terminating <DLE><ETX> characters). Therefore, the default <low> setting of 128 is appropriate for a frame size of 64 octets but not for a frame size of 256 octets. For this case, the <low> setting must be greater than 258.

2. The optimum <high> parameter setting depends on the driver latency; specifically, how many bytes are transmitted to the modem after the modem's CTS signal becomes deasserted. If little or no data are transmitted after CTS becomes deasserted, the <high> parameter can be set to a value close to the TX buffer size for maximum buffer utilization

(e.g. a setting of 500 for V.34 applications). If significant data are transmitted after CTS becomes deasserted, the <high> parameter must be chosen to preclude TX buffer overrun.

Modulation reporting control.

X Mode

0 Disabled

1 Enabled

If enabled, the intermediate result code is transmitted at the point during connect negotiation. The format of this result code is as follows:

+MCR: <carrier> e.g. +MCR: V32B

+MRR: <rate> e.g. +MRR: 14400

AN93

Rev. 1.41

75

A N 9 3

Command

Table 49. Basic AT Command Set (Continued)

Action

Modulation Selection.

A Preferred modem carrier

V21 ITU-T V.21

V22 ITU-T V.22

V22B ITU-T V.22bis (default for Si2404)

V32 ITU-T V.32

V32B ITU-T V.32bis (default for Si2415)

V34 ITU-T V.34 (default for Si2434)

V90 ITU-T V.90 (default for Si2457)

+MS Options

+MS = A

+MS = A,B

+MS = A,B,C

+MS = A,B,C,D

+MS = A,B,C,D,E

+MS = A,B,C,D,E

,F

B Automatic modulation negotiation

0 Disabled

C

1 Enabled (default)

Min Tx rate. Specifies minimum transmission rate.

D

0 Not configurable; always set to 0.

Max Tx rate. Specifies highest transmission rate. If not specified, it is determined by the carrier and automode settings.

E

F

V21 300

V22 1200

V32 9600 V90 33600

V32B 14400 V92 48000

V22B 2400 V34 33600

Min Rx rate. Specifies minimum receive rate.

0 Not configurable; always set to 0.

Max Rx rate. Specifies maximum receive rate. If not specified

(set to 0), it is determined by the carrier and automode settings.

V21 300

V22 1200

V22B 2400

V32 9600 V90 54666

V32B 14400 V92 54666

V34 33600

Controls the action to be taken upon detection of call waiting.

X Mode

+PCW = X

+PIG=X

2 Ignore call waiting.

Controls the use of PCM upstream in a V.92 DCE.

X Mode

0 Enable PCM upstream.

+PMH=X

+PMHF=X

Controls the modem-on-hold procedures.

X Mode

0 Enables V.92 MOH.

1 Disables V.92 MOH.

V.92 MOH hook flash. This command causes the DCE to go on-hook and then return off-hook. If this command is initiated and the modem is not On Hold, Error is returned.

76 Rev. 1.41

Command

+PMHR=X

+PMHT=X

+PQC=X

Table 49. Basic AT Command Set (Continued)

Action

Initiate MOH. Requests the DCE to initiate or to confirm a MOH procedure. Valid only if MOH is enabled.

X Mode

0 V.92 MOH request denied or not available.

1 MOH with 10 s timeout granted.

2 MOH with 20 s timeout granted.

3 MOH with 30 s timeout granted.

4 MOH with 40 s timeout granted.

5 MOH with 1 min. timeout granted.

6 MOH with 2 min. timeout granted.

7 MOH with 3 min. timeout granted.

8 MOH with 4 min. timeout granted.

9 MOH with 6 min. timeout granted.

10 MOH with 8 min. timeout granted.

11 MOH with 12 min. timeout granted.

12 MOH with 16 min. timeout granted.

13 MOH with indefinite timeout granted.

14 MOH request denied. Future request will also be denied.

Controls access to MOH request and sets the timeout value.

X Mode

0 Deny V.92 MOH request.

1 Grant MOH with 10 s timeout.

2 Grant MOH with 20 s timeout.

3 Grant MOH with 30 s timeout.

4 Grant MOH with 40 s timeout.

5 Grant MOH with 1 min. timeout.

6 Grant MOH with 2 min. timeout.

7 Grant MOH with 3 min. timeout.

8 Grant MOH with 4 min. timeout.

9 Grant MOH with 6 min. timeout.

10 Grant MOH with 8 min. timeout.

11 Grant MOH with 12 min. timeout.

12 Grant MOH with 16 min. timeout.

13 Grant MOH with indefinite timeout.

V.92 Phase 1 and Phase 2 Control.

X Mode

0 Enable Short Phase 1 and Short Phase 2.

1 Enable Short Phase 1.

2 Enable Short Phase 2.

3 Disable Short Phase 1 and Short Phase 2.

AN93

Rev. 1.41

77

A N 9 3

Command

+PSS=X

+VCDT = n

+VCID = n

+VCIDR?

+VDR = n

+VGR

+VGT

Table 49. Basic AT Command Set (Continued)

Action

Selection of full or short startup procedures.

X Mode

0 The DCEs decide to use short startup procedures.

1 Forces the use of short startup procedures on next and subsequent connections.

2 Forces the use of full startup procedures on next and subsequent connections.

Caller ID Type.

n Mode

0 = After ring only

1 = Always on

2 = UK with wetting pulse

3 = Japan

Caller ID Enable.

n Mode

0 = Off

1 = Formatted Caller ID enabled.

2 = Raw data Caller ID enabled.

Type II Caller ID information—”+VCIDR:” will be followed by raw Caller

ID information including checksum. NO DATA will be displayed if no

Type II data are available.

Distinctive Ring.

n Mode

0,x

Disable distinctive ring; x = don't care

DROF and DRON result codes only. DROF and DRON are reported in 100 ms units.

DROF and DRON result codes as well as well as a

RING result code m/10 seconds after the falling edge of a ring pulse. DROF and DRON are reported in 100 ms units.

Receive Gain Selection.

The <gain> parameter has a range of 112-134 with 128 being the nominal value. This represents a range of -48 dB to 18 dB. The default is 128

(0 dB). This command is used to control the receive gain at the DTE from either the Si3000 Codec or the DAA. The purpose is to adjust the

DTE receive gain for the TAM voice stream during idle state.

Transmit Gain Selection.

The <gain> parameter has a range of 112-134 with 128 being the nominal value. This represents a range of -48 to 18 dB. The default is 128 (0 dB). This command is used to control the transmit gain at the DTE to either the Si3000 Codec or the DAA. The purpose is to adjust the DTE transmit gain for the TAM voice stream during idle state.

78 Rev. 1.41

Table 49. Basic AT Command Set (Continued)

Command

+VIP

+VIT

+VLS = n

Action

Load Voice Factory Defaults.

DTE/DCE Inactivity Timer.

The <timer> parameter has a range of 0–255 with units of seconds.

The default is 0 (disable).

Analog Source / Destination Select.

n Description

0 ISOmodem on-hook. AOUT disabled. Tone detectors disabled. Si3000 sample pass-through to DAA is inactive.

ISOmodem off-hook. AOUT disabled. Tone detectors dis1 abled.

4 ISOmodem on-hook. AOUT connected to ISOmodem tone generators. Tone detectors disabled.

5 ISOmodem off-hook. AOUT connected to PSTN. Tone detectors enabled.

15 ISOmodem goes off-hook, begins V.253 tone event reporting and Si3000 to DAA sample pass-through becomes active. Dial tone can be heard on handset.

ISOmodem on-hook. AOUT disabled. Tone detectors 20 enabled.

21 ISOmodem on-hook. AOUT connected to ISOmodem tone generators. Tone detectors enabled.

+VNH = <hook>

Automatic Hangup Control.

<hook> Hook control description

0

1

The ISOmodem retains automatic hangups as is normal in the other modes (such as hanging up the phone when the ISOmodem does not detect a data carrier with a given time interval).

The ISOmodem shall disable automatic hangups in the other non-voice modes.

2 The ISOmodem shall disable all hang-ups in other nonvoice modes. The ISOmodem shall only perform a “logical” hangup (return the OK result code).

+VRA = n

+VRID = n

Ringing Tone Goes Away Timer.

The ISOmodem only uses this command in call origination transactions.

This command sets the amount of time in 0.1 second units the ISOmodem shall wait between Ringing Tone before it can assume that the remote modem has gone off-hook. Default time is five seconds.

Repeat Caller ID.

n Description

0 formatted form.

Display Caller ID information of the last incoming call in

1 Display Caller ID information of the last incoming call in unformatted form.

AN93

Rev. 1.41

79

A N 9 3

Command

+VRN = n

+VRX

+VSD = <sds>,

<sdi>

+VSM = n

+VSP

Table 49. Basic AT Command Set (Continued)

Action

Ringing Tone Never Appeared Timer.

This command sets the amount of time in seconds the ISOmodem will wait looking for Ringing Tone. If the ISOmodem does not detect Ringing

Tone in this time period, the ISOmodem shall assume that the remote station has gone off-hook and return an OK result code. Default time is

0 seconds.

Receive Voice Stream.

Enable DTE receive of voice stream. The DCE will return a CONNECT response followed by the voice stream as defined by the +VSM command. The DTE can issue a <DLE><!> or <DLE><ESC> sequence to terminate the receive stream. The DCE will return a <DLE><ETX> followed by an OK response for <DLE><!> and <DLE><ESC> followed by an OK response for <DLE><ESC>. The DCE can be configured to terminate the stream using the DTE/DCE Inactivity Timer, which is configured using the +VIT command. The DTE will need to process any

<DLE> shielded events present in the data stream. Any <DLE><DLE> sequences can be preserved to allow less overhead during playback of the stream with the +VTX command.

Silence Detection.

<sds> Noise level sensitivity

127

128

129

Less aggressive [more sensitive, lower noise levels considered to be silence].

Nominal level of sensitivity.

<sdi>

More aggressive [less sensitive, higher noise levels considered to be silence]. sets the length of a time interval in 0.1 second units, which must contain no or little activity, before the ISOmodem will report (QUIET) (<DLE><q>).

Default is five seconds.

Voice Compression Method.

0 Signed PCM

1 Unsigned PCM

4 G.711 µ-Law

5 G.711 A-Law

129 ADPCM 2-bit (2 kB/s storage)

131 ADPCM 4-bit (4 kB/s storage)

Voice Speakerphone State

<mode> Description

0 Speakerphone AEC, AES and LEC disabled.

Handset FIR filter coefficients are selected.

1 Speakerphone AEC, AES and LEC enabled.

Speakerphone FIR filter coefficients are selected.

The +VLS=13 command must be used in combination with this setting.

80 Rev. 1.41

Table 49. Basic AT Command Set (Continued)

Command

+VTD = n

Action

DTMF / Tone Duration Timer .

This command sets the default DTMF / tone generation duration in

10 ms units for the +VTS command. Default time is 1 second

(n = 100).

+VTS = [<freq1>,

<freq2>, <dur>]

DTMF and Tone Generation.

This command can be used to produce DTMF tones, single-frequency tones, and double-frequency tones. Note that the bracket characters are required for correct operation.

<freq1>

<freq2>

<dur>

Frequency one, which has a range of 0, 200-3200 Hz.

Frequency two, which has a range of 0, 200-3200 Hz.

Duration of the tone(s) in 10 ms units.

+VTX

Transmit Voice Samples.

Used for sending digitized voice samples from host memory through the

UART interface. The +VSM command determines the format of the samples. Multiple routing options are available.

AN93

Rev. 1.41

81

A N 9 3

AT Command

ATI0

ATI1

ATI0

ATI1

ATI0

ATI1

ATI0

ATI1

ATI0

ATI1

Note: Gray cell = not allowed.

X

B

B

00

B

Table 50. Basic ATI Command Set

Si2494/39 Si2493/57/34/15/04

Chip Revision

C

C

D/D1

D

X

C

00

C

000

X

D

X

D

X

A/A1

A

000

X

A

A

X

Patch

None

(rb_pX_YYYY)

(rc_pX_YYYY)

(rd_pX_YYYY)

(ra_pX_YYYY)

82 Rev. 1.41

AN93

5.5. Extended AT Commands

The extended AT commands, described in Tables 51–53, are supported by the ISOmodem.

Table 51. Extended AT& Command Set

Command

&$

Action

Display AT& current settings (see text for details).

&Dn

&D0

&D1

&D2

&D3

&Gn

&G3

&G4

&G5

&G6

Escape pin function (similar to DTR)

Escape pin is not used.

Escape pin escapes to command mode from data mode. The escape pin must be enabled by setting bit HES (Enable Hardware Escape Pin, U70 bit 15).

Escape pin assertion during a modem connection causes the modem to go on-hook and return to command mode. The escape pin must be enabled by setting bit HES (Enable Hardware Escape

Pin, U70 bit 15).

Escape pin assertion causes ATZ command (reset and return OK result code). The escape pin must be enabled by setting bit HES (Enable Hardware Escape Pin, U70 bit 15).

Line connection rate limit—This command sets an upper limit on the line speed that the ISOmodem can connect. The &Hn commands may limit the line speed as well (&Gn not used for &H0 or &H1).

Not all modulations support rates given by &G. Improper settings are ignored.

1200 bps max.

2400 bps max.

4.8 kbps max.

7.2 kbps max.

&G7

&G8

&G9

&G10

9.6 kbps max.

12 kbps max.

14.4 kbps max (default for Si2415)

16.8 kbps max.

&G11

&G12

&G13

&G14

19.2 kbps max.

21.6 kbps max.

24 kbps max.

26.4 kbps max.

&G15

&G16

28.8 kbps max.

31.2 kbps max.

&G17 33.6 kbps max (default for Si2457 transmit and Si2434)

&Hn

Switched network handshake mode—&Hn commands must be on a separate command line from

ATD, ATA, or ATO commands.

V.90 with automatic fallback (56 kbps to 300 bps) (default for Si2457) &H0

Notes:

1. The initial number attempted to test for an outside line is controlled by S51 (default = 1).

2. AT&$ reflects the last AT&P command issued but does not reflect any subsequent changes made by writing U registers with AT:U.

Rev. 1.41

83

A N 9 3

Table 51. Extended AT& Command Set (Continued)

&H5

&H6

&H7

&H8

&H1

&H2

&H3

&H4

V.90 only (56 kbps to 28 kbps)

V.34 with automatic fallback (33.6 kbps to 300 bps) (default for Si2434)

V.34 only (33.6 kbps to 2400 bps)

ITU-T V.32bis with automatic fallback (14.4 kbps to 300 bps) (default for Si2415)

ITU-T V.32bis only (14.4 kbps to 4800 bps)

ITU-T V.22bis only (2400 bps or 1200 bps) (default for Si2404)

ITU-T V.22 only (1200 bps)

Bell 212 only (1200 bps)

&H9

&H10

Bell 103 only (300 bps)

ITU-T V.21 only (300 bps)

&H11

&H12

&Pn

&P0

&P1

&Tn

V.23 (1200/75 bps)

V.92 with automatic fallback (default for Si2493)

Japan pulse dialing*

Configure ISOmodem for 10 pulse-per-second pulse dialing

Configure ISOmodem for 20 pulse-per-second pulse dialing (Japan)

Test mode.

&T2

&T3

&T4

&T5

&T6

Initiate ITU-T V.54 (ANALOOP) test. Modem mode set by &H. Test loop is through the DSP and

DAA interface section of the ISOmodem only. ISOmodem echoes data from TX pin (Hardware Interface Register 0 in parallel or SPI mode) back to RX pin (Hardware Interface Register 0 in parallel or

SPI mode). This test mode is typically used during board-level debug.

Initiate ITU-T V.54 (ANALOOP) test. Modem mode set by &H. Test loop is through the DSP (ISOmodem), DAA interface section (ISOmodem), ISOcap interface (Si3018/10), and analog hybrid circuit

(Si3018/10). ISOmodem echoes data from TX pin (Hardware Interface Register 0 in parallel or SPI mode) back to RX pin (Register 0 in parallel or SPI mode). Phone line termination required as in

Figure 26. In order to test only the ISOcap link operation, the hybrid and AFE codec can be removed

from the test loop by setting U62 [1] (DL) = 1.

Initiate transmit as originating modem with automatic data generation. Modulation, data rate, and symbol rate are set by &H, &G, and S41. Data pattern is set by the S40 register. Continues until the

ATH command is sent after an escape into command mode. Data are also demodulated as in

ANALOOP. The test can be ended by escaping and issuing the ATH command.

Initiate transmit as answering modem with automatic data generation. Modulation, data rate, and symbol rate are set by &H, &G, and S41. Data pattern is set by the S40 register. Continues until the

ATH command is sent after an escape into command mode. Data are also demodulated as in

ANALOOP. The test can be ended by escaping and issuing the ATH command.

Compute checksum for firmware-upgradeable section of program memory. If no firmware upgrade is installed, &T6 returns C:80e9.

Notes:

1. The initial number attempted to test for an outside line is controlled by S51 (default = 1).

2. AT&$ reflects the last AT&P command issued but does not reflect any subsequent changes made by writing U registers with AT:U.

84 Rev. 1.41

AN93

Table 51. Extended AT& Command Set (Continued)

&T7

&Xn

&X0

&X1

&X2

Y2A

2

Built-in modem self-test. This test checks the RAM and calculates ROM CRC. If the RAM check fails, it will display the offending RAM address, and return ERROR. If the RAM check passes, it will display the ROM CRC and return OK. In either case, the modem is hard reset after the test. The host should wait for 100ms after the OK to issue the next AT command.

Automatic determination of telephone line type.

Abort &x1 or &x2 command.

Automatic determination of telephone line type.

Result code: WXYZn

W: 0 = line supports DTMF dialing.

X:

Y:

1 = line is pulse dial only.

0 = line supports 20 pps dialing.

1 = line supports 10 pps dialing only.

0 = extension network present (PBX).

Z: n:

1 = outside line (PSTN) connected directly.

0 = continuous dial tone.

1 = make-break dial tone.

0–9 (number required for outside line if Y = 0).

1

Same as &X1, but Y result (PBX) is not tested.

Produce a constant answer tone (ITU-T) and return to command mode. The answer tone continues until the ATH command is received or the S7 timer expires.

Enter low-power wake-on-ring mode.

&Z

Notes:

1. The initial number attempted to test for an outside line is controlled by S51 (default = 1).

2. AT&$ reflects the last AT&P command issued but does not reflect any subsequent changes made by writing U registers with AT:U.

TIP

+

600

Si3018 V

TR

10 µF

RING

Figure 26. Phone Line Termination Circuit

I

L

Rev. 1.41

85

A N 9 3

Table 52. Extended AT% Command Set

Command

%$

%B

Action

Display AT% command settings (see text for details).

Report blacklist. See also S42 register.

%Cn

%C0

%C1

Data compression.

Disable V.42bis and MNP5 data compression.

Enable V.42bis in transmit and receive paths.

If MNP is selected (\N2), %C1 enables MNP5 in transmit and receive paths.

%C2

%C3

%On

%O1

%O2

%Vn

%V0

Enable V.42bis in transmit path only.

Enable V.42bis in receive path only.

Answer mode.

ISOmodem answers a call in answer mode.

ISOmodem answers a call in originate mode.

Automatic Line Status Detection.

After the %V1 and %V2 commands are issued, the ISOmodem automatically checks the telephone connection for whether a line is present. If a line is present, the ISOmodem automatically checks if the line is already in use. Finally, the ISOmodem checks line status both before going off-hook and again before dialing. %V1 uses the fixed method, and %V2 uses the adaptive method. %V0

(default) disables this feature.

Disable automatic line-in-use detection.

Automatic Line Status Detection - Fixed Method.

Description: Before going off-hook with the ATD, ATO, or ATA commands, the ISOmodem compares the line voltage (via LVCS) to registers NOLN (U83) and LIUS (U84):

%V1

Loop Voltage

0

 LVCS  NOLN

NOLN

 LVCS  LIUS

LIUS

 LCVS

Action

Report NO LINE and remain on-hook.

Report LINE IN USE and remain on-hook.

Go off-hook and establish a modem connection.

Once the call has begun, the off-hook intrusion algorithm (described in "6.6.2. Intrusion Explanation" on page 174) operates normally. In addition, the ISOmodem reports NO LINE if the line is com-

pletely disconnected. If the HOI bit (U77, bit 11) is set, LINE IN USE is reported upon intrusion.

86 Rev. 1.41

%V2

AN93

Table 52. Extended AT% Command Set (Continued)

Automatic Line Status Detection - Adaptive Method.

Description: Before going off-hook with the ATD, ATO, or ATA commands, the ISOmodem compares the line voltage (via LVCS) to the NLIU (U85) register:

Loop Voltage

0

 LVCS  (0.0625 x NLIU)

(0.0625 x NLIU) < LVCS

Action

Report NO LINE and remain on-hook.

 (0.85 x NLIU) Report LINE IN USE and remain on-hook.

(0.85 x NLIU) < LCVS Go off-hook and establish a modem connection.

The NLIU register is updated every 1 ms with the minimum non-zero value of LVCS in the last

30 ms. This allows the ISOmodem to eliminate errors due to 50/60 Hz interference and also adapt to relatively slow changes in the on-hook dc reference value on the telephone line. This algorithm does not allow any non-zero values for NLIU below 0x0007. The host may also initialize NLIU prior to issuing the %V2 command. Once the call has begun, the off-hook intrusion algorithm (described

in "6.6.2. Intrusion Explanation" on page 174) operates normally. In addition, the ISOmodem reports

NO LINE if the telephone line is completely disconnected. If the HOI (U77, bit 11) bit is set, LINE IN

USE is reported upon intrusion.

Table 53. Extended AT\ Command Set

Command

\$

\Bn

Action

Display AT\ command settings (see text for details).

Character length is automatically set in autobaud mode.

\B0

\B1

\B2

\B3

Reserved

7N1—Seven data bits, no parity, one stop bit, one start bit, nine bits total (\N0 only)

7P1—Seven data bits, parity optioned by \P, one stop bit, one start bit, ten bits total

8N1—Eight data bits, no parity, one stop bit, one start bit, 10 bits total (default)

\B5

\B6

8P1—Eight data bits, parity optioned by \P, one stop bit, one start bit, 11 bits total (\N0 only) This

mode is not allowed with a parallel or SPI interface.

8X1—Eight data bits, one escape bit, one stop bit, one start bit, 11 bits total (enables ninth-bit escape mode) This mode is not allowed with a parallel or SPI interface.

\Nn Asynchronous protocol.

Notes:

1. When in autobaud mode, \B0, \B1, and \P1 is not detected automatically. The combination of \B2 and \P3 is detected.

This is compatible with seven data bits, no parity, two stop bits. Seven data bits, no parity, one stop bit may be forced by sending AT\T17\B1.

2. After changing the baud rate, the result code OK is sent at the old DTE rate. Subsequent commands must be sent at the new rate. If the ISOmodem is configured in autobaud mode, AT commands \T0 through \T15 lock the new baud rate and disable autobaud. To eliminate any possibility of a race condition between the receipt of the result code and the changing of the UART speed, CTS is de-asserted while the result code is being sent until after the rate has been successfully changed. The host should send the \T command and wait for the OK response. After OK has been received, the host may send data at the new rate as soon as CTS is asserted. The \T command should be the last command sent in a multi-command line and may not be used on the same command line as :U or :R commands. If it is not, the OK from the \T command is sent at the old DTE rate, and other result codes are sent at the new DTE rate.

3. The autobaud feature does not detect this rate.

4. Default is \T16 if autobaud is selected by reset-strap option; otherwise default is \T9 (19.2 kbps).

5. The autobaud feature does not detect this rate in voice mode (+FCLASS = 8).

Rev. 1.41

87

A N 9 3

Table 53. Extended AT\ Command Set (Continued)

Command

\N0

Action

Wire mode (no error correction, no compression).

\N2

\N3

MNP reliable mode. The ISOmodem attempts to connect with the MNP protocol. If unsuccessful, the call is dropped. Compression is controlled by %Cn.

V.42 auto-reliable—The ISOmodem attempts to connect with the V.42 protocol. If unsuccessful, the MNP protocol is attempted. If unsuccessful, wire mode is attempted. Compression is controlled by %Cn.

\N4

\N5

\Pn

\P0

\P1

\P2

V.42 (LAPM) reliable mode (or drop call)—Same as \N3 except that the ISOmodem drops the call instead of connecting in MNP or wire mode. Compression is controlled by %Cn.

V.42 and MNP reliable mode - The ISOmodem attempts to connect with V.42. If unsuccessful, MNP is attempted. If MNP is unsuccessful, the call is dropped. Wiremode is not attempted. Compression is controlled by %Cn.

Parity type is automatically set in autobaud mode.

Even

Space

1

Odd

\P3

\Qn

\Q0

Mark.

Modem-to-DTE flow control.

Disable all flow control—This may only be used if the DTE speed and the line (DCE) speed are guaranteed to match throughout the call.

Use CTS only.

\Q2

\Q3

\Tn

\T0

\T1

Use RTS/CTS.

DTE rate

2

300 bps

600 bps

\T2 1200 bps

Notes:

1. When in autobaud mode, \B0, \B1, and \P1 is not detected automatically. The combination of \B2 and \P3 is detected.

This is compatible with seven data bits, no parity, two stop bits. Seven data bits, no parity, one stop bit may be forced by sending AT\T17\B1.

2. After changing the baud rate, the result code OK is sent at the old DTE rate. Subsequent commands must be sent at the new rate. If the ISOmodem is configured in autobaud mode, AT commands \T0 through \T15 lock the new baud rate and disable autobaud. To eliminate any possibility of a race condition between the receipt of the result code and the changing of the UART speed, CTS is de-asserted while the result code is being sent until after the rate has been successfully changed. The host should send the \T command and wait for the OK response. After OK has been received, the host may send data at the new rate as soon as CTS is asserted. The \T command should be the last command sent in a multi-command line and may not be used on the same command line as :U or :R commands. If it is not, the OK from the \T command is sent at the old DTE rate, and other result codes are sent at the new DTE rate.

3. The autobaud feature does not detect this rate.

4. Default is \T16 if autobaud is selected by reset-strap option; otherwise default is \T9 (19.2 kbps).

5. The autobaud feature does not detect this rate in voice mode (+FCLASS = 8).

88 Rev. 1.41

AN93

Table 53. Extended AT\ Command Set (Continued)

Command

\T3 2400 bps

\T4

\T5

\T6

\T7

\T8

\T9

\T10

\T11

4800 bps

7200 bps

9600 bps

12.0 kbps

38.4 kbps

57.6 kbps

3

14.4 kbps.

19.2 kbps

4

\T12

\T13

\T14

\T15

\T16

\T17

\U

Action

115.2 kbps

230.4 kbps

5

245.760 kbps

3

307.200 kbps

Autobaud On

4

Autobaud Off. Lock at current baud rate.

In UART mode:

1. Causes a low pulse (25 ms) on RI and DCD

2. Makes INT the inverse of ESC

3. Makes RTS the inverse of CTS

In parallel or SPI mode, causes a low pulse (25 ms) on INT.

This command terminates with RESET and does not generate an OK message.

\Vn

\V0

Connect message type.

Report connect and protocol message.

Notes:

1. When in autobaud mode, \B0, \B1, and \P1 is not detected automatically. The combination of \B2 and \P3 is detected.

This is compatible with seven data bits, no parity, two stop bits. Seven data bits, no parity, one stop bit may be forced by sending AT\T17\B1.

2. After changing the baud rate, the result code OK is sent at the old DTE rate. Subsequent commands must be sent at the new rate. If the ISOmodem is configured in autobaud mode, AT commands \T0 through \T15 lock the new baud rate and disable autobaud. To eliminate any possibility of a race condition between the receipt of the result code and the changing of the UART speed, CTS is de-asserted while the result code is being sent until after the rate has been successfully changed. The host should send the \T command and wait for the OK response. After OK has been received, the host may send data at the new rate as soon as CTS is asserted. The \T command should be the last command sent in a multi-command line and may not be used on the same command line as :U or :R commands. If it is not, the OK from the \T command is sent at the old DTE rate, and other result codes are sent at the new DTE rate.

3. The autobaud feature does not detect this rate.

4. Default is \T16 if autobaud is selected by reset-strap option; otherwise default is \T9 (19.2 kbps).

5. The autobaud feature does not detect this rate in voice mode (+FCLASS = 8).

Rev. 1.41

89

A N 9 3

Table 53. Extended AT\ Command Set (Continued)

Command

\V2

Action

Report connect message only (exclude protocol message).

\V4 Report connect and protocol message with both upstream and downstream connect rates.

Notes:

1. When in autobaud mode, \B0, \B1, and \P1 is not detected automatically. The combination of \B2 and \P3 is detected.

This is compatible with seven data bits, no parity, two stop bits. Seven data bits, no parity, one stop bit may be forced by sending AT\T17\B1.

2. After changing the baud rate, the result code OK is sent at the old DTE rate. Subsequent commands must be sent at the new rate. If the ISOmodem is configured in autobaud mode, AT commands \T0 through \T15 lock the new baud rate and disable autobaud. To eliminate any possibility of a race condition between the receipt of the result code and the changing of the UART speed, CTS is de-asserted while the result code is being sent until after the rate has been successfully changed. The host should send the \T command and wait for the OK response. After OK has been received, the host may send data at the new rate as soon as CTS is asserted. The \T command should be the last command sent in a multi-command line and may not be used on the same command line as :U or :R commands. If it is not, the OK from the \T command is sent at the old DTE rate, and other result codes are sent at the new DTE rate.

3. The autobaud feature does not detect this rate.

4. Default is \T16 if autobaud is selected by reset-strap option; otherwise default is \T9 (19.2 kbps).

5. The autobaud feature does not detect this rate in voice mode (+FCLASS = 8).

90 Rev. 1.41

AN93

The connect messages shown in Table 54 are sent when link negotiation is complete.

Table 54. Result Codes

Numeric

1

0

1

Meaning Verbal Response

Command was successful OK

Link established at 300 bps or higher

CONNECT

X0

X

X

X1

X

X

X2

X

X

2

3

4

5

Incoming ring detected

Link dropped

Command failed

Link established at 1200

RING

NO CARRIER

ERROR

CONNECT 1200

X

X

X

X

X

X

X

6

7

Dial tone not present

Line busy

NO DIALTONE

BUSY

9

10

11

12

14

15

16

17

18

19

20

21

22

23

24

30

31

32

Ringback detected

Link established at 2400

Link established at 4800

Link established at 9600

Link established at 19200

Link established at 7200

Link established at 12000

Link established at 14400

Link established at 16800

Link established at 21600

Link established at 24000

Link established at 26400

Link established at 28800

Link established at 31200

RINGING

CONNECT 2400

CONNECT 4800

2

CONNECT 9600

2

CONNECT 19200

3

CONNECT 7200

2

CONNECT 12000

2

CONNECT 14400

2

CONNECT 16800

3

CONNECT 21600

3

CONNECT 24000

3

CONNECT 26400

3

CONNECT 28800

3

CONNECT 31200

3

CONNECT 33600

3

Link established at 33600

Caller ID mark detected CIDM

Hookswitch flash detected FLASH

UK CID State Tone Alert

Signal detected

STAS

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Notes:

1. Numeric mode: Result code <CR>.

2. This message is supported only on the Si2493, Si2457, Si2434, and Si2415.

3. This message is supported only on the Si2493, Si2457, and Si2434.

4. X is not preceded by <CR><LF>.

5. This message is supported only on the Si2493 and Si2457.

6. V.44 with data compression disabled (+DS = 0) emits this result code.

7. If data compression is disabled (+DS = Q), the modem returns the message PROTOCOL:V42.

X

X

X

X

X

X3

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X4

X

X

X5

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Rev. 1.41

91

A N 9 3

Table 54. Result Codes (Continued)

Numeric

1

33

40

Meaning

Overcurrent condition

Blacklist is full

Verbal Response

X

4

BLACKLIST FULL (enabled via S42 register)

X0

X

X

X1

X

X

X2

X

X

X3

X

X

X4

X

X

41

42

43

44

45

52

60

61

63

64

65

66

67

68

69

70

75

77

79

Attempted number is blacklisted.

No phone line present

Telephone line is in use

Polarity reversal detected

Polarity reversal NOT detected

Link established at 56000

Link established at 32000

Link established at 48000

Link established at 28000

Link established at 29333

Link established at 30666

Link established at 33333

Link established at 34666

Link established at 36000

Link established at 37333

No protocol

Link established at 75

V.42 protocol

V.42bis protocol

MNP2 protocol

BLACKLISTED (enabled via

S42 register)

NO LINE (enabled via %Vn commands)

LINE IN USE (enabled via

%Vn commands)

POLARITY REVERSAL

(enabled via G modifier)

NO POLARITY REVERSAL

(enabled via G modifier)

CONNECT 56000

CONNECT 32000

CONNECT 48000

CONNECT 28000

CONNECT 29333

CONNECT 30666

CONNECT 33333

CONNECT 34666

CONNECT 36000

CONNECT 37333

5

5

5

5

5

5

5

5

5

5

PROTOCOL: NONE

CONNECT 75

PROTOCOL: V42

6

PROTOCOL: V42bis

2

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

Set with \V0 command.

X X X

X

Set with \V0 command.

Set with \V0 command.

Set with \V command.

80

81

MNP3 protocol

PROTOCOL:

ALTERNATE, +CLASS 2

PROTOCOL:

ALTERNATE, +CLASS 3

Set with \V command.

Notes:

1. Numeric mode: Result code <CR>.

2. This message is supported only on the Si2493, Si2457, Si2434, and Si2415.

3. This message is supported only on the Si2493, Si2457, and Si2434.

4. X is not preceded by <CR><LF>.

5. This message is supported only on the Si2493 and Si2457.

6. V.44 with data compression disabled (+DS = 0) emits this result code.

7. If data compression is disabled (+DS = Q), the modem returns the message PROTOCOL:V42.

X

X

X

X

X5

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

92 Rev. 1.41

AN93

Table 54. Result Codes (Continued)

Numeric

1 Meaning Verbal Response X0 X1 X2 X3 X4

82

83

84

90

91

92

93

94

95

96

97

98

99

100

MNP4 protocol

MNP5 protocol

V.44 protocol

Link established at 38666

Link established at 40000

Link established at 41333

Link established at 42666

Link established at 44000

Link established at 45333

Link established at 46666

Link established at 49333

Link established at 50666

Link established at 52000

Link established at 53333

PROTOCOL:

ALTERNATE, +CLASS 4

PROTOCOL:

ALTERNATE, +CLASS 5

2

PROTOCOL: V.44

7

CONNECT 38666

5

CONNECT 40000

5

CONNECT 41333

5

CONNECT 42666

5

CONNECT 44000

5

CONNECT 45333

5

CONNECT 46666

5

CONNECT 49333

5

CONNECT 50666

5

CONNECT 52000

5

CONNECT 53333

5

CONNECT 54666

5

UN-OBTAINABLE NUMBER X

Set with \V command.

Set with \V command.

Set with +DR command

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

101

102

Link established at 54666

DTMF dial attempted on a pulse dial only line

X

X

X

X

Notes:

1. Numeric mode: Result code <CR>.

2. This message is supported only on the Si2493, Si2457, Si2434, and Si2415.

3. This message is supported only on the Si2493, Si2457, and Si2434.

4. X is not preceded by <CR><LF>.

5. This message is supported only on the Si2493 and Si2457.

6. V.44 with data compression disabled (+DS = 0) emits this result code.

7. If data compression is disabled (+DS = Q), the modem returns the message PROTOCOL:V42.

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X

X5

X

X

X

X

X

X

X

X

X

X

X

X

X

Rev. 1.41

93

A N 9 3

Table 55. Disconnect Codes

Disconnect Code

8002

8

8008

9

8009

A

B

D

E

10

8014

8017

8018, 8019

1a

1b

801c

801e

801f

802a

802b

802c

2d

Handshake stalled.

Reason

No dial tone detected.

No line available.

No loop current detected.

Parallel phone pickup disconnect.

No ringback.

Busy signal detected.

V.42 requested disconnect.

MNP requested disconnect.

Drop-dead timer disconnect.

Loop-current loss.

Remote modem requested disconnect.

Soft-reset command received.

V.42 Protocol error.

MNP Protocol error.

Loss-of-carrier disconnect.

Long-space disconnect.

Character-abort disconnect.

Rate request failed.

Answer modem energy not detected.

V.8 negotiation failed.

TX data timeout.

94 Rev. 1.41

AN93

5.6. S Registers

S registers are typically used to set modem configuration parameters during initialization and are not usually changed during normal modem operation. S-register values other than defaults must be written via the ATSn=x command after every reset event. S registers are specified as a decimal value (S1 for example), and the contents

of the register are also decimal numbers. Table 56 lists the S registers available on the ISOmodem, their functions,

default values, ranges of values, and units.

Many S registers are industry standards, such as S0 (number of rings for auto answer), S1 (ring count), and S2

(escape character) among others. However, there are usually variations in the function (and availability) of S registers from one chipset to another or from one chipset manufacturer to another. These variations are due to a combination of feature availability and choices made during the chip design. It is prudent to verify the compatibility of S-register functions, defaults, ranges, and values when adapting the ISOmodem to an existing design that uses another chipset. This simple step can save time and help speed product development. If a particular S register is not available on the ISOmodem, the register may not be necessary, or the function of the S register may be available with the use of U registers (discussed later) or through an AT command.

Table 56. S-Register Descriptions

Definition

S Register

(Decimal)

0

1

2 ESC code character

Function

Automatic answer—This value represents the number of rings the ISOmodem must detect before answering a call. 0 disables auto answer.

Ring counter—Counts rings received on current call.

3

4

5

6

7

8

9

Carriage return character

Linefeed character

Backspace character

Dial tone wait timer—This timer sets the number of seconds the ISOmodem waits before blind dialing and is only active if blind dialing is enabled (X0, X1, X3).

Carrier wait timer—This timer starts when dialing is completed. It sets the number of seconds the modem waits without carrier before hanging up and the number of seconds the modem waits for ringback when originating a call before hanging up. The register also sets the number of seconds the answer tone continues while using the AT*Y2A command.

Dial pause timer for “,” and “<” dial command modifiers

Carrier presence timer—Time the remote modem carrier must be detected before activating or reactivating

DCD (carrier loss debounce time).

Default

(Decimal)

0

0

43 (+)

13 (CR)

10 (LF)

08 (BS)

02

80

02

06

Range

0–255

0–255

0–255

0–255

0–255

0–255

0–255

0–255

0–255

1–255

Units

rings rings

(ASCII)

(ASCII)

(ASCII)

(ASCII) seconds seconds seconds

0.1 second

Rev. 1.41

95

A N 9 3

Table 56. S-Register Descriptions (Continued)

Definition

S Register

(Decimal)

10

12

14

24

30

38

40

Function

Carrier loss timer—The time a remote modem carrier must be lost before the ISOmodem disconnects. Setting this timer to 255 disables the timer, and the modem does not time out and disconnect. If S10 is less than S9, even a momentary loss of carrier causes a disconnect. Use for V.22bis and lower data rates.

Escape code guard timer—Minimum guard time before and after +++ to recognize a valid escape sequence.

Wait for secondary dial tone delay. This timer starts when the W command is executed in the dial string.

Sleep inactivity time—This is the time the modem operates in normal power mode with no activity on the

UART, parallel port, SPI port, or telephone line before entering the low-power sleep mode and waking on ring. The modem remains in the normal power mode, regardless of activity, if the timer is set to 0.

Disconnect activity timer—Sets the length of time that the modem stays online before disconnecting with no activity on the UART, parallel port, SPI port, or telephone line (ring, hookswitch flash, or Caller ID). This feature is disabled if set to 0.

Hang up delay time—Maximum delay between receipt of the ATH0 command and hang up. If time out occurs before all data can be sent, the NO CARRIER (3) result code is sent. An OK response is sent if all data are transmitted prior to time out. This register applies to V.42 mode only. S38=255 disables time out, and the modem only disconnects if data are successfully sent or carrier lost.

Data Pattern - Data pattern generated during &T4 and

&T5 transmit tests.

0 – All spaces (0s)

1 – All marks (1s)

2 – Random data

Default

(Decimal)

14

50

12

0

0

20

0

Range

1–255 0.1 second

10–255 0.02 second

0–255

0–255

0–255

0–255

0–2

Units

seconds seconds minutes seconds

96 Rev. 1.41

AN93

Table 56. S-Register Descriptions (Continued)

Definition

S Register

(Decimal)

41

42

43

44

50

51

Function

V.34 symbol rate - Symbol rate for V.34 when using the &T4 and &T5 commands.

0 – 2400 symbols/second

1 – 2743

2 – 2800

3 – 3000 symbols/second symbols/second symbols/second

4 – 3200

5 – 3429 symbols/second symbols/second

A valid combination of symbol rate (S41) and data rate

(&G) must be selected.

Symbol Rate Allowable Data Rates

2400 2400 – 21600

2743 4800 – 26400

2800

3000

4800 – 26400

4800 – 28800

3200

3429

4800 – 31200

4800 – 33600

Blacklisting—The ISOmodem does not dial the same number more than two times in S44 seconds. An attempt to dial a third time within S44 seconds results in a BLACKLISTED result code. If the blacklist memory is full, any dial to a new number will result in a

BLACKLIST FULL result code. Numbers are added to the blacklist only if the modem connection fails. The

%B command lists the numbers on the blacklists.

0 – disabled

1 – enabled

Dial attempts to blacklist.

When blacklisting is enabled with S42, this value controls the number of dial attempts that result in a number being blacklisted.

Blacklist Timer

Period during which blacklisting is active

Minimum on-hook time—Modem remains on-hook for

S50 seconds. Any attempt to go off-hook is delayed until this timer expires.

Number to start checking for an outside PBX line.

Default

(Decimal)

0

0 (disabled)

4

180

3

1

Range

0–5

0–1

0–4

0–255

0–255

0–9

Units

– seconds seconds

Rev. 1.41

97

A N 9 3

5.7. U Registers

U registers (user-access registers) are 16-bit registers written by the AT:Uhh command and read by the AT:R (read

all U registers) command or AT:Rhh (read U-register hh) command. See the AT command list in Table 49 on page 64. All values associated with the U registers, the address, and the value written to or read from the register

are hexadecimal.

Some U registers are reserved and not available to the user. Therefore, there are gaps in the available U-register address sequence. Additionally, some bits within available U registers are reserved. Any attempt to write to a nonlisted U register or to write a reserved bit can cause unpredictable modem operation.

There are two types of U registers. The first represents a single 16-bit term, such as a filter coefficient, threshold, delay, or other quantity. These registers can be read from or written to as a single 16-bit value. The second type of

U register is bit mapped. Bit-mapped registers are also written and/or read in hexadecimal, but each bit or combination of bits in the register represents an independent value. These individual bits are used to enable or disable features and indicate states. Bits in these registers can be read/write, read only, reserved, or they may be required to always be set to a certain value. Pay particular attention when writing to bit-mapped registers to ensure no reserved bits are overwritten. When changing bits in a U register with reserved bits, use a read-modify-write procedure: read the register value with AT:R; modify only the desired bits, then write the new value with AT:U. This will ensure the reserved bits are not altered. All U registers revert to their default settings after a reset.

The U registers can be broken into three groups: call progress (U0–U33, U49–U4C), dialing (U37–U48), line

interface, and extended functions (U4D–UA9). Table 57 lists the available U registers, a brief description, and their

default values. Table 58 summarizes the signals and values available in the bit-mapped registers. Country-specific

register values are presented in "6.2. Country-Dependent Setup" on page 145. All default settings are chosen to

meet FCC requirements.

Register

U0B

U0C

U0D

U0E

U07

U08

U09

U0A

U00

U01

U02

U03

U04

U05

U06

Table 57. U-Register Descriptions

Description Name

DT2B2

DT2A2

DT2A1

DT3A0

DT3B1

DT3B2

DT3A2

DT3A1

DT1A0

DT1B1

DT1B2

DT1A2

DT1A1

DT2A0

DT2B1

Dial-tone detection filters stage 1 biquad coefficients.

Dial-tone detection filters stage 2 biquad coefficients.

Dial-tone detection filters stage 3 biquad coefficients.

0x00A0

0x6EF1

0xC4F4

0xC000

0x0000

0x00A0

0x78B0

0xC305

0x4000

0xB50A

Default

Value

0x0800

0x0000

0x0000

0x0000

0x0000

98 Rev. 1.41

Register

U2A

U2B

U2C

U2D

U26

U27

U28

U29

U22

U23

U24

U25

U1E

U1F

U20

U21

U1A

U1B

U1C

U1D

U16

U17

U18

U19

U0F

U10

U11

U12

U13

U14

U15

Table 57. U-Register Descriptions (Continued)

Description Name

BT4A0

BT4B1

BT4B2

BT4A2

BT4A1

BTK

BTON

BTOF

BT2B2

BT2A2

BT2A1

BT3A0

BT3B1

BT3B2

BT3A2

BT3A1

DTOF

BT1A0

BT1B1

BT1B2

BT1A2

BT1A1

BT2A0

BT2B1

DT4A0

DT4B1

DT4B2

DT4A2

DT4A1

DTK

DTON

Dial-tone detection filter stage 4 biquad coefficients.

Dial-tone detection filter output scaler.

Dial-tone detection ON threshold.

Dial-tone detection OFF threshold.

Busy-tone detection filters stage 1 biquad coefficients.

Busy-tone detection filter stage 2 biquad coefficients.

Busy-tone detection filter stage 3 biquad coefficients.

Busy-tone detection filter stage 4 biquad coefficients.

Busy-tone detection filter output scaler.

Busy-tone detection ON threshold.

Busy-tone detection OFF threshold.

Rev. 1.41

AN93

0x4000

0xB50A

0x0400

0x70D2

0xC830

0x4000

0x80E2

0x0009

0x00A0

0x0070

0x00A0

0x6EF1

0xC4F4

0xC000

0x0000

0x00A0

0x78B0

0xC305

0x0009

0x00A0

0x0070

0x0800

0x0000

0x0000

0x0000

0x0000

Default

Value

0x0400

0x70D2

0xC830

0x4000

0x80E2

99

A N 9 3

Register

U43

U45

U46

U47

U3E

U3F

U40

U42

U48

U49

U4A

U3A

U3B

U3C

U3D

U35

U37

U38

U39

U2E

U2F

U30

U31

U32

U33

U34

U4B

U4C

U4D

U4E

Table 57. U-Register Descriptions (Continued)

Description Name

PD7

PD8

PD9

PDBT

PDMT

PDIT

DTPL

DTNT

DTFT

RGFH

RGFD

DMOT

PD0

PD1

PD2

PD3

PD4

PD5

PD6

BMTT

BDLT

BMOT

RMTT

RDLT

RMOT

DTWD

RGMN

RGNX

MOD1

PRDD

Busy cadence minimum total time in seconds multiplied by 7200.

Busy cadence delta in seconds multiplied by 7200.

Busy cadence minimum on time in seconds multiplied by 7200.

Ringback cadence minimum total time in seconds multiplied by 7200.

Ringback cadence delta in seconds multiplied by 7200.

Ringback cadence minimum on time in seconds multiplied by 7200.

Window to look for dial tone in seconds multiplied by 1000.

Minimum dial tone on time in seconds multiplied by 7200.

Number of pulses to dial 0.

Number of pulses to dial 1.

Number of pulses to dial 2.

Number of pulses to dial 3.

Number of pulses to dial 4.

Number of pulses to dial 5.

Number of pulses to dial 6.

Number of pulses to dial 7.

Number of pulses to dial 8.

Number of pulses to dial 9.

Pulse dial break time (ms units).

Pulse dial make time (ms units).

Pulse dial interdigit time (ms units).

DTMF power level.

DTMF on time (ms units).

DTMF off time (ms units).

Ring frequency high (2400/maximum valid ring frequency in Hz).

Ring frequency delta = (2400/minimum valid ring frequency in Hz) –

(2400/maximum valid ring frequency in Hz)

Ring cadence minimum ON time in seconds multiplied by 2400.

Ring cadence maximum total time in seconds multiplied by 2400.

This is a bit-mapped register.

Pre-dial delay-time—(ms units).

0x0005

0x0006

0x0007

0x0008

0x0009

0x003D

0x0027

0x0320

0x09B0

0x0064

0x0064

0x0022

0x007A

0x1200

0x1B58

0x2D00

0x000A

0x0001

0x0002

0x0003

0x0004

Default

Value

0x0870

0x25F8

0x0438

0x4650

0xEF10

0x0258

0x6720

0x0000

0x0000

100 Rev. 1.41

Register

U78

U79

U7A

U7C

U70

U71

U76

U77

U7D

U80

U83

U6A

U6C

U6E

U6F

U65

U66

U67

U68

U4F

U50

U51

U52

U53

U62

U63

U84

Name

DAAC4

DAAC5

ITC1

ITC2

ITC4

LVS

CK1

PTME

FHT

LCDN

LCDF

XMTL

MOD2

DAAC1

DAAC3

IO0

IO1

GEN1

GEN2

GEN3

GEN4

GENA

GENC

GEND

NOLN

LIUS

AN93

Table 57. U-Register Descriptions (Continued)

Description

Flash hook time—(ms units).

Loop current debounce on time (ms units).

Loop current debounce off time (ms units).

Transmit level adjust (1 dB units)

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register (read only).

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

This is a bit-mapped register.

No-Line threshold. If %V1 is set, NOLN sets the threshold for determination of line present vs. line not present. 3 V/bit when LLP (UAD [4] = 1

(default); 1 V/bit when LLP = 0.

Line-in-use threshold. If %V1 is set, LIUS sets the threshold for determination of line in use vs. line not in use. 3 V/bit when LLP (UAD [4] = 1

(default); 1 V/bit when LLP = 0.

0x1FA0

0x0001

0x2700

0x0000

0x3240

0x401E

0x0000

0x00XX

0x0000

0x0000

0x4001

0x0168

0x0001

0x0804

0x0003

0x00E0

0xXX40

0x0008

0x0000

N/A

0xXX00

Default

Value

0x01F4

0x015E

0x00C8

0x0000

0x0000

0x0007

Rev. 1.41

101

A N 9 3

Table 57. U-Register Descriptions (Continued)

Register Name Description Default

Value

0x0000 U85 NLIU Line-in-use/No-line threshold. If %V2 is set, NLIU sets the threshold reference for the adaptive algorithm (see %V2). 3 V/bit when LLP (UAD [4] = 1

(default); 1 V/bit when LLP = 0.

U86

UA5

2

UA6

2

UA7

2

UA8

2

UA9

2

UAA

2

U87

U9F

1

UA0

2

UA1

2

UA2

2

UA3

2

UA4

2

UAD

UAE

UD3

V9AGG

SAMCO

SASF

SC0

SC1

SC2

SC3

SC4

SC5

SC6

SC7

SC8

V.90 rate reduction in 1333 bps units. The V.90 connect rate is reduced by this amount during negotiation.

This is a bit-mapped register

SAS frequency detection.

SAS cadence 0. Sets the duration of the first SAS tone (ms).

SAS cadence 1. Sets the duration of the first SAS silence (ms).

SAS cadence 2. Sets the duration of the second SAS tone (ms).

SAS cadence 3. Sets the duration of the second SAS silence (ms).

SAS cadence 4. Sets the duration of the third SAS tone (ms).

SAS cadence 5. Sets the duration of the third SAS silence (ms).

SAS cadence 6. Sets the duration of the fourth SAS tone (ms).

SAS cadence 7. Sets the duration of the fourth SAS silence (ms).

SAS cadence 8. Sets the duration of the fifth SAS tone (ms).

SC9 SAS cadence 9. Sets the duration of the fifth SAS silence (ms).

V29MODE This is a bit-mapped register.

This is a bit-mapped register

This is a bit-mapped register.

UD4

U1D4

U1D9

CASL

BUSYCNT

V.29FC Answer Tone Detector Threshold (in ms).

Range = 50 to 180 ms

CAS Level (dBm)

Range = -12 to -38 dBm

This is a bit-mapped register.

Busy tone cadence count (actual cadence is this value + 1)

U1DA Delay (1/600 s) to the response to an answer tone

U1DD AOCN

Notes:

1. See Table 114 for details.

2. See Table 115 for details.

Time to stay off hook in overcurrent situation, in 5 ms units. When this timer expires, the modem returns on hook. Used only when AOC bit of

U77 is enabled.

0x0000

0x0000

0x0000

0x0003

0x0078

0x000C

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0210

0x0000

0x0000

0x0000

0x0000

0x001E

0x0000

0x0000

0x0000

0x0000

102 Rev. 1.41

AN93

5.7.1. U-Register Summary

Table 58. Bit-Mapped U-Register Summary

U6F

U70

U71

U76

U68

U6A

U6C

U6E

U77

U78

U79

U7A

U7C

U63

U65

U66

U67

U4D

U53

U54

U62

PTME

IO0

IO1

GEN1

ITC2

ITC4

LVS

CK1

GEN2

GEN3

GEN4

GENA

GENC

MOD1

MOD2

CALT

DAAC1

DAAC3

DAAC4

DAAC5

ITC1

Register

U7D

U80

U87

UAA

UAD

UAE

U1D4

Name Bit

15

Bit 14

TOCT

Bit 13 Bit

12

Bit

11

Bit

10

NHFP NHFD CLPD

Bit 9 Bit 8 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

FTP SPDM GT18 GT55 CTE

REV

OHCT

FULL2 OHS2 FOH DL

LCS ACT

PWMG PDN PDL

MINI ILIM

FDT

DCR OHS

SQ1

DCV

BTE

OVL

RZ

ROV

RT

BTD

SQ0

LVS

HES TES

R1

CIDM OCDM PPDM RIM DCDM

HRS

CID

PTMR

OCD

COMP

PPD RI DCD

PRT

OHSR FACL DCL ACL

IST HOI AOC OHT

IB IS

LVCS

CNSMS V29EM ARMLO

TCAL CALD

DOP ADD NEWFC

RIGPO

HDLC FAST

ATZD

RIG-

POEN

FDP GEND

XMITDEL V22F-

CDF

SAM

V29MODE

NLM

SEF

MINT SERM FSMS

SIA

V22FCDEL

CON LLP

XMTT

RUDE V29ENA

Rev. 1.41

103

A N 9 3

5.7.2. U00–U16 (Dial Tone Detect Filter Registers)

U00–U13 set the biquad filter coefficients for stages 1–4 of the dial-tone detection filter. U14, U15, and U16 set the dial-tone detection output scaler, on threshold and off threshold, respectively.

The thresholds are empirically found scalars and have no units. These coefficients are programmed as 16-bit, two’s complement values. All A0 values are in 3.12 format where 1.0 = 0x1000. All other coefficients are in 1.14

format where 1.0 = 0x4000. Default settings meet FCC requirements. Additionally, register U34 sets the time window in which a dial tone can be detected. Register U35 sets the minimum time within the U34 window that the

dial tone must be present for a valid detection. See "5.7.5. U34–U35 (Dial Tone Timing Register)" for more

information.

Table 59. U0–U16 (Dial Tone Registers)

U07

U08

U09

U0A

U0B

U0C

U0D

U0E

Register

U00

U01

U02

U03

U04

U05

U06

U13

U14

U15

U16

U0F

U10

U11

U12

DT2B2

DT2A2

DT2A1

DT3A0

DT3B1

DT3B2

DT3A2

DT3A1

Name

DT1A0

DT1B1

DT1B2

DT1A2

DT1A1

DT2A0

DT2B1

DT4A0

DT4B1

DT4B2

DT4A2

DT4A1

DTK

DTON

DTOF

Description

Dial-tone detection filters stage 1 biquad coefficients.

Dial-tone detection filters stage 2 biquad coefficients.

Dial-tone detection filters stage 3 biquad coefficients.

Dial-tone detection filters stage 4 biquad coefficients.

Dial-tone detection filter output scaler.

Dial-tone detection ON threshold.

Dial-tone detection OFF threshold.

0xC4F4

0xC000

0x0000

0x00A0

0x78B0

0xC305

0x4000

0xB50A

Default

0x0800

0x0000

0x0000

0x0000

0x0000

0x00A0

0x6EF1

0x0400

0x70D2

0xC830

0x4000

0x80E2

0x0009

0x00A0

0x0070

104 Rev. 1.41

AN93

5.7.3. U17–U30 (Busy Tone Detect Filter Registers)

U17–U2A set the biquad filter coefficients for stages 1–4 of the busy-tone detection filter, and U2B, U2C, and U2D

set the busy-tone detection output scalar on threshold and off threshold, respectively (see Table 60). The

thresholds are empirically found scalars and have no units. These coefficients are programmed as 16-bit, two’s complement values. All A0 values are in 3.12 format where 1.0 = 0x1000. All other coefficients are in 1.14 format where 1.0 = 0x4000. Default values meet FCC requirements.

U2E, U2F, and U30 set the busy cadence minimum total time (BMTT), busy cadence delta time (BDLT), and busy cadence minimum on time (BMOT), respectively. Settings for busy cadences are specified as a range for ON time

(minimum ON and maximum ON) and a range for OFF time (minimum OFF and maximum OFF). The three values represented by BMTT, BDLT, and BMOT fully specify these ranges. BMTT (minimum total time) is equal to the minimum ON time plus the minimum OFF time. BDLT (allowable delta) is equal to the maximum total time

(maximum ON time plus the maximum OFF time) minus the minimum total time (BMTT). BMOT is the minimum

ON time. The values stored in the registers are the hexadecimal representation of the times in seconds multiplied

by 7200. Default values meet FCC requirements (see Figure 27, “Cadence Timing,” on page 107).

U26

U27

U28

U29

U2A

U2B

U2C

U2D

U2E

U2F

U30

U1E

U1F

U20

U21

U22

U23

U24

U25

Register

U17

U18

U19

U1A

U1B

U1C

U1D

BT4A0

BT4B1

BT4B2

BT4A2

BT4A1

BTK

BTON

BTOF

BMTT

BDLT

BMOT

BT2B2

BT2A2

BT2A1

BT3A0

BT3B1

BT3B2

BT3A2

BT3A1

Name

BT1A0

BT1B1

BT1B2

BT1A2

BT1A1

BT2A0

BT2B1

Table 60. U17–U30 (Busy Tone Detect Registers)

Description

Busy-tone detection filter stage 1 biquad coefficients.

Busy-tone detection filter stage 2 biquad coefficients.

Busy-tone detection filter stage 3 biquad coefficients.

Busy-tone detection filter stage 4 biquad coefficients.

Busy-tone detection filter output scaler.

Busy-tone detection ON threshold.

Busy-tone detection OFF threshold.

Busy cadence minimum total time in seconds multiplied by 7200.

Busy cadence delta time in seconds multiplied by 7200.

Busy cadence minimum on time in seconds multiplied by 7200.

0x0400

0x70D2

0xC830

0x4000

0x80E2

0x0009

0x00A0

0x0070

0x0870

0x25F8

0x0438

0xC4F4

0xC000

0x0000

0x00A0

0x78B0

0xC305

0x4000

0xB50A

Default

0x0800

0x0000

0x0000

0x0000

0x0000

0x00A0

0x6EF1

Rev. 1.41

105

A N 9 3

BPF Biquad

Values

A2

A1

K

A0

B1

B2

A0

B1

B2

A2

A1

A0

B1

B2

A2

A1

K

A2

A1

K

A0

B1

B2

A0

B1

B2

A2

A1

K

Table 61. BPF Biquad Values

Stage 2 Stage 3 Stage 1

0x0800

0x0000

0x0000

0x0000

0x0000

0x0800

0x0000

0x0000

0x0000

0x0000

0x0078

0x67EF

0xC4FA

0x4000

0x0214

0x0100

0x71CC

0xC777

0x4000

0x81C2

0x0800

0x7DAF

0xC1D5

0x4000

0x8000

Stage 4

310/510 (Default Busy and Dial Tone)

0x00A0

0x6EF1

0x00A0

0x78B0

0xC4F4

0xC000

0x0000

0xC305

0x4000

0xB50A

300/480

0x01A0

0x6E79

0xC548

0xC000

0x0000

0x01A0

0x7905

0xC311

0x4000

0xA7BE

320/630

0x0210

0x79E0

0xC252

0x4000

0x8052

0x0330

0x68C0

0xCB6C

0x4000

0xB1DC

325/550

0x0600

0x78EF

0xC245

0x4000

0x806E

0x0600

0x69B9

0xC9E4

0x4000

0xAFE9

100/550

0x01C0

0x5629

0xCF51

0xC000

0x0000

0x01C0

0x7E3F

0xC18A

0x4000

0xB96A

0x0400

0x70D2

0xC830

0x4000

0x80E2

0x03A0

0x7061

0xC8EF

0x4000

0x8128

0x0330

0x7235

0xC821

0x4000

0x815C

0x0600

0x68F7

0xC451

0x4000

0xFCA6

0x01C0

0x6151

0xDC9B

0x4000

0x8019

Output Scalar

0x0009

0x0008

0x0009

0x0009

106 Rev. 1.41

AN93

Stage 1

Table 61. BPF Biquad Values (Continued)

Stage 2 Stage 3 Stage 4 BPF Biquad

Values

K

Output Scalar

A0

B1

B2

A2

A1

K

0x0020

0x7448

0xC0F6

0x4000

0x96AB

0x0200

0x7802

0xC0CB

0x4000

0x8359

400/440

0x0400

0x73D5

0xC2A4

0x4000

0x8D93

0x0040

0x75A7

0xC26B

0x4000

0x85C1

0x0005

0x0008

Example: The United States specifies a busy tone “on” time from 450 to 550 ms and “off” time from 450 to 550 ms.

Thus the minimum “on” and “off” times are 0.45 s each , and the maximum “on” and “off” times are 0.55 s each.

The busy cadence minimum on time is 0.45 s, thus BMOT = 0.45 x 7200 = 0x0CA8.

The busy cadence minimum total time is 0.45 s + 0.45 s = 0.9 s, thus BMTT = 0.9 x 7200 = 6480 = 0x1950.

 The maximum total time is 0.55 s + 0.55 s = 1.1 s, thus BDLT = (1.1 – 0.9) x 7200 = 1440 = 0x05A0.

The hexadecimal values are stored in the appropriate registers using the AT:Uhh command. Detection parameters can be wider than the minimum specifications. This is often done in the modem defaults and other suggested settings so that one set of parameters can cover a broad number of different country requirements.

Register U1D9 defines the number of Busy Tone cadences (on/off) that the modem must detect before reporting the BUSY message. The actual cadence count is the value of U1D9 plus 1. The default value of U1D9 is 3. Thus, by default, the modem reports BUSY every four busy cadences.

The busy tone detector is configured using registers U17–U30 as described in "5.7.3. U17–U30 (Busy Tone Detect

Filter Registers)" on page 105.

Maximum Cadence

TOTAL Time

Minimum ON Time

(BMOT)

(RMOT)

Minimum Cadence Cadence Delta

TOTAL Time

(BMTT)

Time (BDLT)

(RDLT)

(RMTT)

Figure 27. Cadence Timing

Rev. 1.41

107

A N 9 3

5.7.4. U31–U33 (Ringback Cadence Registers)

U31, U32, and U33 set the ringback cadence minimum total time (RMTT), ringback cadence delta time (RDLT),

and ringback cadence minimum on time (RMOT) (see Table 62). Country-specific settings for ringback cadences

are specified as a range for “on” time (minimum “on” and maximum “on”) and a range for “off” time (minimum “off” and maximum “off”). The three values represented by RMTT, RDLT, and RMOT fully specify these ranges. RMTT, minimum total time, is equal to the minimum “on” time plus the minimum “off” time. RDLT (allowable delta) is equal to the maximum total time (maximum “on” time plus the maximum “off” time) minus the minimum total time (RMTT).

RMOT is the minimum “on” time. The values stored in the registers are the hexadecimal representation of the times in seconds multiplied by 7200. Default values meet FCC requirements.

Register

U31

U32

U33

Name

RMTT

RDLT

RMOT

Table 62. Ringback Cadence Registers

Description

Ringback cadence minimum total time in seconds multiplied by 7200.

Ringback cadence delta in seconds multiplied by 7200.

Ringback cadence minimum on time in seconds multiplied by 7200.

Default

0x4650

0xEF10

0x1200

5.7.5. U34–U35 (Dial Tone Timing Register)

U34 determines the period of time the modem attempts to detect a dial tone. U35 sets the time within this window that the dial tone must be present in order to return a valid dial tone detection. The value stored in U35 is the hexadecimal representation of the time in seconds multiplied by 7200.

The value in U34 is the hexadecimal representation of the time in seconds multiplied by 1000. The time window

represented in U34 must be larger than the dial tone present time represented in register U35 (see Table 63).

Table 63. Dial Tone Timing Register

Register

U34

U35

Name

DTWD

DMOT

Description

Window to look for dial tone in seconds multiplied by 1000

Minimum dial tone on time in seconds multiplied by 7200

Default

0x1B58

0x2D00

5.7.6. U37–U45 (Pulse Dial Registers)

Registers U37–U40 set the number of pulses to dial digits 0 through 9, respectively (see Table 64). The values are

entered in hexadecimal format with digit 0 having a default setting of 0x000A (10 decimal) pulses, digit 1 having a default setting of one pulse, digit 2 having a default setting of two pulses, etc. This pulse arrangement is used throughout most of the world. There are, however, two exceptions—New Zealand and Sweden. New Zealand requires 10 pulses for 0, nine pulses for 1, eight pulses for 2, etc. Sweden, on the other hand, requires one pulse

for 0, two pulses for 1, etc. Complete information is provided in "6.2. Country-Dependent Setup" on page 145.

U42, U43, and U45 set the pulse dial break time (PDBT), make time (PDMT), and interdigit delay time (PDIT), respectively. The values are entered in hexadecimal format and represent milliseconds. The default values meet

FCC requirements. The default dialing speed is 10 pps. See "6.2. Country-Dependent Setup" on page 145 for

Japanese 20 pps dialing configuration.

108 Rev. 1.41

AN93

U3E

U3F

U40

U42

U43

U45

Register

U37

U38

U39

U3A

U3B

U3C

U3D

PD7

PD8

PD9

PDBT

PDMT

PDIT

Name

PD0

PD1

PD2

PD3

PD4

PD5

PD6

Table 64. Pulse Dial Registers

Description

Number of pulses to dial 0.

Number of pulses to dial 1.

Number of pulses to dial 2.

Number of pulses to dial 3.

Number of pulses to dial 4.

Number of pulses to dial 5.

Number of pulses to dial 6.

Number of pulses to dial 7.

Number of pulses to dial 8.

Number of pulses to dial 9.

Pulse dial break time (ms units).

Pulse dial make time (ms units).

Pulse dial interdigit time (ms units).

5.7.7. U46–U48 (DTMF Dial Registers)

U46–U48 set the DTMF power level, DTMF “on” time, and DTMF “off” time, respectively (see Table 65). The DTMF

power levels are set in register U46 as a 16-bit value with the format 0x0HL0, where H is a hexadecimal number

(0–F) for the dBm level of the high-frequency DTMF tone, and L is a hexadecimal number (0–F) for the dBm level of the low-frequency DTMF tone. The power level is specified in –1 dB units. The DTMF output level is 0 dBm for each tone if U46 = 0x0000 and –15 dBm if U46 = 0x0FF0. The default power level is –9 dBm for the high tone and

–11 dBm for the low tone.

U47 and U48 set the DTMF “on” time (DTNT) and “off” time (DTFT) respectively as hexadecimal values in milliseconds. The default value for both U47 and U48 is 100 ms, and the range of values is 0–1000 ms.

Table 65. DTMF Dial Registers

Register

U46

U47

U48

Name

DTPL

DTNT

DTFT

DTMF power level

DTMF “on” time (ms units).

DTMF “off” time (ms units).

Description Default

0x09B0

0x0064

0x0064

Default

0x000A

0x0001

0x0002

0x0003

0x0004

0x0005

0x0006

0x0007

0x0008

0x0009

0x003D

0x0027

0x0320

Rev. 1.41

109

A N 9 3

5.7.8. U49–U4C (Ring Detect Registers)

U49, U4A, U4B, and U4C set a representation of the maximum ring frequency, the difference between the highest and lowest valid ring frequency, minimum ring “on” time, and maximum ring cadence time (time on plus time off), respectively.

Maximum Frequency = (2400/U49)

Minimum Frequency = (2400/(U4A + U49)) or:

U49 = (2400/Maximum Frequency)

U4A = (2400/Minimum Frequency) – U49

U4B and U4C are set as the hexadecimal equivalents of the times in seconds multiplied by 2400. The default high ring frequency, RGFH (U49), is 70.6 Hz. The default ring cadence minimum on time, RGMN, is 250 ms. The default ring cadence maximum total time is 11 seconds.

Register

U49

U4A

Name

RGFH

RGFD

Table 66. Ring Detect Registers

Description

Ring frequency high (2400/maximum valid ring frequency in Hz).

Ring frequency delta (2400/minimum valid ring frequency in Hz) –

(2400/maximum valid ring frequency in Hz).

Ring cadence minimum “on” time in seconds multiplied by 2400.

Ring cadence maximum total time in seconds multiplied by 2400.

Default

0x0022

0x007A

U4B

U4C

RGMN

RGNX

0x0258

0x6720

5.7.9. U4D (Modem Control Register 1—MOD1)

U4D is a bit-mapped register that controls various telephony functions, including the enabling of calling and guard tones and loop current verification prior to dialing. All bits in this register are read/write, except for bits, 15, 13, 9, 6,

2, and 0, which are reserved. These bits must not be written with a logic 1, and reading them returns a value of 0

(see Table 67).

Bit 14 (TOCT) = 0 (default) turns off the calling tone after answer tone detection and allows the calling-tone cadence to complete before proceeding with the connect sequence (per V.25). TOCT = 1 turns off the calling tone

200 ms after answer-tone detection begins.

Bit 12 (NHFP) = 0 (default) disables hook-flash during pulse dialing (ignores & and ! dial modifiers). NHFP = 1 enables hook-flash during pulse dialing.

Bit 11 (NHFD) = 0 (default) disables hook-flash during dial string (tone or pulse). NHFD = 1 enables hook-flash during (tone or pulse) dial string.

Bit 10 (CLPD) = 0 (default) Modem ignores loop current prior to dialing. If CLPD = 1, modem measures loop current prior to dialing. This bit is used in conjunction with the loop-current debouncing registers, U50 and U51

(LCDN and LCDF), and U4D bit 1 (LLC). U50 provides a delay between the modem going off-hook and the loop current measurement. The delay allows the loop current to stabilize prior to the measurement. Some countries require the presence of loop current prior to dialing.

Bit 8 (FTP) = 0 (default) allows mixing tone and pulse dialing in a single AT command. FTP = 1 forces the first dialing mode encountered (tone or pulse) for the entire AT command.

Bit 7 (SPDM) = 0 (default) causes the modem to pulse dial if an ATDP command is given. If this bit is set to 1 the pulse dial modifier, P, is ignored, and the dial command is carried out as a tone dial (ATDT).

Bit 5 (GT18) = 0 (default) disables the 1800 Hz guard tone. GT18 = 1 enables the 1800 Hz guard tone.

Bit 4 (GT55) = 0 (default) disables the 550 Hz guard tone. GT55 = 1 enables the 550 Hz guard tone.

Bit 3 (CTE) = 0 (default) disables and CTE = 1 enables the calling tone referred to in bit 14 (TOCT). The calling tone is a 1300 Hz tone in originate mode with a 0.5–0.7 sec on/1.5–2.0 sec off cadence as described in V.25.

110 Rev. 1.41

2

1

0

Bit

15

14

6

5

9

8

13

12

11

10

7

4

3

Table 67. Register U4D Bit Map

Name Function

Reserved Read returns zero.

TOCT

Turn Off Calling Tone.

0 = Disable.

1 = Enable.

Reserved Read returns zero.

NHFP

No Hook-Flash Pulse.

0 = Disable.

1 = Enable.

NHFD

CLPD

No Hook-Flash Dial.

0 = Disable.

1 = Enable.

Check Loop Current Before Dialing.

0 = Ignore.

1 = Check.

Reserved Read returns zero.

FTP

Force Tone or Pulse.

0 = Disable.

1 = Enable.

SPDM

Skip Pulse Dial Modifier.

0 = No.

1 = Yes.

Reserved Read returns zero.

GT18

1800 Hz Guard Tone Enable (UK Guard Tone)

0 = Disable.

1 = Enable.

GT55

CTE

550 Hz Guard Tone Enable.

0 = Disable.

1 = Enable.

Calling Tone Enable.

0 = Disable.

1 = Enable.

Reserved Read returns zero.

Reserved Read returns zero.

Reserved Read returns zero.

Rev. 1.41

AN93

111

A N 9 3

5.7.10. U4E (Pre-Dial Delay Time Register)

U4E sets the delay time between the ATD command carriage return and when the modem goes off-hook and starts

dialing (either tone or pulse—see Table 68). This delay establishes the minimum time the modem must be on-hook

prior to going off-hook and dialing. France, Sweden, Switzerland, and Japan have minimum on-hook time requirements. The value stored in U4E is the desired delay in milliseconds minus 100 ms. The 100 ms offset is due

to a delay inherent in the dialing algorithm. "6.2. Country-Dependent Setup" on page 145 contains information

about country-specific values for this register.

5.7.11. U4F (Flash Hook Time Register)

U4F sets the time the modem goes on-hook as a result of a “!” or “&” dial modifier (flash hook). The value is stored

in the register in milliseconds (see Table 69).

5.7.12. U50–U51 (Loop Current Debouncing Registers)

U50 (LCDN) sets the loop-current debouncing “on” time, and U51 (LCDF) sets the loop current debouncing “off”

time (see Table 70). Loop-current debounce is used in cases where the presence or absence of loop current must

be determined prior to taking some action. For example, it may be necessary to verify the presence of loop current prior to dialing. The loop current debounce on-time, LCDN, is used to program a delay in measuring loop current after the modem goes off-hook to ensure the loop current is stable prior to the measurement. LCDN is used in conjunction with U4D [10] (CLPD) and U4D [0] (LCN). Loop current debounce off-time, LCDF, is used in conjunction with LCN to delay the modem going on-hook if loop current is interrupted during a connection. The values are stored in the registers in milliseconds. The default value for LCDN is 350 ms. The default value for

LCDF is 200 ms. The range of values for both registers is 0–65535 ms.

5.7.13. U52 (Transmit Level Register)

U52 (XMTL) adjusts the modem transmit level referred to a 600

 line (see Table 71). The default value of 0x0000

results in a –9.85 dBm transmit level. U52 can be used to decrease this level in –1 dBm steps approximately to the minimum modem receive threshold of –48 dBm with a register value of 0x0026. U52 should not be changed while off-hook in the voice mode.

Register

U4E

Name

PRDD

Table 68. Pre-Dial Delay Timer Register

Description

Pre-dial delay-time after ATD command that modem waits to dial (ms units). The ISOmodem stays on-hook during this time.

Default

0x0000

Register

U4F

Name

FHT

Table 69. Flash Hook Time Register

Description

Flash hook time (ms units).

Register

U50

U51

Name

LCDN

LCDF

Table 70. Loop Current Debounce Registers

Description

Loop-current debouncing “on” time (ms units).

Loop-current debouncing “off” time (ms units).

Default

0x01F4

Default

0x015E

0x00C8

112 Rev. 1.41

AN93

Register

U52

Name

XMTL

Table 71. Transmit Level Register

Description

Transmit level adjust (–1 dB units).

Default

0x0000

5.7.14. U53 (Modem Control Register 2)

U53 (MOD2) is a bit-mapped register with all bits, except bit 15, reserved (see Table 72). The AT&H11 command

sets the V.23 1200/75 bps mode. Bit 15 (REV) is used to enable V.23 reversing. This bit is set to 0 (disable reversing) by default. Setting this bit to 1 enables reversing transmit and receive speeds. Reversing is initiated by the modem in the “origination mode” (low speed TX and high speed RX). U53 resets to 0x0000 with a power-on or manual reset.

5.7.15. U54 (Calibration Timing Register)

U54 (CALT) sets the time between off-hook and DAA calibration if timed calibration is enabled with the TCAL bit

(U7D, bit 12). The OHCT bits (15:8) control this timing in 32 ms units.

5.7.16. U62–U66 (DAA Control Registers)

U62 (DAAC1) is a bit-mapped register with only bits 1, 2, and 8 available. All other bits in this register are reserved

and must be set according to Table 74. U62 resets to 0x0804 with a power-on or manual reset.

Bit 1 (DL) = 1 or 0 causes digital loopback to occur beyond the isolation capacitor interface out to and including the analog hybrid circuit. Setting bit 1 high enables digital loopback across the isolation barrier only. This setting is used in conjunction with the AT&H and AT&T3 commands. DL must be set low for normal operation.

Bit 2 (FOH) controls when automatic Si3018/10 calibration takes place.

Table 72. U53 Bit Map

Bit

15

Name

REV

Function

V.23 Reversing.

0 = Disable.

1 = Enable.

14:0 Reserved Read returns zero.

Table 73. U54 Bit Map

Bit

15:8

Name

OHCT

Function

Off-hook to calibration timing in 32 ms units. If enabled with TCAL (U7D bit 12), this value controls the time between off-hook and DAA calibration.

7:0 Reserved Must be set to zero.

Table 74. U62 Bit Map

Bit Name Function

15:12 Reserved Must be set to zero.

11

10

Reserved

FULL2

Must be set to one.

0 = DAA FULL2 bit cleared.

1 = DAA FULL2 bit set.

9 Reserved Must be set to zero.

Rev. 1.41

113

A N 9 3

8

7

6:5

4

3

2

1

0

Table 74. U62 Bit Map (Continued)

OHS2

On-Hook Speed 2

This bit, in combination with the OHS bit and the SQ[1:0] bits on-hook speeds specified are measured from the time the OH bit is cleared until loop current equals zero.

OHS

0

OHS2

0

SQ[1:0]

00

Mean On-Hook Speed

Less than 0.5 ms

0

1

1

X

00

11

3 ms ±10% (meets ETSI standard)

26 ms ±10% (meets Australia spark quenching spec)

Note: The +GCI command does not modify OHS2, SQ[1:0].

Full 1

0 = Disable

1 = Enable. +3.2 dBm maximum into 600

 (Si3018 only)

Reserved Must be set to zero.

Reserved Must be set to zero.

Reserved Must be set to zero.

FOH 0 = Automatic calibration timer set to 426 ms.

1 = Automatic calibration timer set to 106 ms.

DL 0 = Digital loopback beyond ISOcap interface.

1 = Digital loopback across ISOcap interface only.

Reserved Must be set to zero.

U63 (DAAC2) is a bit-mapped register with bits 3:0 reserved and should be modified through a read-modify-write operation.

Bits 15:8 (LCS) function as an 8-bit unsigned measure of off-hook loop current with a resolution of 1.1 mA/bit.

Bits 7:4 (ACT) set the ac termination the Si3010/Si3018 presents to Tip and Ring. The ac impedance setting is dictated by the certification requirements for the country in which the modem is used.

Bit

15:8

7:4

3:0

Table 75. U63 Bit Map

Name

LCS

ACT

Off-hook loop current (1.1 mA/bit).

Function

AC Termination Select

ACT AC Termination

0000 Real 600

0011

0100

220

 + (820  || 120 nF) and 220  + (820  || 115 nF)

370

 + (620  || 310 nF)

1111 Global complex impedance

Reserved Read returns 0011.

U65 (DAAC4) is a bit-mapped register with bits 3:0, 12:5, and 15 reserved. Bits 1:0 and 6:5 must not be changed.

Bit 14 (PWMG) = 0 (default) provides 0 dB gain to AOUT. PWMG = 1 provides a 6 dB gain to AOUT.

Bit 13 (PDN) = 0 enables the device for normal operation. PDN = 1 completely powers down both the Si3018/10 and the Si24xx chips. The bit takes effect at the carriage return of the AT command setting this bit high. Once this bit is set, the modem must be reset via the RESET pin to become active. When reset, the modem reverts to the default settings.

Bit 4 (PDL) = 0 (default) enables the device for normal operation. PDL = 1 powers the Si3018/10 down. This is a test mode typically used for board-level debugging, not normal modem operation.

U65 resets to 0x00E0 with a power-on or manual reset.

114 Rev. 1.41

AN93

Table 76. U65 Bit Map

Bit Name Function

15 Reserved Read returns zero.

14

13

PWMG

PWM gain.

0 = No gain.

1 = 6 dB gain applied to AOUT.

PDN

Power Down.

0 = Normal.

1 = Power Down.

12:7 Reserved Read returns zero.

6:5 Reserved Do not change (use read-modify-write).

4 PDL

Line-Side Chip Power Down.

0 = Normal operation.

1 = Places the Si3018/10 in Power-Down mode.

3:2 Reserved Read returns zero.

1:0 Reserved Do not change (use read-modify-write).

U66 (DAAC5) is a bit-mapped register with all bits except bit 6 reserved (see Table 77).

Bit 6 (FDT) is a read-only bit that reports whether or not an isolation capacitor frame lock is established. FDT is typically used for board-level debugging and is not used during normal modem operation.

U66 resets to 0xXX40 with a power-on or manual reset assuming framelock is established. The upper byte is variable.

5.7.17. U67–U6A (International Configuration Registers)

International Configuration Registers include U67 through U6A. These are bit-mapped registers that control international configuration settings, such as dc and ac termination, ringer impedance and detection, current limit, and billing tone protection.

U67 is a bit-mapped register with bits 5:4, 8, 11:10, and 15:14 reserved (see Table 78). U67 resets to 0x0008 with

a power-on or manual reset.

Bits 13:12 (MINI) adjust the minimum loop current at which the DAA can operate. The MINI bits generally have no effect on the TX level and RX sensitivity as long as there is sufficient loop current. However, as the loop current is reduced and approaching the limit, the TX level will begin to drop nonlinearly. The nonlinear region is about 2 mA or so within the limit, the amount of drop varies with different MINI settings. In the worst case MINI=00 and the current is 10 mA, the drop is about 4 dB. In the best case MIN=00 and the current is 16 mA, the drop is about

0.5dB.

It is not recommended that customers adjust U52 or U46 to compensate for this TX drop. Unlike the case of DCV, there is no distinctive level shift except for this nonlinear region. Furthermore, the host only knows it is near this nonlinear region is by reading loop current. Since the LCS accuracy is 1.1mA and this nonlinear region is roughly

2 mA, it is impossible for the customer to accurately compensate for the TX level.

There is no practical need to compensate for the level. In a real world application, the loop current is at least a few mA above MINI. For example, setting MINI=00, DCV=00 for the Australian AS/ACIF S002:2001 specification, the loop current is 13mA; this is 3mA away from MINI and the DAA is still in the linear range.

Bit 7 (DCR) is used to set the dc line termination of the modem. DCR = 0 is the normal mode of operation with dc impedance selected by U67 [3:2] (DCV).

Rev. 1.41

115

A N 9 3

When DCR = 1, the device presents a dc line impedance of 800

,which can be used to enhance operation with a parallel phone, for improved low line voltage performance, and for overload. This bit must be set to 0 when the

modem is on-hook. See "6.2.1. DC Termination" on page 145 for details.

Bit 6 (OHS) is used to control the speed with which the modem drops the line. The default setting, OHS = 0, causes the modem to go from the off-hook state (drawing loop current) to the on-hook state (not drawing loop current) quickly. This operation is acceptable in many countries. However, some countries, such as Italy, South

Africa, and Australia, have spark quenching requirements. Spark quenching can be accomplished by placing a resistor and a capacitor across the hookswitch or by controlling the off-hook to on-hook transition speed to prevent excessive voltage buildup. Slowly reducing the loop current to zero fulfills the spark quenching requirement without the extra components. Setting OHS = 1 causes the hookswitch to turn off the loop current with a ramp instead of a step.

Bits 3:2 (DCV) select the dc termination for the modem. DCV = 00 is the lowest voltage mode supported on the

ISOmodem. DCV = 01 is the next lowest voltage mode. See "6.2.1. DC Termination" on page 145 for details.

Bit 1 (RZ) = 0 (default) allows ringer impedance to be determined by external components. This impedance is typically 800–900 k

. RZ = 1 enables on-chip synthesis of a lower ringer impedance for countries, such as Poland,

South Africa, and South Korea.

Bit 0 (RT), Ring Threshold, is used to satisfy various country ring detect requirements. RT = 0 (default) sets the ring threshold for 11–22 V

RMS

. RT = 1 sets the ring threshold for 17–33 V

RMS

. Signals below the lower level of the range are not detected. Signals above the upper level of the range are always detected.

116 Rev. 1.41

AN93

Table 77. U66 Bit Map

Bit Name Function

15:7 Reserved Read returns zero.

6 FDT

Frame Detect.

0 = ISOcap frame lock not established

1 = ISOcap frame lock established

5:0 Reserved Read returns zero.

Table 78. U67 Bit Map*

Bit Name

15:14 Reserved Read returns zero.

Function

13:12 MINI[1:0] Minimum Operational Loop Current.

Adjusts the minimum loop current at which the DAA can operate. Increasing the minimum operational loop current can improve signal headroom at lower Tip-Ring voltages.

MINI[1:0] Min Loop Current

00

01

10

11

10 mA

12 mA

14 mA

16 mA

11:10 Reserved Read returns zero

9 ILIM

Current Limiting Enable.

0 = Current limiting mode disabled.

1 = Current limiting mode enabled. This mode limits loop current to a maximum of 60 mA per the legacy TBR21 standard.

8 Reserved Read returns zero.

7 DCR

DC Impedance Selection.

0 = 50

dc termination slope is selected. This mode should be used for all standard

applications.

1 = 800

 dc termination is selected.

6 OHS

On-Hook Speed.

See OHS2.

5:4 Reserved Read returns zero.

3:2 DCV[1:0] Tip-Ring Voltage Adjust.

These bits adjust the voltage on the DCT pin of the line-side device, which affects the Tip-Ring voltage on the line. Low-voltage countries should use a lower Tip-Ring voltage. Raising the Tip-

Ring voltage can improve signal headroom. DCV has no effect on the RX signal gain.

DCV[1:0] DCT Pin Voltage

00

01

10

11

3.1 V (TX output level reduced by 4 dB)

3.2 V (TX output level reduced by 2 dB)

3.35 V (normal TX output level)

3.5 V (normal TX output level)

1 RZ

Ringer Impedance.

0 = Maximum (high) ringer impedance.

1 = Synthesize ringer impedance.

Rev. 1.41

117

A N 9 3

Bit

0

Name

RT

Table 78. U67 Bit Map* (Continued)

Function

Ringer Threshold Select.

Used to satisfy country requirements on ring detection. Signals below the lower level do not generate a ring detection; signals above the upper level are guaranteed to generate a ring detection.

0 = 11 to 22 V rms

.

1 = 17 to 33 V rms

.

U68 is a bit-mapped register with bits 15:3 reserved. Reading these bits returns zero. Bits 4 and 2:0 are all read/

write (see Table 79).

Bit 2 (BTE) = 0 (default) is disabled by default. When BTE = 1, the DAA automatically responds to a collapse of the line-derived power supply during a billing tone event. When off-hook, if BTE = 1 and BTD goes high, the dc termination is increased to 800

 to reduce loop current. If BTE and U70 [9] (RIM) are set to 1, an interrupt from

U70 [1] (RI) also occurs when BTD goes to 1 (high).

Bit 1 (ROV) is normally 0 and is set to 1 to report an excessive receive input level. ROV is cleared by writing it to 0.

Bit 0 (BTD) = 0 normally but is set to 1 if a billing tone is detected. BTD is cleared by writing a 0 to BTD.

U68 resets to 0x0000 with a power-on or manual reset.

U6A is a bit-mapped register with bits 15:3 and 1:0 reserved. Reading these bits returns zero. Bit 2 is read-only

(See Table 80).

Bit 2 (OVL) is a read-only bit that detects a receive overload. This bit is similar to U68 [1] (ROV) except OVL clears itself after the overload condition is removed.

Table 79. U68 Bit Map*

Bit Name Function

15:8 Reserved Read returns zero.

7:3 Reserved Do not modify.

2 BTE

Billing Tone Protect Enable.

0

=

Disabled.

1

=

Enabled.

1 ROV

0 BTD

Receive Overload.

0

=

Normal receive input level.

1

=

Excessive receive input level.

Billing Tone Detected.

0

=

No billing tone.

1

=

Billing tone detected (cleared by writing 0).

118 Rev. 1.41

AN93

Table 80. U6A Bit Map*

Bit Name

15 Reserved Read returns zero.

14 SQ1 Spark quenching. See OHS2.

13 Reserved Read returns zero.

Function

12 SQ0 Spark quenching. See OHS2.

11:3 Reserved Read returns zero.

2

1

0

OVL Overload Detected.

This bit has the same function as ROV, but clears itself after the overload has been removed.

This bit is only masked by the off-hook counter and is not affected by the BTE bit.

Reserved Read only; value indeterminate.

Reserved Read returns zero.

5.7.18. U6C (Line-Voltage Status Register)

U6C contains the line voltage status register, LVS, and resets to 0xXX00. Bits 7:0 are reserved, and a read returns zero.

5.7.19. U6E–U7D (Modem Control and Interface Registers)

Modem Control and Interface registers include registers U6E, U70–U71, and U76–U79. These are bit-mapped registers that control functions including TX/RX gain, clocking, I/O, SSI codecs, intrusion detection, and LVCS (line voltage current sense).

U6E controls the clockout divider. Bits 15:13 and 7:0 are reserved. U6E resets to 0x1FA0 with a power-on or

manual reset (see Table 82).

Bits[12:8] (R1) control the R1 clockout divider. A 196.608 MHz clock signal passes through a divide-by (R

1

+1) circuit to derive the CLKOUT signal. If R1 = 00000, CLKOUT is disabled. R1 is set at a default value of 11111, which results in CLKOUT = 2.048 MHz. The CLKOUT adjustment range (15 < R1 < 30) is 12.288 MHz to

6.342194 MHz.

U6F contains the parallel/SPI port receive FIFO interrupt timer and resets to 0x00FF.

Bits [15:8] are reserved and should not be written to any value other than 0.

Bits[7:0] set the period of an internal timer that is reset whenever the parallel or SPI port receive FIFO (Hardware

Interface Register 0) is read. If the internal timer expires with data in the receive FIFO, an interrupt is generated regardless of the state of RXF (Hardware Interface Register 1 bit 7). This ensures that the host always removes all receive data from the parallel or SPI port receive FIFO even if RXF is not set.

Table 81. U6C Bit Map

Bit Name Function

15:8 LVS[7:0]

Line Voltage Status.

Eight-bit signed, two’s complement number representing the on-hook or off-hook tip-ring voltage. Each bit represents 1 V. Polarity of the voltage is represented by the MSB (sign bit). A value of zero indicates a measured voltage of less than 3 V.

7:3 Reserved Read returns zero.

2:0 RXG[2:0] Global Receive Gain in dB (Default = 000b).

Rev. 1.41

119

A N 9 3

Table 82. U6E Bit Map

Bit Name Function

15:13 Reserved Do not modify.

12:8

7:5

4

3:0

R1 CLKOUT Divider (Default = 11111b)

Reserved Read returns 101b. Do not modify.

HRS Hardware Reset

0 = Normal operation.

1 = Device will perform hardware reset. All registers will return to default settings.

Reserved Read returns 0. Do not modify.

Table 83. U6F Bit Map

Bit Name

15:8 Reserved Do not modify

7:0

Function

PTMR Parallel/SPI Port Receive FIFO Interrupt Timer (in milliseconds)

U70 controls escape and several indicator and detector masks and provides several read-only status bits (see

Table 84). Bits 5, 6, 7, and 14 are reserved.

Bits 4:0 are read only, and bits 15 and 13:8 are read/write. U70 resets to 0x2700 with a power-on or manual reset.

Bit 15 (HES) = 0 (default) disables the hardware escape pin.

Setting HES = 1 enables ESC. When ESC is enabled, escape from the data mode to the command mode occurs at the rising edge of the ESC pin. Multiple escape options can be enabled simultaneously. The ESC pin must be deasserted before the modem goes off-hook.

For example, U70 [13] (TES) = 1 by default, which enables the +++ escape. If HES is also set (HES = 1), either escape method works. Additionally, the 9th bit escape can also be enabled with the AT\B6 command or through autobaud.

Bit 13 (TES) = 1 (default) enables the standard +++ escape sequence. To successfully escape from data mode to command mode using +++, there must be no UART, parallel or SPI activity (depending on the interface mode) for a guard period determined by register S12, both before and after the +++. S12 can be set for a period ranging from

200 ms to 5.1 seconds.

Bit 12 (CIDM) = 0 (default) prevents a change in U70 [4] (CID), Caller ID, from triggering an interrupt. If CIDM = 1, an interrupt is triggered with a low-to-high transition on CID.

Bit 11 (OCDM) = 0 (default), an interrupt is not triggered with a change in OCD. If OCDM = 1, a low-to-high transition on U70 [3] (OCD), overcurrent detect, triggers an interrupt. This bit must be set for Australia and Brazil.

Bit 10 (PPDM) = 1 (default) causes a low-to-high transition in U70 [2] (PPD), parallel phone detect, to trigger an interrupt. If PPDM = 0, an interrupt is not triggered with a change in PPD.

Bit 9 (RIM) = 1 (default) causes a low-to-high transition in U70 [1] (RI), ring indicator, to trigger an interrupt. If

RIM = 0, an interrupt is not triggered with a change in RI.

Bit 8 (DCDM) = 1 (default) causes a high-to-low transition in U70 [0] (DCD), data carrier detect, to trigger an interrupt. If DCDM = 0, an interrupt is not triggered with a change in DCD.

Bits 4:0 are the event indicators described below. All are “sticky” (i.e., remain high after the event) and are cleared upon an interrupt read command (AT:I).

120 Rev. 1.41

Table 84. U70 Bit Map

Bit

15

Name

HES

Function

Enable Hardware Escape Pin.

0 = Disable.

1 = Enable.

14 Reserved Read returns zero.

13 TES

Enable Escape (+++).

0 = Disable.

1 = Enable.

12

11

CIDM

Caller ID Mask.

0 = Change in CID does not affect INT.

1 = CID low-to-high transition triggers INT.

OCDM

Overcurrent Detect Mask.

0 = Change in OCD does not affect INT.

(“X” result code is not generated in command mode.)

1 = OCD low-to-high transition triggers INT.

(“X” result code is generated in command mode.)

10

9

8

7:5 Reserved Read returns zero.

4 CID

Caller ID (sticky).

1 = Caller ID preamble detected; data to follow. Clears on :I read.

3 OCD

2 PPD

Overcurrent Detect (sticky).

1 = Overcurrent condition has occurred. Clears on :I read.

Parallel Phone Detect (sticky).

1 = Parallel phone detected since last off-hook event. Clears on :I read.

1

0

PPDM

Parallel Phone Detect Mask.

0 = Change in PPD does not affect INT.

1 = PPD low-to-high transition triggers INT.

RIM

Ring Indicator Mask.

0 = Change in RI does not affect INT.

1 = RI low-to-high transition triggers INT.

DCDM

Data Carrier Detect Mask.

0 = Change in DCD (U70, bit 0) does not affect INT.

1 = DCD high-to-low transition triggers INT.

RI

DCD

Ring Indicator (sticky).

1 = Ring event has occurred (ISOmodem on-hook). Clears on :I read.

Data Carrier Detect (status).

1 = carrier detected (inverse of DCD pin).

AN93

Rev. 1.41

121

A N 9 3

U71 IO1

Bit D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5

Name

Type

Reset settings = 0x0000

D4

COMP

R/W

D3 D2 D1 D0

PRT

R/W

Bit

15:5

4

3:1

0

Name

Reserved Read returns zero.

Function

COMP

0 – Disables compression (PCM mode).

1 – Enables linear compression.

Reserved

PRT

0 – Disables PCM mode.

1 – Enables PCM mode.

U76 provides control for parallel phone detect (PPD) intrusion parameters including the off-hook sample rate

(OHSR), absolute current level with modem off-hook (ACL), ACL update from LVCS (FACL), and the difference in current between ACL and LVCS that triggers an off-hook intrusion detection (DCL). All bits in U76 are read/write

(see Table 85).

OHSR[15:9] sets the off-hook loop current sampling interval for intrusion algorithms in 40 ms units. The default value is 25 (1 s). The minimum recommended value is 5 (200 ms). The interval can be adjusted to much lower values; however, the likelihood of false intrusion detections increases sharply with intervals of less than 520 ms.

Bit 8 (FACL). If FACL = 0 (default), the ACL register is automatically updated to the LVCS value at the sampling interval determined by OHSR. This feature is used to ensure the ACL value is continuously updated. Updating ACL allows host software to determine the loop current (value returned in ACL) provided the modem is off-hook longer than the time defined by U77 (IST). Loop current on a particular line can vary over time due to a variety of factors including temperature and weather conditions. Updating ACL reduces the probability of false intrusion detection by ensuring the ACL reference reflects the most recent off-hook conditions. If FACL = 1, a value can be written into

ACL by the host. This value is not updated and remains in the ACL register until overwritten by the host or until

FACL is returned to 0 and updates from LVCS overwrite the stored value. Writing an initial value to ACL eliminates the possibility of the modem going off-hook for the first time simultaneously with an intrusion and storing the intrusion loop current in ACL.

Bits 7:5 (DCL) set the differential level between ACL and LVCS that triggers an off-hook PPD interrupt. DCL is adjustable in 3 mA units. The default value is 2 (6 mA).

Bits 4:0 (ACL): ACL provides a means of detecting a parallel phone intrusion during the time between the modem going off-hook and the U77 [15:12] (IST) time value. If ACL = 0, the ISOmodem has no reference and must use the loop current sample from the first off-hook event as a reference for parallel phone intrusion detection. Typically, the host sets ACL to an approximate value and FACL = 0 before the first off-hook event after powerup or reset. This allows the updated ACL value to be used for subsequent calls and eliminates a potential detection problem if an intrusion occurs simultaneously when the modem goes off-hook for the first time after a powerup or reset. If

ACL = 0, it is ignored by the off-hook intrusion algorithm. A PPD interrupt is generated if U79 [4:0] (LVCS) is DCL less than ACL for two consecutive samples. The ISOmodem writes ACL with the contents of LVCS after an intrusion with the last LVCS value before the intrusion. The default value for ACL is 0.

U76 resets to 0x3240 with a power-on or manual reset (see Table 85).

122 Rev. 1.41

AN93

Bit

15:9

8

Table 85. U76 Bit Map

Name Function

OHSR

Off-Hook Sample Rate for Intrusion Detection (40 ms units).

(1 second default)

FACL

Force ACL.

0 = While off-hook, ACL is automatically updated with LVCS value.

1 = While off-hook, ACL saves previously written value.

DCL

ACL

Differential Current Level (3 mA units, 6 mA default)

Absolute Current Level (3 mA units, 0 mA default)

7:5

4:0

U77 is a bit-mapped register that controls parameters relating to intrusion detection and overcurrent detection. U77

resets to 0x401E with a power-on or manual reset (see Table 86).

Bits 15:12 (IST) set the delay between the time the modem goes off-hook and the intrusion detection algorithm begins. This register has 250 ms increments, and the default value is 4 (1 sec).

Bit 11 (HOI) determines whether the host or modem responds to an intrusion. HOI = 0 (default) prevents the modem from hanging-up in response to an intrusion without host intervention. In this case, the host monitors

U70 [2] (PPD) and takes the appropriate action when PPD is asserted indicating an intrusion. If HOI = 1, the modem hangs up immediately and will not go off-hook and dial when an intrusion is detected without host intervention. If %V

N

commands are set, HOI also causes the LINE IN USE result code upon PPD interrupt.

Bit 9 (AOC) = 0b disables Auto Overcurrent. If enabled, the modem sets the DAA OPE bit to enable Auto

Overcurrent protection in the DAA. When LCS > 160 mA (or 60 mA in current limit mode), the DAA switches to

800

 mode and sets the OPD bit. The modem then waits for 5 ms, clears the OPE bit to return to normal DC termination mode and clears the OPD bit. The modem decrements an internal counter, N, which is initialized to the value in U1DD. When N reaches 0 (indicating an overcurrent situation for an extended period of time), the modem goes back on-hook. After one second, the modem goes off-hook again with the OPE bit set.

In the case where the OPD bit is set and LVS > 50 V, the modem forces N to a value of 4, if U1DD>4. This prevents damage from a high voltage event, such as a power line cross. The counter, N, is reinitialized to U1DD value when

overcurrent is absent for 250 ms. See Figure 28 for a detailed description of the overcurrent protection operation.

Rev. 1.41

123

A N 9 3

124

A O C = 1

O P E = 0

C o un te r : N = U 1 D D

O FF HO O K

W a i t ( O H T)

O P E = 1

Ti m er T1 = 2 5 0 m s

N o

T 1 = 0 ?

Ye s

C o u n te r: N = U 1 DD

N o

N = 0 ?

N o

O P D = 1 ?

Y e s

N = N - 1

Ti me r T2 = 5 m s

Y e s

O N H O O K

N o

L V S > = 5 0 V ?

N o

T 2 = 0?

Y e s

O P E = 0

Y e s

T2 = 0 ?

Ye s

N < = 3 ?

N o

N = 3

W a it 1 s

N o

Y e s

L V S > = 5 0 V ?

Y es

N o

 

Figure 28. Auto Overcurrent Protection Algorithm

Rev. 1.41

AN93

Bits 8:0 (OHT) set the delay between the time the modem goes off-hook and LVCS or LCS is read for an

overcurrent condition. The default value for this register is 30 ms (see Table 86).

U78 is a bit-mapped register that controls intrusion detection blocking and intrusion suspend. U78 resets to 0x0000

with a power-on or manual reset (see Table 87).

Bits 15:14 (IB) controls intrusion blocking after dialing has begun. Table 87 defines the bit values and intrusion

blocking.

Bits 7:0 (IS) set the delay between the start of dialing and the start of the intrusion algorithm when IB = 10

Table 87).

(see

Table 86. U77 Bit Map

Bit

15:12

11

10

9

8:0

Name

IST

HOI

Function

Intrusion Settling Time (250 ms units) 1 second default.

Hang-Up On Intrusion.

0 = ISOmodem does not automatically hang up after an off-hook PPD interrupt.

1 = ISOmodem automatically hangs up after an off-hook PPD interrupt.

Reserved Read returns zero.

AOC

AutoOvercurrent. Should be set for normal operation.

0 = Disable.

1 = Enable.

OHT[8:0]

Off-Hook Time (1 ms units) 30 ms default.

Table 87. U78 Bit Map

Bit

15:14

Name

IB

Function

Intrusion Blocking.

00 = No intrusion blocking.

01 = Intrusion disabled from start of dial to end of dial.

10 = Intrusion disabled from start of dial to IS register time-out.

11 = Intrusion disabled from start of dial to CONNECT XXX, NO DIALTONE, or

NO CARRIER

13:8 Reserved Read returns zero.

7:0 IS

Intrusion Suspend (500 ms units) default = 0 ms.

U79 is a bit-mapped register. Bits 15:6 are reserved.

Bits 5:0 represent the line voltage, loop current, or on-hook line monitor (see Table 88). While the modem is onhook, the value in the LVCS register measures loop voltage (see Table 89). This value can be used to determine if

a line is connected or if a parallel phone or other device goes off-hook or on-hook. The accuracy of the LVCS bits is

±20%. When the modem goes off-hook, the value in the LVCS register measures loop current. LVCS can indicate when a parallel phone or other device goes on-hook or off-hook and detect whether enough loop current is available for the modem to operate or if an overload condition exists.

The line voltage monitor full scale may be modified by changing R5 as follows:

V

MAX

= V

MIN

+ 4.2 x (10 M

Ω + R5 + 1.78 kΩ) / (R5 + 1.78 kΩ) / 5

See Table 89. LVCS is backward-compatible with older ISOmodem revisions. The value is absolute and does not

reflect loop polarity. See U6C (LVS) [15:8] for 1 V/bit resolution and signed, two’s complement format and

U63 (LCS) [15:8] for 1.1 mA/bit loop current measurement. The values for loop voltage and loop current in U79 are calculated by the modem from the values in U6C and U63 respectively.

Rev. 1.41

125

A N 9 3

Table 88. Monitor Mode Values

On-Hook Voltage Monitor Mode

00000 = No line connected.

00001 = Minimum line voltage (VMIN = 2.5 V ±0.5 V).

11111 = Maximum line voltage (87 V ±20%)

Off-Hook Current Monitor Mode

00000 = No loop current.

00001 = Minimum loop current.

11110 = Maximum loop current.

11111 = Overload (more than 60 mA in legacy TBR21 mode or more than 155 mA in other modes)

Table 89. U79 Bit Map

Bit Name Function

15:6 Reserved Read returns zero.

5:0 LVCS

Line Voltage Current Sense.

When LLP (UAD[4] = 1 (default):

On-Hook = Voltage Monitor (2.75 V/bit).

Off-Hook = Loop Current Monitor (3 mA/bit).

When LLP (UAD[4] = 0:

On-Hook = Voltage Monitor (1.0 V/bit).

Off-Hook = Loop Current Monitor (1.1 mA/bit).

U7A is a bit-mapped register. U7A resets to 0x0000. Bits 12, 10:8, and 5:3 are reserved.

Bit 7 (DOP) is used in a method to determine whether a phone line supports DTMF or only pulse dialing. See "6.10.

Pulse/Tone Dial Decision" on page 181 for details.

Bit 6 (ADD) attempts DTMF dial, then falls back to pulse dialing if unsuccessful. The first digit is dialed as DTMF. If a dial tone is still present after two seconds, this suggests that the DTMF digit was not taken into account by the central office. In that case, the ISOmodem redials the first digit and remaining digits as pulses. If a dial tone is not present after two seconds, the ISOmodem assumes that the first DTMF digit was recognized and dials the remaining digits as DTMF. However, in a typical PBX environment, where dialing a DTMF digit (typically 8 or 9) is required to obtain an outside line, this method does not give any indication that the outside line can accept TDMF dialing.

Bit 1 (HDLC) controls whether the normal asynchronous mode (default) is used or the transparent HDLC mode is

enabled. See "5.14. Legacy Synchronous DCE Mode/V.80 Synchronous Access Mode" on page 137 for more

details on these modes.

Bit 0 controls whether the normal ITU/Bellcore modem handshake (default) or a special fast-connect handshake is used. Fast connect is typically used in specialized applications, such as point-of-sale terminals, where it is

important to connect and transfer a small amount of data rapidly (see Table 90).

Table 90. U7A Bit Map

Bit

15

Name

Reserved Read returns zero.

Function

14 CNSMS Chinese EPOS SMS enable

1 = Enable

0 = Disable

*Note: When HDLC or FAST is set, the \N0 (Wire mode) setting must be used.

126 Rev. 1.41

AN93

Table 90. U7A Bit Map (Continued)

Bit

13

12

11

Name Function

V29EM Use EM shielding to change direction of half duplex V.29FC.

0 = EM shielding

1) <EM><rrn>=<0x19><0xBC> to receive a V29FC packet.

2) <EM><rtn>=<0x19><0xBD> to send a V29FC packet.

1 = RTS pin toggle.

Reserved Read returns zero.

ARMLO 0 = Normal operation.

1 = Accomodate remote modem with large clock offset, such as 340 ppm. May degrade training for normal modems; enable only when necessary.

10:8 Reserved Read returns zero.

7 DOP 0 = Normal ATDTW operation.

1 = Use ATDTW for pulse/tone dial detection (see "6.10. Pulse/Tone Dial Decision" on page

181 for details).

6 ADD

Adaptive Dialing.

1 = Enable

0 = Disable

5

4

Reserved Read returns zero.

NEWFC New V.22 handshake enable. This bit is mutually exclusive with bit 0. This bit makes hardcoded U80 timing unnecessary. Without this bit, the appropriate value in U80 is required.

3:2 Reserved Read returns zero.

1 HDLC

Synchronous Mode.

0 = Normal asynchronous mode.

1 = Transparent HDLC mode.*

0 FAST

Fast Connect. This bit is mutually exclusive with bit 4; only one bit can be enabled at a given time.

0 = Normal modem handshake timing per ITU/Bellcore standards.

1 = Fast-connect modem handshake timing.*

*Note: When HDLC or FAST is set, the \N0 (Wire mode) setting must be used.

U7C is a bit-mapped register with bits 15:5 and bits 3:1 reserved. U7C resets to 0x0000 with a power-on or manual reset.

Bit 4 (RIGPO) is output on RI pin when U7C [0] (RIGPOEN) = 1. This allows the RI pin to be configured as a general-purpose output pin under host processor control. The RI pin must not pulled down. Doing so forces the

modem to enter an undocumented emulation mode.

Bit 0 (RIGPOEN)=0 (default) allows the RI pin to indicate a valid ring signal. When Bit 0 = 1, RI outputs the value of

RIGPO (See Table 91).

U7D is a bit-mapped register with bits 13:9 and bits 8:2 reserved. U7D resets to 0x4001 with a power-on or manual reset.

Bit 15 (RXWAIT) = 1 disables the UN-OBTAINABLE NUMBER response. This response can happen when there is music after a DTMF attempt. (In China it is not uncommon to have music for ring back.) Bit 15 = 0 disables this feature.

Bit 14 (NLM) = 0 (default) causes the modem to automatically detect loop current absence or loss. When bit

14 = 1, this feature is disabled.

Rev. 1.41

127

A N 9 3

Bit 12 (TCAL) = 0 (default) when set to 1 forces the DAA to calibrate at a programmable time after going off-hook.

The time between going off-hook and the start of calibration is programmed with U54 [15:8] in 32 ms units.

Bit 11 (OHCT) = 0 (default) when set to 1 forces the DAA to calibrate at the start of dialing. The first dial character should be a delay (“,”) to prevent interference with the first digit.

Bit 1 (ATZD) = 0 (default) allows the ATZ command to be active. When Bit 1 = 1, the ATZ command is disabled.

Bit 0 (FDP) = 0 (default). FSK data processing stops when the carrier is lost. Unprocessed data are lost. Setting

Bit 0 = 1 causes FSK data processing to continue for up to two bytes of data in the pipeline after carrier is lost.

Table 91. U7C Bit Map

Bit Name

15:5 Reserved Read returns zero.

4

Function

RIGPO

RI pin

Follow this bit when U7C [0] (RIGPIOEN) = 1.

3:1 Reserved Read returns zero.

0 RIGPOEN 0 = RI pin indicates valid ring signal.

1 = RI pin follows U7C [4] (RIGPO).

Table 92. U7D Bit Map

Bit

15

14

Name Function

13

12

11

TCAL

CALD

0 = Timed calibration disabled.

1 = Timed calibration. The time between off-hook and calibration is set in U54 (OHCT).

0 = No calibration during dial.

1 = Calibrate during dial. It is recommended that the dial string start with “,” to prevent first digit loss.

10:2 Reserved Read returns zero.

1 ATZD

0

RXWAIT 0 = Normal operation (default)

1 = Disables UN-OBTAINABLE NUMBER response.

NLM Host software recommended to always set this to bit.

0 = Enables “No Loop Current” Detect.

1 = Disables “No Loop Current” Detect.

Reserved

Read returns zero.

FDP

0 = ATZ enabled.

1 = ATZ disabled.

0 = FSK data processing stops when carrier is lost.

1 = FSK data processing continues for two bytes after carrier is lost.

128 Rev. 1.41

AN93

5.7.20. U80 (Transmit Delay for V.22 Fast Connect)

U80 controls delay parameters when the modem is in V.22 Fast Connect mode (+MS=V22, AT:U7A,3) and the server does not respond with a short answer tone prior to scrambled data or HDLC flags. U80 configures the modem to operate without these tones. Bit 15 turns this function on. After the end of dialing, the modem waits for a time set by U80 [14:0], then begins transmitting scrambled data (or HDLC Flags). The delay units are 1/600 s. For example, to command the modem to begin transmitting three seconds after the end of dialing:

3 x 600 = 1800 = 0x0708. Issue command AT:U80,8708.

This register is only used when U7A[4] = 0.

U80 XMITDEL Transmit Delay for V.22 Fast Connect

Bit

15

14:0

Name

V22FCDF

0 = Normal operation (default)

Function

1 = Transmit scrambled data (or HDLC flags) after delay set in bits 14 - 0

V22FCDEL When V22FCDF = 1, V22FCDEL is the delay between end of dialing and sending scrambled data (or HDLC flags) in 1/600 s units. Default is 0x0168 (600 ms).

When V22FCDEL = 0, V22FCDEL is the delay between ANS tone detected to start of training.

Rev. 1.41

129

A N 9 3

5.7.21. U87 (Synchronous Access Mode Configuration Register)

U87 SAM Synchronous Access Mode Configuration Options

Bit

15:11

10

9

8

7:0

Name

Reserved

MINT

SERM

FSMS

XMTT

Read returns zero.

Function

Minimal Transparency

Host software must always set this bit.

0 = Generate two-byte <EM> transparency sequences. This option will use codes

<EM><T5> through <RM><T20> (if possible) for received data containing two back-toback bytes requiring transparency (Rev C and later).

1 = Generate one-byte <EM>transparency sequences. This option will only use codes

<EM><T1> through <EM><T4> for received data (Rev B and later).

Special Error Reporting Mode

0 = Ignore unrecognized in-band commands.

1 = Generate <EM><0x45> (“E” for error) in response to any unrecognized in-band commands.

Framed Sub-Mode Startup

0 = Upon successful connection, enter Transparent Sub-Mode. An <EM><FLAG> is required to enter Framed Sub-Mode.

1 = Upon successful connection, immediately enter Framed Sub-Mode. The first received <EM><err> (from a successful hunt) is transformed into an <EM><flag>.

Transmitter Threshold

This value represents the number of bytes before a transmission is started. The following values are special:

0 The same as ten. Upon receipt of ten bytes, data are transferred. The DTE must supply a closing flag within the required time or an underrun will occur.

255 The same as infinity, e.g. never start a packet until the closing flag is received.

130 Rev. 1.41

AN93

5.7.22. UAA (V.29 Mode Register)

UAA V.29 MODE

Bit

15:3

2

1

0

Name

Reserved Read returns zero.

RUDE

0 = Disables rude disconnect.

1 = Enables rude disconnect.

V29ENA

0 = Disables V.29.

1 = Enables V.29.

Reserved Read returns zero.

Function

UAD is a bit mapped register that defaults to 0x0000. Bits 15:8, 5 and 3:0 are reserved.

Bit 7 (SIA) enables the modem functions that support the SIA security protocol.

Bit 6 (CON) enables the tone detectors and other modem functions that support the Ademco Contact ID security protocol.

Bit 4 (LLP) controls the voltage and current readouts for LVCS (U79 [4:0]), U83, U84 and U85. ACL (U76 [4:0]) and

DCL (U76 [7:5]) are not affected by LLP. LLP = 0 for increased resolution in the measurement of line current and voltage. LLP = 1 (default) for less resolution in these four registers.

Table 93. UAD Bit Map

Bit Name

15:8 Reserved These bits are reserved.

7

6

5

4

SIA

CON

0 = Normal modem connection

1 = SIA protocol enabled

0 = Normal modem connection

1 = Ademco Contact ID protocol enabled

Reserved This bit is reserved.

3:0

Function

LLP Legacy LVS presentation

0 = LVCS (U79 [4:0]), U83, U84 and U85 are presented as 1 V/bit when measuring voltage and 1.1 mA/bit when measuring current

1 = Legacy mode enabled; LVCS (U79 [4:0]), U83, U84 and U85 represent 2.75 V/bit when measuring voltage and 3 mA/bit when measuring current

Reserved These bits are reserved.

Rev. 1.41

131

A N 9 3

UAE is a bit-mapped register that sets the parameters for the enhanced intrusion detection algorithm. In general, an intrusion is declared when the measured current is less than ACLM by an amount that is more than DCLM. UAE resets to 0x0000 with a power-on or manual reset. The enhanced intrusion algorithm is enabled by setting AEM = 1 and initializing DCLM with a positive number.

Bits 15:8 (ACLM) represent the reference measurement of the loop current in units of 1.1 mA/bit. The modem updates this value is periodically while the modem is off-hook unless FACL (U76 [8]) is set.

Bit 7 (AEM) enables the enhanced intrusion detection algorithm.

Bits 6:0 (DCLM) are the difference in current needed to declare an intrusion. The units are 1.1 mA/bit.

Table 94. UAE Bit Map

Bit

15:8

7

6

5:0

Name

ACLM

Function

Reference loop current for enhanced intrusion detection algorithm

AEM Intrusion detection mode

0 = Legacy mode enabled

1 = Enhanced algorithm enabled

Reserved This bit is reserved.

DCLM Differential look current for enhanced intrusion detection algorithm

UD4 sets the power level of the SMS CAS tone detector threshold. The mapping of CASL to the detector threshold is shown in Table XX. The default value is 0x0000.

U1D4 is a bit-mapped register with bits 15 and bits 13:0 reserved. U1D4 resets to 0x0000 with a power-on or manual reset.

Bit 14 (SEF) = 0 (default) for normal modem operations. When SEF = 1, ePOS connections are enabled.

Table 95. U1D4 Bit Map

Bit Name Function

15 Reserved Reads as zero

14 SEF Standard ePOS Flag; must be set for any ePOS connection

0 = Normal modem connection

1 = connect as an ePOS terminal

13:0 Reserved Reads as zero

132 Rev. 1.41

AN93

5.8. Firmware Upgrades

The Si24xx ISOmodem family contains an on-chip program ROM that includes the firmware required for the features listed in the data sheet. Additionally, the ISOmodem contains on-chip program RAM to accommodate minor changes to ROM firmware. This allows Silicon Labs to provide future firmware updates to optimize the characteristics of new modem designs and those already deployed in the field.

Firmware upgrades (patches) provided by Silicon Labs are files loaded into the ISOmodem program RAM after a

reset using the AT:P command (see Table 49 on page 64). Once loaded, the upgrade status can be read using the

ATI1 command to verify the firmware revision number. The entire firmware upgrade in RAM is always cleared on hardware reset. To reload the file after reset or power down, the host processor rewrites the file using the AT:P command during post-reset initialization.

Patch files may be more than 6000 characters in some cases. They come in a .txt file containing multiple lines that are sent serially to the ISOmodem. Several patch-loading techniques can be used in different environments. See

the description and Table 96. Whichever technique is used, it is suggested to do AT&T6 to verify the CRC of the

loaded patch.

5.8.1. Method 1 (Fastest)

Send the entire file in quiet mode using a program that waits for a set amount of time after every line. This can result in load times as short as 0.7 seconds for a 6235-byte patch at 115 kbaud (UART interface mode). The file transfer should be preceded by ATZ or reset and followed by ATE0 and ATQ1. After the transfer, perform ATE1 and

ATQ0 as needed. The delay between lines must be increased when using the parallel or SPI interface.

1. Low pulse on RESET signal for at least 5.0 ms.

2. Wait the reset-recovery time.

3. Send ATE0.

4. Wait for OK.

5. Send ATQ1 to the modem.

6. Wait 20 ms.

7. Send AT:PIC (first line of the patch).

8. Wait 20 ms.

...

(n-5) Send AT:PIC0 (last Line of Patch).

(n-4) Wait 20 ms.

(n-3) Send ATQ0 to the modem.

(n-2) Wait for OK.

(n-1) Send AT&T6 to the modem.

(n) Wait for OK.

5.8.2. Method 2

Send the entire file using a program that waits for OK after every line. This will require 3.98 seconds for a 6235 byte patch at 115 kbaud or longer if the OS has latency.

5.8.3. Method 3

For development purposes, send the entire patch file using a program that allows a timed preprogrammed pause between lines, e.g. HyperTerminal or ProComm. This will give times of around 16 seconds for a 6235 byte patch (at

115 kbaud). Due to the granularity of a typical desktop operating system, be sure to set the time delay between lines to 100 ms.

Rev. 1.41

133

A N 9 3

Start Condition

Table 96. Load Technique and Speed Table*

Delay

Between

Lines

Load time, 6235-Byte

Patch, 115 kbaud UART

Approach Used With

Reset, then

ATE0 and ATQ1

0.5 ms

1 ms

2 ms

0.694

0.771

0.925

Embedded systems

Embedded systems

Embedded systems

5 ms

10 ms

1.385

2.152

Embedded systems

Embedded systems

Reset

Wait for OK 3.998

Windows or embedded system where time precision is worse than 10 ms

Windows without writing a patch loader

Reset

100 ms 15.962

*Note: The delay times do not include the time to empty the UART's possibly long TX buffer. The time quoted is between the end of transmission of the last character of a line and the start of transmission of the first character of the next line.

A CRC can be run on the upgrade file loaded into on-chip Program RAM with the AT&T6 command to verify that the upgrade was correctly written to the on-chip memory. The CRC value obtained from executing the AT&T6 command should match the CRC value provided with the upgrade code.

5.9. Escape Methods

There are four ways to escape from data mode and return to command mode once a connection is established.

Three of these, +++, “9th Bit”, and the “Escape Pin”, allow the connection to be maintained while one or both modems are in the command mode. The fourth method is to terminate the connection. The three escape methods that maintain the connection are combined by a logical OR. For example, if +++ and the “Escape Pin” are both enabled, either returns the modem to the command mode from the data mode. In parallel or SPI mode, the escape pin is not available. Instead the system can set the ESC flag in Hardware Interface Register 1 (HIR1).

While in data mode, an escape to command mode occurs if an escape command is sampled as negated for at least 60 ms, then sampled asserted for at least 60 ms. The modem is then prepared to accept AT commands, regardless of whether OK has been sent to the host. If the modem is already in command mode, the modem does not send OK. The host should always wait for OK before entering the next command after an escape.

When making a new connection, the host must not try to escape between the connect message and the protocol message. An escape attempt in this interval may fail because the modem is not in data mode until after the protocol message. In practice, it is difficult to determine the exact boundary between command mode and data mode. The recommendation is to time the escape command 100 ms low and 100 ms high, and expect that the modem has transitioned to command mode.

The system should then flush the receive buffer 100 ms after the escape command has been removed, send AT, and wait for OK. This ensures that the modem is in command mode because OK is caused by the AT command and not by the escape command.

5.9.1. +++ Escape

The +++ escape is enabled by default and is controlled by U70 [13] (TES). There are equal guard time periods before (leading) and after (trailing) the +++ set by the register S12, during which there must be no interface (UART,

SPI or parallel) activity. If this inactivity criterion is met, the ISOmodem escapes to the command mode at the end of the S12 time period following the +++. Any activity in the host interface during either the leading or trailing time period causes the ISOmodem to ignore the escape request and remain in data mode. Timing for this escape

sequence is illustrated in Figure 29.

134 Rev. 1.41

AN93

+++

Leading Guard

Tim e

Trailing Guard

Tim e

Guard Tim e = S12 (20 m sec units)

Default Guard Tim e S12 = 50 (1.0 sec)

Guard Tim e Range = 10–255 (0.2–5.1 sec)

Figure 29. +++ Escape Timing

5.9.2. “9th Bit” Escape

The “9th Bit” escape mode feature is enabled by sending the AT\B6 command through autobaud, which detects a

9th bit space as “9th bit” escape mode. If this escape method is selected, a 1 detected on the ninth bit in a data word returns the modem to the command mode. The 9th bit is ignored when the modem is in the command mode.

Timing for this escape sequence is illustrated in Figure 30.

UART Tim ing for M odem Transm it Path (9N1 M ode with 9th Bit Escape)

9-Bit Data

Mode

TX

Start D0 D1 D2 D3 D4 D5 D6 D7 ESC Stop t

RTS t

CTH

CTS

Figure 30. “9th Bit” Escape Timing

5.9.3. “Escape Pin” Escape

The “escape pin is controlled by U70 [15] (HES). This bit is 0 by default, which disables the escape pin, ESC. If

HES is set to a 1, a high level on the ESC pin causes the modem to transition to the on-line command mode. The

ESC pin status is polled by the processor, and there is a latency before OK is received and the modem is in command mode. The escape pin must be kept active until OK is received. In parallel or SPI interface mode, the

function of the escape pin is replaced by bit 2 in Hardware Interface Register 1, described in "2.2.4.2. Hardware

Interface Register 1" on page 25. Setting that bit high causes the modem to escape to the command mode.

Rev. 1.41

135

A N 9 3

5.10. Data Compression

The modem can achieve DTE (host-to-ISOmodem) speeds greater than the maximum DCE (modem-to-modem) speed through the use of a data-compression protocol. The compression protocols available are the ITU-T V.44,

V.42bis, and MNP5 protocols. Data compression attempts to increase throughput by compressing the information to be sent before actually sending it. The modem is thus able to transmit more data in a given period of time.

Table 97 details the ISOmodem error correction and data compression modes of operation.

Table 97. Enabling Error Correction/Data Compression

To Enable

V.44*

V.42bis

V.42 (LAPM)

MNP5

MNP2–4

Wire

V.42 and

V.42bis only

Use AT Commands

+DS44 (argument)

\N3 and %C1 (default)

\N4 and %C1

V.42 only

MNP2-4 only

\N4 and %C0

\N2 and %C0

MNP2-5 only

No data compression and no error correction

\N2 and %C1

\N0 and %C0

*Note: V.44 is available only on Si2493.

5.11. Error Correction

The ISOmodem can employ error correction (reliable) protocols to ensure error-free delivery of data sent between two modems. The error control methods are based on grouping data into frames with checksums determined by the contents of each frame. The receiving modem checks the frames and sends acknowledgments to the transmitting modem. When it detects a faulty frame, the receiving modem requests a retransmission. Frame length varies according to the amount of data transmitted and the number of retransmissions requested from the opposite end.

The ISOmodem supports V.42 and MNP2–4 error correction protocols. V.42 (LAPM) is most commonly used and is enabled in the \N3 and \N4 modes. In the default mode (\N3), the ISOmodem attempts to connect with V.42 error correction and V.42bis data compression (Si2457/34/15), and falls back to either V.42 only, MNP 2–5, or no error correction (wire mode) if necessary. In \N4 mode, the ISOmodem hangs up if a V.42 connection cannot be established. If the ISOmodem hangs up in V.42 mode after all data are successfully sent, the result code is OK. If the modem hangs up before all data are successfully sent, the result code is NO CARRIER. If the modem connects without a protocol, NO CARRIER is always sent.

The V.42 specification allows an alternate error correction protocol, MNP2-4. MNP2-4 is enabled in \N2 mode. In

\N2 mode, the ISOmodem hangs up if an MNP2, 3, or 4 connection cannot be established.

5.12. Wire Mode

Wire mode (\N0) is used to communicate with standard, non-error-correcting modems. When optioned with \N3, the ISOmodem falls back to Wire mode if it fails in an attempt to negotiate a V.42 or MNP2-4 link with the remote modem. Error correction and data compression are not active in wire mode.

136 Rev. 1.41

AN93

5.13. EPOS (Electronic Point of Sale) Applications

EPOS applications are discussed in "Appendix A—EPOS Applications" on page 270.

5.13.1. EPOS Fast Connect

The ISOmodem supports several fast connect modes of operation to reduce the time of a connect sequence in originate mode.

A typical initialization of V.22 EPOS fast Connect will be as follows:

AT+GCI=xxx

AT:U4D&BFF7

AT:U70|8000

AT&D2

AT+IFC=0,2

AT+ITF=0383,0128

AT:U87,050A

AT\N0 where xxx is the country code, 26 for China

Disable and turn off the calling tone as +GCI may enable the calling tone

HES = 1

Enables escape pin

Flow control setup

Set the parameters for hardware flow control

V.80 Setup

Wire Mode

AT+ES=6,,8

AT+ESA=0,0,0,,1

AT:U1D4|4000

AT+MS=V22

Synchronous access mode

Synchronous access mode control

Standard ePOS Flag

AT:U7A, 0812

AT:U35, E10

Use Bit 4 for Fast Connect for Rev D, it was bit 0 for Rev C

Minimize Dialtone on time requirement for fast dial

AT:U1DA, 120 Default delay TX to answer tone by 200 ms, in 1/600 s units.

This delay can be important for some NAC servers.

5.13.2. EPOS V.29 Fast Connect

In addition to the low modulation speed fast-connect modes, the modem (only Si2493/57/34/15 and Si2494/39) also supports a fast-connect mode based on the 9600 bps V.29 fax modulation standard.

5.14. Legacy Synchronous DCE Mode/V.80 Synchronous Access Mode

The ISOmodem supports two different DTE interfaces to implement an Asynchronous DTE to Synchronous DCE

conversion. Table 98 provides high-level options to choose between the Legacy Synchronous DCE Mode and the

newer V.80 synchronous access mode.

Table 98. Synchronous Mode Overview

Mode U Register

Neither U7A [1] = 0

Legacy Synchronous

DCE Mode

U7A [1] = 1

Synchronous Access

Mode

AT+ES

Settings

+ES = D,,D

+ES = D,,D

+ES = 6,,8

The synchronous access mode has more features than the Legacy Synchronous DCE Mode. For new designs, use of the newer synchronous access mode interface is recommended. Otherwise, existing software written with the Legacy Synchronous DCE Mode interface can still be used as long as the AT+ES command settings are not changed from the default value.

Rev. 1.41

137

A N 9 3

5.15. V.80 Mode

As shown in Table 99, the synchronous access mode is chosen by using the AT+ES=6,,8 command setting.

When using the synchronous access mode, it is expected that the AT\N0 command will be used to disable all other error correction protocols that may interfere with V.80 synchronous access mode operation.

The V.80 Mode has two distinct submodes. Switching between these two submodes can be accomplished within the confines of the same connection through the use of In-Band commands. The submodes are:

Transparent Submode

Framed Submode

The Transparent Submode creates a direct bit-by-bit translation from the DTE to and from the DCE. Any application that requires a method of reconstructing a serial bit-stream at the DCE can use the Transparent Submode.

The Framed Sub-mode represents data at the DCE in HDLC/SDLC frames. This submode is typically used in point-of-sale terminals. A common feature used in conjunction with the Framed Submode is the use of the 16-bit

CRC. When used with the CRC option, the Framed Submode can be used in the same applications currently using the Legacy Synchronous DCE Mode.

Prior to sending the ATDT to establish a synchronous access mode connection, the following commands and registers require initialization: +MS, +ES, +ESA, +ITF, +IFC, U87, and U7A.

As an example, the closest equivalent to the Legacy Synchronous DCE Mode is the following initialization setting.

With either Synchronous Access Submode, once a connection has been established, payload data are multiplexed with command/indicator information by use of <EM> shielding. With <EM> shielding, either of the two bytes

<0x19> or <0x99> (used to represent <EM>) precedes a special command or special indicator.

Synchronous access mode <EM> shielding is designed to support XON/XOFF handshaking. As such, the bytes

0x13 and 0x11 (XON/XOFF) are considered to be special characters in the same way the 0x19 and 0x99 bytes, used for <EM>, are special.

Since the payload data are multiplexed with <EM> shielded command/indicator and possibly XON/XOFF characters, Transparency <EM> codes are defined for the purpose of allowing the host software to send 0x13,

0x11, 0x19 and 0x99 bytes to/from the DCE. For example, if one <0x99> character needs to be sent as payload,

the host software sends <EM><0x76> instead. For a complete list <EM> commands and statuses, see Table 100.

Table 99. Synchronous Access Mode Settings

AT\N0

AT+ES = 6,,8

AT+ESA = 0,0,0,,1,0

AT+IFC = 2,2

AT+ITF = 0383,0128

AT:U87,050A

Required to disable MNP,V.42 and other protocols

Enable synchronous access mode on originate or answer

Send Abort on underrun/overrun in Framed Submode.

Enable CRC generation and checking.

CTS/RTS Flow Control

Controls CTS Flow Control

Threshold. CTS off at 383 bytes, CTS On at 128 bytes.

Direct to Framed Sub-mode upon connection. DCE starts to transmit upon receipt of 10 bytes from the DTE.

138 Rev. 1.41

AN93

Table 100. EM In-Band Commands and Statuses

Command–

Indicator pair

Hex

Code

Transmit Direction Receive Direction

<EM><t1>

<EM><t2>

<EM><t3>

<EM><t4>

<EM><t5>

<EM><t6>

<EM><t7>

<EM><t8>

<EM><t9>

<EM><t10>

<EM><t11>

<EM><t12>

<EM><t13>

<EM><t14>

<EM><t15>

<EM><t16>

0x5C Transmit one 0x19 byte

0x76 Transmit one 0x99 byte

0xA0 Transmit one 0x11 byte

0xA1 Transmit one 0x13 byte

0x5D Transmit two 0x19 bytes

0x77 Transmit two 0x99 bytes

0xA2 Transmit two 0x11 bytes

0xA3 Transmit two 0x13 bytes

0xA4 Transmit 0x19, 0x99

0xA5 Transmit 0x19, 0x11

0xA6 Transmit 0x19, 0x13

0xA7 Transmit 0x99, 0x19

0xA8 Transmit 0x99, 0x11

0xA9 Transmit 0x99, 0x13

0xAA Transmit 0x11,0x19

0xAB Transmit 0x11,0x99

Received one 0x19 byte

Received one 0x99 byte

Received one 0x11 byte

Received one 0x13 byte

Received two 0x19 bytes

Received two 0x99 bytes

Received two 0x11 bytes

Received two 0x13 bytes

Received 0x19, 0x99

Received 0x19, 0x11

Received 0x19, 0x13

Received 0x99, 0x19

Received 0x99, 0x11

Received 0x99, 0x13

Received 0x11,0x19

Received 0x11,0x99

<EM><t17>

<EM><t18>

<EM><t19>

<EM><t20>

0xAC Transmit 0x11,0x13

0xAD Transmit 0x13,0x19

0xAE Transmit 0x13,0x99

0xAF Transmit 0x13,0x11

Received 0x11,0x13

Received 0x13,0x19

Received 0x13,0x99

Received 0x13,0x11

<EM><mark>

<EM><flag>

0xB0 Begin Transparent Mode

Abort Detected in Framed

Submode

0xB1

Transmit a flag; enter

Framed Submode if currently in Transparent Submode. If +ESA[E] = 1, append FCS to end of frame before sending closing HDLC flag.

Detected a non-flag to flag transition. Preceding data was a valid frame. If +ESA[E]=1, sent FCS matches that of the calculated

CRC.

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Supported in

Transparent

Submode

Yes

1

Yes

1

Yes

1

Yes

1

Yes

Supported in Framed

Submode

Yes

Yes

1

Yes

1

Yes

1

Yes

1

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes, Receive

Only

Rev. 1.41

139

A N 9 3

Table 100. EM In-Band Commands and Statuses (Continued)

Command–

Indicator pair

Hex

Code

Transmit Direction Receive Direction

Supported in

Transparent

Submode

Supported in Framed

Submode

<EM><err>

<EM><under>

<EM><tover>

<EM><rover>

0xB2 Transmit an Abort

0xB4 not applicable

0xB5 not applicable

0xB6 not applicable

Detected a non-flag to flag transition.

Preceding data are not a valid frame.

Detected Transmit Data

Underrun

Detected Transmit Data Overrun

Detected Receive Data Overrun

<EM><resume

>

0xB7

Resume after a data underrun or overrun

(applicable if

+ESA[C] = 1)

Not applicable

<EM><bnum>

<EM><unum>

<EM><eot>

0xB9 not applicable

<octnum0><octnum1> specifies number of discarded octets following a data overrun/underrun, after the

<EM><resume> command.

This is applicable if +ESA[C] = 12.

0xBA

Terminate carrier, return to command mode.

Loss of carrier detected, return to command mode

<EM><ecs>

<EM><rrn>

0xB8 not applicable

0xBB

Escape to On-Line command mode

0xBC

Request rate renegotiation

<octnum0><octnum1> specifies number of octets in the transmit data buffer if +ITF[C] is non-zero2.

Confirmation of Escape to On-

Line command mode.

Indicate rate renegotiation

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

140 Rev. 1.41

AN93

Table 100. EM In-Band Commands and Statuses (Continued)

Command–

Indicator pair

Hex

Code

Transmit Direction Receive Direction

Supported in

Transparent

Submode

Supported in Framed

Submode

<EM><rate> 0xBE not supported

Retrain/Rate Reneg completed, following octets

<tx><rx> indicate tx and rx rates.

0x20–1200 bps

0x21–2400 bps

0x22–4800 bps

0x23–7200 bps

0x24–9600 bps

0x25–12 kbps

0x26–14.4 kbps

0x27–16.8 kbps

0x28–19.2 kbps

0x29–21.6 kbps

0x2A–24 kbps

0x2B–26.4 kbps

0x2C–28.8 kbps

Yes Yes

0x2D–31.2 kbps

0x2E–33.6 kbps

Notes:

1. U87 [10] = 1 Can be used to limit the transparency characters in the receive direction, to these four cases only.

2. The actual value represented in <octnum0><octnum1> = (octnum0 / 2) + (octunum1 x 64)

3. <EM><0x45> indicates that an unrecognized <EM> command was sent to the modem.

In addition, a common Point-of-Sale V.22 Fast Connect Handshake Protocol (with transparent HDLC) requires these additional settings:

Table 101. Fast Connect Settings

AT+MS = V22

AT:U7A,12

V22 Protocol

Set Fast Connect, Transmit

HDLC Flags instead of Marks during handshake negotiation.

Rev. 1.41

141

A N 9 3

Given the example initialization settings shown in Table 101, after an ATDT command has been sent to establish a

connection, the modem responds with the following:

ATDT12345

CONNECT 1200

PROTOCOL: NONE

<0x19> <0xBE> <0x20> <0x20> <0x19> <0xB1>

The first <EM><rate> indicator shows that the modem connected with a transmit rate of 1200 bps and a receive rate of 1200 bps. The <EM><flag> that occurs immediately after the <EM><rate> indicates that a non-flag to flag transition has occurred and that the receiver has now been synchronized. An <EM><flag> indicator is applicable only to the first occurrence of a non-flag to flag transition. Future occurrences of non-flag to flag transitions are indicated with an <EM><err> instead. Also, this feature is unique to the U87 [8]=1 option. Also, with U87 [8]=1, the

Framed Submode is entered immediately upon connection. Otherwise, if U87 [8]=0, the Transparent Submode is entered instead, and the host is expected to send an <EM> <flag> to switch to the Framed Submode.

After a connection has been established, the modem is ready to transmit and receive frames. For example, if it is desired to send a frame whose contents are:

<0x10><0x11><0x12><0x13><0x14><0x15>

The host software sends the following:

<0x10><0x19><0xA0><0x12><0x19><0xA1>

<0x14><0x15><0x19><0xB1>

Note the bytes <0x11> and <0x13> are <EM> shielded because these bytes could have been used for XON /

XOFF handshaking. In this example, CTS/RTS hardware handshaking is used, so it is also possible for the host to have sent this series of bytes instead:

<0x10><0x11><0x12><0x13><0x14><0x15>

<0x19><0xB1>

However, if the host does not <EM> shield the 0x11 and 0x13 characters, XON / XOFF software handshaking can no longer be used.

In either of the above transmit frames, the <EM><flag> is used to indicate that a logical frame has completed. The modem does not begin transmitting the frame at the DCE until the <EM><flag> is received or the number of bytes sent to the modem exceeds the number of bytes programmed into U87 [7:0].

In the above example, the following transmission:

<0x10><0x19><0xA0><0x12><0x19><0xA1>

<0x14><0x15><0x19><0xB1> meets both criteria of having 10 bytes received at the DTE and receipt of an <EM><flag> command. In this example, the transmission at the DCE begins approximately after the receipt of the <0xB1> byte.

Once an HDLC frame begins transmitting at the DCE, the host must ensure transmit overrun and underrun do not occur. It is expected that the +ITF command be used to adjust the transmit flow control thresholds so that it is tuned to the system's ability to process the interrupt.

If a transmit underrun occurs, the <EM><tunder> indicator always appears in the receive path, regardless of how

+ESA[C] is programmed.

If +ESA[C] = 0, the modem transmits an abort character at the DCE at the point of the transmit underrun. Additional transmit frames can then be transmitted normally.

If +ESA[C] = 1, the modem transmits an HDLC flag at the point of the transmit underrun, and the DCE continues to send only HDLC flags until the host sends an <EM><resume> command. The <EM><resume> is then followed by the <EM><unum> command so that the host software can correct this problem.

A transmit overrun can occur if the host does not properly implement transmit flow control. When a transmit overflow occurs, the <EM><tover> indicator always appears in the receive path. A transmit overflow is considered to be a catastrophic failure and results in non-deterministic behavior at the DCE. It is recommended that the session be terminated immediately.

142 Rev. 1.41

AN93

It is expected that the <EM><tover> and <EM><tunder> indicators be encountered during system debug, and designing the system software properly to avoid having these indicators occur should be the design goal.

In the receive direction, assuming that the remote modem is another Si2493/57/34/15, this is the expected sequence at the remote receiver DTE, representing the frame sequence of:

<0x10><0x11><0x12><0x13><0x14><0x15>

<0x10><0x19><0xA0><0x12><0x19><0xA1>

<0x14><0x15><0x19><0xB1>

In the receive direction, the <EM><flag> indicates that the CRC check is successful, and the preceding frame was received correctly. If there had been an error in the preceding frame, the <EM><err> would have been sent instead of the <EM><flag>. The host is expected to discard the entire frame based on whether or not the frame is terminated with an <EM><flag> or <EM><err>. The host should also expect to occasionally see the <EM><mark> indicator if the sending modem experienced a transmitter underrun or overrun problem.

In general, the RTS flow control is not used. However, if it is used, and if RTS is negated for too long, the receive buffers will eventually overflow. This is called a receiver overrun, and the modem sends an <EM><rover> indicator.

A receiver overrun is considered to be a catastrophic failure, and the host is expected to terminate the session.

Host software must be designed so that an <EM><rover> indicator never occurs.

It is expected that the <EM><rover> indicator be encountered during system debug, and designing the system software properly to avoid having these indicators occur should be the design goal.

Please note that there is an option available in the U87 [10]. The reason for this option is to determine what the modem sends to the DTE when the modem receives back-to-back occurrences of the special characters, 0x19,

0x99, 0x11, and 0x13, at the DCE.

As an example, if the following string is received at the DCE:

<0x19><0x19><0x11><0x11>

If U87 [10] = 0, this is what the host software will receive at the DTE:

<0x19><0x5D><0x19><0xA2>

If U87 [10] = 1, this is what the host software will receive at the DTE:

<0x19><0x5C><0x19><0x5C><0x19><0xA0><0x19><0xA0>

The choice of how to program U87 [10] is based on whether or not it is desired to simplify the host receive parsing algorithm or to guarantee that the receive throughput is not overly affected by the <EM> <shielding>. In the worst case, if there is a large frame consisting only of special characters, the required throughput at the DTE will have to be at least 2x that of the DCE rate to account for the <EM> shielding overhead.

There are two methods of ending a call. One is to use the <EM><eot> command followed by an ATH. Sending the

<EM><eot> command will cause the modem to go to command mode and stop the transmitter; however, the modem does not go back on hook until ATH. The other method is to use the <EM><esc> command to escape to command mode, and then issue the ATH command. The main difference is that the <EM><esc> does not shut off the transmitter. The <EM><esc> can also be followed by an ATO to resume the connection.

Rev. 1.41

143

A N 9 3

6. Programming Examples

The following programming examples are intended to facilitate the evaluation of various modem features and serve as example command strings that can be used singly or in combination to create the desired modem operation.

6.1. Quick Reference

Table 102 summarizes the modem function/feature and the associated hardware pins, AT commands, S registers, and U registers. When a command string is created to enable a particular feature, Table 102 should be reviewed to

make sure all necessary commands and registers have been considered.

Table 102. Modem Feature vs. Hardware, AT Command and Register Setting

Function/Feature

Autobaud

Blacklisting

Type I Caller ID

Type II Caller ID

AT Commands

\T16, \T17

%B

+VCID, +VCDT

+PCW

+VCID

+VCIDR

S Registers

42, 43, 44

U Registers

U70 [12,4]

Country-dependent settings U0–U4C, U4D [10,1,0], U50–U52,

U62 [8], U67 [6, 3:2, 1, 0],

U68 [2, 1, 0], U69 [6, 5, 4]

DTE interface

DTMF dialing

EEPROM

Escape (parallel/SPI)

Escape (UART)

Intrusion detection

En, \Bn, \Pn, \Qn,

\Tn, \U

D

:E, :M

\B6

6, 8, 14

12

U46–U48, U4E

U70 [15], Parallel Register 1 [2]

U70 [13,15]

U6A [1], U69 [2], U70 [10, 2],

U76 [15:9, 8, 7:5, 4:0], U77 [15:12, 11],

U78 [15:14, 7:0], U79 [4:0], UAE

Line rate

Modem-on-hold

&Gn, &Hn

+PCW

+PMHF

+PMHR

+PMHT

+PMH

+ATO

Overcurrent detection

Power control

Pulse dialing

&Z

D

24

6, 8, 14

U67 [7], U70 [11, 3],

U77 [10, 9, 8:0], U79 [4:0]

U65 [13]

U37–U45, U4E

144 Rev. 1.41

AN93

Table 102. Modem Feature vs. Hardware, AT Command and Register Setting (Continued)

Function/Feature

Quick connect

Reset

SAS detect

Self Test

SMS

AT Commands

+PQC

+PSS

Z

S Registers

40, 41

U Registers

U6E [4], U70 [7,5]

U9F–UA9

V.29

V.42/V.42b

V.44*

V.92

&Tn, &Hn

+FCLASS

+FRM

+FTM

+FCLASS

+FTM

+FRM

+DR, %Cn, \Nn,

+DS

+DS44, +DR

+MS

+PIG

*Note: Si2493 only.

6.2. Country-Dependent Setup

Configuring the ISOmodem for operation in different countries is done easily with AT commands. In all but rare instances, no hardware change is required (the exceptions being an optional maximum ringer impedance, a billingtone filter, etc.). For this reason, the ISOmodem is truly a global modem solution. Modem initialization commands

for various countries are presented in "6.2.2.1. Country Initialization Table". All U-register values are in

hexadecimal. The settings for different countries can be broken into three groups: call progress, dialing, and lineinterface control. Call-progress settings include filter coefficients, cadence data, and threshold values. Dialing includes DTMF levels, thresholds, timing and pulse-dialing parameters. Line-interface settings include ac line impedance, off-hook voltage and current characteristics, ringer sensitivity, and transmit levels. CID (Caller ID)

settings are discussed in a separate section. Tables 103–107 describe the registers and bits used for global

configuration and the functions performed by each. Many countries use some or all of the default FCC settings.

6.2.1. DC Termination

The ISOmodem offers a great deal of flexibility in setting dc termination. Several bits can be used to adapt to particular country requirements and unusual line conditions. The dc termination control bits are shown in

Table 103.

Table 103. DC Termination Control Bits

Reg Bit Val Function

U67 7 DCR DC Impedance Select

U67 3:2 DCV DC Termination Select

U7D 10 LLV Special low-voltage mode

A detailed description of each bit is given in the relevant U-register description section of this manual. The following discussion centers on the use of these bits alone or in combination to meet particular country requirements.

Rev. 1.41

145

A N 9 3

6.2.2. Country Configuration

The modem default settings are for the US-like countries. Many countries use at least some of the default register settings. Default values do not have to be written when configuring the modem to operate in a particular country, assuming the modem was reset just prior to the configuration process. To avoid confusion and possible errors,

the modem should be reset prior to reconfiguration between countries.

Some countries have unusual requirements. For example, registers U37–U40 set the number of pulses to dial digits 0 through 9, respectively. By default, digit 1 has a setting of 1 pulse; digit 2 has a setting of 2 pulses, and so on. Digit 0 has a setting of 0xA (10 decimal) pulses. This pulse arrangement is used nearly universally throughout the world. However, New Zealand requires ten pulses for 0, nine pulses for 1, eight pulses for 2, and so on.

Sweden, on the other hand, requires one pulse for 0, two pulses for 1, and so on.

Japan requires both the usual 10 pps pulse dialing and 20 pps pulse dialing. To configure the modem for 20 pps, set U42 (PDBT) = 0x0022, U43 (PDMT) = 0x0010, and U45 (PDIT) = 0x0258. The %P command may also be used.

The Netherlands has a unique dial-tone filter. Other countries, such as Japan, have special low-voltage loop requirements. South Korea, Poland, and South Africa have special ringer impedance requirements. Set all country-

specific parameters listed in Table 104.

In order to use the +GCI command for a given country and modify one or more U registers, it is necessary to execute the +GCI command first, then modify the desired register or registers. The +GCI command resets all U registers through U86 and S7 to factory defaults before applying the country-specific settings. A compliance laboratory can verify whether the countries that accept the legacy TBR21 specification still accept their previous settings. It is advantageous in terms of heat dissipation to disable the TBR21 current limit. In order to disable loopcurrent limiting, bit ILIM (U67 [9]) should be set to zero after the +GCI command.

Table 104 contains recommended updates to the +GCI register settings. The U-register writes must be loaded after

the +GCI command. Some TBR21 and ES 203 021 countries require blacklisting. This can be enabled with

S42 = 1. Some also require a minimum period of time between calls that can be set with S50 = 6.

6.2.2.1. Country Initialization Table

Table 104. Country Initialization Table

Country Initialization

Algeria*

Argentina*

Armenia*

Australia

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT+GCI=51

AT:U46,680

AT:U52,1

ATS007=50

AT+GCI=73

ATS007=80

AT+GCI=9

AT:U42,55,F

AT:U4F,79

AT:U52,2

ATS006=3

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

146 Rev. 1.41

Table 104. Country Initialization Table (Continued)

Country Initialization

Austria

Bahamas

Bahrain*

AT+GCI=A

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Defaults

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

Belarus*

Belgium

AT+GCI=73

AT+GCI=F

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Bermuda

Brazil

Brunei*

Bulgaria

Defaults

AT+GCI=16

AT:U67,8

AT+GCI=9C

AT+GCI=1B

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=20 Canada

Caribbean

Chile*

Defaults

AT+GCI=73

AT:U49,28,83

ATS007=180

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

AN93

147

A N 9 3

148

Table 104. Country Initialization Table (Continued)

Country Initialization

China

Colombia

Costa Rica

Croatia*

AT+GCI=26

AT:U67,8

AT+GCI=27

Defaults

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

Cyprus*

Czech Republic

Denmark

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=31

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Defaults Dominican Republic

Dubai

Egypt*

Defaults

AT+GCI=6C

AT:U35,10E0

AT:U62,904,33

AT:U67,208

ATS006=3

El Salvador

Ecuador

Defaults

AT+GCI=35

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

Table 104. Country Initialization Table (Continued)

Country Initialization

Estonia*

Finland

France

French Polynesia*

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=3C

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

AT+GCI=3D

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

AT+GCI=1B

AT:U62,904

AT+GCI=73 Georgia*

Germany

AT+GCI=42

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Ghana*

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

AN93

149

A N 9 3

150

Table 104. Country Initialization Table (Continued)

Country Initialization

Greece

Guadeloupe*

Guam

Hong Kong

Hungary

Iceland*

India

AT+GCI=46

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

AT+GCI=1B

AT:U62,904

AT:U67,8

Defaults

AT+GCI = 50

AT+GCI=51

AT:U35,10E0

AT:U62,904,33

AT+GCI=2E

AT:U62,904

AT+GCI=53

AT:U63,3

AT:U67,8

Indonesia

Ireland

Defaults

AT+GCI=57

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Israel

AT+GCI=58

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,1

AT:U62,904

AT:U67,1004

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

Table 104. Country Initialization Table (Continued)

Country Initialization

Italy

Japan

AT+GCI=59

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

AT+GCI=0

Jordan*

Kazakhstan*

Korea (South)

AT+GCI=16

AT:U49,22,7A

AT+GCI=73

AT+GCI=61

AT:U67,A

Defaults Kuwait

Kyrgyzstan*

Latvia*

Lebanon*

Lesotho*

Liechtenstein*

AT+GCI = 73

AT+GCI=1B

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT+GCI=9F

AT:U63,33

AT:U67,A

ATS006=3

AT+GCI=2E

AT:U62,904

Lithuania*

AT+GCI=73

AT:U45,344

AT:U62,904,33

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

AN93

151

A N 9 3

Table 104. Country Initialization Table (Continued)

Country Initialization

Luxembourg

Macao

AT+GCI=69

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Defaults

Malaysia

Malta*

Martinique*

AT+GCI=6C

AT:U46,A80

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=1B

AT:U62,904

AT:U67,8

ATS007=50

AT+GCI=73 Mexico

Moldova*

Morocco*

Netherlands

AT+GCI=73

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT+GCI=7B

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

152 Rev. 1.41

Table 104. Country Initialization Table (Continued)

Country Initialization

New Zealand

Nigeria*

AT+GCI=7E

AT:U38,9,8,7,6

AT:U3D,4,3,2,1

AT:U46,8A0

AT:U52,2

AT:U67,8

AT+GCI=1B

AT:U62,904

Norway

Oman*

Pakistan*

AT+GCI=82

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

ATS006=3

AT+GCI=89

AT+GCI=89

AT:U46,8A0

AT+GCI=87

Defaults

AT+GCI=89

Paraguay

Peru

Philippines

Poland

Portugal

AT+GCI=8A

AT:U14,7

AT:U52,2

AT:U62,904

AT:U67,8

AT:U77,4410

ATS006=3

AT+GCI=8B

AT:U35,10E0

AT:U42,41,21

AT:U46,9B0

AT:U4F,64

AT:U52,1

AT:U62,904

AT:U67,8

Defaults Puerto Rico

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

AN93

153

A N 9 3

154

Table 104. Country Initialization Table (Continued)

Country Initialization

Qatar*

Reunion*

Romania*

Russia

Saudi Arabia

Singapore

Slovakia*

AT+GCI=16

AT:U49,22,7A

AT+GCI=1B

AT:U62,904

AT:U67,8

AT+GCI=73

AT:U62,904,33

AT+GCI=B8

AT:U67,4

AT:U62,0080

AT:U69,0D86

AT:U46,0690

Defaults

AT+GCI=9C

AT+GCI=73

AT:U35,10E0

AT:U47,5A,5A

AT:U62,904,33

Slovenia*

South Africa

Spain

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT:U67,8

AT+GCI=9F

AT:U63,33

AT:U67,A

ATS006=3

AT+GCI=A0

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Sri Lanka* AT+GCI=9C

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

Rev. 1.41

Table 104. Country Initialization Table (Continued)

Country Initialization

Sweden

Switzerland

Taiwan

Thailand*

Tunisia*

Turkey*

UAE*

AT+GCI=6C

AT:U46,240

AT:U67,4

AT+GCI=51

AT:U46,680

AT:U52,1

ATS007=50

AT+GCI=1B

AT:U35,10E0

AT:U46,9B0

AT:U62,904

AT+GCI=6C

AT:U67,8

ATS006=3

AT+GCI=A5

AT:U14,7

AT:U35,10E0

AT:U37,1,2,3,4,5,6,7,8,9,A

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

AT+GCI=A6

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

ATS006=3

AT+GCI=FE

AT:U67,8

USA

Ukraine*

AT+GCI=B5

AT+GCI=73

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

AN93

Rev. 1.41

155

A N 9 3

Table 104. Country Initialization Table (Continued)

Country Initialization

United Kingdom

AT+GCI=B4

AT:U14,7

AT:U35,10E0

AT:U46,9B0

AT:U4F,64

AT:U52,2

AT:U62,904

AT:U67,8

ATS006=3

Defaults Uruguay

Uzbekistan

Venezuela

Defaults

Defaults

Yemen

Zambia*

Defaults

AT+GCI=2E

AT:U35,10E0

AT:U46,9B0

AT:U62,904

*Note: These countries do not have a built-in +GCI support but are using the settings of other countries as a shortcut.

156 Rev. 1.41

6.2.2.2. Country-Setting Register Tables

Table 105. International Call Progress Registers

Register Value Function

Dial Tone Control

U0–U14

U15

Dial Tone Detect Filter

Coefficients

DTON Dial Tone On Threshold

U16

U34

U35

DTOF

DTWD

DMOT

Dial Tone Off Threshold

Dial Tone Detect Window

Dial Tone Minimum On Time

Busy Tone Control

U17–U2B

U2C

U2D

U2E

U2F

U30

Busy Tone Detect Filter Coefficients

BTON Busy Tone On Threshold

BTOF Busy Tone Off Threshold

BMTT Busy Tone Minimum Total Time

BDLT Busy Tone Delta Time

BMOT Busy Tone Minimum On Time

U31

U32

U33

U49

U4A

U4B

U4C

Ringback Cadence Control

RMTT Ringback Tone Minimum Total

Time

RDLT Ringback Tone Delta Time

RMOT Ringback Tone Minimum On

Time

Ring Detect Control

RGFH Ring Frequency High

RGFD Ring Frequency Delta

RGMN Ring Cadence Minimum On

Time

RGNX Ring Cadence Maximum Total

Time

AN93

Rev. 1.41

157

A N 9 3

Register

U37–U40

U42

U43

U45

U46

U47

U48

Table 106. Dial Registers

Value Function

Pulse Dial Control

Pulse per Digit Definition

PDBT Pulse Dial Break Time

PDMT Pulse Dial Make Time

PDIT Pulse Dial Interdigit Time

DTMF Control

DTPL DTMF Power Level (and

Twist)

DTNT DTMF On Time

DTFT DTMF Off Time

Table 107. Line Interface/Control Registers

Register Bit Value Function

U4D 10 CLPD Check Loop Current Before

Dialing

1

0

LLC Low Loop Current Detect

(set for legacy TBR21)

LCN Loop Current Needed

U50

U51

LCDN Loop Current Debounce

On Time

LCDF Loop Current Debounce

Off Time

U52

U67:

13:12

MINI

9 ILIM

U68 2

1

0

7

6

XMTL Transmit Level

DCR DC Impedance Select

OHS On-Hook Speed

3:2 DCV DC Termination Select

1

0

RZ

RT

Ringer Impedance

Ringer Threshold Select

BTE

ROV

BTD

Billing Tone Protect Enable

Receive Overload

Billing Tone Detected

6.2.2.3. Special Requirements for Serbia and Montenegro

The following are special network requirements for Serbia and Montenegro. These specifications are based on the best information available and are believed to be correct.

DC Feed: 48 or 60 V

Feeding Bridge: 2 x 400

 or 2 x 500 

Network Impedance: 600

resistive

On-Hook (Idle State) Noise: < –60 dBm

On-Hook ac (Ringer) impedance: >2.5 k

DTMF Transmit: –11 to –9 dBm and –8 to –6 dBm

Data Transmit Level: 0 dBm to –15 dBm in 1 dB steps (average –13 dBmo)

158 Rev. 1.41

AN93

Out-of-band energy: not specified

Pulse Dial: 1.6/1 ±15 % (pulse/pause)



Rep Rate: 10 pps



Interdial Pause: 250 ms <x> 800 ms, ±10 %

Ring signal: 25 Hz 80–90 V

RMS

Dial Tone: 425 Hz ±15 %



Level: –8 dBm > x > –12 dBm



Cadence: 200 ms ±10% ON

300 ms ±10% OFF

700 ms ±10% ON

800 ms ±10% OFF

Busy Tone: 425 Hz ±15 %



Level: –8 dBm > x > –12 dBm



Cadence: 500 ms ±10 % ON

500 ms ±10 % OFF

6.2.3. Blacklisting

Blacklisting prevents dialing the same phone number more than three times in three minutes. Any attempt to dial a fourth time within three minutes results in a BLACKLISTED result code. If the blacklisting memory is full, any dial to a new number results in a BLACKLIST FULL result code. The number of allowable calls may be adjusted in S43. If

S43 = 3, the third call in S44 seconds is blacklisted. The blacklisting time may be adjusted with register S44

(second units). A number is added to the blacklist only if the connection fails. The S42 register controls blacklisting.

Any number that is currently blacklisted is reported with the %B command.

S42

0 (default)

1

Blacklisting

Disabled

Enabled

AT Command

%B

Function

Report blacklisted number (if any) followed by OK

Example: AT%B\r

5121234567

OK

6.3. Caller ID

The ISOmodem supports all major Caller ID (CID) types. CID is disabled by default (+VCID = 0). Setting +VCID = 1 via the AT+VCID = 1 command enables decoded (formatted) CID, while setting +VCID = 2 causes raw Caller ID data to be output. The specific CID mode is selected by +VCDT, which is set to the US Telcordia standard by default. The AT+VCDT = n command is used to define the CID mode according to the decimal values of n defined

in Table 108. U70 [4] (CID) is a sticky bit that is set when a CID preamble is received and cleared with an AT:I

(“Interrupt read”) command.

Table 108. Caller ID Modes

n

0

+VCDT Settings

After ring only (default)

Rev. 1.41

159

A N 9 3

1

2

3

Table 108. Caller ID Modes

Force CID monitor (always on)

UK with wetting pulse

Japan

The following sections describe each CID mode.

6.3.1. Force Caller ID Monitor (Always On)

In this mode, the ISOmodem, when on-hook, continuously monitors the line for the CID mark sequence and FSK data. This mode can be used in all systems, especially those requiring detection of CID data before the ring burst.

It is also useful for detecting voicemail indicator signals and for supporting Type II Caller ID. In most systems,

“Always On” is the preferred method, since it separates CID detection from ring detection.

6.3.2. Caller ID After Ring Only

The ISOmodem detects the first ring burst, echoes RING to the host, and prepares to detect the CID preamble. On preamble detection, the modem echoes the CIDM response to the host (indicating the preamble was received and

FSK modulated CID data will follow), and INT is triggered if enabled.

Next the CID algorithm looks for the start bit, assembles the characters, and sends them to the host as they are received. When the CID burst is finished, there is no more carrier and NO CARRIER is echoed to the host. The

ISOmodem continues to detect subsequent ring bursts, echoes RING to the host, increments the ring counter, S1, and automatically answers after the number of rings specified in S0.

6.3.3. UK Caller ID with Wetting Pulse

The ISOmodem first detects a line-polarity reversal, echoes FLASH to the host, and triggers the INT pin. The

ISOmodem then searches for the Idle State Tone Alert signal and, when detected, echoes STAS to the host. After the Idle State Tone Alert Signal is completed, the ISOmodem goes off-hook then on-hook to apply the 15 ms wetting pulse to the local loop. Next, the ISOmodem prepares to detect the CID preamble. After 50 continuous mark bits (1s) are detected, the CIDM response is echoed to the host indicating that the mark sequence was received and that FSK-modulated CID data will follow, and INT is again triggered. Then, the CID algorithm looks for the start bit, assembles the characters, and sends them to the host as they are received. When the CID burst is finished, the carrier is lost, and NO CARRIER is echoed to the host. The ISOmodem detects ring bursts, echoes

RING to the host, increments the ring counter, S1, and automatically answers after the number of rings specified in

S0. If the wetting pulse is not required, +VCDT = 0 or 1 can be used in the UK.

6.3.4. Japan Caller ID

The ISOmodem detects a line-polarity reversal and a brief ring burst, then goes off-hook and triggers the INT pin.

CID data are sent using the V.23 specification. After detecting 40 mark bits (1s), the ISOmodem searches for a start-bit. CIDM is echoed to the host when a start bit is received. The ISOmodem then begins to assemble characters and sends them to the host. When the CID signal ends, the ISOmodem hangs up and echoes NO

CARRIER to the host. The modem then waits for the normal ring signal. Table 109 shows the AT command strings

that configure the ISOmodem for Japan Caller ID.

Table 109. Japan Caller ID

Command Function

AT+VCID = 1 Enables Caller ID.

AT+VCDT = 3 Selects Japan CID mode.

6.3.5. DTMF Caller ID

DTMF Caller ID is supported in the Si2493/57/34/15/04 Revision D or above and Si2494/39 Revision A or above.

DTMF Caller ID detection is needed to provide complete CID support for Brazil, China and other countries. The

ISOmodem detects the preamble and start code (0x41, or ASCII 'A'), then echoes CIDM to the host. The

160 Rev. 1.41

AN93

ISOmodem assembles the rest of the characters in the message and sends them to the host. It detects the stop code (0x44, or ASCII 'D') and proceeds with the rest of the call processing.

For ISOmodems that support voice mode, detection of DTMF CID is done automatically in +FCLASS = 8 mode after being enabled by a “+VLS = 14” command. The user can also enable FSK CID with the AT+VCID and

AT+VCDT commands. This gives simultaneous support of DTMF and FSK modes.This is useful in countries like

Brazil, China and Taiwan, where the use of DTMF or FSK varies from region to region.

6.4. SMS Support

Short Message Service (SMS) allows text messages to be sent and received from one telephone to another via an

SMS service center. The ISOmodem provides a flexible interface that can handle multiple SMS standards. This flexibility is possible because most of the differences between standards is handled by the host in the data stream itself. The ISOmodem performs the necessary data modulation and provides two options for message packet structure (Protocol 1 and Protocol 2, as defined in ETSI ES 201 912). The rest of the data link layer and transfer layer are defined by the host system. The ISOmodem uses a V.23 half-duplex modulation to transmit and receive the data over the PSTN. Protocol 2 differs from Protocol 1 in that a packet is preceded by a 300-bit long channelseizure preamble. ETSI ES 201 912 describes the other differences between Protocols 1 and 2, but the host processor handles these when structuring the data within the packet.

Table 110. Protocol 1

80 bits of mark (constant ones) Message

Table 111. Protocol 2

Channel seizure (300-bit stream of alternating ones and zeroes)

80-bit stream of ones

Message

Four commands control the behavior of the SMS feature, as described in Table 112 below:

Table 112. SMS Commands

Command SMS Feature Behavior

AT+FCLASS = 256 Prepares the modem for handling SMS calls.

ATDT; Goes off-hook and returns to command mode. If a phone number is provided, it is dialed prior to returning to command mode.

AT+FRM = 200

AT+FTM = 201

Returns to data mode prepared to receive an SMS message.

Returns to data mode prepared to transmit an SMS Protocol 1 message.

AT+FTM = 202 Returns to data mode prepared to transmit an SMS Protocol 2 message.

Rev. 1.41

161

A N 9 3

To enable the SMS features on the ISOmodem, the host must send AT+FCLASS = 256 to the modem prior to handling an SMS call. The host can then dial or answer an SMS call using ATDTxxxx; (where xxxx is the number to be dialed), or ATDT; respectively. Note the semicolon at the end of the command, which places the modem into command mode immediately after dialing and returns OK. The host can then prepare the modem for transmitting or receiving SMS data.

To receive Protocol 1 or Protocol 2 data, the host must send AT+FRM = 200. This causes the modem to return to data mode silently, listening for data from the remote SMS server. If the modem detects a valid Protocol 1 or

Protocol 2 packet, it responds with a CONNECT 1 or CONNECT 2 message respectively, followed by the SMS message (without channel seizure and mark). When the carrier stops, the modem returns to command mode and responds with OK.

To transmit Protocol 1 or Protocol 2 data, the host must send AT+FTM = 201 or AT+FTM = 202. This causes the modem to return to data mode and wait silently until data are received from the host processor for transmission.

Once data are received from the host, the modem transmits the proper number of channel seizure and mark bits followed by the data it received from the host. After the modem has begun transmitting, it will send marks when it does not have data to send and will continue to do so until the host escapes to command mode.

The content of the data message is entirely up to the host including any checksum or CRC. ETSI ES 201 912 describes two standard data and transfer layers that are commonly used. SMS typically relies on caller

identification information to determine if the call should be answered using an SMS device or not. Refer to "6.3.

Caller ID" for more information on how to configure the modem for Caller ID detection.

162 Rev. 1.41

AN93

6.5. Type II Caller ID/SAS Detection

When a call is in progress, the Subscriber Alerting Signal (SAS) tone is sent by the central office to indicate a second incoming call. The central office may also issue a CPE Alert Signal (CAS) after the SAS to indicate that call waiting Caller ID (CWCID) information is available. If properly configured, the modem will acknowledge the CAS tone, receive the CWCID data, and perform a retrain.

The ISOmodem is configured through the +PCW command to toggle the RI pin (+PCW=0), hang up (+PCW=1), or do nothing (+PCW=2) upon receipt of the SAS tone. The default is to ignore the SAS tone. The modem, enabled through the +VCID command, will collect Caller ID information if +PCW is set to toggle the RI pin. The AT:I command can be used to verify receipt of the SAS and CWCID data. Bit 9 will be set for SAS receipt due to the RI toggle. Bit 4 will be set if CWCID data are received.

The CWCID data are collected using the +VCIDR? command. The data message is displayed in hexadecimal format using ASCII text. The modem will return NO DATA if no Caller ID is available. The +VCIDR response is listed below for the following example CWCID message:

Date & Time: 09/11 16:21

ICLID Number: 512-555-1234

Calling Name: JOHN_DOE

+VCIDR:

80 20 01 08 30 39 31 31 31 36 32 31 02 0A 35 31

32 35 35 35 31 32 33 34 07 08 4A 4F 48 4E 5F 44

4F 45 40

OK

Table 113 defines the Multiple Data Message Format (MDMF) parameters in the example response.

Table 113. MDMF Parameters

Character Description

Message Type (MDMF)

Message Length

Parameter Type (Date/Time)

Parameter Length

Month

Day

Hour

Minutes

Parameter Type (Number)

Parameter Length

Number

Parameter Type (Name)

Parameter Length

Name

Checksum

Hexadecimal Value

80

20

01

08

30 39

31 31

31 36

32 31

02

0A

35 31 32 35 35 35 31 32 33 34

07

08

4A 4F 48 4E 5F 44 4F 45

40

ASCII Value

09

11

16

21

5125551234

JOHN_DOE

The SAS tone varies between countries and requires configuration of user registers U9F to UA9. The SAS_FREQ

(U9F) register sets the expected SAS tone frequency as shown in Table 114. The default SAS frequency is 440 Hz.

The expected cadence is set in cadence registers SAS_CADENCE0 (UA0) through SAS_CADENCE9 (UA9).

Rev. 1.41

163

A N 9 3

The even-numbered registers, (UA0, UA2, etc.), control the amount of time the tone is expected to be present, and the odd-numbered registers select the amount of time the tone must not be present. The values are expressed in

10 millisecond units. For example, a cadence of on 500 ms, off 300 ms then on for 500 ms may be selected by writing 0x0032 to UA0, 0x001E to UA1 and 0x0032 to UA2. The unused registers should be written to 0. The default cadence setting is UA0 equal to 001Eh, and the remaining nine registers are set to zero.

Table 115 defines the SAS cadence for each supported country. The on-time is listed in bold. These data were

obtained from ITU-T Recommendation E.180 Supplement 2 (04/98).

Table 114. SAS Tone Frequency

SAS_FREQ (U9F) SAS Frequency

0x0000

0x0001

0x0002

0x0003

440 Hz (Default)

400 Hz

420 Hz

425 Hz

0x0004

0x0005

0x0006

0x0007

0x0008

0x0009

480 Hz

450 Hz

900 Hz

950 Hz

523 Hz

1400 Hz

Country

Table 115. SAS Cadence for Supported Countries*

Tone Frequency (Hz) Cadence (seconds)

Angola

Anguilla

Antigua and

Barbuda

Waiting Tone

Waiting Tone

Call Waiting

Tone

Argentine Republic

Waiting Tone

400

440

480

425

1.0 – 5.0

0.5 – 10.0 – 0.5

0.6 – 10.0

0.4 – 0.2 – 0.4 – 4.0

U Registers

U9F = 0x0001

UA0 = 0x0064

UA1 = 0x01F4

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0004

UA0 = 0x003C

UA1 = 0x03E8

U9F = 0x0003

UA0 = 0x0028

UA1 = 0x0014

UA2 = 0x0028

UA3 = 0x0190

164 Rev. 1.41

AN93

Aruba

Australia

Austria

Bermuda

Bhutan

Botswana

Brazil

Country

British Virgin

Islands

Brunei

Darussalam

Channel Islands:

Jersey

Chile

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz) Cadence (seconds)

Call Waiting

Tone

Call Waiting

Tone

Waiting Tone

Waiting Tone

425

425

420

440

0.2 – 0.2 – 0.2 – 4.4

0.2 – 0.2 – 0.2 – 4.4

0.04 – 1.95

(Two bursts, ten seconds apart)

U Registers

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x01B8

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x01B8

U9F = 0x0002

UA0 = 0x0004

UA1 = 0x00C3

U9F = 0x0000

Waiting Tone

Waiting Tone

Waiting Tone

Waiting Tone

Call Waiting

Tone

Waiting Tone

Waiting Tone

400

425

425

440

400×24

400

900+1300

0.5 – 0.25

0.2 – 1.0

0.05 – 1.0

0.5 – 10.0 – 0.5

0.5 – 0.25

0.1 – 2.5 – 0.1

0.5 – 0.5

U9F = 0x0001

UA0 = 0x0032

UA1 = 0x0019

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0064

U9F = 0x0003

UA0 = 0x0005

UA1 = 0x0064

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0001

UA0 = 0x0032

UA1 = 0x0019

U9F = 0x0000

UA0 = 0x000A

UA1 = 0x00FA

UA2 = 0x000A

U9F = 0x0006

UA0 = 0x0032

UA1 = 0x0032

Rev. 1.41

165

A N 9 3

China

Country

Croatia

Cyprus

Czech Republic

Dominica

(Commonwealth of)

Ecuador

Estonia

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz) Cadence (seconds)

Waiting Tone

Call Waiting

Tone

Call Waiting

Tone

Call Waiting

Tone

Call Waiting

Tone

Call Waiting

Tone

Call Waiting

Tone

450

425

425

425

440

425

950/1400/1800

0.4 – 4.0

0.3 – 8.0

0.1 – 0.1 – 0.1 – 5.3

0.33 – 9.0

10.5 – 10.0 – 0.5

0.2 – 0.6

3×(0.33 – 0.3)

U Registers

U9F = 0x0005

UA0 = 0x0028

UA1 = 0x0190

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x0320

U9F = 0x0003

UA0 = 0x000A

UA1 = 0x000A

UA2 = 0x000A

UA3 = 0x0212

U9F = 0x0003

UA0 = 0x0021

UA1 = 0x0384

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x003C

U9F = 0x0007

Ethiopia

Finland

Germany

Ghana

Call Waiting

Tone

Waiting Tone

Waiting Tone

Waiting Tone

425

425

425

400

0.2 – 0.6

0.15 – 8.0

0.2 – 0.2 – 0.2 – 5.0

0.8 – 0.2 – 0.3 – 3.2

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x003C

U9F = 0x0003

UA0 = 0x000F

UA1 = 0x0320

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x01F4

U9F = 0x0001

UA0 = 0x0050

UA1 = 0x0014

UA2 = 0x001E

UA3 = 0x0140

166 Rev. 1.41

AN93

Iran

Country

Gibraltar

Greece

Guyana

Honduras

Hong Kong

Hungary

Iceland

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz) Cadence (seconds)

Waiting Tone

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Call Waiting

Tone

Waiting Tone

Waiting Tone

Waiting Tone

400

425

480

440

440

425

425

425

0.1 – 3.0

0.3 – 10.0 – 0.3 – 10.0

0.5 – 18.0

0.5 – 0.5 – 0.2 – 4.0

3×(0.5 – 0.5) – 8.0)

0.04 – 1.96

4x (0.2 – 0.2 – 0.2 – 3.6 –

0.2 – 0.2 – 0.2)

0.2 – 0.2 – 0.2 – 10.0

U Registers

U9F = 0x0001

UA0 = 0x000A

UA1 = 0x012C

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x03E8

UA2 = 0x001E

UA3 = 0x03E8

U9F = 0x0004

UA0 = 0x0032

UA1 = 0x0708

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x0032

UA2 = 0x0014

UA3 = 0x0190

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x0032

UA2 = 0x0032

UA3 = 0x0032

UA4 = 0x0032

UA5 = 0x0352

U9F = 0x0003

UA0 = 0x0004

UA1 = 0x00C4

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x0168

UA4 = 0x0014

UA5 = 0x0014

UA6 = 0x0014

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x03E8

Rev. 1.41

167

A N 9 3

Israel

Japan

Jordan

Kenya

Country

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone

Call Waiting

Tone

Call Waiting

Tone I

Call Waiting

Tone Ii

Call Waiting

Tone Iii

Call Waiting

Tone Iv

Waiting Tone

Call Waiting

Tone

Frequency (Hz)

400

400x16/400

400×16/400

400×16/400

400×16/400

420×40//

400+440

425

Cadence (seconds)

1x(0.15 – 10.0 – 0.15)

0.25 – 0.25 – 0.25 – 3.25

0.5 – 2×(0.3 – 0.2) – 3.0

CONTINUOUS

U Registers

U9F = 0x0001

UA0 = 0x000F

UA1 = 0x03E8

UA2 = 0x000F

0.5 – 0.0~4.0 – 0.05 – 0.45

0.05 – 3.45 – 0.05 – 0.45

0.05 – 3.45

U9F = 0x0001

UA0 = 0x0032

UA1 = 0x0000 to 0x0190

UA2 = 0x0005

UA3 = 0x002D

UA4 = 0x0005

UA5 = 0x0159

UA6 = 0x0005

UA7 = 0x002D

UA8 = 0x0005

UA9 = 0x0159

0.1 – 0.1 – 0.1 – 3.0

0.064 – 0.436 – 0.064

3.436

U9F = 0x0001

UA0 = 0x000A

UA1 = 0x000A

UA2 = 0x000A

UA3 = 0x012C

U9F = 0x0001

UA0 = 0x0007

UA1 = 0x002C

UA2 = 0x0007

UA3 = 0x0158

U9F = 0x0001

UA0 = 0x0019

UA1 = 0x0019

UA2 = 0x0019

UA3 = 0x0145

U9F = 0x0001 or 0x0002

UA0 = 0x0032

UA1 = 0x001E

UA2 = 0x0014

UA3 = 0x001E

UA4 = 0x0014

UA5 = 0x012C

U9F = 0x0003

168 Rev. 1.41

AN93

Kiribati

Korea (Republic Of)

Waiting Tone

Lao P.D.R.

Lithuania

Macau

Country

Madagascar

Malaysia

Maldives

Montserrat

Netherlands

New Zealand

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz) Cadence (seconds)

Waiting Tone

Waiting Tone

Waiting Tone 950/1400/1800

Call Waiting

Tone

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Waiting Tone

Waiting Tone

Waiting Tone I

425

350+440

425

425

440

425

400

440

425

400+450

0.1 – 0.2 – 0.1 – 4.7

0.25 – 0.25 – 0.25 – 3.25

0.4 – 0.4

3×(0.333 – 1.0)

0.2 – 0.6

0.1 – 1.9

1.0 – 10.0 – 0.5 – 0.25 – 0.5

– 10.0 – 0.5 – 0.25

1.0 – 10.0

0.5 – 10.0 – 0.5

0.5 – 9.5

0.5

U Registers

U9F = 0x0003

UA0 = 0x000A

UA1 = 0x0014

UA2 = 0x000A

UA3 = 0x01D6

U9F = 0x000

UA0 = 0x0019

UA1 = 0x0019

UA2 = 0x0019

UA3 = 0x0145

U9F = 0x0003

UA0 = 0x0028

UA1 = 0x0028

U9F = 0x0007

U9F = 0x0001

UA0 = 0x0014

UA1 = 0x003C

U9F = 0x0000

UA0 = 0x000A

UA1 = 0x00BE

U9F = 0x0003

UA0 = 0x0064

UA1 = 0x03E8

UA2 = 0x0032

UA3 = 0x0019

UA4 = 0x0032

UA5 = 0x03E8

UA6 = 0x0032

UA7 = 0x0019

U9F = 0x0001

UA0 = 0x0064

UA1 = 0x03E8

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0003

UA0 = 0x0032

UA1 = 0x03B6

U9F = 0x0001

UA0 = 0x0032

Rev. 1.41

169

A N 9 3

Nigeria

Oman

Country

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz) Cadence (seconds)

Waiting Tone Ii

Waiting Tone

Iii

Call Waiting

Tone

Waiting Tone

Papua New Guinea

Waiting Tone

Paraguay

Poland

Portugal

Waiting Tone

Waiting Tone

Call Waiting

Tone

400

523/659

400

425

425

950/950/1400

425

425

0.25 – 0.25 – 0.25 – 3.25

3×(0.2 – 3.0) – 0.2

2.0 – 0.2

0.3 – 1.0

0.04 – 10.0 – 0.04 – 20.0 –

0.04 – 20.0

0.65 – 0.325 – 0.125 – 1.3

2.6

0.15 – 0.15 – 0.15 – 4.0

0.2 – 0.2 – 0.2 – 5.0

U Registers

U9F = 0x0001

UA0 = 0x0019

UA1 = 0x0019

UA2 = 0x0019

UA3 = 0x0145

U9F = 0x0008

UA0 = 0x0014

UA1 = 0x012C

UA2 = 0x0014

UA3 = 0x012C

UA4 = 0x0014

UA5 = 0x012C

UA6 = 0x0014

U9F = 0x0001

UA0 = 0x00C8

UA1 = 0x0014

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x0064

U9F = 0x0003

UA0 = 0x0004

UA1 = 0x03E8

UA2 = 0x0004

UA3 = 0x07D0

UA4 = 0x0004

UA5 = 0x07D0

U9F = 0x0007

UA0 = 0x0041

UA1 = 0x0021

UA2 = 0x00D

UA3 = 0x0082

UA4 = 0x0104

U9F = 0x0003

UA0 = 0x000F

UA1 = 0x000F

UA2 = 0x000F

UA3 = 0x0190

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x01F4

170 Rev. 1.41

AN93

Russia

Country

Table 115. SAS Cadence for Supported Countries* (Continued)

Tone Frequency (Hz)

Waiting Tone 950/1400/1800

Cadence (seconds)

3×0.333 – 1.0

St.-Kitts-and-Nevis

Waiting Tone

St. Lucia

Saudi Arabia

Sierra Leone

Singapore

Slovenia

Solomon

South Africa

Spain

Sri Lanka

Call Waiting

Tone

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Waiting Tone

Waiting Tone

Call Waiting

Tone

Call Waiting

Tone

Call Waiting

Tone

440

425

425

425

425

425

400+450/400

400×33

425

425

0.5 – 10.0 – 0.5

0.2 – 0.2 – 0.2 – 0.2

0.15 – 0.2 – 0.15 – 10.0

1.0

0.3 – 0.2 – 0.3 – 3.2

0.3 – 10.0

0.5 – 0.5

0.4 – 4.0

0.175 – 0.175 – 0.175 – 3.5

0.5 – 2.5

U Registers

U9F = 0x0007

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x0014

U9F = 0x0003

UA0 = 0x000F

UA1 = 0x0014

UA2 = 0x000F

UA3 = 0x03E8

U9F = 0x0003

UA0 = 0x0064

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x0014

UA2 = 0x001E

UA3 = 0x0140

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x03E8

U9F = 0x0001

UA0 = 0x0032

UA1 = 0x0032

U9F = 0x0001

UA0 = 0x0028

UA1 = 0x0190

U9F = 0x0003

UA0 = 0x0012

UA1 = 0x0012

UA2 = 0x0012

UA3 = 0x015E

U9F = 0x0003

UA0 = 0x0032

UA1 = 0x00FA

Rev. 1.41

171

A N 9 3

Table 115. SAS Cadence for Supported Countries* (Continued)

Turkey

*Note:

1×f2 f1+f2 f1/f2 f1//f2

Country

Sweden

Tajikistan

Trinidad and

Tobago

Turks and Caicos

Islands

United States

Uruguay

Vanuatu

Zimbabwe

Tone

Call Waiting

Tone I

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Waiting Tone

Call Waiting

Tone

Call Waiting

Tone

Frequency (Hz)

425

950/1400/1800

440

450

440

440

425

425

523/659

Cadence (seconds)

0.2 – 0.5 – 0.2

0.8 – 3.2

0.3 – 10.0

0.2 – 0.6 – 0.2 – 8.0

0.5 – 10.0 – 0.5

0.3

0.2 – 0.2 – 0.2 – 4.4

0.3 – 10.0

1.5 – 1.5

Explanation of Symbols:

f1 is modulated by f2.

the juxtaposition of two frequencies, f1 and f2, without modulation.

f1 is followed by f2.

in some exchanges, frequency f1 is used, and in others, frequency f2 is used.

U Registers

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0032

UA2 = 0x0014

U9F = 0x0007

UA0 = 0x0050

UA1 = 0x0140

U9F = 0x0000

UA0 = 0x001E

UA1 = 0x03E8

U9F = 0x0005

UA0 = 0x0014

UA1 = 0x003C

UA2 = 0x0014

UA3 = 0x0320

U9F = 0x0000

UA0 = 0x0032

UA1 = 0x03E8

UA2 = 0x0032

U9F = 0x0000

UA0 = 0x001E

UA1 = 0x03E8

UA2 = 0x001E

UA3 = 0x03E8

U9F = 0x0003

UA0 = 0x0014

UA1 = 0x0014

UA2 = 0x0014

UA3 = 0x01B8

U9F = 0x0003

UA0 = 0x001E

UA1 = 0x03E8

U9F = 0x0003

UA0 = 0x0096

UA1 = 0x0096

172 Rev. 1.41

AN93

6.6. Intrusion/Parallel Phone Detection

The modem may share a telephone line with a variety of other devices, especially telephones. In most cases, the modem has a lower priority for access to the phone line. Someone dialing 911 in an emergency, for example, has a higher priority than a set-top box updating billing information. If someone is using a telephone, the modem should not go off-hook. If someone picks up a phone while the modem is connected or dialing, the modem should drop the connection and allow the phone call to proceed. The modem must monitor the phone line for intrusion in both the on-hook and off-hook conditions.

6.6.1. On-Hook Condition

When the ISOmodem is on-hook, the U79 [4:0] (LVCS) value represents Tip-Ring voltage; the ISOmodem is in the command mode, and the host can easily monitor LVCS with the AT:R79 command. A typical local loop has a Tip-to-

Ring voltage greater than 40 V if all devices sharing the line (telephones, fax machines, modems, etc.) are onhook. The typical local loop has a large dc impedance that causes the Tip-Ring voltage to drop below 25 V when a device goes off-hook. The host can monitor LVCS to determine whether the Tip-Ring voltage is approximately 40 V or something less than 25 V to determine if a parallel device is off-hook. This type of monitoring may also be performed with the %V1 command. Alternatively, the host could be programmed to periodically monitor LVCS and store the maximum value as the “all devices on-hook” line voltage and establish the on-hook intrusion threshold as a fraction (possibly 50%) of that value. This allows the system to adapt to different or changing local loop conditions. An on-chip adaptive monitoring algorithm may be enabled with the %V2 command.

6.6.1.1. Line Not Present/In Use Indication (Method 1—Fixed)

If enabled with %V1, this feature checks the line status before going off-hook and again before dialing. Before going off-hook with the ATD, ATO, or ATA command, the ISOmodem reads the line voltage and compares it to U83

(NOLN) [15:0] and U84 (LIUS) [15:0].

Loop Voltage Action

0 < LVCS < U83

U83 < LVCS < U84

(U register)

Report LINE IN USE and remain on-hook

U84 < LVCS

Report NO LINE and remain on-hook

Go off-hook and establish connection

A debouncing timer controlled by U-registers 50 and 51 prevents polarity reversals from being detected as a loss of loop current. The intrusion detection algorithm continues to operate if U77 (HOI) [11] is set. In this case, a parallel phone intrusion while off-hook gives a LINE IN USE result code to indicate the ISOmodem has gone on-hook due to a parallel phone intrusion.

Note: This method may not be as desireable as method 2, particularly for low-voltage lines.

Pros:

Easy to understand and predict

Allows reference level control

Cons:

 Chosen levels must work for all lines—not adaptive

Rev. 1.41

173

A N 9 3

6.6.1.2. Line Not Present/In Use Indication (Method 2—Adaptive)

This method is enabled through %V2. This feature checks the line status before going off-hook and again before dialing. While on-hook, the part monitors line voltage and updates U85 (5 (NLIU) [15:0] with this value.

Before going off-hook with the ATD, ATO, or ATA command, the ISOmodem reads the line voltage and compares it with the stored reference.

Loop Voltage Action

0 < LVCS < 6.25 % x U85 Report NO LINE and remain on-hook

6.25 % x U85 < LVCS < 85% x U85 Report LINE IN USE and remain on-hook

85% x U85 < LVCS Go off-hook and establish connection

To prevent polarity reversals from being detected as a loss of loop current, a debounce timer controlled by Uregisters 50 and 51 is used. However, if the HOI bit is set, a parallel phone intrusion while off-hook will give a LINE

IN USE result code to indicate that the ISOmodem has gone on hook due to a parallel phone intrusion.

6.6.2. Intrusion Explanation

When the ISOmodem is off-hook, the value in U63 [15:8] (LCS) represents loop current. If the ISOmodem is in the data mode, it is difficult for the host to monitor the LCS value. For this reason, the modem monitors the line for offhook intrusions; when an intrusion is detected, the modem can interrupt the host and go back on-hook automatically, based on parameters set by the host.

To avoid false intrusion detections due to loop transients during the on-hook to off-hook transition, there is a delay between the ISOmodem going off-hook and the start of the intrusion algorithm. The delay is set by U77 [15:12]

(IST) (Intrusion Settling Time). When the settling time has passed, the off-hook intrusion algorithm monitors the value of LCS at a sample rate determined by U76 [15:9] (OHSR). The samples are processed one of two ways, depending on whether UAE [7] (UAEM) is set. If UAEM = 0, the modem declares an intrusion on two consecutive low-current samples; this is the legacy mode and is compatible with previous versions of the ISOmodem. UAEM =

1 enables an enhanced algorithm that offers increased immunity to false detections. The enhnanced algorithm is used in applications where glitches of less than 800 ms must be ignored but an intrusion is declared for a one second drop in loop current.

The enhanced algorithm is enabled by setting UAEM = 1, initializing UAE [5:0] (DCLM) with a non-zero delta current value and (if it is known in advance) a reference current in UAE [15:8] (ACLM). The modem samples the loop current (LCS) and compares the sample to the reference value in ACLM. If ACLM = 0, the modem stores the initial loop current in ACLM and waits for the next sample. The modem stores two samples before it starts looking for an intrusion. Starting with the third sample, if ACLM ? 0, the modem does the comparison:

LCS < |ACLM| - |DCLM| and stores the result. ACLM is updated if the above comparison is false for sixteen consecutive values of LCS and if U76 [8] (FACL) = 1. If this comparison is true for ten consecutive values of LCS, an intrusion is declared. LCS is sampled at a rate of 8 x OHSR; setting OHSR to a value of 800 ms, an intrusion is detected when the interruption has continued for at least 1.0 s.

If UAEM = 0 (the default setting), the legacy algorithm is in effect: the modem compares each LVCS sample to the reference value in U76 [4:0] (ACL). If LVCS is lower than ACL by an amount greater than the value set in U76 [7:5]

(DCL) for two consecutive samples, an intrusion is declared.

The ISOmodem can automatically update ACL with the LVCS value while off-hook (unless an intrusion has occurred). An ACL value can be written by the host and forced to remain unchanged by setting U76 [8] (FACL) = 1.

If ACL = 0, the ISOmodem does not begin the intrusion algorithm until after two LVCS samples have been received. .ACL = 0 at the first off-hook event after reset, unless a value is written to it by the host. If the host writes a non-zero value to ACL prior to the ISOmodem going off-hook, a parallel phone intrusion occurring during the IST interval and maintained until the end of the IST interval triggers a PPD interrupt.

The legacy intrusion detection algorithm is as follows:

174 Rev. 1.41

AN93

if LVCS(t) = LVCS (t - 40 ms x OHSR) and ACL - LVCS(t) < DCL then ACL = LVCS(t) if (ACL - LVCS x (t - 40 ms x OHSR) > DCL and ACL - LVCS x t > DCL then PPD = 1 and the INT pin (or the INT bit in parallel or SPI mode) is asserted (PPDM = 1)

Using either algorithm, when an intrusion is detected, U70[2] (PPD), Parallel Phone Detect is set. If U70 [10]

(PPDM) (Parallel Phone Detect Mask) is set to 1, an interrupt is triggered. In UART mode the INT pin is asserted; in parallel or SPI mode the INT bit (Hardware Interface Register 1, [3]) is triggered and, if INTM = 1, (Hardware

Interface Register 1, [4]), INT is asserted. The host can monitor PPD or issue an AT:I command to verify the cause of an interrupt and clear PPD. The ISOmodem can also be programmed to go on-hook automatically on a PPD interrupt by setting U77 (HOI) [11] (Hang-Up On Intrusion) to 1. The off-hook intrusion algorithm may be suspended for a period defined by U78 [15:14] (IB) after the start of dialing. This guards against false PPD detects due to dial pulses or other transients caused by Central Office switching.

Table 116 lists the U registers and bits used for both Intrusion Detection algorithms.

Table 116. Intrusion Detection

U78

U79

U83

U84

U76

U77

U77

U78

Register Bit(s)

U63 15:8

U6C

U70

15:8

10

U70

U76

U76

U76

2

15:9

8

7:5

U85

UAE

UAE

UAE

15:0

15:8

7

6:0

4:0

15:12

11

15:14

7:0

4:0

15:0

15:0

Name

LCS Line Current Sense

Function

LVS Line Voltage Sense

PPDM Parallel Phone Detect Mask

PPD Parallel Phone Detect

OHSR Off-Hook Sample Rate

FACL Force ACL

DCL Differential Current Level – Legacy Algorithm

ACL Absolute Current Level – Legacy Algorithm

IST Intrusion Settling Time

HOI Hang-Up On Intrusion

IB Intrusion Blocking

IS Intrusion Suspend

LVCS Line Voltage/Current Sense

NOLN No Line Threshold %V1

LIUS Line-in-use Threshold %V1

NLIU Line-in-use/No Line Threshold %V2

ACLN Absolute Current Level – New Algorithm

UAEM UAE Mode

DCLN Differential Current Level – New Algorithm

Rev. 1.41

175

A N 9 3

The ISOmodem has an internal analog-to-digital converter used to monitor the loop voltage when on-hook and loop current when off-hook to check for parallel devices going off-hook. The host measures loop voltage and current by reading U79 [4:0] (LVCS) or U6C[15:8] (LVS) and U63[15:8] (LCS). To set the ISOmodem to monitor loop voltage in the on-hook state, the host issues the following commands:

Command

AT:R6C

Function

Host reads the loop voltage from the LVS Register U6C bits 15:8 while the modem is on-hook.

To set the ISOmodem to monitor loop current, the host issues the following commands:

Command

ATH1

AT:R63

Function

To go off-hook

Host reads loop current from the LCS Register U63 bits

15:8 while the modem is offhook.

6.7. Modem-On-Hold

The Si2494/93 supports modem-on-hold as defined by the ITU-T V.92 specification. This feature allows a connected Si2494/93 to place a server modem on hold while a second call, typically a voice call, uses the phone line. The maximum time the modems will remain on hold is controlled by the modem receiving the modem-on-hold request. Once the second call has ended, the Si2494/93 will reinitiate the data connection if the time elapsed has not exceeded the time negotiated by the two modems. The Si2494/93 can also be placed on hold itself by a remote modem allowing a far-end user to make or receive a voice call. Modem-on-hold is only supported on the Si2494/93 for V.34 (14400–33600 bps) and higher speed modulations. The AT+PMH command is used to enable (+PMH = 0) or disable (+PMH = 1) modem-on-hold.

6.7.1. Initiating Modem-On-Hold

Modem-on-hold is typically initiated when a connected client modem receives a subscriber alert signal (SAS) tone

as described in "6.5. Type II Caller ID/SAS Detection" on page 163. However, it may be initiated any time the

modem is on-line in command mode. The AT+PMHR command is used to initiate a modem-on-hold request. After this command is issued, the modem will place a modem-on-hold request to the server, and the +PMHR: command

response will indicate the server’s response to the request. The possible responses are shown in Table 117.

If the server refuses to grant a modem-on-hold request, the modem will use the +PMHT setting to determine what to do. If +PMHT = 0, the modem will remain connected to the server. If +PMHT is set to a non-zero value, the modems will disconnect. The Si2494/93 will indicate these conditions with the result code, “MHnack;

Disconnecting…” or “MHnack; Reconnecting…”

Once modem-on-hold has been initiated, it may be necessary for the Si2494/93 to perform a hook-flash to indicate to the central office the incoming call may be accepted. This is initiated with the AT+PMHF command. The Si2494/

93 will go on-hook for the time set in user register U4F and remain off-hook while on-hold. Usually, a second hookflash is necessary to reestablish a data connection with the remote modem.

The Si2494/93 will attempt to reestablish a data connection with the remote modem upon receipt of the ATO command and will indicate the connection has been reestablished with the CONNECT message. If the modems fail to renegotiate the connection, the Si2494/93 will send the NO CARRIER message.

176 Rev. 1.41

AN93

Table 117. Possible Responses to PMHR Command from Remote Modem

12

13

14

9

10

11

7

8

5

6

1

2

3

4

<Value>

0

Description

Modem-on-hold request denied or not available.

The modem may initiate another modem-on-hold request at a later time.

MOH with 10 second timeout granted

MOH with 20 second timeout granted

MOH with 30 second timeout granted

MOH with 40 second timeout granted

MOH with 1 minute timeout granted

MOH with 2 minute timeout granted

MOH with 3 minute timeout granted

MOH with 4 minute timeout granted

MOH with 6 minute timeout granted

MOH with 8 minute timeout granted

MOH with 12 minute timeout granted

MOH with 16 minute timeout granted

MOH with indefinite timeout granted

MOH request denied. Future requests in the same session will also be denied.

6.7.2. Receiving Modem-On-Hold Requests

If modem-on-hold is enabled via the +PMH=1 command, the Si2493 may be placed on hold by a remote modem.

The maximum time the modem will remain on hold is configured with the +PMHT setting. Possible values of

+PMHT are given in Table 121. Upon receipt of a modem-on-hold request, the Si2493 will indicate +PMHR:

followed by the code corresponding to the timeout granted. The DCD pin will be deasserted while the modem is on hold, and the CONNECT result code will indicate a return to data mode. A modem disconnect due to a timeout or failed negotiation will result in a NO CARRIER result code.

6.8. HDLC: Bit Errors on a Noisy Line

Bit errors can occur on an impaired line. The problem lies in determining and ignoring the spurious data resulting from poor line conditions and recovering valid data. This example illustrates a typical data-corruption problem due to a noisy line and the method used to analyze it. Here, the modem is an Si2404 configured with the following initialization string after reset.

AT+ES=6,,8

AT+ESA=0,0,0,,1,0

AT+ITF=0383,0128

AT:U87,010A

AT+MS=V22

AT:U7A,12

The following data stream was received over a noisy line.

0D 0A 43 4F 4E 4E 45 43 54 20 31 32 30 30 0D 0A 19 BE 20 20 19 B1 19 B0 19 B2 30 93

19 B1 19 B2 30 93 19 B1 19 B2 30 93 19 B1 19 B2 30 93 19 B1 19 B2 19 B2 B6 9E F7 46

19 B0 19 B2 29 C6 19 B0 19 B2 FF 98 89 18 19 B0 19 B2 92 6E EF 14 65 19 B0 19 B2 DA

BE C6 07 EA D8 31 C2 05 3C FA C8 86 C4 40 E6 19 A0 CA EA A8 F9 19 B2 8D 00 57 A5 43

29 19 B0 19 B2 05 CB 14 9F 7C 2D 19 B0 19 B2 19 B2 19 BA 0D 0A 4E 4F 20 43 41 52 52

49 45 52 0D 0A

Rev. 1.41

177

A N 9 3

First, the data will be analyzed to point out the occurrence of bit errors and spurious data. Secondly, a simple algorithm to filter the data will be proposed. Finally, the resulting valid data will be presented.

Table 118 lists an initial analysis of some recurring data patterns.

Table 118. Bit Errors

Data Meaning

19 B0

19 B2

0D 0A 43 4F 4E 4E 45 43 54 20 31 32 30 30

0D 0A

Is an indication the modem has detected a pattern with more than 6 marks in a row. Once this occurs, the receiver begins looking for HDLC flags. Until the occurrence of HDLC flags, 19 B2 and subsequent data are discarded.

This pattern has three meanings.

If the receiver is looking for HDLC flags, 19B2 means that the receiver has found an HDLC flag.

If 19B2 is received after a packet has started (prior data exists), the receiver assumes the CRC check does not match the FCS bytes sent by the remote transmitter and declares the packet bad.

 An isolated 19 B2 pattern (no preceding data) is normal. This can occur when the following example data pattern is seen: 7E 7E XX 7E 7E (where XX can be up to 2 bytes of non-FLAG bit patterns at the

DCE).

The data can be analyzed as follows with valid data shown in bold.

CONNECT 1200

19 BE 20 20

tx 1200 rx 1200

19 B1

19 B0

19 B2

30 93

19 B1

Received first flag.

Beginning of Packet

A spurious byte received with more than 6 mark bits in a row. The modem is looking for HDLC flags.

HDLC flag detected.

Beginning of Packet

Good Packet.

19 B2

Beginning of Packet

If a 1-bit error is received in an HDLC flag, the modem assumes a new single-byte packet. Since a 1-byte packet is invalid, 19 B2 is generated by modem.

Beginning of Packet

178 Rev. 1.41

Data

30 93

19 B1

19 B2

30 93

19 B1

AN93

Table 118. Bit Errors (Continued)

Meaning

Good Packet

Beginning of Packet

A 1-bit error is received in an HDLC flag. The modem assumes a new single-byte packet. Since a 1-byte packet is invalid, 19 B2 is generated by modem.

Beginning of Packet

Good Packet

19 B2

30 93

19 B1

Beginning of Packet

A 1-bit error is received in an HDLC flag. The modem assumes a new single-byte packet. Since a 1-byte packet is invalid, 19 B2 is generated by modem.

Beginning of Packet

Good Packet

19 B2

19 B2

B6 9E F7 46

19 B0

19 B2

29 C6

19 B0

19 B2

Beginning of Packet

A 1-bit error received in an HDLC flag. The modem assumes a new single-byte packet. Since a 1-byte packet is invalid, 19 B2 is generated by modem.

Beginning of Packet

A 1-bit error received in an HDLC flag. The modem assumes a new single-byte packet. Since a 1-byte packet is invalid, 19 B2 is generated by modem.

Beginning of Packet

Spurious data

Followed by a data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag detected

Beginning of Packet

Spurious data

Followed by a data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag detected

Beginning of Packet

Rev. 1.41

179

A N 9 3

Table 118. Bit Errors (Continued)

Data

FF 98 89 18

19 B0

19 B2

19 A0

CA EA A8 F9

19 B2

8D 00 57 A5 43 29

Meaning

Spurious data

Data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag detected

Beginning of Packet

92 6E EF 14 65

19 B0

19 B2

Spurious data

Data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag detected

Beginning of Packet

DA BE C6 07 EA D8 31 C2 05 3C FA C8 86 C4

40 E6

Spurious data

Transparency code, represents 0x11 data byte found in receive data.

Spurious data

Calculated CRC not equal FCS. The modem assumes this is a bad Frame.

Beginning of Packet

Spurious data

19 B0

19 B2

05 CB 14 9F 7C 2D

19 B0

Followed by a data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag detected

Beginning of Packet

Spurious data

Followed by a data byte with more than 6 mark bits in a row. The modem looks for HDLC flags.

HDLC Flag Detected

19 B2

19 B2

If there is 1-bit error received in an HDLC flag, the modem assumes a new single-byte packet. Since a 1byte packet is invalid, 19 B2 is generated by the modem.

Loss of Carrier Detected

19 BA

0D 0A 4E 4F 20 43 41 52 52 49 45 52 0D 0A

NO CARRIER

180 Rev. 1.41

AN93

The following steps will allow the spurious data and bit errors to be eliminated while preserving the valid data.

1. Ignore 19 B0.

2. Use 19 B2 to discard all collected receive data.

The filtered version of the HDLC frames, based on this algorithm, is shown below with the valid data in bold.

0D 0A 43 4F 4E 4E 45 43 54 20 31 32 30 30 0D 0A 19 BE 20 20 19 B1 19 B0 19 B2 30 93

19 B1 19 B2 30 93 19 B1 19 B2 30 93 19 B1 19 B2 30 93 19 B1 19 B2 19 B2 B6 9E F7 46

19 B0 19 B2 29 C6 19 B0 19 B2 FF 98 89 18 19 B0 19 B2 92 6E EF 14 65 19 B0 19 B2 DA

BE C6 07 EA D8 31 C2 05 3C FA C8 86 C4 40 E6 19 A0 CA EA A8 F9 19 B2 8D 00 57 A5 43

29 19 B0 19 B2 05 CB 14 9F 7C 2D 19 B0 19 B2 19 B2 19 BA 0D 0A 4E 4F 20 43 41 52 52

49 45 52 0D 0A

6.9. Overcurrent Detection

The ISOmodem has a built-in overcurrent detection feature (disabled by default) that measures loop current a programmable amount of time after going off-hook. This allows the modem to detect an improper line condition.

The overcurrent detect feature is enabled by setting U70 [11] (OCDM) = 1. During the time after the modem goes off-hook, loop current is measured and set by U77 [8:0] (OHT). After the delay, current is sampled every 1 ms. An overcurrent is detected if two consecutive samples indicate an overcurrent condition. If this feature is enabled and excessive current is detected, the ISOmodem sends the X result code and triggers an interrupt by asserting the

INT pin or by setting the INT bit in the parallel or SPI mode. After an interrupt is received, the host issues the AT:I command to verify the OCD interrupt and clear the OCD bit. The delay between modem off-hook and loop current measurement is set by the OHT bits. OHT is a 9-bit register with 1 ms units. The default delay is 16 ms. When the modem is off-hook in an overload condition, LVCS = 11111 (full scale—overload error condition), an X is sent to the

DTE, and the OCD bit is set.

The Overcurrent Detection feature is controlled by changing U-register settings. The registers and bits that control

these features are shown in Table 119.

Register

U67

U70

U70

U77

U79

U1DD

Bit

7

11

3

8:0

4:0

15:0

Table 119. Overcurrent Detection

Value Function

DCR DC Impedance Select

OCDM Overcurrent Detect Mask

OCD

OHT

Overcurrent Detect

Off-Hook Time

LVCS Line Voltage Current Sense

AOCN Time to stay off hook in overcurrent situation, in 5 ms units. When this timer expires, the modem returns on hook. Used only when AOC bit of U77 is enabled.

6.10. Pulse/Tone Dial Decision

There are three methods to detect whether a telephone line supports DTMF dialing or pulse dialing only. The first method, which is the simplest, may require the modem to go off-hook more than once. The second method is slightly more complicated but does not require the modem to go off-hook multiple times.

6.10.1. Method 1: Multiple Off-Hook Transitions

Use DTMF to dial the desired number with the ATDT command. If the line accepts tone dialing, the call is completed, and connection to the remote modem proceeds as usual.

If the line only allows pulse dialing, the modem hangs up and reports UN-OBTAINABLE NUMBER. This indicates that the modem detected a dial tone after the DTMF dial attempt. Dial the number again using the ATDP command instead of ATDT to use pulse dialing.

Rev. 1.41

181

A N 9 3

6.10.2. Method 2: Single Off-Hook Transition

Use this method if it is undesirable for the modem to go off-hook more than once or to DTMF dial a single digit. This method is somewhat more complicated and is best illustrated with an example, dialing the number 12345 below.

Set bit 7 of U-register 7A (U7A [7] (DOP) = 1) and send ATDT1;<CR> (Dial the first digit using DTMF and wait for a response). A response of OK indicates that DTMF digit 1 was sent, and the rest of the digits can be dialed. If a response of NO DIALTONE is received, the command failed because there was no dial tone (no line available), and the call cannot be completed.

If a response of OK is received after sending ATDT1;<CR>, continue by sending ATDTW;<CR> to perform the second dial tone detection and wait for a response. A response of NO DIALTONE indicates that no dial tone was detected for two seconds, and the line is DTMF capable. Complete the dialing by sending ATDT2345<CR> (DTMF dial beginning with the second number since the first number was successfully sent initially).

If an OK (dial tone present) was received after the ATDTW;<CR>, the line requires pulse dialing. Pulse dial the entire telephone number using ATDP12345<CR>.

6.10.3. Method 3: Adaptive Dialing

Adaptive dialing attempts to dial with DTMF, then falls back to pulse dialing. It is enabled with bit 6 of U7A. If bit 6 is set, the first digit is dialed with DTMF, and the ISOmodem waits two seconds. If a dial tone is still present, the first digit is resent with pulse dialing followed by the other digits in the dial string. If a dial tone is not present, the remaining digits are dialed with DTMF. Adaptive dialing does not select 10 pps vs. 20 pps dialing. This must be configured beforehand. In a PBX installation, this method typically results in pulse dialing, because the first digit dialed, usually 8 or 9, is used to obtain an outside line and therefore results in a dial tone.

6.10.4. Automatic Phone-Line Configuration Detection

The modem may automatically determine the following characteristics of the telephone line:

DTMF or pulse dialing only

Determine if 20 pps is supported on a pulse dial only line.

Identify it as an outside line or extension network (PBX).

If connected to a PBX, determine if the dial tone is constant or make/break.

If connected to a PBX, determine the number to dial for an outside line.

The AT&X1 command automatically determines the above parameters through a series of off-hooks and dialed digits.

Table 120. Automatic Phone Line Configuration

AT

Command

Result Code

&X1

WXYZn

W = 0 line supports DTMF dialing

1 line is pulse dial only

X = 0 line supports 20 pps dialing

1 line supports 10 pps dialing only

Y = 0 extension network (PBX)

1 connected to outside line

Z = 0 continuous dial tone

1 make-break dial tone n = 0–9, number for outside line

6.10.5. Line Type Determination

The digit dialed to determine 10 pps vs. 20 pps is programmable through S51. The &X2 command works as described above; however, only DTMF/20 pps/10 pps determination is made (no PBX). The &X1 and &X2 commands may be aborted by sending the command, AT&X0. The result code will be OK.

182 Rev. 1.41

AN93

6.11. Telephone Voting Mode

The telephone voting mode (TVM) of operation monitors the line to detect polarity reversals after dialing. It waits for a busy tone to be detected and reports POLARITY REVERSAL or NO POLARITY REVERSAL followed by OK.

To enable TVM, use the G character in the dial string (eg. ATDTG1). The G character must be used for each TVM call. The S7 timer operates during TVM and indicates NO CARRIER if a timeout occurs before the busy tone is detected. Polarity reversal monitoring begins after the last digit is dialed and ends at the detection of the busy tone.

Any loss of line-side power (drop out) is considered a polarity reversal if loop current is restored within U51 milliseconds.

6.12. V.92 Quick Connect

The Si2493 supports ITU-T V.92 shortened Phase 1 and Phase 2 to decrease the time required to connect to a server modem using the V.90 modulation. After the first call, the Si2493 will retain line parameters that allow it to use shortened Phase 1 and 2 to reduce the total negotiation time. If line conditions change or the remote server does not support the shortening of these phases, the modem will automatically connect with the normal Phase 1 and Phase 2 negotiation unless specifically commanded not to. Two AT commands control this feature: AT+PQC and AT+PSS.

The AT+PQC command controls the enabling and disabling of shortened Phase 1 and Phase 2 individually

according to Table 122. It is recommended that both shortened phases be used to realize the maximum reduction in connect time. The possible settings of the AT+PSS command are shown in Table 123. The AT+PSS command

may be used to force quick connect by setting AT+PSS = 1; however, this is not recommended because calling a server that does not support this feature will result in a failed connection.

Table 121. Possible +PMHT Settings

10

11

12

13

8

9

6

7

<Value>

0

1

Description

Deny V.92 Modem-on-Hold Request

Grant MOH with 10 second timeout

4

5

2

3

Grant MOH with 20 second timeout

Grant MOH with 30 second timeout

Grant MOH with 40 second timeout

Grant MOH with 1 minute timeout

Grant MOH with 2 minute timeout

Grant MOH with 3 minute timeout

Grant MOH with 4 minute timeout

Grant MOH with 6 minute timeout

Grant MOH with 8 minute timeout

Grant MOH with 12 minute timeout

Grant MOH with 16 minute timeout

Grant MOH with indefinite timeout

Rev. 1.41

183

A N 9 3

Table 122. AT+PQC Parameters

<Value>

0

1

2

3

Description

Enable Short Phase 1 and Short Phase 2

Enable Short Phase 1

Enable Short Phase 2

Disable Short Phase 1 and Short Phase 2

Table 123. AT+PSS Parameters

<Value>

0

1

Description

The DCEs decide whether or not to use the short startup procedures. The short startup procedures shall only be used if enabled by the +PQC command.

Forces the use of the short startup procedures on the next and subsequent connections if they are enabled by the +PQC command.

2 Forces the use of the full startup procedures on the next and subsequent connections independent of the setting of the

+PQC command.

6.13. Abort the Dialing Operation in Voice Mode

In off-hook, voice mode (AT+FCLASS = 8 and AT+VLS = 15) the modem remains in AT command mode during dialing; therefore, character abort is not available to abort the dialing. In this mode the host should abort dialing by sending the AT+VLS = 0 command. This will cause the modem to stop dialing and return on-hook. The modem will respond with two OKs: one OK for the dialing command and one OK for the AT+VLS = 0 command.

184 Rev. 1.41

AN93

7. Handset, TAM, and Speakerphone Operation

This section covers the voice functionality of the Si2494/39. The voice features of the Si2494/39 are divided into three major categories: handset, telephone answering machine (TAM), and speakerphone. The Si2494/39 implements ITU-T V.253 commands for TAM and speakerphone operation. The TAM voice compression support includes the following formats:

Signed linear 8-bit, 64 kbps

Unsigned linear 8-bit, 64 kbps

G.711 µ-law 8-bit, 64 kbps

G.711 A-law 8-bit, 64 kbps

G.726 ADPCM 2-bit, 16 kbps

G.726 ADPCM 4-bit, 32 kbps

All formats use a fixed 8 kHz sampling rate. For most applications, the user wants a high-quality message format

(64 kbps) for the Outgoing Message (OGM) and is less concerned about the quality of the Incoming Message

(ICM).

Speakerphone operation employs an acoustical echo canceller (AEC), acoustical echo suppressor (AES), doubletalk detector (DTD), and line-echo canceller (LEC). This solution provides the following performance:

Programmable echo tail filter length: up to 64 ms

Convergence speed (white noise): less than 1.6 s

Single-talk echo suppression: better than 48 dB

Double-talk echo suppression: better than 30 dB

The software reference section presents the implemented V.253 AT Commands, V.253 <DLE> commands, V.253

<DLE> events, and U registers. The voice reference section covers the functional operation of handset, TAM, and speakerphone modes and includes use cases with programming examples.

7.1. Software Reference

7.1.1. AT Command Set

In Voice Command State, AT commands are used to control the DCE. The DCE responds with verbose response strings during Voice Command State. During the Voice Transmit, Voice Receive, and Voice Duplex States, the

<DLE> shielded commands are used. The <DLE> events can appear in all states.

7.1.2. AT+ Extended Commands

Table 124. Extended AT+ Command Set

Command

+FCLASS = <mode>

+IPR = <rate>

Action

Data/Voice Mode Selection

<mode>

0

Description

Data (default)

8

256

Voice mode

SMS mode

Note: An ATH command will automatically transition the DCE to +FCLASS=0.

Fixed DTE Rate

<rate> Description

0

[BPS]

Automatically detect the baud rate.

The decimal value of the rate in bits per second.

The <rate> parameter represents the DTE rate in bps and may be set to any of the following values: 300, 600, 1200, 2400, 4800, 7200, 9600, 12000, 14400, 19200, 38400,

57600, 115200, 230400, 245760, and 307200.

Rev. 1.41

185

A N 9 3

Command

+VCDT = <n>

+VCID = <pmode>

+VDR = <enable>,

<report>

+VGR = <gain>

+VGT = <gain>

+VIP

+VIT = <timer>

Table 124. Extended AT+ Command Set (Continued)

Action

2

3

4

5

Caller ID Type

<n>

0

1

6

7

Description

After ring only

Always on

UK

Japan

DTMF after polarity reversal

DTMF after polarity reversal (off-hook reception)

Always-on DTMF

DTMF after ring

Caller ID Enable

<pmode> Description

0

1

2

Off

On—formatted

On—raw data format

Distinctive Ring Cadence Reporting

<enable>,<report>Mode

0, x Disable distinctive ring; x = don't care

1, 0 Enable distinctive ring. The DCE will report DROF and DRON result codes only. DROF and DRON are reported in 100 ms units.

1, n Enable distinctive ring. The DCE will report DROF and DRON result codes as well as well as a Ring result code n/10 seconds after the falling edge of a ring pulse. DROF and DRON are reported in 100 ms units.

Receive Gain Selection

The <gain> parameter has a range of 112-134 with 128 marking the nominal value.

The default is 128, which represents 0 dB. Step size is 3 dB. This represents a range of -48 dB to 18 dB. This command is used to control the receive gain at the DTE from either the Si3000 Codec or the DAA. The purpose is to adjust the DTE receive gain for the TAM voice stream during idle state. See the <DLE><d> and <DLE><u>

commands discussed in Table 125 on page 190 for information on how to control the

receive gain during active voice stream processing.

Transmit Gain Selection

The <gain> parameter has a range of 112-134 with 128 marking the nominal value.

The default is 128, which represents 0 dB. Step size is 3 dB. This represents a range of -48 dB to 18 dB. This command is used to control the transmit gain at the

DTE to either the Si3000 Codec or the DAA. The purpose is to adjust the DTE transmit gain for the TAM voice stream during idle state. See the <DLE><d> and <DLE><u>

commands discussed in Table 125 on page 190 for information on how to control the

transmit gain during active voice stream processing.

Load Voice Factory Defaults.

DTE/DCE Inactivity Timer

The <timer> parameter has a range of 0-255 with units of seconds. The default is 0

(disable).

186 Rev. 1.41

AN93

Command

+VLS = <label>

+VNH = <hook>

+VRA = <interval>

Table 124. Extended AT+ Command Set (Continued)

Action

1

4

Analog Source / Destination Selection

<label> Description

0 DCE is on-hook. AOUT disabled. Tone detectors disabled.

Si3000 sample pass-through to DAA is inactive.

DCE is off-hook. AOUT disabled. Tone detectors disabled.

5

DCE is on-hook. AOUT connected to tone generators.

Tone detectors disabled.

DCE is off-hook. AOUT connected to PSTN.

13

Tone detectors enabled.

DCE is off-hook. V.253 tone event reporting enabled. Si3000 sample pass-through to DAA is active with options for speakerphone operation.

14 DCE is on-hook. V.253 tone event reporting enabled. Si3000 interface is active for DTE voice stream pass-through.

15 DCE is off-hook. V.253 tone event reporting enabled. Si3000 sample pass-through to DAA is active with options for handset operation.

20

21

DCE is on-hook. AOUT disabled. Tone detectors enabled.

DCE is on-hook. AOUT connected to tone generators. Tone detectors enabled.

Table 131 on page 202 shows the voice-mode operation and the signal paths. See

10.2.4.2 of V.253 for an explanation of the AT +VLS=? command results. If an ATD command is sent while the DCE is in VLS=0 and +FCLASS=8, the DCE will automatically transition to VLS=1. The ATH command will automatically force the DCE to

VLS=0. The main options of interest are the 0, 13, 14, and 5. The +VLS=0 setting must be applied first before applying a new +VLS value to ensure the mode is exited properly.

Automatic Hangup Control

<hook> Description

0 The DCE retains automatic hangups as is normal in the other modes

(such as hanging up the phone when the ISOmodem does not detect a data carrier with a given time interval).

1

2

The DCE shall disable automatic hangups in the other non-voice modes.

The DCE shall disable all hang-ups in other non-voice modes.

The DCE shall only perform a “logical” hangup (return the OK result code).

Ringing Tone Goes Away Timer

The DCE only uses this command in call origination transactions. This command sets the amount of time in 0.1 second units the DCE shall wait between Ringing Tone before it can assume that the remote modem has gone off-hook. Default time is five seconds.

Rev. 1.41

187

A N 9 3

Command

+VRID = <rmode>

+VRN

+VRX

+VSD = <sds>, <sdi>

+VSM = <cml>

Table 124. Extended AT+ Command Set (Continued)

Action

Repeat Caller ID

<rmode> Description

0

1

Display Caller ID information of the last incoming call in formatted form.

Display Caller ID information of the last incoming call in unformatted form.

Ringing Tone Never Appeared Timer

This command sets the amount of time in seconds the DCE will wait looking for Ringing Tone. If the DCE does not detect Ringing Tone in this time period, the DCE shall assume that the remote station has gone off-hook and return an OK result code.

Default time is 0 seconds.

Receive Voice Stream

Enable DTE receive of voice stream. The DCE will return a CONNECT response followed by the voice stream as defined by the +VSM command. The DTE can issue a

<DLE><!> or <DLE><ESC> sequence to terminate the receive stream. The DCE will return a <DLE><ETX> followed by an OK response for <DLE><!> and <DLE><ESC> followed by an OK response for <DLE><ESC>. The DCE can be configured to terminate the stream using the DTE/DCE Inactivity Timer, which is configured using the

+VIT command. The DTE will need to process any <DLE> shielded events present in the data stream. Any <DLE><DLE> sequences can be preserved to allow less overhead during playback of the stream with the +VTX command.

Silence Detection

<sds> Silence Detection Sensitivity

118

128

More sensitive: lower noise levels considered to be silence

Nominal level of sensitivity.

138

<sdi>

Less sensitive: higher noise levels considered to be silence

Silence Detection Interval

The time interval in 0.1 second units, which must contain no or little activity, before the

DCE will report (QUIET) (<DLE><q>). Default is five seconds.

Compression Selection Method

<cml>

0

Compression Mode

Signed linear PCM, 8-bit, 64 kbps

1

4

5

129

Unsigned linear PCM, 8-bit, 64 kbps

G.711U

-law companding PCM, 8-bit, 64 kbps

G.711A A-law companding PCM, 8-bit, 64 kbps

G.726 ADPCM, 2-bit, 16 kbps

131 G.726 ADPCM, 4-bit, 32 kbps

All compression modes use a fixed sampling rate of 8 kHz. See 10.2.8.2 of V.253 for an explanation of the +VSM=? command results.

188 Rev. 1.41

AN93

Command

+VSP = <mode>

+VTD = <dur>

+VTS = [<freq1>,

<freq2>, <dur>],[...]...

+VTX

+VTR

Table 124. Extended AT+ Command Set (Continued)

Action

Voice Speakerphone State

<mode> Description

0

1

Speakerphone AEC and AES disabled. In handset mode, FIR handset coefficients are selected and LEC is enabled.

Speakerphone AEC, AES and LEC enabled. Speakerphone FIR filter coefficients are selected. The +VLS=13 command must be used in combination with this setting.

DTMF / Tone Duration Timer

This command sets the default DTMF / tone generation duration in 10 ms units for the

+VTS command. Default time is 1 second (<dur> = 100).

DTMF and Tone Generation

This command can be used to produce single-frequency tones and double-frequency tones (i.e. DTMF digit). All three parameters are required for correct operation.

<freq1>

<freq2>

Frequency one, which has a range of 0, 200-3200 Hz.

Frequency two, which has a range of 0, 200-3200 Hz.

<dur> Duration of the tone(s) in 10 ms units.

For only a single tone, use <freq1> with zero value for <freq2>. Bracket syntax can be used to group sets of tones to generate simple melodies, e.g.

+VTS=[500,0,10],[600,200,20],[700,250,30]

Transmit Voice Stream

Enable DTE transmit of voice stream to DCE. The DCE will return a CONNECT response. The DTE sends the voice stream as defined by the +VSM command. Any

0x10 character in the voice stream must be shielded with a <DLE>. The DTE issues a

<DLE><ETX> sequence to terminate the transmit stream. The DCE will respond with

<DLE><ETX> followed by OK. The DCE can be configured to terminate the stream using the DTE/DCE Inactivity Timer, which is configured using the +VIT command.

Transmit and Receive Voice Stream.

See +VTX for transmit description and +VRX for receive description. Use <DLE><^> to terminate the session and return to command mode, <^> is 0x5E.

Rev. 1.41

189

A N 9 3

<SUB>

<CAN>

<NUL>

/

~

<ESC>

!

u

7.1.3. <DLE> Commands (DTE-to-DCE)

The characters listed in the Code column of Table 125 are referenced throughout this document with the <>

notation. Simple action commands consist of a <DLE> character plus a simple action-command character (two bytes total).

Table 125. <DLE> Commands (DTE-to-DCE)

Code

<DLE> d

Hex

Format: <DLE>[Code]

Simple Action Command Description

0x10 The DTE must shield any 0x10 characters in the voice data stream sent to the DCE to avoid creation of a <DLE> simple-action command.

0x1A More efficient representation of two 0x10 0x10 characters in the voice data stream.

0x18

0x00

Clear transmit buffer of voice data during +VTX session.

Do nothing. Refresh +VIT Inactivity Timer.

0x2F Disable DTMF reporting.

0x7E Enable DTMF reporting.

0x1B End Voice Receive State started by the +VRX command.

0x21 Abort Voice Receive State started by the +VRX command.

0x75

0x64

Increase volume or gain during voice stream processing. For +VRX, increase the UBF and UC0 receive gains by 3 dB. For +VTX, increase the UB8 and UB3 transmit gains by

3 dB. The voice driver should track this command and update the +VGR or +VGT setting.

Since this <DLE><u> command affects RS232 DAA and RS232 Si3000 gain registers, the voice driver should maintain two sets of +VGT and +VGR. The voice driver will need to know the +VLS state to determine if RS232 is connected to the Si3000 or the DAA.

This command is only processed during an active +VRX or +VTX operation.

Decrease volume or gain during voice stream processing. For +VRX, decrease the UB3 and UB8 receive gains by 3 dB. For +VTX, decrease the UB8 and UB3 transmit gains by

3 dB. The voice driver should track this command and update the +VGR or +VGT setting.

Since this <DLE><d> command affects RS232 DAA and RS232 Si3000 gain registers, the voice driver should maintain two sets of +VGT and +VGR. The voice driver will need to know the +VLS state to determine if RS232 is connected to the Si3000 or the DAA.

This command is only processed during an active +VRX or +VTX operation.

190 Rev. 1.41

AN93

A

B

9

0

7

8

5

6

*

#

C

D o

3

4

1

2

/

~

R

7.1.4. <DLE> Events (DCE-to-DTE)

7.1.4.1. Simple Event Reporting

Table 126. <DLE> Simple Events (DCE-to-DTE)

Code

<DLE>

<SUB>

<ETX>

X

.

Hex

Format: <DLE>[Code]

Description

0x10 The DCE will shield a 0x10 character in the voice stream to create a 0x10 0x10 sequence sent to the DTE.

0x1A DLE DLE in datastream

0x03 End of voice stream data state.

0x58 Packet Header "Complex Event Detection Report". Implemented for CID and Distinctive

Ring report only.

0x2E Packet Terminator "Complex Event Detection Report". Implemented for CID and Distinctive Ring report only.

0x2F DTMF tone detection started.

0x7E DTMF tone detection ceased.

0x52 Ring incoming.

0x31 DTMF 1

0x32 DTMF 2

0x33 DTMF 3

0x34 DTMF 4

0x35 DTMF 5

0x36 DTMF 6

0x37 DTMF 7

0x38 DTMF 8

0x39 DTMF 9

0x30 DTMF 0

0x41 Extended keypad DTMF A

0x42 Extended keypad DTMF B

0x43 Extended keypad DTMF C

0x44 Extended keypad DTMF D

0x2A Extended keypad DTMF E

0x23 Extended keypad DTMF F

0x6F Receive buffer overrun

Rev. 1.41

191

A N 9 3

P a f

(

) b d q l r p

Code

u h

H c e

Table 126. <DLE> Simple Events (DCE-to-DTE) (Continued)

Hex

Format: <DLE>[Code]

Description

0x75 Transmit buffer underrun.

0x63 Fax Calling. DCE has detected T.30 1100 Hz tone.

0x65 Data Calling. DCE has detected V.25 1300 Hz tone.

0x68 Line voltage collapsed (phone line detached).

0x48 Line voltage restored (phone line reattached).

0x71 Presumed End of Message (QUIET).

0x6C Loop current interruption.

0x62 Busy tone detected.

0x64 Dial tone detected.

0x72 Ringing tone detected.

0x70 Line voltage increased (parallel phone goes on-hook). DCE monitors loop current when off-hook and line voltage when on-hook.

0x50 Line voltage decreased (parallel phone goes off-hook). DCE monitors loop current when off-hook and line voltage when on-hook.

0x61 Fax or data answer. DCE has detected T.30 2100 Hz or V.21 1650 Hz answer tone.

0x66 Data answer. DCE has detected 2225 Hz, USB1 or AC answer sequence.

0x28 Negative (decreased) loop-current drift detected.

0x29 Positive (increased) loop-current drift detected.

192 Rev. 1.41

AN93

7.1.4.2. Complex Event Reporting

Table 127. <DLE> Complex Event Reports (DCE-to-DTE)

Format: <DLE><X>[Response]<DLE><.>

Description Response

Tag

DRON

DROF

DATE

TIME

NMBR

NAME

MESG

TA, TB

Distinctive Ring Cadence On-time tag. See +VDR for details.

Distinctive Ring Cadence Off-time tag. See +VDR for details.

CID DATE tag. Full format is DATE=HHMM. Type I and II supported.

CID TIME tag. Full format is TIME=MMDD. Type I and II supported.

CID NMDR tag. Full format is NMBR=<Number> or P or O. Type I and II supported.

CID NAME tag. Full format is NAME=<Listing>. Type I and II supported.

CID MESG tag. Full format is MESG=<Data Tag><Length of Message><Data><Checksum>.

Type I and II supported.

Tone Detector A and B

Format is TA=<tonestate> or TB=<tonestate> tonestate[31:16] tonestate[15:2] millisecond timestamp reserved tonestate[1] tonestate[0]

Tone B detected

Tone A detected

7.1.5. U Registers

This section presents the set of U registers needed for the voice modes.

Table 128. Voice Mode U Registers

Register

U72

UB1

UB3

UB4

UB5

UB6

UB8

UB9

UBF

UC0

Address

0x0072

0x00B1

0x00B3

0x00B4

0x00B5

0x00B6

0x00B8

0x00B9

0x00BF

0x00C0

Name Description

CDCCTRL Si3000 Audio Codec Control Interface.

TXGAIN

TXGAIN1

Si3000-to-DAA Transmit Gain.

RS232-to-DAA Transmit Gain.

TXGAIN2

RXGAIN

STGAIN

TXGAIN3

VTS-to-DAA Transmit Gain.

DAA-to-Si3000 Receive Gain.

Si3000-to-DAA Side Tone Gain.

RS232-to-Si3000 Transmit Gain.

TXGAIN4

RXGAIN1

RXGAIN2

VTS-to-Si3000 Transmit Gain.

DAA-to-RS232 Receive Gain.

Si3000-to-RS232 Receive Gain.

Default

0x1000

0x1000

0x1000

0x1000

0x0000

0x1000

0x0000

0x1000

0x1000

Rev. 1.41

193

A N 9 3

U15C

U15D

U15E

U15F

U160

U161

U162

U163

Register

U156

U157

U158

U159

U15A

U15B

U164

U165

U166

U167

U168

U169

U16A

Table 128. Voice Mode U Registers (Continued)

Description

0x015C

0x015D

0x015E

0x015F

0x0160

0x0161

0x0162

0x0163

Address

0x0156

0x0157

0x0158

0x0159

0x015A

0x015B

0x0164

0x0165

0x0166

0x0167

0x0168

0x0169

0x016A

Name

HTXFIR1

HTXFIR2

HTXFIR3

HTXFIR4

HTXFIR5

HTXFIR6

HTXFIR7

HTXFIR8

HTXFIR9

HTXFIR10

HTXFIR11

HTXFIR12

HTXFIR13

HTXFIR14

HTXFIR15

HTXFIR16

HTXFIR17

HTXFIR18

HTXFIR19

HTXFIR20

HTXFIR21

Handset TX FIR Filter Coefficients.

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

Default

0x4000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

194 Rev. 1.41

U197

U199

U19A

U19B

U19C

U19D

U19E

U179

U17A

U17B

U17C

U17D

U17E

U17F

U196

U171

U172

U173

U174

U175

U176

U177

U178

Register

U16B

U16C

U16D

U16E

U16F

U170

Table 128. Voice Mode U Registers (Continued)

0x0171

0x0172

0x0173

0x0174

0x0175

0x0176

0x0177

0x0178

Address

0x016B

0x016C

0x016D

0x016E

0x016F

0x0170

Name

HRXFIR1

HRXFIR2

HRXFIR3

HRXFIR4

HRXFIR5

HRXFIR6

HRXFIR7

HRXFIR8

HRXFIR9

HRXFIR10

HRXFIR11

HRXFIR12

HRXFIR13

HRXFIR14

Description

Handset RX FIR Filter Coefficients.

0x0179 HRXFIR15

0x017A HRXFIR16

0x017B HRXFIR17

0x017C HRXFIR18

0x017D HRXFIR19

0x017E HRXFIR20

0x017F

0x0196

HRXFIR21

OUTLIM Output Limiter Threshold.

0x0197

0x0199

0x019A

0x019B

INLIM Input Limiter Threshold.

VPCTRL This is a bit-mapped register.

AECHLEN AEC Filter Length.

AECDLY AEC Adjustable Delay.

0x019C AECREFG AEC Reference Gain.

0x019D AECMICG AEC Microphone Gain.

0x019E AECNRG This is a bit-mapped register.

0x2000

0x0200

0x001F

0x1000

0x1000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x5000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

Default

0x4000

0x0000

0x0000

0x0000

0x0000

0x0000

AN93

Rev. 1.41

195

A N 9 3

U1A6

U1A7

U1A8

U1A9

U1AA

U1AB

U1AC

U1AD

Register

U1A0

U1A1

U1A2

U1A3

U1A4

U1A5

U1AE

U1AF

U1B0

U1B1

U1B2

U1B3

U1B4

Table 128. Voice Mode U Registers (Continued)

0x01AE

0x01AF

0x01B0

0x01B1

0x01B2

0x01B3

0x01B4

Address

0x01A0

0x01A1

0x01A2

0x01A3

0x01A4

0x01A5

Name

STXFIR1

STXFIR2

STXFIR3

STXFIR4

STXFIR5

STXFIR6

Description

0x01A6

0x01A7

0x01A8

0x01A9

STXFIR7

STXFIR8

STXFIR9

STXFIR10

0x01AA

0x01AB

STXFIR11

STXFIR12

0x01AC STXFIR13

0x01AD STXFIR14

Speakerphone TX FIR Filter Coefficients.

STXFIR15

STXFIR16

STXFIR17

STXFIR18

STXFIR19

STXFIR20

STXFIR21

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

Default

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

196 Rev. 1.41

U1BB

U1BC

U1BD

U1BE

U1BF

U1C0

U1C1

U1C2

Register

U1B5

U1B6

U1B7

U1B8

U1B9

U1BA

U1C3

U1C4

U1C5

U1C6

U1C7

U1C8

U1C9

U1CD

U1CE

Table 128. Voice Mode U Registers (Continued)

Address

0x01B5

0x01B6

0x01B7

0x01B8

0x01B9

0x01BA

Name

SRXFIR1

SRXFIR2

SRXFIR3

SRXFIR4

SRXFIR5

SRXFIR6

Description

0x01BB

0x01BC

SRXFIR7

SRXFIR8

0x01BD SRXFIR9

0x01BE SRXFIR10

0x01BF SRXFIR11

0x01C0 SRXFIR12

Speakerphone RX FIR Filter Coefficients.

0x01C1 SRXFIR13

0x01C2 SRXFIR14

0x01C3 SRXFIR15

0x01C4 SRXFIR16

0x01C5 SRXFIR17

0x01C6 SRXFIR18

0x01C7 SRXFIR19

0x01C8 SRXFIR20

0x01C9 SRXFIR21

0x01CD LECHLEN LEC Filter Length.

0x01CE LECDLY LEC Adjustable Delay.

0x0000

0x0000

0x0000

0x4000

0x0000

0x0000

0x0000

0x0000

Default

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0000

0x0020

0x002E

AN93

Rev. 1.41

197

A N 9 3

Table 129.

U199 and U19E Register Bit Maps

Reg Name Bits

15-9

U199 VPCTRL

Bit8 Bit7 Bit6

SSP_LOCTALK SSP_PTT SSP_FLAG

Bits

4-5

Bit 3 Bit 2 Bit 1

MMUTE SPCAL SMUTE

Bit 0

U19E AECREF SPKREF MICREF

The SMUTE bit (U199 [1]) mutes the speaker output audio path. The bit should be cleared for normal speakerphone operation. For recording during hands-free TAM, the bit should be set to mute the speaker output.

The MMUTE bit (U199 [3]) mutes the microphone input audio path. The bit should be cleared for the normal speakerphone operation. For message review during hands-free TAM, the bit should be set to mute the microphone.

Bit SPCAL (U199 [2]) in U199 must be set for speakerphone’s calibration and cleared for normal speakerphone operation.

Bit fields SPKREF and MICREF in U19E contain the speakerphone’s speaker and microphone levels during speakerphone calibration.

Table 130.

U199 Bit Definitions

Bit

8

7

6

3

2

1

Name

SSP_LOCTALK

SSP_PTT

SSP_FLAG

MMUTE

SPCAL

SMUTE

Function

1 = Local talker enabled

0 = Remote talker enabled

Toggled by <DLE><0x27>

1 = Manually switch between near/far talker (push-to-talk mode)

0 = Automatically switch based on signal levels

Toggled by <DLE><0x26>

1 = Enable SSP mode

0 = Disable SSP mode

Toggled by <DLE><0x25>

1 = Mute speaker of speakerphone or handset

0 = Unmute speaker

1 = AEC speaker / microphone calibration

0 = Normal mode

1 = Mute local talker

0 = Unmute local talker

198 Rev. 1.41

AN93

7.2. Voice Reference—Overview

This document uses the term “handset mode” to describe the use of the microphone (MIC) and speaker (SPKRL/

SPKRR) connections on the Si3000. The term “hands-free or speakerphone mode” describes the use of the line input (LINEI) and line out (LINEO) connections on the Si3000.

The term “handset” describes a handheld device containing a microphone and a speaker with a four-wire connection for microphone signal pair (MIC/MBIAS and GND) and speaker signal pair (SPKRL and GND or

SPKRL and SPKRR). The Si3000 datasheet uses the term “handset” to describe a two-wire device that is connected directly to the Public Switch Telephone Network (PSTN). This two-wire device is referenced as a

“telephone instrument” to avoid confusion.

The Si24xx-VMB EVB Rev. 2.0 mainboard with Si24xx2G-QFN Rev 1.0 daughtercard serves as the general evaluation platform for the Si2494/39 parts. See the Si24xx-VMB Global Voice ISOmodem EVB User’s Guide for details.

Figure 31 illustrates the handset and speakerphone voice path. The gain registers in Figure 31 use a 4.12 format,

with a range of 0x0001 (–72.247 dB) to 0xFFFF (24.082 dB). For the Si3000-to-DAA gain (UB1) and the DAA-to-

Si3000 gain (UB5), a value of zero is used to disable the path.

The Si2494/39 enters voice mode with +FCLASS=8. Figure 32 illustrates the gain and signal selection options for

the Si3000 codec. Table 131 provides a summary of how the +VLS command is used to control the various voice

mode operations. Table 132 shows the summary of +FCLASS and IDLE state transitions and the expected

responses.

7.2.1. Abort the Dialing Operation in Voice Mode

In off-hook, voice mode (AT+FCLASS = 8 and AT+VLS = 15) the modem remains in AT command mode during dialing; therefore, character abort is not available to abort the dialing. In this mode the host should abort dialing by sending the AT+VLS = 0 command. This will cause the modem to stop dialing and return on-hook. The modem will respond with 2 OKs: one OK for the dialing command and one OK for the AT+VLS = 0 command.

Rev. 1.41

199

A N 9 3

200 Rev. 1.41

AN93

Rev. 1.41

201

A N 9 3

Table 131. Voice Mode Operations (+FCLASS=8)

+VLS Mode Primitive

0

1

4

5

13

14

15

20

None

T

S

ST

M1S1T

H

HT

S

DAA

Active

Detectors

Description

On-Hook Ring, CID1 Voice mode is disabled.

Off-Hook

On-Hook

FDV DTMF

2Tones*

TAM operation for call answer with OGM playback and record message using

DTE voice stream pass through with no audio monitoring using Si3000.

RS232-

>DAA

DAA-

>RS232

Ring, CID1

Await call. Use +VTX for melody playback via AOUT.

RS232-

>AOUT

Off-Hook

Off-Hook

On-Hook

RS232-

>DAA

RS232-

>AOUT

FDV DTMF

2Tones*

Place call with audio call progress on AOUT. +VTS tone signal can be heard at

AOUT via DAA echo-back.

CID2

FDV DTMF

2Tones*

Speakerphone operation:

Use +VSP=1 to enable

AEC/LEC and speakerphone FIR filters without side-tone gain. Only CID2 detector is active.

Handset operation: Use

+VSP=0 for handset operation with handset FIR filters and side tone gain. All the detectors are active. Same as +VLS=15 without TAM operation.

Ring, CID1

FDV DTMF

2Tones*

TAM operation for OGM record and OGM/message playback via DTE voice stream pass through.

RS232-

>DAA

DAA-

>RS232

RS232-

>Si3000

DAA-

>RS232

Si3000-

>RS232

RS232-

>DAA

Si3000<

-->DAA

RS232-

>DAA

RS232-

>Si3000

Off-Hook

On-Hook

+VTX +VRX

CID2

FDV DTMF

2Tones*

Handset voice calls over

Si3000<-->DAA path.

TAM operation for call answer with OGM playback and record message using

DTE voice stream pass through with audio monitoring using Si3000.

RS232-

>DAA

RS232-

>Si3000

DAA-

>RS232

Si3000-

>RS232

Ring, CID1

FDV DTMF

2Tones*

Await call.

+VSP +VTS

RS232-

>DAA

RS232-

>Si3000

202 Rev. 1.41

AN93

+VLS Mode Primitive

21 S

Table 131. Voice Mode Operations (+FCLASS=8) (Continued)

DAA

On-Hook

Active

Detectors

Description

Ring, CID1

FDV DTMF

2Tones*

Await call with tone generator connections to AOUT for control beeps, ring tone, etc.

+VTX +VRX +VSP +VTS

RS232-

>AOUT

* 2Tones =

Detector for

2 programmed tones.

Table 132. +FCLASS and IDLE State Transitions Expected Response

AT&F

Input

Command or

Event

ATH or

DTR off (&D2)

ATZ or

DTR off (&D3)

Key Abort

Current Modem Settings

+FCLASS=0,1

+VNH = 0

ON-HK

+VNH = 1

ON-HK,

+VNH = 0

+VNH = 2

OFF-HK,

+VNH = 0

+VNH = 0

ON-HK,

+FCLASS = 0

+VLS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

+VLS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

ON-HK

+VNH = 0

+FCLASS = 0

+VLS = 0

ON-HK OFF-HK OFF-HK

ON-HK OFF-HK OFF-HK

ON-HK

+VLS = 0

ON-HK

+FCLASS=8

+VNH = 1

ON-HK,

+VNH = 0,

+FCLASS = 0

+VLS = 0

ON-HK,

+VNH = 0,

+FCLASS = 0

+VLS = 0

ON-HK

+VNH = 0

+FCLASS = 0

+VLS = 0

ON-HK

+VLS = 0

OFF-HK

+VNH = 2

ON-HK,

+VNH = 0,

+FCLASS = 0

+VLS = 0

ON-HK,

+VNH = 0,

+FCLASS = 0

+VLS = 0

ON-HK

+VNH = 0

+FCLASS = 0

+VLS = 0

ON-HK

+VLS = 0

OFF-HK

DCE Initiated disconnects

+FCLASS = 8

+FCLASS = 8

Go to IDLE

Keep HK

+FCLASS = 8

Go to IDLE

Keep HK

+VNH = 0*

+FCLASS = 8

Go to IDLE

Keep HK

+VNH = 0*

+FCLASS = 0,1

Go to IDLE

Keep HK

Go to IDLE

Keep HK

Go to IDLE

Keep HK

Notes:

1. “HK”: Hook

2. “Keep HK”: Maintain ON or OFF hook status.

3. *If no +VNH=x command executed since last +FCLASS change.

+FCLASS = 0,1

Go to IDLE

Keep HK

+FCLASS = 0,1

Go to IDLE

Keep HK

+VNH = 0*

+FCLASS = 0,1

Go to IDLE

Keep HK

+VNH = 0*

Rev. 1.41

203

A N 9 3

7.3. Si3000 Configuration

7.3.1. Microphone and Speaker Ports

The TAM and Speakerphone applications use two sets of microphones and speakers: one for the handset and one for hands-free operation. For the Si24xxVMB REV 2.0, the handset circuit uses the MIC input and SPKR_L output.

The Si24xxVMB REV 2.0 allows configuration of the MIC, SPKR_L, and matching ground signals on any handset pinout. There is no industry standard for handset pinout. For the Si24xx-VMB REV 2.0, the speakerphone/handsfree TAM circuit uses the LINEI input and the LINEO output. The LINEO is sent to an external amplifier.

7.3.2. Register Settings

Figure 32 illustrates the register bit fields and corresponding values used to control the gain/attenuation, filtering,

output drivers, and signal selection. From the software driver perspective, the Si3000 has three configuration groups that are applied for the given system states: handset, speakerphone, and hands-free TAM. For applications requiring handset recording of the OGM, the software may use a fourth configuration for handset TAM. These configuration groups define the digital gains, analog gains, and control bit settings for registers 1, 5, 6, 7, and 9 of the Si3000. Speakerphone algorithm includes input and reference gains that require a lower gain in the Si3000. For

Hands-Free TAM, the speakerphone voice path is disabled, so a higher analog gain can be used.

7.3.3. System Voice Modes

A system voice mode consists of the Si24xx ISOmodem and Si3000 settings combined with the PSTN status to achieve a desired function. These modes describe the status of the hook switch, the modem voice path, Si3000

configuration (input, output, and gains), and the allowed operations. Figure 33 illustrates the transition events

among these modes.

7.3.3.1. TAM Hands-Free

This is the general idle mode for recording an OGM/local message (+VRX) and reviewing an ICM/local message

(+VTX). All detectors are functional and incoming rings are indicated on the speaker via a tone or a melody. The modem is on-hook routing audio between the Si3000 and the DTE interface. The modem voice path is configured for half-duplex audio with speakerphone algorithm disabled. The Si3000 audio transmit and receive path is muted/ unmuted to allow half-duplex control for proper TAM operations. Side tone is disabled. Handset TX/RX coefficients are applied. The Si3000 is using the LINEI and LINEO signals with hands-free TAM gain settings.

7.3.3.2. TAM Handset

This is variation to the TAM Hands-Free mode above, with the exception that the handset is used to review a locally-recorded message or ICM privately. The Si3000 is using the MIC and SPKRR and/or SPKRL signals with handset gain settings. A raised handset usually triggers off-hook transition, so the controller would have to support a special mode to not switch off-hook into Handset mode.

7.3.3.3. Speakerphone

This mode is used to conduct a hands-free voice call. The modem is off-hook and routing audio between Si3000 and DAA. The modem voice path is configured for full-duplex audio with speakerphone algorithm enabled. Side tone is disabled. Speakerphone TX/RX filter coefficients are applied. The Si3000 is using the LINEI and LINEO signals with speakerphone gain settings.

7.3.3.4. Handset

This mode is used to conduct a private voice call. The modem is off-hook and routing audio between the Si3000 and DAA. The modem voice path is configured for full-duplex audio with speakerphone algorithm disabled. Side tone is enabled. Handset TX/RX filter coefficients are applied. The Si3000 is using the MIC and SPKRR and/or

SPKRL signals with handset gain settings. This mode is supported by all Si24xx revision D parts.

7.3.3.5. Si3000 Control Register Overview

The Si3000 has control registers numbered 1–9. Registers 5, 6, 7, and 9 are of primary interest for typical handset telephony applications. Consult the Si3000 data sheet for details on the use of additional control features in registers 1, 2, 3, 4 and 8.

The Si3000 control registers are 8-bits wide and are written with a Hex value via the U72 register in the

ISOmodem. The U72 register is 16-bits wide. The two high nibbles are used to identify the Si3000 control register to write, and the lower two nibbles are the value written to the Si3000 control register. For example, the command

AT:U72,0547 writes the binary value 01000111 to the Si3000 control register 5.

204 Rev. 1.41

AN93

Reading the Si3000 control registers is a two-step process. First, the value of the desired Si3000 control register must be loaded into the U72 register; then, the value of U72 can be read. For example, to read the value of Si3000 control register 5, use the following AT command sequence:

AT+FCLASS=8

AT+VLS=14

AT:U72,25xx

AT:R72

In the command, AT:U72,25xx, the "2" in the bits [15:12] causes the value from the Si3000 control register specified in bits [11:8] to be read and stored in the lower byte of the U72 register. In this command, xx=don't care. The command, AT:R72, reads the U72 register value, the lower byte of which is the current value of Si3000 control register 5. See the U-Register section for additional information on the use of U72 and the AT command section for additional information on writing and reading U-Registers.

Detailed register descriptions for Si3000 registers 5, 6, 7, and 9 are presented in tables 117, 118, 119, and 120, respectively. Please see the Si3000 data sheet, available from Silicon Laboratories, for complete information.

Rev. 1.41

205

A N 9 3

7.3.3.6. TAM PSTN

This mode is used to answer an incoming call with OGM playback and ICM recording. The caller may perform local

TAM operations (i.e. record OGM, review ICM) via remote DTMF control. The modem is off-hook routing audio between the DAA and the DTE interface; however, audio is also available at the Si3000 (via UB5 path) so call screening is possible via the speaker (LINEO) while the microphone is muted. The modem voice path is configured for half-duplex audio with the speakerphone algorithm disabled. Side tone is disabled. Handset TX/RX coefficients are applied. The Si3000 is using the LINEI and LINEO signals with speakerphone gain settings. This mode is supported by the Si2418/29/36/38 parts.

TAM

PSTN

S

O n

E ve

P

B u tto n t n

Initialize

RIN

G r O

(An swe n)

(nu

Hoo k

On-

Eve nt me rou s)

Us er

Ha

Re nd se qu es t R

Ev en t + ais ts ed

H an

Lo ds et ed

o w

Ab er or t E r ve nt

TAM

Handset

TAM

Hands-Free

Lo w ere

H an d E ds ve et nt u

B

P

S o tt n v

E ff

O n e t

(H s d n a t e n

O

-H

) k o o

R ais ed

H an ds

E ve nt et

Rais

Han ed E dse ven t t

P

S

B u o tt n

O n

E e v t n

SP

B utt

E

On on ve nt

Speakerphone

Ha nd se d E

Ra ise t ve nt

SP B utton

Off E vent

(Han dset

Off-

Hoo k)

Figure 33. System Voice Modes

Handset

206 Rev. 1.41

AN93

7.4. Initialization

The following sequence is used after power up or hardware reset to prepare the modem for voice operations. This

procedure occurs in the Initialize state presented in Figure 33. After initialization, the system will be in the TAM

Hands-Free mode, which is discussed in "7.3.3.1. TAM Hands-Free".

Table 133. Initialization Sequence

Host to Modem Commands

Modem to

Host Result

Codes

Local Modem Actions

ATZ

ATE0+FCLASS = 0

AT+IPR = 115200

[ Apply Patch Commands ]

AT:U199|A

ATE0+FCLASS = 8

AT+VLS = 0

AT+VLS = 14

AT*Y254:W59|1

AT*Y0

AT+VCDT = 1

AT+VCID = 1

AT+VSD = 129

AT+PCW = 0

AT:U0B1,0500

AT:U0B5,0200

AT:U0B6,0100

AT:U0B9,0300

AT:U0B4,0600

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

Reset. The Si3000 is not reset by this command.

Disable local AT command echo and enter data mode, which is necessary for patch loading.

Disable autobaud and set rate to

115,200 bps.

Apply the modem patch commands.

Mute the microphone and speaker paths to the codec.

Disable local AT command echo and enter voice mode. Limited V.253 event reporting enabled with default setting of

+VLS=0.

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup on-hook TAM voice mode. See

Table 131 on page 202 for details.

Enable the SSI interface to the Si3000.

Exit the AT*Y command mode.

Enable always-on Type I Caller ID.

Enable formatted Caller ID.

Set silence detection sensitivity level.

Enable Type II Caller ID reporting.

Set Si3000-to-DAA transmit gain.

Set DAA-to-Si3000 receive gain.

Set Sidetone gain.

Set VTS-to-Si3000 transmit gain.

Set VTS-to-DAA transmit gain.

Rev. 1.41

207

A N 9 3

AT:U196,5000

AT:U197,2000

AT:U19C,2400

AT:U19D,1800

AT:U19A,01E0

AT:U19B,001F

AT:U04F,01F4

AT:U156,FF10,FFA2,FFD7,FF35,FEF3,FE68,FB7E

AT:U15D,F90C,FDDF,091D,4F51,091D,FDDF,F90C

AT:U164,FB7E,FE68,FEF3,FF35,FFD7,FFA2,FF10

AT:U16B,0041,00B1,00AA,0001,FF92,0042,0183

AT:U172,0165,FEC0,FB05,3940,FB05,FEC0,0165

AT:U179,0183,0042,FF92,0001,00AA,00B1,0041

AT:U1A0,0000,0000,0000,0000,0000,0000,0000

AT:U1A7,0000,0000,0000,0000,0000,0000,0000

AT:U1AE,0000,0000,0000,0000,0000,0000,4000

AT:U1B5,0173,0273,045A,043B,0121,FD54,FE41

AT:U1BC,0197,0543,FD03,30D6,FD03,0543,0197

AT:U1C3,FE41,FD54,0121,043B,045A,0273,0173

Table 133. Initialization Sequence (Continued)

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

Set output limiter threshold gain.

Set input limiter threshold gain.

Set AEC reference gain.

Set AEC microphone gain.

Set AEC filter length.

Set AEC adjustable delay.

Set flash hookswitch period.

Set Handset Transmit FIR coefficients.

Set Handset Receive FIR coefficients.

Set Speakerphone Transmit FIR coefficients.

Set Speakerphone Receive FIR coefficients.

AT:U72,0108

AT:U72,05D7

AT:U72,065E

OK

OK

OK

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

20 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

208 Rev. 1.41

AN93

AT:U72,075E

AT:U72,0900

AT:U0B1,0

AT:U0B5,0

AT:U199&FFF7

Table 133. Initialization Sequence (Continued)

OK

OK

OK

OK

OK

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Disable Si3000-to-DAA transmit gain path. This ensures codec tones are not sent to the FDV and DTMF.

Disable DAA-to-Si3000 receive gain path. This ensures line events such as

CID and ring tone are not heard via the codec.

Enable speaker for local ring tone/alert tones.

7.5. Handset

7.5.1. Overview

This mode uses the voice pass-through connection to route SSI data between the Si3000 and the DAA. The modem remains in AT command mode and provides V.253 event notifications. The host controller is responsible for detecting the status of the handset position. The following sections provides detailed examples of originating and answering a voice call with the handset.

7.5.2. Handset Configuration

Table 134 contains the initial configuration that is used by all dialing use cases. The sequence is also sent for the

answer case. The user will have been notified of the incoming call through a local +VTS ring tone and a raised handset event would prompt the Handset Configuration sequence to answer the call. The UB1, UB5, UB6, and

Si3000 register configuration vary with the customer’s production hardware. The UB5 register serves as the general volume control in this mode.

Rev. 1.41

209

A N 9 3

Table 134.

Handset Configuration

Host to Modem Commands / Data

Modem to Host

Result Codes/

Data

AT:U199|A

AT+VLS=0

AT+VLS=13

AT:U0B1,0500

AT:U0B5,0200

AT:U72,0110

AT:U72,05B3

AT:U72,065C

AT:U72,075E

AT:U72,0900

AT+VSP=0

AT:U199&FFF5

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

Local Modem Actions

Mute the microphone and speaker paths to the codec.

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup off-hook voice mode. See

Table 131 on page 202 for details.

Restore Si3000-to-DAA transmit gain path.

Restore DAA-to-Si3000 receive gain path.

Configure Si3000 Register 1:

Enable speaker driver

Disable line output driver

Disable telephone instrument driver

Enable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Mute Line In

20 dB MIC input gain

Enable MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Disable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Select handset voice path. See Figure 31 on page 200 for details.

Enable the microphone and speaker paths to the codec.

210 Rev. 1.41

AN93

7.5.3. Call – Automatic Tone Dial

Table 135 lists the commands that occur after the configuration defined in Table 134.

Table 135. Handset Automatic Tone Dial

Host to Modem

Commands / Data

Modem to Host Result

Codes/Data

Local Modem Actions

ATDT102 OK

Perform automatic tone dial of 102. Modem will return

OK. Depending on the number of rings the host may receive <DLE><r> events for ring-back notifications. If the line is busy, a <DLE><b> event will be sent to the host. After connection, the host will receive <DLE><q> events during quiet periods of no voice.

7.5.4. Call – Manual Off-Hook Tone Dial

Table 136 lists the commands that occur after the configuration defined in Table 134.

Table 136. Handset Manual Off-Hook Dial

Host to Modem Commands

/ Data

Modem to Host Result

Codes/Data

Local Modem Actions

AT+VTS=[697,1209,20]

AT+VTS=[941,1336,20]

AT+VTS=[697,1336,20]

OK

OK

OK

The user is free to dial manually using the +VTS commands to create the DTMF digits.

Generate DTMF 1 digit for 200 ms.

Generate DTMF 0 digit for 200 ms.

Generate DTMF 2 digit for 200 ms.

Depending on the number of rings the host may receive

<DLE><r> events for ring-back notifications. If the line is busy, a <DLE><b> event will be sent to the host.

After connection, the host will receive <DLE><q> events during quiet periods of no voice.

7.5.5. Call – Automatic Pulse Dial

Table 137 lists the commands that occur after the configuration defined in Table 134.

Table 137. Handset Automatic Pulse Dial

Host to Modem

Commands / Data

Modem to Host Result

Codes/Data

Local Modem Actions

ATDP102 OK

Perform automatic pulse dial of 102. Modem will return

OK. Depending on the number of rings the host may receive <DLE><r> events for ring-back notifications. If the line is busy, a <DLE><b> event will be sent to the host. After connection, the host will receive <DLE><q> events during quiet periods of no voice.

7.5.6. Answer

A ring event will prompt the user to lift the handset. This will generate a Handset Raised Event and the Handset

Configuration procedure defined in Table 134 should be used to answer the call. For ring detection and local ring

tone/melody generation, see "7.6.2. TAM Hands-Free—Idle" .

Rev. 1.41

211

A N 9 3

7.5.7. Terminate

Upon detection of the Handset Lowered Event, the host should issue the commands in Table 138 to transition to

the TAM Hands-Free mode.

Table 138. Handset to TAM Hands-Free Transition

Host to Modem

Commands / Data

AT:U199|A

AT+VSP=0

AT+VLS=0

AT+VLS=14

AT:U0B1,0

AT:U0B5,0

AT:U72,0108

AT:U72,05D7

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT:U199&FFF7

Modem to Host Result

Codes/Data

OK

OK

Local Modem Actions

Mute the microphone and speaker paths to the codec.

Select handset voice path. See Figure 31 on page 200 for details.

+VSP must be zero when exiting from +VLS=13.

OK

OK

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup on-hook voice mode. See

Table 131 on page 202 for

details. This will return the modem to on-hook state.

OK

OK

OK

OK

OK

OK

OK

OK

Disable Si3000-to-DAA transmit gain path. This ensures codec tones are not sent to the FDV and DTMF.

Disable DAA-to-Si3000 receive gain path. This ensures line events such as CID and ring are not heard via the codec.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

20 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Enable speaker for local ring tone/alert tones.

212 Rev. 1.41

AN93

7.5.8. Speakerphone Transition

In the Handset mode, the SP Button On Event will trigger the transition from Handset to Speakerphone mode. See

"7.7. Speakerphone" on page 225 for details on Speakerphone mode. The voice driver should track the handset

hook switch state, such that if the user exits Speakerphone mode, the system will switch back to Handset configuration without losing the active call.

Table 139. Handset to Speakerphone Transition

Host to Modem

Commands / Data

AT:U199|A

AT:U72,0108

AT:U72,05D7

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT+VSP=1

AT:U199&FFF5

Modem to Host Result

Codes/Data

OK

OK

Local Modem Actions

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

OK

OK

OK

OK

OK

OK

Configure Si3000 Register 5:

20 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Enable speakerphone voice path. See Figure 31 on page 200 for details.

Enable the microphone and speaker paths to the codec.

Rev. 1.41

213

A N 9 3

7.6. Telephone Answering Machine

7.6.1. Overview

The Si2494/39 supports telephone answering machine (TAM) operations. These parts use the V.253 command set to control operation. This section covers the three major TAM-related system voice modes. Some modes offer multiple operations.

The TAM Hands-Free mode is the general voice idle mode. It is used for OGM recording/review and local ICM recording/review via hands-free operation. The TAM Handset mode is similar to TAM Hands-Free except that the audio is handled over the handset. The TAM PSTN mode is for playback of the OGM and recording the ICM. The

TAM PSTN mode also permits remote OGM and ICM record/review via DTMF tone control. The +VTX command is used to play voice menu options/prompts. All the use cases in this section start with the modem in TAM

Hands-Free mode, which is configured in the initialization sequence in Table 133 on page 207.

7.6.2. TAM Hands-Free—Idle

The modem will use the events listed in Table 126 on page 191 to communicate status. The <DLE><R> event

indicates ring detection. The +VTS command can be used to play one or more single/dual tone sequences. If

enabled, Type I CID is decoded after the first ring and sent via a complex <DLE> event report. See Table 140 for

details.

Table 140. Local Ring Notification with Type I CID Event

Host to Modem Commands / Data

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

Modem to Host Result

Codes/Data

<DLE><R>

<DLE><R>

OK

<DLE><R>

OK

Local Modem Actions

Ring Detection

OK

<DLE><X>

CIDM

DATE=0101

TIME=0110

NMBR=102

NAME=JONES JENNIFER

<DLE><.>

Play local ring tone.

Receive Type I CID DLE complex report.

Ring Detection.

Play local ring tone.

Ring Detection. The voice driver will use a rings-to-answer count. This example uses three rings before answer.

Play local ring tone.

Based upon the TAM answer function settings, a ring counter will validate the number of rings before answer. If the

TAM Answer function is disabled or the number of rings before answer has not been reached, the user has the opportunity to answer the call via handset or speakerphone.

214 Rev. 1.41

AN93

7.6.2.1. Record OGM

The Si3000-to-RS232 gain register UC0 in the ISOmodem can be used to adjust the voice stream gain. Use the

+VGR command to adjust the UC0 value in command mode. It is best to maintain two versions of +VGR: one for

Si3000-to-RS232 and another for DAA-to-RS232.

Table 141. TAM Hands-Free Record OGM

Host to Modem Commands /

Data

Modem to Host Result

Codes/Data

Local Modem Actions

AT+VGR=128

AT:U0B1,0500

AT+VSD=129

AT+VSM=4

AT+VTS=[1000,0,100]

AT:U199|8

AT:U199&FFFD

AT+VRX

<DLE><!>

AT:U0B1,0

AT:U199|2

AT:U199&FFF7

OK

OK

OK

OK

OK

OK

OK

CONNECT

[Voice Stream]

<DLE><ETX>

OK

OK

OK

OK

Set the Si3000-to-RS232 receive gain (UC0) for TAM

Hands-Free.

Restore Si3000-to-DAA transmit gain path to allow voice samples to reach FDV block for silence detection.

This allows the driver to automatically end OGM recording.

Set sensitivity level for OGM recording silence detection.

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the

OGM PCM file.

Play user record tone prompt.

Mute speaker to avoid echo (speakerphone algorithm off).

Enable microphone for OGM recording.

Trigger receive operation. The first byte after the newline character following the CONNECT message will be the first data stream byte.

Receive OGM voice stream. During voice stream capture, the user can adjust the UC0 value via the

<DLE><u> and <DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGR value for future use.

Terminate the receive operation. The modem will respond with <DLE><ETX> to mark the end of the data stream. The OK denotes the return to command mode.

Disable Si3000-to-DAA transmit gain path. This ensures codec tones are not sent to the FDV and

DTMF.

Mute the microphone.

Enable speaker for local ring tone/alert tones.

Rev. 1.41

215

A N 9 3

7.6.2.2. Review OGM

The RS232-to-Si3000 gain register UB8 in the ISOmodem can be used to adjust the voice stream gain. Use the

+VGT command to adjust the UB8 value in command mode. It is best to maintain two versions of +VGT: one for

RS232-to-Si3000 and another for RS232-to-DAA.

Table 142. TAM Hands-Free Review OGM

Host to Modem Commands

/ Data

Modem to Host Result

Codes/Data

Local Modem Actions

AT+VGT=128

AT+VSM=4

AT+VTX

[Voice Stream]

<DLE><ETX>

OK

OK

CONNECT

<DLE><u>

OK

Set the RS232-to-Si3000 transmit gain (UB8) for TAM

Hands-Free.

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the

OGM PCM file.

Trigger transmit operation.

TX Underrun. Appears at the start of +VTX before transmit data are seen.

Transmit OGM voice stream. During voice stream capture, the user can adjust the UB8 value via the

<DLE><u> and <DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGT value for future use.

Terminate the transmit operation. The modem will respond with OK to denote the return to command mode.

7.6.2.3. Record Local ICM

The Record Local ICM is identical to the Record OGM procedure provided in Table 141 on page 215. The main

difference is that one of the ADPCM formats is generally used and the PCM file is stored with the other ICM files recorded from the PSTN.

7.6.2.4. Review ICM

The Review ICM is identical to the Review OGM procedure provided in Table 142 on page 216. The main

difference is that one of the ADPCM formats is generally used to conserve message space.

7.6.2.5. Speakerphone Transition

The SP Button On Event will trigger this transition. See Table 149 on page 231 for configuration sequence.

7.6.2.6. Handset Transition

The Handset Raised Event will trigger this transition. See Table 134 on page 210 for configuration sequence.

7.6.3. TAM Handset

Using the handset to record the OGM will result in better message quality. The handset can also be used to screen messages in private. The host will need to correctly process the Handset Raised Event to keep the modem onhook during record/review operations.

7.6.3.1. Record OGM

The host will prompt the user to lift the handset to begin OGM recording. The procedure restores the TAM Hands-

Free settings before completion.

216 Rev. 1.41

AN93

Table 143. TAM Handset Record OGM

Host to Modem Commands / Data

Modem to

Host Result

Codes/Data

Local Modem Actions

AT:U199|A

AT:U72,0110

AT:U72,05B3

AT:U72,065C

AT:U72,075E

AT:U72,0900

AT+VGR=128

AT:U0B1,0500

AT+VSD = 129

AT+VSM = 4

AT+VTS = [1000,0,100]

AT:U199|8

AT:U199&FFFD

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Enable speaker driver

Disable line output driver

Disable telephone instrument driver

Enable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Mute Line In

20 dB MIC input gain

Enable MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Disable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Set the Si3000-to-RS232 receive gain

(UC0) for TAM Hands-Free.

Restore Si3000-to-DAA transmit gain path to allow voice samples to reach FDV block for silence detection. This allows the driver to automatically end OGM recording.

Set sensitivity level for OGM recording silence detection.

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the OGM PCM file.

Play user record tone prompt.

Mute speaker.

Enable microphone for OGM recording.

Rev. 1.41

217

A N 9 3

Table 143. TAM Handset Record OGM (Continued)

AT+VRX

<DLE><!>

AT:U0B1,0

AT:U199|A

AT:U72,0108

AT:U72,05D7

AT:U72,065E

AT:U72,075E

CONNECT

[Voice Stream]

Trigger receive operation. The first byte after the newline character following the

CONNECT message will be the first data stream byte.

Receive OGM voice stream. During voice stream capture, the user can adjust the

UC0 value via the <DLE><u> and

<DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGR value for future use.

<DLE><ETX>

OK

OK

Terminate the receive operation. The modem will respond with <DLE><ETX> to mark the end of the data stream. The OK denotes the return to command mode. A

Handset Lowered Event, timeout, or silence event can trigger the <DLE><!> transmission.

Disable Si3000-to-DAA transmit gain path.

This ensures codec tones are not sent to the FDV and DTMF.

OK

OK

OK

OK

OK

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

20 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

218 Rev. 1.41

AN93

Table 143. TAM Handset Record OGM (Continued)

AT:U72,0900

AT:U199&FFF7

OK

OK

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Enable speaker for local ring tone/alert tones.

7.6.3.2. Review OGM

The host will prompt the user to lift the handset to begin OGM review. The procedure restores the TAM Hands-Free settings before completion. The host will need to ensure the Handset Lowered Event is received before

Table 144. TAM Handset Review OGM

Host to Modem Commands / Data Modem to

Host Result

Codes/Data

Local Modem Actions

AT:U199|A

AT:U72,0110

AT:U72,05B3

AT:U72,065C

AT:U72,075E

AT:U72,0900

AT+VGT=128

OK

OK

OK

OK

OK

OK

OK

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Enable speaker driver

Disable line output driver

Disable telephone instrument driver

Enable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Mute Line In

20 dB MIC input gain

Enable MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Disable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Set the RS232-to-Si3000 transmit gain

(UB8) for TAM Hands-Free.

Rev. 1.41

219

A N 9 3

Table 144. TAM Handset Review OGM (Continued)

AT+VSM=4

AT+VTX

[Voice Stream]

<DLE><ETX>

AT:U199|A

AT:U72,0108

AT:U72,05D7

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT:U199&FFF7

OK

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the OGM PCM file.

CONNECT

Trigger transmit operation.

<DLE><u>

OK

OK

OK

OK

OK

OK

OK

OK

TX Underrun. Appears at the start of +VTX before transmit data are seen.

Transmit OGM voice stream. During voice stream capture, the user can adjust the UB8 value via the <DLE><u> and <DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGT value for future use.

Terminate the transmit operation. The modem will respond with OK to denote the return to command mode.

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

20 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Enable speaker for local ring tone/alert tones.

220 Rev. 1.41

AN93

7.6.3.3. Record Local ICM

The Record Local ICM is identical to the Record OGM procedure provided in Table 143 on page 217. The main

difference is that one of the ADPCM formats is generally used and the PCM file is stored with the other ICM files recorded from the PSTN.

7.6.3.4. Review ICM

The Review ICM is identical to the Review OGM procedure provided in Table 144 on page 219. The main

difference is that one of the ADPCM formats is generally used to conserve message space.

7.6.4. TAM PSTN

This system voice mode differs from the TAM Hands-Free and TAM Handset modes in that the modem is off-hook and connected to the PSTN. Due to the paired nature of the +VGR and +VGT, the voice driver should maintain two

copies of each: one for RS232-to-Si3000 and another for RS232-to-DAA. See Figure 31 on page 200 for details.

7.6.4.1. Normal Answer – OGM Playback with ICM Record

Table 145. TAM PSTN Normal Answer – OGM Playback with ICM Record

Host to Modem Commands / Data

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

AT:U199|8

AT+VGR=128

AT+VGT=128

AT+VSD=129

AT+VSM=4

Modem to Host Result

Codes/Data

Local Modem Actions

<DLE><R>

Ring Detection

OK

Play local ring tone.

<DLE><X>

CIDM

DATE=0101

TIME=0110

NMBR=102

NAME=JONES JENNIFER

<DLE><.>

Receive Type I CID DLE complex report.

<DLE><R>

OK

<DLE><R>

OK

OK

OK

OK

OK

OK

Ring Detection.

Play local ring tone.

Ring Detection. The voice driver will use a rings-to-answer count. This example uses three rings before answer.

Play local ring tone.

Mute the speaker so the OGM is not heard locally. The user may remove this command to allow local review.

Set the DAA-to-RS232 receive gain register (UBF) for TAM PSTN.

Set the RS232-to-DAA transmit gain register (UB3) for TAM PSTN.

Set sensitivity level for ICM recording silence detection.

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the OGM PCM file.

Rev. 1.41

221

A N 9 3

Table 145. TAM PSTN Normal Answer – OGM Playback with ICM Record (Continued)

AT+VLS=0

AT+VLS=15

AT+VTX

[Voice Stream]

<DLE><ETX>

AT+VSM=131

AT+VTS=[1000,0,100]

AT:U0B5,0200

AT:U199&FFF7

AT+VRX

<DLE><!>

OK

OK

CONNECT

<DLE><u>

OK

OK

OK

OK

OK

CONNECT

[Voice Stream]

<DLE><ETX>

OK

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup off-hook voice to PSTN. See

Table 131 on page 202

for details.

Trigger transmit operation.

TX Underrun. Appears at the start of +VTX before transmit data are seen.

Transmit OGM voice stream. During voice stream capture, the user can adjust the

UB3 value via the <DLE><u> and

<DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGT value for future use.

Terminate the transmit operation. The modem will respond with OK to denote the return to command mode.

Select G.726 ADPCM, 4-bit, 32 kbps format.

Play user record tone prompt.

Restore DAA-to-Si3000 receive gain path.

This will allow call screening of the ICM.

Enable speaker for call screening of the

ICM.

Trigger receive operation. The first byte after the newline character following the

CONNECT message will be the first data stream byte.

Receive ICM voice stream. During voice stream capture, the user can adjust the

UBF value via the <DLE><u> and

<DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGR value for future use.

Terminate the receive operation. The modem will respond with <DLE><ETX> to mark the end of the data stream. The OK denotes the return to command mode. A loss of loop current, parallel phone detect, timeout, or silence event can trigger the

<DLE><!> transmission.

222 Rev. 1.41

AN93

Table 145. TAM PSTN Normal Answer – OGM Playback with ICM Record (Continued)

AT:U0B5,0

AT:U199|2

AT:U199&FFF7

AT+VLS=0

AT+VLS=14

OK

OK

OK

OK

OK

Disable DAA-to-Si3000 receive gain path.

This ensures line events such as CID and ring tone are not heard via the codec.

Mute the microphone.

Enable speaker for local ring tone/alert tones.

Disable voice mode. Used as a transition point between non-zero +VLS voice modes. This will hang-up the call.

Setup on-hook TAM voice mode. See

Table 131 on page 202 for details.

7.6.4.2. Interrupted Answer – OGM Playback with DTMF Menu Entry

The procedure listed in Table 146 uses a remote-access password of 1234. DTMF decoding is asynchronous. The

host voice driver will need to employ a timer or timestamp to validate the consecutive DTMF digits that comprise the remote password.

Table 146. TAM PSTN Interrupted Answer – OGM Playback with DTMF Menu Entry

Host to Modem Commands / Data

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

AT+VTS=[700,500,80]

AT:U199|8

AT+VGR=128

Modem to Host Result

Codes/Data

Local Modem Actions

<DLE><R>

Ring Detection

OK

Play local ring tone.

<DLE><X>

CIDM

DATE=0101

TIME=0110

NMBR=102

NAME=JONES JENNIFER

<DLE><.>

Receive Type I CID DLE complex report.

<DLE><R>

OK

<DLE><R>

OK

OK

OK

Ring Detection.

Play local ring tone.

Ring Detection. The voice driver will use a rings-to-answer count. This example uses three rings before answer.

Play local ring tone.

Mute the speaker so the OGM is not heard locally. The user may remove this command to allow local review.

Set the DAA-to-RS232 receive gain register (UBF) for TAM PSTN.

Rev. 1.41

223

A N 9 3

Table 146. TAM PSTN Interrupted Answer – OGM Playback with DTMF Menu Entry (Continued)

Host to Modem Commands / Data

Modem to Host Result

Codes/Data

Local Modem Actions

AT+VGT=128

AT+VSD=129

AT+VSM=4

AT+VLS=0

AT+VLS=15

AT+VTX

[Voice Stream]

OK

OK

OK

OK

OK

CONNECT

<DLE><u>

Set the RS232-to-DAA transmit gain register (UB3) for TAM PSTN.

Set sensitivity level for ICM recording silence detection.

Select G.711U

-law PCM, 8-bit, 64 kbps format. The voice driver will need to track the OGM format with the OGM PCM file.

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup off-hook voice to PSTN. See

Table 131 on page 202

for details.

Trigger transmit operation.

TX Underrun. Appears at the start of +VTX before transmit data are seen.

Transmit OGM voice stream. During voice stream capture, the user can adjust the

UB3 value via the <DLE><u> and

<DLE><d> commands. The host voice driver will need track the number of adjustments and update the +VGT value for future use.

<DLE><ETX>

<DLE></>

<DLE><1>

<DLE><~>

<DLE></>

<DLE><2>

<DLE><~>

<DLE></>

<DLE><3>

<DLE><~>

<DLE></>

<DLE><4>

<DLE><~>

OK

DTMF 1 digit detected.

DTMF 2 digit detected.

DTMF 3 digit detected.

DTMF 4 digit detected. The password of

1234 has been matched. Abort answer sequence.

Terminate the transmit operation. The modem will respond with OK to denote the return to command mode.

224 Rev. 1.41

AN93

Table 146. TAM PSTN Interrupted Answer – OGM Playback with DTMF Menu Entry (Continued)

Host to Modem Commands / Data

AT+VTS=[500,0,100]

[Playback Menu Options]

Modem to Host Result

Codes/Data

OK

Local Modem Actions

Play special administrator tone.

Using the +VTX command, the voice driver can playback a menu and monitor DTMF digit events to perform operations remotely.

7.6.4.3. Speakerphone Transition

A SP Button On Event will trigger the transition to Speakerphone system voice mode. Based upon the point at which the event is received, the voice driver will vector to a user answer state to gracefully exit the TAM PSTN mode.

7.6.4.4. Handset Transition

A Handset Raised Event will trigger the transition to Handset system voice mode. Based upon the point at which the event is received, the voice driver will vector to a user answer state to gracefully exit the TAM PSTN mode.

7.7. Speakerphone

7.7.1. Overview

The Si2494/39 speakerphone consists of the following function components as shown in Figure 31 on page 200:

Acoustical echo canceller (AEC)

Acoustical echo suppressor (AES)

AEC double-talk detector (DTD)

Line echo canceller (LEC)

Howling controller (HC)

High-pass filter (HPF)

7.7.2. External Microphone/Speaker Calibration

The Si2494/39 speakerphone calibration is required for a new external speaker and microphone pair to work properly with the speakerphone code. This section covers the following procedures:

To calibrate the speaker and microphone module from a commercial reference platform to have the same speaker loudness and microphone sensitivity relative to those of the active reference system.

To calibrate the speakerphone gains so that the AEC/DTD input signal levels are ensured for optimal AEC/AES/

DTD performance.

The external analog gains on the Si24xx-VMB should be finalized before the performing the speakerphone calibration.

7.7.2.1. Transmit Gain Calibration—Speakerphone Disabled

Figure 34 illustrates the reference setup where the commercial speakerphone is active with default settings. Using

the reference commercial speakerphone, call the remote telephone and establish a voice call. Place a sound source such as a PC speaker at a distance of one foot from the speakerphone’s microphone. Play out white noise as the near-end speech through the sound source, and adjust the white noise level so that the level at the speakerphone’s Tip/Ring is -15 dBm. Record the white noise level and disconnect the call.

Rev. 1.41

225

A N 9 3

Figure 34. Transmit Gain Reference Measurements

Figure 35 illustrates the setup used to set the transmit gain. Here the modem has the AEC/AES disabled with

AT+VSP=0. Using the Si24xx-VMB, call the remote phone and establish a voice call. Use the command sequence

in Table 147. Place the same sound source at a distance of one foot from the speakerphone’s microphone. Play

out the same white noise as the near-end speech through the sound source, and adjust the transmit gain UB1 so that the level at the Si24xx Tip/Ring is –15 dBm. Record the calibrated UB1 value.

226

Figure 35. Transmit Gain Configuration

Rev. 1.41

AN93

Table 147. Transmit/Receive Gain Calibration—Dial Remote Telephone

Host to Modem Commands

/ Data

Modem to Host Result

Codes/Data

ATZ

AT+FCLASS=8

OK

OK

AT:U199|4

AT*Y254:W59|1

AT:U72,0108

AT:U72,0597

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT+VLS=13

OK

OK

OK

OK

OK

OK

OK

OK

Local Modem Actions

Reset the modem.

Enter voice mode.

Set SPCAL (U199 [2]) to enable calibration.

Enable the SSI interface to the Si3000.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Setup off-hook voice mode. See Table 129 on page 198

for details. This command will switch the modem to offhook state. The default value is +VSP=0 for disabled speakerphone.

[Dial Number]

Rev. 1.41

227

A N 9 3

7.7.2.2. Receive Gain Calibration—Speakerphone Disabled

Figure 36 illustrates the reference setup where the commercial speakerphone is active with speaker set to

maximum volume. Using the reference commercial speakerphone, call the remote telephone and establish a voice call. Place a sound source such as a PC speaker at a distance of one foot from the remote telephone microphone.

Play out white noise as the far-end speech through the sound source, and adjust the white noise level so that the level at the speakerphone’s Tip/Ring is -15 dBm. Next, measure the speaker loudness by using a sound meter

(preferred) or a PC microphone to record the sound level at a distance of one foot from the speakerphone’s speaker. Record the white noise level and speaker level loudness, and then disconnect the call.

Figure 36. Receive Gain Reference Measurements

Figure 37 illustrates the setup used to set the transmit gain. Here the modem has the AEC/AES disabled with

AT+VSP=0. Using the Si24xx-VMB, call the remote phone and establish a voice call. Use the command sequence

in Table 148. Send the same white noise as the far-end speech from the remote phone, and adjust the receive gain

UB5 so that the speaker loudness is the same as that of the reference speakerphone. Record the calibrated UB5 value.

228

Figure 37. Receive Gain Configuration

Rev. 1.41

AN93

7.7.2.3. Speakerphone Calibration—AEC Gain Calibration

Figure 38 illustrates the setup used to set AEC speaker reference gain (U19C) and the AEC microphone input

signal gain (U19D). Here the modem has the AEC/AES enabled (AT+VSP=1) with the calibrated UB1 and UB5 values, which where obtained from the two previous sections. Using the Si24xx-VMB, call the remote phone and

establish a voice call. Use the command sequence in Table 148.

The AECREF (U19E) contains the energy information of both the AEC speaker reference signal (SPKREF) and the microphone signal (MICREF). The SPKREF bits represent the AEC speaker reference energy, and MICREF bits represent the AEC microphone input energy. The energy value is computed from average(s[t]^2).

Reg.

Name

U19E AECREF

Bit

15

Bit

14

Bit

13

Bit

12

Bit

11

SPKREF

Bit

10

Bit

9

Bit

8

Bit

7

Bit

6

Bit

5

Bit

4

Bit

3

MICREF

Bit

2

Bit

1

Bit

0

Send the white noise from the remote phone so that the energy level at the meter (Tip and Ring) is -15dBm. Use the AT:R19E command to read the contents of the U19E register. Adjust the AEC gain (U19C) of the speaker reference signal until SPKREF reaches a value as close to 0x38 as possible. Adjust the AEC gain (U19D) of the microphone input signal until MICREF has a value as close as possible to 0x38.

U19C and U19D are calibrated when the AT:R19E reading is close to 0x3838, with a power-level difference of less

than 2dB. Record these values and use them in the initialization sequence defined in Table 133, “Initialization

Sequence,” on page 207.

Figure 38. AEC Gain Calibration

Rev. 1.41

229

A N 9 3

AT:U72,0108

AT:U72,0597

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT:UB1,xxxx

AT:UB5,xxxx

AT+VLS=13

AT+VSP=1

Table 148. AEC Gain Calibration—Dial Remote Telephone

Host to Modem

Commands / Data

ATZ

AT+FCLASS=8

AT:U199|4

AT*Y254:W59|1

Modem to Host Result

Codes/Data

OK

OK

Local Modem Actions

Reset the modem.

Enter voice mode.

OK

OK

OK

OK

Set SPCAL (U199 [2]) to enable calibration.

Enable the SSI interface to the Si3000.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

OK

OK

OK

OK

OK

OK

OK

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Use calibrated value from “Transmit Gain Calibration –

Speakerphone Disabled” section.

Use calibrated value from “Receive Gain Calibration –

Speakerphone Disabled” section.

Setup off-hook voice mode. See Table 136 on page 211

for details. This command will switch the modem to offhook state.

Enable speakerphone voice path. See Table 149 for

details.

[Dial Number]

230 Rev. 1.41

AN93

7.7.3. Speakerphone Configuration

This section covers the speakerphone call and answer cases, and the switching between the handset mode and

speakerphone mode. Table 149 contains the initial configuration that is used by all dialing use cases. The

sequence is also sent for the answer case. The user will have been notified of the incoming call through a local

+VTS ring tone and a SP Button On Event would prompt the Speakerphone Configuration sequence to answer the call. The UB1, UB5, UB6, and Si3000 register configurations vary with the customer’s production hardware. The

UB5 register serves as the general volume control in this mode.

Table 149. Speakerphone Configuration

Host to Modem Commands / Data Modem to Host

Result Codes/Data

Local Modem Actions

AT:U199|A

AT+VLS=0

AT+VLS=13

AT:U0B1,0500

AT:U0B5,0200

AT:U72,0108

AT:U72,0597

AT:U72,065E

AT:U72,075E

AT:U72,0900

AT+VSP=1

AT:U199&FFF5

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

OK

Mute the microphone and speaker paths to the codec.

Disable voice mode. Used as a transition point between non-zero +VLS voice modes.

Setup off-hook voice mode. See Table 131 on page 202

for details. This command will

switch the modem to off-hook state.

Restore Si3000-to-DAA transmit gain path.

Restore DAA-to-Si3000 receive gain path.

Configure Si3000 Register 1:

Disable speaker driver

Enable line output driver

Disable telephone instrument driver

Disable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Enable Line In

20 dB MIC input gain

Mute MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Enable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Enable speakerphone voice path.

See Figure 30 on page 135 for details.

Enable the microphone and speaker paths

Rev. 1.41

231

A N 9 3

7.7.4. Simplex Speakerphone Configuration

Simplex Speakerphone (SSP) is a special case of speakerphone operation. Like speakerphone, it allows two-way hands-free voice communication over a telephone line, but SSP allows communication in only one direction at a time. The direction of voice transmission can be controlled automatically, based on the presence of local and remote speech at the modem, or manually using a push-to-talk function. Simplex and full-duplex speakerphone modes are mutually exclusive. Commonality in control registers between SSP and full duplex facilitates programming across platforms.

SSP supports the Ademco Contact ID and SIA security protocols. It also supports DTMF generation and detection.

DTMF detection is enabled only during +VTR.

SSP supports Type II Caller ID. A DLE<R> event report is sent to the DTE when a SAS Call Waiting tone is detected. If a CAS tone is detected, the modem mutes the Si3000 speaker while Caller ID Type II data are being captured. It then reports Caller ID info to the DTE as a DLE-shielded complex event. This happens automatically, without the need for an AT+VCIDR? command. Caller ID is disabled during +VRX.

Referring to Figure 31 on page 200, the microphone sample and speaker sample are taken before U19D and

U19C, respectively.

To mute the local talker, set SMUTE = 1 (U199 [1] = 1). To mute the remote talker, set MMUTE = 1 (U199 [3] = 1).

Table 150. Simplex Speakerphone U Registers

Register

U1D5

Name Description Default

Value

0x0000

U1D6

U1D7

U1D8

SSPHLDTIM Extra time SSP stays in RX or TX mode to prevent frequent switching

SSPLTHRSH Local talker threshold

SSPRTHRSH Remote talker threshold

SSPBKTHRU Break-through threshold for speaker in auto-switch mode.

Disable feature by setting this to 7FFFh.

0x0000

0x0000

0x7FFF

Configuring the modem to automatically switch between local talker and remote talker is as follows:

 For the SSP auto-switch function, set SSP_FLAG to 1 (U199 [6] = 1) and SSP_PTT to 0 (U199 [7] = 0).

 Set the speaker and microphone level thresholds, which determine whether remote speech or local speech is active. The thresholds are defined in U1D6 and U1D7. Typical values for the speaker and microphone thresholds are 0x400 and 0x400, respectively. These thresholds are not affected by the speaker and microphone control gains UB5 and UB1.

 Set the holding time, which is the time that the SSP holds the current mode after the signal level falls below the threshold. Holding time prevents frequent mode switching between RX and TX. A typical value for holding time is 0xC8 (200 ms).

For manual operation (push-to-talk):

 Set SSP_FLAG to 1 (U199 [6] = 1) and SSP_PTT to 1 (U199 [7] = 1).

 Use the SSP_LOCTALK bit (U199 [8]) to set the speech direction: U199 [8] = 1 for local talker; U199 [8] = 0 for remote talker.

U1D8 is the break-through threshold for the speaker signal in SSP auto-switch mode. If the speaker signal is above the threshold U1D8 and holds at least for the holding time, the direction is switched to remote talker, no matter how strong the signal in the microphone is. To disable break-through, set the threshold to 7FFFh (AT:U1D8,7FFF).

 U1D8 greater than U1D6: when the speaker signal is greater than or equal to U1D8, the microphone is muted and speaker unmuted immediately, regardless of the microphone holding time. When the speaker signal is greater than U1D6 but less than U1D8, the speaker signal goes through after the expiration of the microphone holding time.

232 Rev. 1.41

AN93

U1D8 less than U1D6: the break-through threshold U1D8 takes over and the speaker level threshold U1D6 becomes inactive.

The default value for U1D8 is 7FFFh. A typical value for U1D8 is 0x1000. Adjust U1D8 according to the needs of the application.

Table 151. Simplex Speakerphone Configuration (Auto Switch)

Host to Modem Command

AT:U1CD,40,10

AT:U1D5,C8,400,400,7FFF

AT:U199|40

Modem to Host

Result Code

OK

OK

OK

Local Modem Actions

Set LEC Filter Length

Set LEC Delay

Set Holding Time (ms)

Set Speaker Threshold

Set Microphone Threshold

Disable break-through

Enable SSP, configure for automatic switch mode

7.7.5. Call—Automatic Tone Dial

Table 152 lists the commands that occur after the configuration defined in Table 149.

Table 152. Speakerphone Automatic Tone Dial

Host to Modem

Commands / Data

Modem to Host Result

Codes/Data

Local Modem Actions

ATDT102 OK

Perform automatic tone dial of 102. Modem will return

OK. The user will not receive <DLE> events for dial tone, ring-back, busy, and quiet since the detectors are

disabled. See Table 131 for details on active detectors.

7.7.6. Call—Manual Off-Hook Tone Dial

Table 153 lists the commands that occur after the configuration defined in Table 149.

Table 153. Speakerphone Manual Off-Hook Dial

Host to Modem Commands

/ Data

Modem to Host Result

Codes/Data

Local Modem Actions

AT+VTS=[697,1209,20]

AT+VTS=[941,1336,20]

AT+VTS=[697,1336,20]

OK

OK

OK

The user is free to dial manually using the +VTS commands to create the DTMF digits.

Generate DTMF 1 digit for 200 ms.

Generate DTMF 0 digit for 200 ms.

Generate DTMF 2 digit for 200 ms.

The user will not receive <DLE> events for dial tone, ring-back, busy, and quiet since the detectors are dis-

abled. See Table 131 on page 202 for details on active

detectors.

Rev. 1.41

233

A N 9 3

7.7.7. Call—Automatic Pulse Dial

Table 154 lists the commands that occur after the configuration defined in Table 149.

Table 154. Speakerphone Automatic Pulse Dial

Host to Modem

Commands / Data

Modem to Host Result

Codes/Data

Local Modem Actions

ATDP102 OK

Perform automatic pulse dial of 102. Modem will return

OK. The user will not receive <DLE> events for dial tone, ring-back, busy, and quiet since the detectors are

disabled. See Table 136 on page 211 for details on

active detectors.

7.7.8. Answer

A ring event will prompt the user to press the speakerphone button. This will generate a SP Button On Event and

the Speakerphone Configuration procedure defined in Table 149 on page 231 should be used to answer the call.

For ring detection and local ring tone/melody generation, see "7.6.2. TAM Hands-Free—Idle".

7.7.9. Handset Transition

For a SP Button Off Event (Handset Off-Hook), the voice driver should use the command sequence in Table 155 to

return to the Handset mode. Note the voice driver is responsible for tracking the handset hook switch state.

Table 155. Speakerphone to Handset Transition

Host to Modem Commands / Data

Modem to Host

Result Codes/

Data

Local Modem Actions

AT:U199|A

AT:U72,0110

AT:U72,05B3

AT:U72,065C

AT:U72,075E

OK

OK

OK

OK

OK

Mute the microphone and speaker paths to the codec.

Configure Si3000 Register 1:

Enable speaker driver

Disable line output driver

Disable telephone instrument driver

Enable MBIAS output

Configure Si3000 Register 5:

10 dB Line In gain

Mute Line In

20 dB MIC input gain

Enable MIC input

Mute telephone instrument input

Enable IIR filter

Configure Si3000 Register 6:

0 dB RX PGA gain

Disable Line Out

Disable telephone instrument output

Configure Si3000 Register 7:

0 dB RX PGA gain

Enable SPKRL

Mute SPKRR

234 Rev. 1.41

AN93

Table 155. Speakerphone to Handset Transition (Continued)

AT:U72,0900 OK

AT+VSP=0

AT:U199&FFF5

OK

OK

Configure Si3000 Register 9:

0 dB Line Out attenuation

0 dB Speaker output attenuation

Select handset voice path. See Figure 31 on page 200 for details.

Enable the microphone and speaker paths to the codec.

7.7.10. Termination

A SP Button Off Event (Handset On-Hook) will cause the system to return to the TAM Hands-Free mode. Use the

same configuration listed in Table 138 on page 212. Note the voice driver is responsible for tracking the handset

hook-switch state.

7.8. Glossary

AEC

AES

Convergence Rate

DLE

DTE

DTD

Double-Talk

ETX

ICM

LEC

PSTN

Single-Talk

TAM

Acoustical Echo Canceller of speakerphone

Acoustical Echo Suppressor of speakerphone

Rate at which AEC or LEC converges

Data Link Escape (0x10)

Data Terminal Equipment

Double talk detector of AEC or LEC

Both the near-end and far-end users talk

End of Text (0x03)

Incoming Message

Line Echo Canceller of speakerphone

Public Switch Telephone Network

Either the near-end or far-end user talks

Telephone Answering Machine

7.9. References

ITU-T G.711

ITU-T G.726

ITU-T V.253

Pulse code modulation (PCM) of voice frequencies – 11/1998

40, 32, 24, 16 kbit/s adaptive differential pulse code modulation (ADPCM) – 12/1990

Control of voice-related functions in a DCE by an asynchronous DTE - 02/1998.

Rev. 1.41

235

A N 9 3

8. Security Protocols

The Si24xx ISOmodem can handle a variety of security protocols. Two are specifically described here. The

"Ademco® Contact ID Protocol" and the SIA protocol.

8.1. Implementing the SIA Protocol

The SIA protocol defines communication between an alarm panel and a central station. In a traditional security system, the alarm panel always calls the central station and sends data; the central station only acknowledges its readiness to receive data and that data has been received. For this reason, the communication part of the alarm panel has been called the transmitter; the communication part of the central station has been called the receiver.

With the SIA protocol, the central station can also send data to the alarm panel; since data is sent using FSK, the communication can be half-duplex or full-duplex. Nevertheless, the traditional nomenclature of transmitter for the alarm panel and receiver for the central station is still used for the SIA protocol.

The communication session consists of four elements:

The Handshake Tone (a single tone)

The Speed Synchronization Signal (two tones)

Data Blocks and Control Signals (transmitted using Bell 103 FSK encoded data)

Acknowledgement Blocks (can be either single tones or Bell 103 FSK encoded data, according to the capabilities of the transmitter)

8.1.1. Modem-Specific Implementation Details

8.1.1.1. Listen-In and V-channel Periods (Voice Pass-Through)

This can be accomplished with the following procedure using standard voice modem commands:

1. Prior to making the call, the host issues AT+VNH=2 to modem. This will keep the modem off-hook when the host clears down the FSK data connection using ATH.

2. After the modem has negotiated a Listen-in period using the SIA protocol in Bell 103, the host clears down the

FSK data link with ATH.

3. The host issues AT+VNH=2 to the modem again to maintain off-hook status for next cleardown.

4. The host then issues AT+FCLASS=8 followed by the usual Si3000 voice pass-through command sequence. (To minimize the transition time, the host should set up the Si3000, TX/RX voice filters and all gain stages before the call.)

5. AT+VLS=5 starts the Si3000 pass through, which supports Listen-in as well as V-Channel (bi-directional voice) operation. Use +VLS=13, +VSP=1 etc. if speakerphone is desired.

6. When voice period is over, the host puts the modem back in data mode using AT+FCLASS=0. This will terminate voice operation as well as going to +FCLASS=0. ATH and +VLS=0 must not be used in +FCLASS=8 to terminate the voice session because they override +VNH=2 (per V.253 standard).

7. The host again issues AT+VNH=2 to the modem to keep it off-hook for the next cleardown.

8. AT+F0 puts the transmitter in Bell 103, SIA mode to resume SIA protocol communication.

8.1.1.2. Inserting a V.32bis period (e.g., SIA Level-3 Video Block Support)

This can be accomplished with the following procedure using standard voice modem commands:

1. After clearing down the SIA FSK link, the host issues AT+VNH=2 to the modem to maintain off-hook status for the next cleardown.

2. The host sets the modem to V.32bis; i.e., AT&H4, AT\N3 (if error correction is desired)

3. The host selects V.32bis originate or answer mode: AT%O2 if the transmitter should assume the handshake mode of an originating V.32bis modem; AT%O1 if it should assume the handshake mode of an answering modem.

236 Rev. 1.41

AN93

4. Issuing ATO to modem will start the V.32bis handshake. The host then waits for the CONNECT message before sending data. (For an originating modem, the ATO command must be sent as soon as possible so the modem will be ready when the remote answering modem starts. For an answering modem, the ATO should be delayed a little to give the remote originating modem a chance to get ready first.)

5. The host disconnects the V.32bis session (using either +++ followed by ATH, or with DTR, if it has previously been enabled with AT&D2).

6. The host issues AT+VNH=2 to the modem again to maintain off-hook status for next cleardown.

7. AT\N0 removes error-correction, if it was used during the V.32bis period.

8. SIA protocol communication resumes by starting up the transmitter in Bell 103, SIA mode with AT+F0.

8.1.1.3. Considerations when Disconnecting the Session

Because AT+VNH=2 keeps the modem off-hook during a cleardown, the first ATH or DTR desertion will not put modem back on-hook but only force AT+VNH=0 (per V.253). The host must issue a second ATH to put the modem back in on-hook idle state. Alternatively the host could issue a AT+VNH=0, then ATH (or AT+VNH=0;H)

Table 156 lists the AT Commands provided to support SIA Level-3 Protocol communication.

Table 156. AT Commands Provided to Support SIA Level-3 Protocol Communication

AT Command 

AT+F0

Modem Function Remarks

Enable B103 Transmitter for Data Block transmission.

Modem turns on FSK transmitter and starts marking for the minimum duration required by standard.

Sends CONNECT message to DTE when that is accomplished.

Modem will then interpret the first character from

DTE as Block Header and use the byte count to allow transmission of the specified number of characters to the remote modem and then send OK message to DTE to indicate ready for next AT command.

Note1: FSK transmitter remains on. DTE is expected to issue either a +F2 (detect ACK/NACK) or another +F0 (to send another data block) command to the modem.

Note2: The “+++” escape sequence can be used to abort the data block transmission and return the modem to AT command mode.

Note3: The +F0 command can be used to resume

SIA protocol communication after a voice listen-in or

V.32bis interruption.

Rev. 1.41

237

A N 9 3

Table 156. AT Commands Provided to Support SIA Level-3 Protocol Communication (Continued)

AT Command 

AT+F1

Modem Function

Enable B103 Receiver for Data Block reception.

Remarks

Modem enables FSK receiver, waits for >12T marks to be detected, then sends CONNECT message to

DTE to indicate a received Data Block follows.

AT+F2

AT+F3

AT+F4

AT+F5

AT+F6

Modem will stay in this mode indefinitely until an AT command is issued by DTE. It is usually a

+F3(ACK), +F4(NACK) or +F5(ACK followed by

Data Block transmission) command.

Note1: Modem will wait for up to 1 second to detect

>12T marks before unclamping RXD. After 1 second RXD will be unclamped regardless.

Enable tonal ACK/NACK detection.

Note 2: The +F1 command can be used to resume

SIA protocol communication after a voice listen-in or

V.32bis interruption.

Detect and report ACK or NACK to DTE.

‘OK’ for ACK and ‘ERROR’ for NACK.

Transmit Tonal ACK

A NACK will be reported if no valid signal is detected within 2.5 seconds.

Transmit Space for 600 ms. Send ‘OK’ prompt to

DTE when done.

Transmit Tonal NACK

Transmit Tonal ACK with reverse channel command.

Transmit Mark for 600 ms. Send ‘OK’ prompt to

DTE when done.

Transmit Space for 600 ms, followed by Mark for

180 ms. Then send CONNECT to DTE to indicate modem is ready to accept data.

Abort current Data Block Reception or

Transmission.

This command is useful for exception handling, such as timeout. If the FSK transmitter was on, +F6 shuts it off. FSK reception is aborted and modem returns to the AT command mode.

238 Rev. 1.41

AN93

Table 157 lists the definitions of result codes typically expected in an SIA session.

Table 157. Definitions of Result Codes Typically Expected in an SIA Session

Result Code

OK

CONNECT

Meaning

Ready for next command

(or ACK)

Physical handshake is completed.

Remarks

When it comes as a response to the +F2 command,

“OK” means ACK

In SIA FSK mode, CONNECT means that the modem is in the data passing state ready to receive or transmit data.

Note: there is an extra space character between the letter T and the carriage return delimiter.

RING

NO CARRIER

ERROR

BUSY

Incoming ring

Invalid AT command

(or NACK)

In V.32bis mode, CONNECT is followed by the DCE connection speed: e.g., CONNECT 14400

Modem should answer the incoming call; the host can command this with ATA.

Connection is terminated

As a response to the +F2 command, “ERROR” means NACK; otherwise, it means invalid command.

Dialed number is Busy.

Rev. 1.41

239

A N 9 3

8.2. Implementing the Ademco

®

Contact ID Protocol

Contact ID is a communications protocol for security applications. It is a de facto standard which was developed and is owned by the Ademco Group. The following is a brief overview of the Contact ID protocol. The complete standard is available at the following web site: http://webstore.ansi.org/RecordDetail.aspx?sku=SIA+DC-05-1999.09

Communication is between an alarm panel and a central station. The part of the alarm panel that handles communication has the following functions:

Call the central station

Wait for the central station to indicate that it is ready for data

Send data

Wait for the central station to indicate that data was received

The central station also has a block that handles communication. Its functions are:

Answer calls

Acknowledge that it is ready to receive data

Receive data

Acknowledge that data was received

While performing their security functions, the communication part of the alarm panel always sends data, while the communication part of the central station always receives data. They are called the transmitter and receiver, respectively. (Data could flow the other way, for instance to download new firmware to the alarm panel, but this isn't covered by the Contact ID Protocol.)

A transaction begins with the transmitter calling the receiver. The receiver goes off-hook and acknowledges that it is ready to receive data by producing the handshake tone sequence:

1400 Hz tone for 100 ms

Pause for 100 ms

 2300 Hz tone for 100 ms

The frequency tolerance on the handshake tones is ±3%. The tolerance on tone and pause times is ±5%.

Transmitters have a frequency tolerance of ±5% to account for older receivers.

After the communication channel has been established, the transmitter sends data to the receiver in Message

Blocks. Data is transmitted as DTMF codes. The frequency tolerance of the DTMF tones is ±1.5%. Twist is not specified by the Contact ID protocol standard.

After sending the message, the transmitter waits for the receiver to send an acknowledgement (Kissoff) tone. The

Kissoff tone is a 1400 Hz tone that lasts for at least 750 ms and at most 1 second. The frequency tolerance of the

Kissoff tone is ±3%; transmitters have a frequency tolerance of ±5% for back compatibility with old receivers. The receiver must detect at least 400 ms of the Kissoff tone for it to be considered valid.

The transmitter waits for the Kissoff tone to end, then waits an additional 250 to 300 ms before sending another

Message Block. If no Kissoff tone is received after 1.25 s, the transmitter sends the message again. Up to four retries are attempted per Message Block. After the last message block has been acknowledged, the transmitter hangs up.

240 Rev. 1.41

AN93

9

*

#

A

B

6

7

4

5

8

0

1

2

3

C

D

8.2.1. Modem Specific Implementation Details

The DTMF transmitters and receivers are used to send and receive data. Voice mode operation (documented in "7.

Handset, TAM, and Speakerphone Operation" on page 185) is used to transmit and receive the tones.

A summary of the necessary tone transmission AT commands is shown in Table 158.

The procedure is as follows:

Modem Initialization: (host sends to modem ):

AT+FCLASS=8

AT+VLS=15:

(enters voice mode)

(goes off hook and starts tone detection)

Send and receive tones example:

AT+VTS=[941,1336,10]

0x10, 0x2F, 0x31, 0x32, 0x7E

Host commands modem to send DTMF digit 0.

Modem responds with 5 characters as it receives two DTMF tones:

1 and 2. There are 2 preamble and 1 postamble characters in this example.

Table 158. Ademco

®

Contact ID Protocol Tone Transmission AT Commands

DTMF Digit Low Tone (Hz) High Tone (Hz) AT Command

1477

1209

1477

1633

1633

1209

1336

1477

1209

1336

1336

1209

1336

1477

1633

1633

----

852

941

941

697

770

770

770

770

852

852

941

697

697

697

852

941

1400

9

B

C

D

E

6

7

4

5

8

Contact ID

Digit

Contact ID

Digit Value

0

1

2

3

10

1

2

3

9

11

12

13

14

6

7

4

5

8

F not used

15

N/A

KISSOFF

AT+VTS=[941.1336. 10]

AT+VTS=[697.1209. 10]

AT+VTS=[697.1336. 10]

AT+VTS=[697.1447. 10]

AT+VTS=[770.1209. 10]

AT+VTS=[770.1336. 10]

AT+VTS=[770.1477. 10]

AT+VTS=[852.1209. 10]

AT+VTS=[852.1336. 10]

AT+VTS=[852.1477. 10]

AT+VTS=[941.1209. 10]

AT+VTS=[941.1477. 10]

AT+VTS=[697.1633. 10]

AT+VTS=[770.1633. 10]

AT+VTS=[852.1633. 10]

N/A

AT+VTS=[1400,0,85]

Rev. 1.41

241

A N 9 3

8.2.1.1. Handshake Tone Detection

Two tone detectors are reconfigured for detection of the 1400Hz and 2300Hz tones. When a valid tone burst is detected the modem reports it to the host DTE in the V.253 event format as follows.

Event

1400 Hz tone burst detected

Modem-to-DTE indication

0x10, 0x63

Remarks

Character pair <DLE><c> is sent to DTE at the end of the valid tone burst.

2300 Hz tone burst detected 0x10, 0x65 Character pair <DLE><e> is sent to DTE at the end of the valid tone burst.

8.2.1.2. Session Example

Step

1

Table 159. Ademco

®

Mode of Operation

DTE-to-Modem Command

ATE0:UAD|40

Modem-to-DTE

Indication

OK

Remarks

Set UAD.6 to enable Ademco mode tone detections.

2

5

6

3

4

AT:UAD&FF7F

AT:R48

AT+FCLASS=8

AT:U181,78,0,0,1C

ATDnnnnnnn

AT+VTD=5;:U48,32

OK

0064

OK

OK

OK

OK

OK

Clear UAD.7 to disable SIA mode.

DTE reads and records what is the normal “tone off” duration for DTMF dialing. This parameter is country dependent. This parameter will be modified for Data Tones transmission later.

Put modem into V.253 voice mode.

Set up 1400 Hz detector to detect 100 msec Handshake tone burst.

Call RECEIVER station

Change DTMF on off time to prepare for Data

Tones transmission.

7

8

Wait for RECEIVER to answer

9

<DLE><c> 1400 Hz tone burst detected i.e. 0x10, 0x63

<DLE><e>

Note: First part of Handshake Tones detected.

2300 Hz tone burst detected i.e. 0x10, 0x65 Note: Second part of Handshake Tones detected.

Since there is a 100 msec silence between the

1400 Hz and 2300 Hz tones, the <DLE><e> message should come nominally 200 msec after the previous <DLE><c> message.

It is the responsibility of the host DTE driver to measure and validate this time period.

242 Rev. 1.41

AN93

10

Table 159. Ademco

®

Mode of Operation (Continued)

AT:U181,334,0,0,12C OK

11 Delay 250 msec before transmitting Data Tones message.

12 AT+VTS=9,9,9,9,1,8,1,*,#,A,0,0,

0,0,0,3

OK

Change 1400 Hz detector to detect 800 ±300 msec tone burst, i.e. Kissoff tone.

Host DTE should adjust this delay so that the following +VTS DTMF transmission will start between

250 to 300 msec after the reception of <DLE><e> above.

First Data Block is transmitted.

Note: Data octets are placed after the “=” and separated by commas.

Note: Host DTE driver must perform these substitutions,

Octet B as *

Octet C as #

Octet D as A

Octet E as B

Octet F as C

Note: OK is sent at end of transmission.

13

14

Wait for Kissoff tone

15

16

AT*Y254:Q83FB 01AF

OK

<DLE><c>

1.25 seconds has elapsed. But modem still has not reported <DLE><c> to DTE

Check to see if start of a Kissoff Tone has been detected?

If 83FB returns a non-zero value (e.g. 01AF as illustrated here) it means the start of Kissoff tone is detected. Modem will send <DLE><c> to DTE after it has verified that the Kissoff Tone burst duration is valid.

Acknowledgement from RECEIVER detected.

Note: <DLE><c> is sent at end of tone burst.

17 Delay 250 msec before sending next Data Tone Message.

18

19

Repeat from STEP (12) for sending more Data Codes

ATH

AT:U48,64

OK

OK

Hang up at end of session.

Restore DTMF parameters to comply with normal dialing requirements.

Repeat from STEP (1) for next call

Rev. 1.41

243

A N 9 3

9. Chinese ePOS SMS

9.1. Introduction

An ePOS transaction normally begins with the ePOS terminal calling the server and transmitting data first. In this instance the terminal initiates the call, so it is known as the Originate modem, while the server is the Answer modem. After the modems connect, go through handshake and complete the first data transmission, the two modems alternate being the transmitter and receiver until the completion of the call.

The Si24xx ISOmodems support SMS (Short Message Service) in an ePOS (electronic point of sale) connection.

An SMS message is delivered in frames, using the format shown in Figure 39.

Data Frame

Channel Seizure

Protocol 1: 0 bits

Protocol 2: 300 bits

Mark Signal

Protocol 1: 80 bits +/-25

Protocol 2: 80 bits +/- 25

Mark

Signal

Type Length Payload Checksum

Figure 39. SMS Message Format

As shown in the figure, an SMS frame follows one of two protocols, Protocol 1 or Protocol 2. Protocol 1 frames begin with the Mark signal, while Protocol 2 frames start with the Channel Seizure (CS) signal. Otherwise the two protocols are identical. The Originate modem is configured to transmit in one of the two protocols at the beginning of a call. The Answer modem recognizes which protocol is being sent and processes the incoming message accordingly.

The modem strips off the Channel Seizure and Marks at the beginning and end of the data and provides the Data

Frame to the host processor.

It does not provide frame content verification of any kind.

244 Rev. 1.41

AN93

9.2. SMS AT Command Set

Table 160 shows the AT commands that the host (DTE) uses to control the transmission or reception of SMS

messages.

Table 160. AT Commands for SMS

AT Command

&D1

&D2

+FCLASS=256

+VNH=1

DTXXXX;

DT;

+FRM=200

+FTM=201

+FTM=202

ISOmodem Response

OK

OK

OK

OK

OK

OK

CONNECT 1 or

CONNECT 2

CONNECT

CONNECT

Description

ESC (pin 22) escapes to command mode from data mode if also enabled by HES (Enable Hardware

Escape Pin): U70, bit 15.

ESC (pin 22) assertion during a modem connection causes the modem to go on-hook and return to command mode. The escape pin must be enabled by setting bit HES: U70, bit 15.

Enables SMS mode

Transmit modem does not go on-hook when “NO CAR-

RIER” is received due to ESC or character abort.

Enables an opportunity to retransmit data in case receiver does not respond.

Originate modem dials XXXX, then goes back into command mode.

Answer modem picks up the line and goes back into command mode.

Receive modem goes into data mode and waits for

FSK data from Transmit modem; response is determined by whether a Protocol 1 or 2 message was received.

Transmit modem goes into data mode and waits for data from the DTE. Sends marks when first data byte is received, followed by data.

Transmit modem goes into data mode and waits for data from the DTE. When first data byte is received, modem sends Channel Seizure and marks followed by data.

Rev. 1.41

245

A N 9 3

The following is a script example of China SMS without CAS tone from the server.

In the script, “C” stands for comment, “S” stands for send, and “E” stands for expect. the number at the end of each line is time in milliseconds.

C"Si2493 SMS POS No CAS test"0

C"1) Load the patch. 2) run the script"0

S"ATZ\r"0

E"\r\nOK\r\n"0

S"AT&T6\r"0

E"\r\nOK\r\n"0

S"AT+FCLASS=256\r"110

E"\r\nOK\r\n"0

S"AT:UCA,0,90,70\r"100

E"\r\nOK\r\n"0

S"AT&D3\r"0

E"\r\nOK\r\n"0

C"AT&D3 works with UAA[2]=0"0

S"AT:UAA,0\r"0

E"\r\nOK\r\n"0

S"AT:U70|8000\r"100

E"\r\nOK\r\n"0

C"CAS tone energy threshold"0

C"AT:UD4,100\r"100

C"UD4=7FFFh: CAS detection is disabled"0

S"AT:UD4,7FFF\r"0

E"\r\nOK\r\n"0

S"AT:U7A|4000\r"100

E"\r\nOK\r\n"0

S"AT:UD7,3C\r"100

E"\r\nOK\r\n"0

S"AT+ITF=383,128,0\r"0

E"\r\nOK\r\n"0

S"AT:U52,0\r"100

E"\r\nOK\r\n"0

S"AT+VNH=1\r"100

E"\r\nOK\r\n"0

S"ATD11;\r"0

E"\r\nOK\r\n"0

C"+FRM=200 timeout(20s)"0

S"AT:UD2,7D0\r"0

E"\r\nOK\r\n"0

246 Rev. 1.41

C"Disabled CAS tone detection"0

S"ATE0:UCD&FFFE\r"0

E"\r\nOK\r\n"0

L""5

S"AT+FRM=200\r"0

E"\r\nCONNECT 2\r\n"0

E"1\r\n"0

E"\r\nOK\r\n"0

C"TX delay=100ms"0

S"AT:UD1,A\r"0

E"\r\nOK\r\n"0

S"AT+FTM=202\r"0

E"\r\nCONNECT \r\n"0

S"\x00\x00\xc7"0

S"\xc8\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10"0

S"\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f "0

S"!"#$%&'()*+,-./0"0

S"123456789:;<=>[email protected]"0

S"ABCDEFGHIJKLMNOP"0

S"QRSTUVWXYZ[\\]^_`"0

S"abcdefghijklmnop"0

S"qrstuvwxyz{|}~\x7f\x80"0

S"\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90"0

S"\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0"0

S"\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0"0

S"\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0"0

S"\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xb6\xbf\x10\x03"0

E"\r\nOK\r\n"0

C"+FRM=200 timeout(2.5s)"0

S"ATE1:UD2,FA\r"0

E"\r\nOK\r\n"0

X""0

S""200

S"ATH\r"0

E"\r\nOK\r\n"0

AN93

Rev. 1.41

247

A N 9 3

9.2.1. SMS User Registers

User registers that set up SMS operations are shown in Table 161. The default settings are shown in bold.

Table 161. User Registers for SMS Operations

Register

U70

Bits

15

Name

HES

Description Default

(Hex)

0

UAA

UCA

UCB

UCC

UCD

UD1

UD2

UD4

UD7

2

0

15:0

7:0

0

11:0

11:0

14:0

15:0

RUDE

SMSMOD

TXCS

TXMK

CASRPT

TXDEL

RXTO

CTDT

Enables ESC (pin 22). After sending transmit data to the modem, the host should wait a minimum of 150 ms before activating the ESC pin.

0 = Disabled

1 = Enabled

0 = Disables rude disconnect

1 = Enables rude disconnect

Modulation for SMS data

0: Bell202

1: V.23

Number of channel seizure bits

0 = no Channel Seizure

1 to 65535 = number of continuous alternating spaces and marks in Channel Seizure.

Number of mark bits in message header

Respond to CAS, don’t report to the host (Auto) or do report to the host (Manual)

0 = Auto Mode

1 = Manual Mode

Time the Originate modem waits before transmitting a frame, in 10 ms units. Timed from the termination of the previous signal.

Time that the Answer modem waits for the received signal after it receives the +FRM command; in 10 ms units

SMS CAS Tone Detector Threshold

SMS Mark Length Threshold

0

0

2580

2580

0

0000

0000

0000

0578

248 Rev. 1.41

AN93

9.2.2. Procedure

To enable the SMS features on the Si24xx, the host sends “AT+FCLASS=256” to the modem prior to an SMS call.

To enable the hardware escape pin functions, the host would set HES with the command “AT:U70|8000”.

After setting the other U-registers according to the configurations of the Originate and Answer modems, the host can dial an SMS call using the command “ATDTxxxx;” (where xxxx is the number to be dialed) or answer an SMS call with “ATDT;”. The semi-colon at the end of the command places the modem into command mode after dialing.

The modem responds to the host with “OK”. The host then puts the modem into transmit or receive SMS data mode.

Many SMS POS protocols perform handshaking using CAS and CAS ACK. CAS is a two-tone signal (2130 Hz /

2750 Hz); CAS ACK is a DTMF ‘D’. The terminal modem connects to the server, which sends CAS tones until it times out or the terminal modem replies to the server with CAS ACK. The threshold for the modem’s CAS tone energy detector is set by CTDT, which has a default value of 500h. The CAS tone must have a minimum duration of 30 ms to guarantee detection.

CAS detection is enabled by setting the detector threshold UD4 to a value other than 7FFFh. When the CAS detector is enabled, FSK CS/MARK detection will run after CAS is detected. The modem will time out if CAS is not detected. (When implementing SMS POS protocols that don’t use CAS and CAS ACK, the CAS tone detector must be disabled with the command AT:UD4,7FFF.)

Table 162. UD4 SMS CAS Tone Detector Threshold Level

0142

0196

01FF

0283

032A

03FB

0503

064F

UD4 (Hex)

0051

0066

0080

00A2

00CB

0100

07F1

0A00

0C97

0FD9

CAS level (dBm)

–38

–37

–36

–35

–34

–33

–28

–27

–26

–25

–32

–31

–30

–29

–24

–23

–22

–21

Rev. 1.41

249

A N 9 3

Table 162. UD4 SMS CAS Tone Detector Threshold Level (Continued)

UD4 (Hex)

13F4

191E

1F9F

27D0

321E

3F19

4F6F

6400

7DE4

CAS level (dBm)

–20

–19

–18

–17

–16

–15

–14

–13

–12

If there is no response from the receive modem, the transmit modem will time out, go on hook and report NO

CARRIER to  the  host.  The transmitter  can't resend the data before  the time  out has  expired,  because this will cause a character abort. This scenario can be avoided by including the command AT+VNH = 1 or AT+VNH = 2 in the  initialization.  This  command  allows  the  transmitter  to  resend  the  data  without  causing  a  character  abort.

Once CAS is detected, the modem responds with CAS ACK. The duration of CAS ACK is 60 ms.

CASRPT selects Auto or Manual mode for transmitting CAS ACK.

Auto mode (CASRPT = 0): Auto mode reduces the delay between CAS and CAS ACK. After an AT+FRM=200 command, the modem detects the CAS tones and sends CAS ACK without reporting CAS detection to the host.

Manual mode (CASRPT = 1): Manual mode allows the host processor to have more control. A modem reports to its host with the string "CAS" when it detects CAS tones. The modem waits for the host to reply with the ASCII character 'D', then it responds to the other modem with CAS ACK. If the host sends any character other than 'D', the modem returns to the command mode immediately without sending CAS ACK and replies to the host with

<DLE><ETX>. This allows the host to send any DTMF digit.

The host can then send an AT+FTM command or an

AT+FRM command. If the host doesn't send any characters or commands, the modem will time out (as set by UD2) and go back on-hook without sending CAS ACK.

9.2.2.1. Example

The host could use this sequence to set up the modem for Protocol 1 SMS:

AT:UCA,1,0,4E

AT+FTM=201

<CR><LF>CONNECT <CR><LF>

This sets up the modem for V.23 modulation, Protocol 1, 78

Mark bits in the message header.

Transmit a Protocol 1 SMS frame

Modem response to the host

250 Rev. 1.41

AN93

To set up the modem for Protocol 2 SMS:

AT:UCA,0,12C,4E

AT+FTM=202

<CR><LF>CONNECT <CR><LF>

This sets up the modem for Bell 103 modulation, Protocol 2,

300 bit Channel Seizure, 78 Mark bits in the message header.

Transmit a Protocol 2 SMS frame

Modem response to the host

In either protocol, the host must wait for the “CONNECT” response before it sends data. Transmission of data before this message can result in loss of information.

After the host receives “CONNECT “, it sends the frame data followed by <DLE><ETX>. A frame includes type, length, payload and checksum. The frame data can contain anything, including <DLE><ETX>. No DLE shielding is needed. <DLE><ETX> with no data for about 8ms is treated as the end of frame.

After a frame has been sent, the modem response will be: <CR><LF>OK<CR><LF>

If the host sends AT+FRM=200 immediately after the modem’s OK response to AT+FTM=201, the command may be ignored. The host should delay at least 5 ms after <CR><LF>OK<CR><LF> and send an AT command, such as

AT+FRM=200.

On the answer modem side, the command AT+FRM=200 causes the receiver to look for at least 32 bits of CS and for at least 60 bits of marks. The answer modem detects the protocol of the transaction by whether CS comes before the marks.

AT+FRM=200

AT:UD2,<RxTimeout>

Receive an SMS frame

Set RxTimeout:

There can be several responses to AT+FRM=200, depending on the received data.

9.2.2.2. Response 1

If the frame had not been received within the time specified in RxTimeout, the modem response to the host would be:

<DLE><ETX><CR><LF>NO CARRIER<CR><LF>

9.2.2.3. Response 2

If the frame had been received with a mark segment at beginning of frame, the modem would respond to the host with:

CONNECT 1<CR><LF>

<Frame Data Received><DLE><ETX>

<CR><LF>OK <CR><LF>

No frame checking would be done by the modem; all of that would be left to the host. As shown above,

<DLE><ETX> marks the end of frame. After sending OK to the host, the modem goes back into command mode.

9.2.2.4. Response 3

If the frame had been received with channel seizure and mark segment detected at beginning of frame, the modem would send one of the responses below to the host:

CONNECT 2<CR><LF>1<CR><LF><CR><LF>

<Frame Data Received><DLE><ETX>

<CR><LF>OK <CR><LF>

The Host does all upper level frame validations, since the modem does not do any frame checking. As shown above, <DLE><ETX> signifies the end of frame. After the modem sends OK, it goes back to command mode.

Rev. 1.41

251

A N 9 3

9.3. Example Session

The example below shows a typical session. The user determines the values of the U-registers.

transmit "AT+FCLASS=256<CR>" ;Enable SMS POS mode waitfor "OK" transmit "AT+VNH=1<CR>" ;Disable automatic hangup for NO CARRIER waitfor "OK" transmit "AT:UCA,0,12C,4E<CR>" ;Set SMS POS parameters waitfor "OK" transmit "ATD<phone number here>;<CR>" ;dial out waitfor "OK`x0d`x0a"

The ’;’ at the end of the dial string returns the modem to command mode after dialing. The modem will issue an

OK after dialing.

transmit "AT:UD1,3C<CR>" ; Set TxDelay = 600ms waitfor "OK" transmit "AT:UD2,3E8<CR>" ; Wait 10 s for an answer.

waitfor "OK" transmit "AT+FRM=200<CR>" ; Go into data mode and wait for Originate modem

The length of the timeout is dependent on the host called. Once the connection is made, the answer modem’s host expects to receive a frame such as:

0x81 0x00 0x05 0x13 0xcd 0xaa 0xa4 0x00 0x4c

Followed by:

<DLE><ETX><CR><LF>OK<CR><LF>

Once a frame has been received, the receive modem becomes the transmit modem. The server returns a frame of data to the terminal. transmit "AT+FTM=202<CR>"; Use Protocol 2 waitfor "CONNECT `x0d`x0a"

252 Rev. 1.41

Transmit a frame such as:

0x82 0x00 0x05 0x6c 0xea 0x50 0x6b 0x00 0x68 transmit "`x10`x03" ; Send <DLE><ETX> at the end of frame waitfor "OK`x0d`x0a"

 

POS Server

TS1

TS3

CAS

CAS Ack

(Complete the CAS Handshake)

TS  2

TD 1

Send FSK Packet

TS5

TD 3

TS4

Send FSK Packet

TD 2

Send FSK Packet

AN93

Figure 40. Diagram of Handshake (Using CAS/CAS ACK) and Message Packet Exchange

Rev. 1.41

253

A N 9 3

For Figure 41, assume that the originating modem transmits first and that the two modems alternate transmitting

and receiving. For simplicity, this figure does not show the provisions for timeout cases.

 

 

 

H ES = 1

 

 

 

 

 

 

AT+FCLASS = 2 56

(V.2 3 h alf -du ple x )

ATD Txxxx ;

O

Orig ina te

?

A

ATDT ;

OK OK

AT+FTM = 20 1

CONN ECT

1

Pr otocol

?

2

AT+FTM =202

CONNEC T

AT +FRM =2 00

CONN ECT n n = 1 o r 2

254

N

Da ta recei ved from Host

?

Y

80 bi ts of ma rk

Ho st sen ds messa ge fol low ed by 15 0 ms o f si len ce , then ESC

N

Data re ceive d fro m Ho st

?

Y

30 0 bits chan nel se izure

( altern atin g 1 's &

0 's)

8 0 b its of mark

R ecei ve messag e , send to Ho st

OK

Se nd Ma rks

N

 

ESC to

Co mmand

Mod e

?

Y

Host send s messag e fo ll owe d by 15 0 ms of sil en ce , th en ESC

Sen d Marks

N ESC to

Co mma nd

Mo de

?

Y

Implicit +FRM

 

Figure 41. SMS Process in Host and Modem

Rev. 1.41

AN93

10. Testing and Diagnostics

10.1. Prototype Bring-Up (Si3018/10)

10.1.1. Introduction

This section provides tips for the debugging of initial prototypes. Although most ISOmodem prototype designs function as expected, there is the potential for layout errors, omitted or incorrect components used in the initial assembly run, and host software problems. If the prototype modem does not function correctly, the techniques outlined in this guide will help quickly isolate the problem and get the prototype functioning correctly. A functional

ISOModem evaluation board and data sheet and a computer with HyperTerminal are required for some of the troubleshooting steps. It is assumed that the designer has read the data sheet, implemented the reference design

using the recommended bill of materials, and carefully followed the layout guidelines presented in "4.4. Layout

Guidelines" on page 52. Troubleshooting begins with system-level checks and then proceeds all the way down to

the component level. In this chapter, all system-side pin numbers refer to the 24-pin TSSOP package and all lineside pin numbers refer to the 16-pin version.

10.1.2. Visual Inspection

Before troubleshooting, be certain that the circuit boards and components are clean. Carefully wash the boards to remove all solder flux and solder flakes. Inspect the modem circuitry to ensure all components are installed, and inspect all solder joints for incomplete connections, cold solder joints, and solder bridges. Check all polarized components, such as diodes and capacitors, for correct orientation. Thoroughly clean the circuit board after replacing a component or soldering any connection.

Reset the Modem

Make sure the modem is reset after the power and clocks are applied and stable.

10.1.3. Basic Troubleshooting Steps

Check the Power

With power off, use an ohmmeter to verify that the system ground is connected to ISOmodem pin 6. Turn on system power and measure the voltage between pin 5 and pin 6 and between pin 21 and pin 6 on the

ISOmodem. In both cases, the voltage should be 3.3 V. If this is not the case, check the power routing. If power is present, go to the next step.

Check the Phone Line

Check the phone line with a manual telephone to be sure that there is a dial tone and that dialing is possible.

The dc voltage across Tip and Ring should read approximately 40–52 V with the phone on-hook.

Reset the Modem

Do a manual reset on the modem. Hold ISOmodem pin 12 (RESET) low for at least 5 ms, return to V

DD

(3.3 V), and wait for at least 300 ms before executing the first AT command.

Check the DTE Setup (UART Mode)

Be sure the DTE (host) serial port is configured the same as the modem. The default condition is eight data bits, no parity-bit, one stop-bit, and a DTE rate of 19.2 kbps.

Check the DTE Connection (UART Mode)

Check the DTE interface connection. Be sure the RTS (ISOmodem pin 8) and CTS (ISOmodem pin 11) signals are low.

Check the Pulldown Configuration Resistors

Check the Modem Configuration

Read back the modem register settings and correct any inconsistencies. The ATS$ command lists the contents of all S registers, and the AT:R command lists the contents of all U registers.

If the problem was not located with these basic troubleshooting steps, it is time to narrow the problem down to the host system (hardware and software), the ISOmodem chip and associated components, or the Si3018/10 and associated components.

Rev. 1.41

255

A N 9 3

AT OK?

The modem responds with an OK to the command AT<CR>. This indicates that the host processor/software is communicating with the modem controller, and problems are in one of the following areas:

Inappropriate Commands

Verify that all AT commands used are supported by the ISOmodem and comply with the proper format. Be sure each command and argument is correct. Do not mix upper- and lower-case alpha characters in an AT command. An AT command string must contain 48 or fewer characters followed by a carriage return. Command strings greater than 48 characters are ignored.

Command Timing

The execution time for an AT command is approximately 200 ms. Execution is complete when OK is received.

Subsequent AT commands should wait for the OK message, which appears within 200 ms after the carriage return. The reset recovery time (the time between the rising edge of a hardware reset or the carriage return of an ATZ command and the time the next AT command can be executed) is approximately 300 ms. When a data connection is being established, do not try to escape to the command mode until after the protocol message.

Register Configurations

The ATS$ command lists the contents of all S registers, and the AT:R command lists the contents of all U registers.

Si3018/10 and/or Associated Components

If the modem goes off-hook and draws loop current as a result of giving the ATH1 command, go to "10.1.6.

Si3018/10 Troubleshooting".

If the modem does not go off-hook and draw loop current as a result of giving the ATH1 command and receiving an OK message, begin troubleshooting with the isolation capacitor at the ISOmodem. First, check all solder joints on the isolation capacitors, Si3018/10, and associated external components. If no problems are found,

proceed to "10.1.5. Isolation Capacitor Troubleshooting" to verify whether the problem is on the ISOmodem or

the Si3018/10 side of the isolation capacitor. If the problem is found to be on the ISOmodem side, check C50,

C51, C52, C53, the corresponding PCB traces, and the ISOmodem pins. Correct any problem found. If no problems are found with the external components, replace the ISOmodem. If the problem is found to be on the

Si3018/10 side of the isolation capacitor, go to "Si3018/10 Troubleshooting".

If the modem does not respond with an OK to the command AT<CR>, this indicates that the host processor/ software is not communicating with the modem controller, and the problem can be isolated as follows:

ISOmodem Clock is Oscillating

First, be sure the ISOmodem is properly reset and RESET, pin 12, is at 3.3 V. Next, check the DTE connection

with the host system. If this does not isolate the problem, go to "10.1.4. Host Interface Troubleshooting".

ISOmodem Clock is Not Oscillating

Check the voltage on the ISOmodem, pins 5 and 21, to be sure the chip is powered. Also, check that pins 6 and

20 are grounded. Next, check the solder joints and connections (PCB traces) on C40, C41, Y1, and the

ISOmodem Pin 1 and Pin 2. If these steps do not isolate the problem, replace the ISOmodem.

256 Rev. 1.41

AN93

10.1.4. Host Interface Troubleshooting

The methods described in this section are useful as a starting point for debugging a prototype system or as a continuation of the troubleshooting process described previously. The procedures presented in this section require a known good ISOModem evaluation board and data sheet. This section describes how to substitute the evaluation board for the entire modem circuitry in the prototype system. Substituting a known operational modem can help isolate problems quickly. The first step is to substitute the evaluation board for the complete modem solution in the prototype system. This immediately demonstrates whether any modem functionality problems are in the prototype modem circuitry or in the host processor, interface, or software.

Verify ISOModem Evaluation Board Functionality

Connect the evaluation board to a PC and a phone line or telephone line simulator. Using a program, such as

HyperTerminal, make a data connection between the evaluation board and a remote modem. Remove power and the RS232 cable from the evaluation board and proceed to the next step.

Connect Evaluation Board to Prototype System

Completely disconnect the embedded modem from the host interface in the prototype system. Connect the

ISOModem evaluation board to the host interface as described in the ISOModem evaluation board data sheet

section titled Direct Access Interface. This connection is illustrated in Figure 42. Be sure to connect the

evaluation board ground to the prototype system ground. Power up and manually reset the evaluation board, then power up the prototype system and send AT<CR>. If an OK response is received, make a connection to the remote modem as in the previous step. If no OK response is received, debug host interface and/or software.

If a connection is successful, go to the next step to isolate the problem in the prototype modem.

An alternative approach is to connect the prototype modem to the ISOModem EVB motherboard in place of the

daughter card and use a PC and HyperTerminal to test the prototype modem. See Figure 43 for details.

10.1.5. Isolation Capacitor Troubleshooting

Connect the evaluation board isolation capacitor to Prototype Modem Si3018/10. Remove C1 on the evaluation board and on the prototype system. Solder one end of the evaluation board, C1, to the ISOmodem-side pad leaving the other end of C1 unconnected. Next, solder a short jumper wire from the unconnected side of C1 on the

evaluation board to the Si3018/10-side C1 pad on the prototype system. This connection is illustrated in Figure 44.

Connect the phone line to the prototype system RJ-11 jack.

Power up and manually reset the evaluation board, then power up the prototype system. Attempt to make a connection using the host processor and software, the evaluation board ISOmodem, and the prototype system

Si3018/10 and associated external components. If this connection is successful, the problem lies with the PCB layout, the external components associated with the ISOmodem or the ISOmodem device itself.

If the connection attempt is not successful, the problem lies with the Si3018/10 and/or associated components.

Proceed to “Si3018/10 Troubleshooting”.

This diagnosis can be validated by connecting the Host ISOcap capacitors to the Si3018/10 on the evaluation

board as shown in Figure 45.

10.1.6. Si3018/10 Troubleshooting

Start by measuring the on-hook and off-hook voltages at the Si3018/10 pins with respect to IGND (pin 15).

Compare these voltages to those in Figure 46. This may indicate an area of circuitry to investigate further using the

Component Troubleshooting techniques in the following section. The voltages measured should be reasonably close to those in the figure.

If any of the on-hook or off-hook Si3018/10 pin voltages are significantly different than those in Figure 46 and

nothing seems wrong with the external circuitry after using the Component Troubleshooting techniques, replace the Si3018/10.

10.1.7. Component Troubleshooting

A digital multimeter is a valuable tool for verifying resistances across components, diode directions, transistor polarities and node voltages. During this phase of troubleshooting, it is very useful to have a known, good

ISOModem evaluation board to compare against measurements taken from the prototype system. The resistance

values and voltages listed in Tables 163, 164, and 165 will generally be enough to troubleshoot all but the most

unusual problems.

Rev. 1.41

257

A N 9 3

Start with power off and the phone line disconnected. Measure the resistance of all Si3018/10 pins with the

Ohmmeter’s black lead on pin 15 (IGND). Compare these measurements with the values in Table 163. Next,

measure the resistance across the components listed in Table 164 and compare the readings to the values listed in

the table. Finally, using the diode checker function on the multimeter, check the polarities of the transistors and

diodes as described in Table 165. The combination of these measurements should indicate the faulty component

or connection. If none of the measurements appears unusual and the prototype modem is not working, replace the

Si3018/10.

Prototype System

Host

Controller

Host

UART

Si24xx Si3018 Discretes

RS232

Transceiver

Si24xx Si3018

EVB

Connect prototype system ground to EVB ground

Disable RS232 transceiver outputs (check evaluation board data sheet)

Disconnect prototype modem interface

Connect the evaluation board to the target system

Figure 42. Test the Host Interface

Discretes

Prototype System

Host

Controller

Host

UART

Si24xx Si3018 Discretes

To

Phone

Line

To

Phone

Line

258

PC

RS232

Transceiver

Si24xx Si3018

EVB

Connect prototype system ground to EVB ground

Remove modem module from EVB

Disconnect host outputs from prototype modem

Connect EVB RS232 transceivers to prototype modem

Use PC with HyperTerminal to test prototype modem

Figure 43. Test the Prototype Modem

Discretes

Rev. 1.41

AN93

Prototype System

C1

Host

Controller

Host

UART

Si24xx

C2

Si3018 Discretes

To

Phone

Line

C1

PC

RS232

Transceiver

Si24xx Si3018 Discretes

EVB

C2

Connect the prototype ground to the EVB ground.

Lift prototype C1 and C2 and EVB C1 and C2 so the Si3018 is disconnected from the Si24xx on both modems.

Connect EVB C1 and C2 to the Si3018 pad of prototype system C1 and C2.

Connect the phone line to the RJ11 jack on the prototype system.

Use PC and HyperTerm and attempt to establish a modem connection.

Figure 44. Test the Prototype Si3018/10 Circuitry

Prototype System

C1

Host

Controller

Host

UART

Si24xx Si3018 Discretes

C2

C1

RS232

Transceiver

Si24xx Si3018 Discretes

EVB

C2

To

Phone

Line

Connect the prototype ground to the EVB ground

Lift prototype and EVB C1 and C2 to decouple the line side from the DSP side. Do same on evaluation board.

Connect prototype system C1 and C2 to the Si3018 pad of EVB C1 and C2

Connect the phone line to the RJ11 jack on the EVB

Run the prototype system software to attempt a modem connection

Figure 45. Verify Prototype Si3018/10 Failure

Rev. 1.41

259

A N 9 3

0.5 V

0.9 V

~2.3 V

~1.0 V

0 V

0 V

0 V

0 V

On-Hook

QE

DCT

RX

IB

C1B

C2B

VREG

RNG1

DCT2

IGND

DCT3

QB

QE2

S2

VREG2

RNG2

0 V

0 V

0 V

0 V

0 V

0 V

~1.0 V

1.6 V

3.4 V

2.5 V

0 V

0.5 V

0.9 V

2.3 V

1.0 V

Off-Hook

QE

DCT

RX

FB

CIB

C2B

VREG

RNG1

DCT2

IGND

DCT3

QB

QE2

SC

VREG2

RNG2

2.2 V

0 V

1.6 V

2.8 V

2.1 V

0 V

1.8 V

0.9 V

Voltages measured with respect to IGND (Si3018 pin 15)

Figure 46. Si3018/10 Typical Voltages

Pin 8

Pin 9

Pin 10

Pin 11

Pin 12

Pin 13

Pin 14

Pin 16

Si3018/10

Pin 1

Pin 2

Pin 3

Pin 4

Pin 5

Pin 6

Pin 7

Table 163. Resistance to Si3018/10 Pin 15

Resistance

> 6 M

> 5 M

> 2 M

1 M

> 5 M

> 5 M

> 1 M

> 2 M

> 2 M

> 1 M

0

> 2 M

> 5 M

> 14 M

> 5 M

260 Rev. 1.41

Table 164. Resistance across Components

Si3018/10

FB1

FB2

RV1

R1

R2

R3

R4

R5

R6

R7

R8

R9

R10

R11

R12

R13

R15

R16

C1

C2

C3

C4

C7

C8

C9

Resistance

< 1

< 1

> 20 M

1.07 k

150

3.65 k

2.49 k

100 k

100 k

4.5 or 16 M

4.5 or 16 M

> 800 k

536

73

< 1

< 1

< 1

< 1

> 20 M

> 20 M

> 3 M

3.5 M

 or 9.7 M

2 M

 or 5 M

> 20 M

> 20 M

Note:

If two values are given, the resistance measured is dependent on polarity.

Table 165. Voltages across Components with Diode Checker

Voltage Component

Q1, Q3, Q4, Q5:

Base (red lead) to Emitter (black lead)

Base (red lead) to Collector (black lead)

(Verifies transistors are NPN)

Q2:

Emitter (red lead) to Base (black lead)

Collector (red lead) to Base (black lead)

(Verifies transistor is PNP)

Collector of Q2 (red lead) to pin 1 of Si3018/10 (black lead)

If test fails, Z1 is reversed.

0.6 V

0.6 V

0.6 V

0.6 V

> 1 V

Rev. 1.41

AN93

261

A N 9 3

10.2. Self Test

The Si24xx ISOmodem’s advanced design provides the system manufacturer with an enhanced ability to determine system functionality during production tests and to support end-user diagnostics. In addition to local echo, a loopback mode allows increased test coverage of system components. For the loopback test mode, a line-

side power source is required. While a standard phone line can be used, the test circuit shown in Figure 47 is

adequate.

TIP

+

600

Si3018

V

TR

10

F

I

L

>20 mA

RING

Figure 47. Loop Test Circuit

The AT&Tn command, in conjunction with the AT&Hn command, performs a loopback self test of the modem.

AT&Hn determines the modulation used for the test (V.22bis, V.32bis, etc). If an AT&Hn command is not issued just prior to the start of the test, the default or previously-selected modulation is used. The modulation options and

defaults are listed in Table 51 on page 83. The test is started with an AT&T2 or AT&T3 command. During the test,

the modem is in data mode. To end the test, escape data mode using one of the “Escape” methods, such as +++, and end the test with ATH.

The AT&T2 command initiates a test loop from the DSP through the DAA interface circuit of the ISOmodem.

Transmit data are returned to the DSP through the receive channel. In the parallel or SPI mode, the transmit data are passed to the receiver via Hardware Interface Register 0. AT&T2 tests only the Si24xx chip, not the Si3018/10.

The AT&T3 command initiates a test loop from the DSP through the DAA interface, the ISOcap interface, the

Si3018/10, and the hybrid circuit. This test exercises the Si24xx, the Si3018/10, and many external components. A phone line termination with loop current and no dial tone is required for this test since it involves the line-side chip

(Si3018/10) and the hybrid. The modem is off-hook during this test. The AT&T3 mode is useful during emitted and conducted radiation testing. To test the ISOcap link only, set U62 (DL) [1] = 1 and issue the AT&T3 command.

The AT\U command is also useful as a production test. This command places a 25 ms low pulse on the RI and

DCD pins. It also makes INT the inverse of ESC and RTS the inverse of CTS. Sending the AT\U command can be used to verify the connection of these pins to the circuit board. This command is terminated by resetting the

ISOmodem.

262 Rev. 1.41

AN93

10.3. Board Test

The modem and DAA chips come from Silicon Laboratories 100% functionally tested on automatic test equipment to guarantee compliance with the published chip specifications. The functionality of a finished product containing an ISOmodem chipset depends not only on the functionality of the modem chipset after assembly but also on discrete components and product-related software. Finished product test requirements and procedures depend on the manufacturer and on the product. Consequently, no universal final test procedure can be defined.

Testing the modem in a finished product is done for several reasons. First, it is important to be sure the modem chipset and peripheral components were installed correctly during assembly and were not damaged. Second, it is necessary to be sure the correct component values were installed and that there are no manufacturing problems, such as solder bridges, cold solder joints, or missing components.

Functional testing can be used to test special features, such as intrusion detection, Caller ID, and overcurrent detection. An intrusion can be simulated by placing a 1 k

 resistor across Tip and Ring through a relay. Caller ID testing requires special test equipment, such as the Rochelle 3500 or Advent AI-150.

Many manufacturers choose to use built-in self-test features, such as the &T3 Loopback test described above.

Others do a complete functional test of the modem by originating and answering a call and successfully passing a data file in each direction. This process tests the modem and line-side chip functionality, the associated external components, and the software controlling the modem. This test can be done with a modem under test (MUT) and a known-good reference modem, or between two modems under test. Testing two modems under test at once reduces test and setup times. Modem operational testing is time consuming and adds to product cost. It is up to the manufacturer to determine whether operational testing is warranted.

Analog modems (Bell 103 through V.34) can be tested by connecting the modems through a telephone line simulator, such as Teltone TLS-3. A call can be placed or received in either direction at the speed set in the modems. A test script must be written for a computer to control the dialing, monitor the call progress, send a file,

and compare the received and sent file. Figure 48 illustrates this test configuration.

Reference Modem

Teltone TLS 3

Test

Computer

Modem Under

Test

Figure 48. Bell 103–V.34 Modem Functional Test Connection

Rev. 1.41

263

A N 9 3

V.90 modems must be tested with a digital modem, such as the USR Courier I. If a digital modem isn’t used as

illustrated in Figure 49, the highest connection speed a V.90 modem will support is 33.6 kbps. A call can be placed

or received in either direction at the speed set in the modems. A test script must be written for a computer to control

the dialing, monitor the call progress, send a file, and compare the received and sent files. Figure 49 illustrates this

test configuration.

Teltone

ILS 2000

ISDN

ISDN Modem

Test

Computer

ISDN

ISDN

Terminal

Adaptor

Analog

Modem Under Test

Figure 49. V.90 Modem Functional Test Connection

Table 166 compares the coverage of &T2, &T3, and full bidirectional functional testing.

Table 166. Test Coverage

Circuit or Function

Si24xx chip

ISOcap Operation

Si3018/10 Operation

Hookswitch dc Termination

Bridge

AC Termination

Line Voltage Monitor

Ringer Network

Intrusion Detection

Caller ID

Overcurrent Detection

&T2

Yes

Yes

&T3

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Functional Test

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

264 Rev. 1.41

AN93

10.4. Compliance Testing

Regulatory compliance testing requires the modem to be configured in specific ways and controlled to perform specific operations necessary to make required measurements. Compliance testing commands and configuration information are provided.

Some helpful commands for conducting compliance testing on the ISOmodem are listed in Table 167. The modem

register defaults configure the modem for FCC operation.

Table 167. AT Commands for Compliance Testing

ATH1

AT Command/Test Method

ATH0

AT&Hn (see command description for n)

Desired Response

Continuous off-hook

Return on-hook

Set modulation

Turn on carrier (originate) AT&T3 (requires load and loop current)

Set S10 = 255 to keep the modem under test from hanging up after the remote modem is unplugged. Connect with another modem (Si24xx in answer mode); then, unplug the other modem.

Turn on carrier (answer)

AT&T4

AT&T5

ATX0

AT*Y1D<digit> (example: AT*Y1D1 for DTMF1)

ATM2

ATM0

Initiate transmit as originating modem with automatic data generation

Initiate transmit as answering modem with automatic data generation

Blind dial (no dial tone)

Send continuous DTMF digit

Speaker on continuously

Turn off speaker

AT:Uhh,xxxx (hh is U register and xxxx is the hex value to be written) Write a U register

AT:Rhh (hh is U register) Read a U register

AT:R

ATA

Read all U registers

Send Answer Tone for 3 seconds

AT:U4D,0008 ATX0 ATDT

Connect test modem and remote modem through a telephone line simulator. Configure test modem without protocol. Set test modem

S10 = 255. Connect phone in parallel to remote modem. Set remote modem to desired modulation. Dial remote modem and connect. Take parallel phone off-hook. Remove power from remote modem. Test modem transmits indefinitely.

Send Calling Tone

Transmit a specific modulation

Homologation testing requires that the ISOmodem signal output be measured for each modulation and data rate.

The AT&T3 command establishes an analog loopback connection to the phone line and places the modem in data mode. The modulation is controlled by the &H command. This command is insufficient for homologation for several reasons:

It is not possible to configure the output tone to be as if from the answering or originating modem.

It is not possible to configure the data rate used in an analoop connection within a given modulation.

 Three data patterns need to be sent during output testing: all marks, all spaces, and random data.

Once transmission with automatic data generation is initiated, the modem goes off-hook and begins to transmit the data in the modulation selected by the existing &H command. Transmission continues until the ATH command is sent after escape.

Rev. 1.41

265

A N 9 3

The data sent during &T4 and &T5 transmission tests is controlled by the S40 register. The data rate for &T4 and

&T5 commands is controlled by the existing &G command. In V.34 cases, where a data rate may use multiple symbol rates, the symbol rate is controlled by the S41 register. If an invalid combination of data/symbol rate is selected, the modem chooses a valid symbol rate. It is the responsibility of the operator to select valid combinations for testing.

Table 168. Symbol/Data Rate

S41

0 (default)

1

2

3

4

5

V.34 Symbol Rate

2400 symbols/second

2743 symbols/second

2800 symbols/second

3000 symbols/second

3200 symbols/second

3429 symbols/second

Allowable Data Rates

2400–21600

4800–26400

4800–26400

4800–28800

4800–31200

7200–33600

After the &T4 or &T5 command is issued and the modulation output has begun, a result code stating CONNECT followed by the data rate (as if the output were an actual connection) is sent. The 300 bps rate does not give the speed after CONNECT. The &G4 command allows V.34/2400bps operation, and &G3 allows V.22bis/1200 bps operation.

The answer tone output must also be measured during homologation testing. A bit in memory allows a continuous answer tone to be output in the same way as a continuous DTMF tone through the AT*Y1 command. After issuing the commands AT&H10 and AT*Y2A, a constant answer tone is produced, and the modem is returned to command mode. Both AT commands need to be sent for each and every tone to be produced. Each of the two commands need to be on its own command line. The tone continues until a character is received or the S7 timer expires. After the command has been terminated, the modem returns on-hook and sends the NO CARRIER message.

For homologation testing, it may be necessary to output the V.29 modulation with transmit data. The +FTM

command includes additional codes given in Table 169 to initiate output with the transmit data specified in S40.

Table 169. V.29 Data Rate

+FTM=

53

55

Transmit Modulation

V.29

V.29

Data Rate

7200

9600

The AT+FCLASS=0 command must be sent before any other analoop test or connection is made. The modem must remain on-hook for a time programmed in S-register 50. Any attempt to go off-hook is delayed by this time in

1 s units. S-50 default is 3 seconds.

There is a double CONNECT message for analoop in B1O3, V.21, and V.23 for all options except \V0.

10.4.1. EMI

The ISOmodem chipset and recommended DAA schematic are fully compliant with and pass all international electromagnetic emissions and conducted immunity tests (including FCC parts 15 and 68; EN50082–1). Careful

attention to the ISOmodem schematic (page 50), bill of materials (page 51), and layout guidelines ensure

compliance with these international standards. In designs with difficult layout constraints, the addition of R12 and

R13 to the C8 and C9 recommended capacitors may improve modem performance on emissions and conducted immunity. For such designs, a population option for R12 and R13 may allow additional flexibility for optimization after the printed circuit board has been completed. Also, under some layout conditions, C8 and C9 may improve the immunity to telephone-line transients.

266 Rev. 1.41

AN93

10.4.2. Safety

Designs using the ISOmodem pass all overcurrent and overvoltage tests for UL1950 3rd Edition with the addition

of a 1.25 A Fuse or PTC, as shown in Figure 50. In a cost-optimized design, compliance to UL1950 does not

always require overvoltage tests. In the design cycle, it is important to plan ahead and know which overvoltage tests will apply. System-level elements in the construction, such as fire enclosure or spacing requirements, need to be considered during the design stages. Consult with a testing agency during product design to determine which tests will apply.

1000

 @ 100 MHz, 200 mA

C8

FB1

1.25 A

TIP

Fuse/PTC

RV1

1000

 @ 100 MHz, 200 mA

FB2

RING

C9

Figure 50. Circuits that Pass All UL1950 Overvoltage Tests

10.4.3. Surges

Use the reference design described in "4. Hardware Design Reference" on page 46 with through-hole Y1

capacitors for C1, C2, C8, and C9. Use spacing between the capacitor leads, between any line-side (high voltage) component or trace and system side (low voltage) component or trace greater than 8 mm. Also, the spacing between any line-side component or trace (or through-hole lead extending through the PCB) and the chassis (or anything connected to the chassis or low voltage circuitry) must be greater than 8 mm or protected with insulating material capable of withstanding a voltage greater than 8 kV. Additionally, slots cut through the PCB are recommended between the leads of C1, C2, C8, and C9 for increased creepage. The PCB and components should be clean and free of contamination, such as solder flux or other residue. The design engineer must verify the spacing indicated above meets or exceeds any specifications with which they wish to comply. The ISOmodem, used with the components and techniques described above, offers the highest reliability and lowest cost of any available solution. The use of supplemental surge-suppression components is not recommended.

Rev. 1.41

267

A N 9 3

10.5. AM-Band Interference

In certain areas, AM-band interference causes poor connectivity rates and error rates. A good EMI common-mode filter may be necessary in some situations. An example of an off-the-shelf unit designed to plug directly into the phone line is the Coilcraft TRF-RJ11, which can be used for debugging or fixing problem locations.

268

Figure 51. Published Coilcraft TRF-RJ11 Filter Performance

Rev. 1.41

AN93

10.6. Debugging the DTE interface

A hardware-based serial RS232 monitoring product, such as the Parascope Plus, is an invaluable tool for debugging the DTE/DCE Interface. It captures and records details of DTE - DCE interaction. Hexadecimal and bitshifted views are possible, and it timestamps every character exchanged with much greater precision than a software-based monitor. It is sold by FETEST at http://www.fetest.com.

To

DCE

To

Power

To PC

Printer Port

Silabs IsoModem eval. board

Feline WinXL serial transaction log. Timestamp of highlighted char.

Figure 52. Debugging the DTE Interface

Rev. 1.41

269

A N 9 3

A

PPENDIX

A—EPOS A

PPLICATIONS

EPOS applications generally require nearly flawless call connection reliability and a very short overall transaction time. The message length of a typical EPOS terminal is between 120 to 260 bytes of information. Due to the relatively small message length, the need for reliable connections under all line conditions, and short connection times, the preferred modulations have traditionally been variations of V.22 (1200 bps) or Bell 212 (1200 bps).

EPOS servers do not strictly follow ITU standards. Despite the informal use of the term “V.22 fast connect”, there is no ITU “fast connect” standard. De-facto standards with modifications of ITU standards, such as V.22 Fast

Connect, have been adopted to reduce the transaction time. Some server manufacturers make changes to the modem with the intent of making it difficult for competing terminals to connect. Many EPOS servers have out-ofspecification clocks and use reduced handshake timing. V.22bis (2400 bps) is occasionally used in EPOS terminals as well. The primary method by which V.22bis terminals achieve a shorter connection time has been through the use of a shorter answer tone. V.29 FastPOS is a Hypercom proprietary protocol based on the V.29 Fax standard. For these reasons, EPOS applications often require some amount of reverse engineering and fine tuning of the ISOmodem performance, typically with a patch.

Recently, improvements to the overall user experience have necessitated the storage of transaction information within the EPOS terminal based on some predefined criteria. These stored transactions are typically sent as part of a larger transaction at a later time. This effectively increases the message length to over 2 kB, necessitating the use of higher-speed modulations, such as V.29 FastPOS or V.32bis.

The choice of either V.29 FastPOS versus V.32bis is a tradeoff between transaction message length and connection times. It is common for a terminal to support both of these modulations.

Modulation

V.90

V.34

V.32b

Typical Connect Time (Sec)*

25

10.7

7.8

V.22b

V.22

V.22 FastConnect

V.29 FastPOS

5.0

3.0

0.6

0.5

*Note:

Does not include dial delay.

VISA II (7E1)

Host Terminal

Dials host

STX <data>ETX, LRC

ACK (0x06)

Disconnects

ENQ (0x05)

ACK (0x06)

STX <data>ETX, LRC

EOT (0x04)

270 Rev. 1.41

AN93

Another consideration for EPOS applications is the method of error detection and error correction. Early EPOS terminals adopted the Zilog 85C30 Serial Communications Controller (SCC) in conjunction with a synchronous modem to implement an HDLC/SDLC-based data link layer. The complexities of the HDLC handling is done by the

SCC, while the modem performs strict data pump function. However, given the broad availability of UARTs, HDLC handling can be performed by the modem also. To facilitate this system partitioning, the V.80 protocol is used. V.80

allows the multiplexing of data, control, and status information so that the host processor can specifically control what frames are sent to, or received from, the modem across the asynchronous UART (DTE) interface. The host performs much of the other layers of the protocol stack beyond this Data Link Layer. A discussion of host software is beyond the scope of this appendix.

Recommendation V.80

The goal of V.80 is the concept of “abstracting hardware circuits”. This is achieved by the addition of a control and status channel alongside the main data channel. The main data channel is effectively the information transfer across the UART TX and RX lines. The control/status channel that runs alongside the main data channel is signaled by the use of EM shielding. This means a “special character” is chosen to signify the beginning of the control/status channel. In its simplest form, this “special character,” in conjunction with the “next” character, is taken together as a single nugget of information denoting a special control message or a special status.

V.80 uses <0x19> as a special control character. The next question becomes how to send the character 0x19 as data? This is accommodated by the concept of transparency, in which the host is required to send a special sequence to signify its desire to send 0x19 as data rather than a control character.

The concept could have been very simple, but there are additional complications:

The desire to support 7-bit data and 1-bit parity asynchronous protocols

The desire to support XON and XOFF handshaking

 The desire to limit bandwidth usage

The desire to support 7 data bits and 1 parity bit creates the possibility that the host would be sending <0x99> when the intention is to be sending the <0x19> special character. The <EM> character is really a shortcut for saying <0x19> or <0x99>.

The XON and XOFF characters are <0x11> and <0x13>, respectively. These characters are treated in a special way by many UARTs, and, therefore, V.80 must ensure that neither <0x11> or <0x13> occur in the data stream so that a lower protocol layer will not need to be rewritten. Hence, the final “special character set” for V.80 includes

<0x19>, <0x99>, <0x11>, and <0x13>.

What happens if the data file being sent is a constant stream of <0x19> bytes? By the single-transparency rules, one would then argue that the number of bytes sent across the DTE would effectively be doubled. In order to ensure that the throughput does not become bloated by the EM Shielding, provisions for all combinations of two special character combinations are created. This adds yet another sixteen EM Shielding cases since there are 4 x

4 matrix of combinations of these special characters.

At this point, the transparency cases for EM Shielding can thus guarantee the ability to send “anything” over the

DTE with the special considerations of 7 vs 8 data bits, XON and XOFF characters and throughput considerations.

However, once the data channel has been architected, the rest of the unused EM codes can be used for the primary purpose of V.80, which is the concept of hardware abstraction.

In EPOS applications, there is little value in abstracting pins such as RI or RTS. The value comes in abstracting the

TXCLK and RXCLK of the Synchronous UART. The Synchronous UART is the primary method of connecting to the

Zilog 85C30 SCC. V.80 allows the interface between the host and the modem to be a simple asynchronous DTE, while allowing for synchronous operation performed by the modem itself.

The purpose of going through this explanation is to allow the easier reading of the V.80 standard and to provide the proper framing of the use of V.80 in an EPOS application. It is important to note that the usage of V.80 for HDLC function does not use many of the other aspects of V.80.

For example, the data transferred across the UART is assumed to be 8 bits, even though V.80 also provides the ability to transfer 7-bit ASCII data. Also, it is rare for XON/XOFF handshaking to be used in an EPOS application, but the transparency rules of EM Shielding are burdened with these extra EM codes in any case.

Rev. 1.41

271

A N 9 3

In the end, the only thing that matters in an EPOS application is the ability to send and receive HDLC frames across the DTE. For this, the ability of the host to tell the modem “end of transmit frame” and the ability for the modem to tell the host “CRC successful” is, in essence, the kernel of V.80 use in an EPOS application.

One final note before showing an example… the V.80 standard refers to a “Transparent Sub-Mode” and a “Framed

Sub-Mode”. The main idea behind the Transparent Sub-Mode is to allow the host to specifically decide what bits are being sent across the DCE. In the Transparent Sub-Mode, nothing is left out, and the host is responsible for every single bit that is transmitted to and from the modem. In the Framed Sub-mode, the HDLC handling is performed by the modem, and, therefore, there are actions taken by the modem that the host assumes and does not worry about. In EPOS applications, only the “Framed Sub-Mode” is of importance.

Example:sending an HDLC Frame containing the following bytes:

0xFF 0x11

The host will transmit the following byte stream. Note that the 0x11 is sent as an <EM><t3> or 0x19 0xA0. An

<EM><flag> or 0x19 0xB1 denotes the end of frame.

0xFF 0x19 0xA0 0x19 0xB1

At the UART interface at TXD, the bit-representation is: strt 0xFF stp stp 0x19 stp strt 0xA0 stp strt 0x19 stp strt 0xB1

1 0 11111111 1 0 10001001 1 0 00000101 1 0 10001001 1 0 10001101

The modem strips off the start and stop bits and reconstructs the original bytes:

0xFF 0x19 0xA0 0x19 0xB1

The transparency characters are resolved, and, since the <EM><flag> is present, the Frame Check Sequence is calculated. Let us assume that the FCS is 0xC00F:

16-bit FCS

0xFF 0x11 0xC0 0x0F

Adding the HDLC flags and zero-stuffing, the bit stream is shown as follows. The bit stream containing the 0xFF and 0x0F bytes have inserted zero bits. The algorithm is fairly simple in that whenever there are five ones in a row, a bit is inserted. The inserted bits are shown in red. This bit stream is then modulated and transmitted out to the

DCE.

16-bit FCS

Flag 0xFF 0x11 0xC0 0x0F Flag

01111110 111110111 10001000 00000011 111010000 01111110

The receive process reverses the above steps. The receiver hunts for HDLC flags and synchronizes to the HDLC flag stream. It then extracts the frame between the HDLC Flags and performs zero-bit deletion on the payload. The receiver also calculates the CRC and matches with the 16-bit FCS of the frame. Then, the <EM> transparency is added, and finally, the <EM><flag> is sent as an indication that the calculated CRC of the frame matches the FCS.

272 Rev. 1.41

AN93

Data

Data

Data

Block

V.80

Transparency

Encode

Insert V.80

EM<FLAG> between blocks

V.80 Handler

V.80

Transparency

Decode

Data

Data

Block

Block

EM<FLAG> if good

RX frame, EM<ERR> if bad RX frame

UART

Transmit

Path

TXD

CTS*

Receive

Path

RXD

MODEM

UART

MODEM

UART

Isomodem with V.80

HDLC

FLAG

Insertion

V.80

Transparency

Decode

Zero-Bit

Stuffing g

Frame Check

Sequence

Generate

HDLC

FLAG

Detection

V.80

Transparency

Encode

Add EM<FLAG> or EM <ERR>

Zero-Bit

Deletion

Check

TX Bit

Clock

Modulate

RX Bit Clock

Recovery

Demodulate

Figure 53. ISOmodem V.80 Protocol HDLC Framing in Framed Sub-Mode

PLL

XTAL

DCE

The ISOmodem in EPOS Applications

The Rev D Si2493/57/34/15/04 and Rev A Si2494/39 include all Rev B and C patches.

AT:U87 [10] must be set when using Rev B silicon.

A V.80 interface to V.29 Fast Connect is not supported on Rev B silicon and can be accomplished only as a

patch on Rev C. Please contact Silicon Laboratories, Inc. for latest patch. "5.8. Firmware Upgrades" on page

133 outlines how to use this patch. The Si2494/39 and Revision D of the Si2493/57/34/15 do not require a patch

for V.29 Fast Connect.

When operating as V.22 Fast Connect (+MS=V22, AT:U7A,3), the register U80 can be modified to account for unusual server timings. The value in U80 should reflect the expected answer tone duration of the NAC. The units are in 1/600 s. For example, if the answer tone duration of the server is 500 ms, AT:U80,012C.

When operating as V.22 Fast Connect (+MS=V22, AT:U7A,3), a short answer tone of at least 300 ms is required for proper operation. This answer tone can be 2100 Hz, 2225 Hz, or a V.22 Unscrambled Binary Ones (USB1).

If the server NAC does not have any of these answer tones prior to scrambled data or HDLC flags, it is possible to command the modem to operate without these tones by setting bit 15 of U80. The modem then begins transmitting scrambled data (or HDLC Flags) some time after the end of dialing, based on the value in

U80 [14:0]. The units are in 1/600 s. For example, to command the modem to begin transmitting 3 s after the end of dialing, set AT:U80,8708.

When operating as V.29 Fast Connect, UD3 sets the minimum and maximum time for the duration of the

Answer Tone. The allowable range is 50 ms to 180 ms. UD3 is in units of milliseconds. The default is 0x0000.

U1DA allows the user to add a delay to the time the modem waits before responding to an answer tone. This is useful in dealing with non-standard answering modems. The units of this register are 1/600 seconds. The default is 0x0078, or 200 milliseconds.

Rev. 1.41

273

A N 9 3

A V.29 FastPOS Sample Program

Introduction

In previous versions of the interface to V.29 FastPOS, the HDLC layer was assumed to be implemented by the host software. Another issue was the case where the EPOS Terminal was calling a server that could answer either as

V.29 FastPOS or V.22bis; it was not possible for the modem to “train down” to V.22bis.

To address these issues, a new interface has been implemented in the Rev D Si2493/57/34/15 and Rev A Si2494/

39 and is available as a patch in the RevC ISOmodem. This interface allows the call to start as a V.29 FastPOS and can train down to V.22bis if the server NAC can answer as either a V.29 FastPOS or V.22bis. Please contact

Silicon Laboratories, Inc. for the latest patch.

One of the improved aspects of this interface technique is to use two control lines: (RTS and DTR); RTS controls direction of transfer, while the DTR hangs up the line. The trade-off here is that RTS can no longer be used as a method of stopping the modem from sending data to the host.

This is generally not an issue as long as the DTE rate is greater than the DCE rate and the host can keep up with the receiver without having to resort to the negation of RTS.

The data are in V.80 format. Just read and write data while toggling RTS as needed. Assert RTS to transmit and de-assert to receive. This is called a push-to-talk paradigm.

The description here shows how to set up and use the modem for V.29 FastPOS and also provides a sample program along with both a DTE trace and WAV files that capture what is happening at both ends of the modem.

The only critical signals that are not recorded below but obviously controlled in the program are the RTS and DTR lines.

The hardware used was the Engineering Eval. Board Rev 3.2 and a 24xx2G-DC Rev 1.2 module containing a 24 pin 2457 Rev C ISOmodem chip plus a 3018 DAA chip. JP6 was strapped {1-2, 4-5, 7-8, 10-11, 13-14}. JP5 was unstrapped. The duration of SNRM and UA should be at least 453 ms. The host should add 450 ms more delay to increase the UA duration, in case some old V29FC servers need 453 ms. Also, 100 ms should be added after sending an RR frame.

Setup procedure:

1. Host DTE Rate must be greater than 19200.

2. Host DTE must be configured for 8N1 CTS-only flow control

3. AT+GCI=xxx

AT:U4D&BFF7

AT:U70|8000

AT&D2

AT+IFC=0,2

AT+ITF=0383,0128

AT:U87,050A

AT\N0

AT+ES=6,,8

AT+ESA=0,0,0,,1

AT:U1D4|4000

AT+FCLASS=1

AT:U7A|0009

AT:U7A|2009

AT:UAA,4

AT:UD3,B4

Disable and turn off the calling tone as +GCI may enable the calling tone

HES = 1

Enables escape pin

Flow control setup

Set the parameters for hardware flow control

V.80 Setup

Wire Mode

Synchronous access mode

Synchronous access mode control

Standard ePOS Flag

U7A[0]=1(Fast Connect), U7A[3]=1(V29FC), U7A[13]=0 (EM-shielded half duplex)

U7A[0]=1(Fast Connect), U7A[3]=1(V29FC), U7A[13]=1 (RTS half duplex)

Enables V29FC rude disconnect with &D2

V29FC answer-tone duration threshold = 180 ms

4. Make Sure RTS is negated (voltage high)

5. Make Sure DTR is asserted (voltage low)

6. Send ATDT###

274 Rev. 1.41

AN93

Notes:

1. RTS is used as DIRECTION of transfer. Think “push-to-talk” paradigm. Assert RTS PRIOR to transmission. Negate RTS after frame has been sent. The modem will guarantee that the carrier is turned off after all current frames have been completed.

2.

DTR is assumed to be connected to the ESC pin of the modem. It has been programmed to HANG UP when DTR is negated.

3.

When the modem is in RECEIVE operation (RTS negated), it is not possible to communicate with the modem. The only control is to hang up using DTR.

4.

The modem “automatically” takes care of figuring out if it is supposed to be in “V.29 Long Train” vs. “V.29 Short Train”.

The primary host responsibility is to take care of RTS.

5.

Data to/from the modem is expected to be in V.80 format.

Example Program in C/C++

This program shows how to establish an SDLC V.29 FastPOS link and keep the loop alive.

How to use the program:

This program is meant to run for only a few minutes for testing. It is run after a reset is done, loads a patch from

“patch.txt” and calls using the atdt line it finds in “tel_no.txt”. Both files need to terminate in CR LF.

The tel_no.txt file must contain a complete telephone number dialing line followed by a CR, e.g. ATDT8,5551212.

// V29_test.cpp : Defines the entry point for the console application.

// Copyright 2005 Silicon Labs Inc. All rights reserved.

// Rev 0.0602

#include "stdafx.h"

#include "windows.h"

#include "stdlib.h"

#include <stdio.h>

#include <time.h> char fnamePatch[]=".\\patch.txt"; char fnameTelno[]=".\\Tel_no.txt"; char *SendAndWaitFor(char *cpCommand, char *cpInBuffRd,

char *cpResponse, int iTimeoutMs); char *WaitForResponse(char *cpResponse, char *cpInputBuffer,

int iTimeOutInMs); void SetupSerPort(void); void AssertRTS(bool bAssert); void AssertDTR(bool bAssert); void Delay(long iMs) ; bool GetFileTextLine(char *cpIn); void LoadAndSendPatch(void); char *cpInBuffer; char *cpOutBuffer; char *cpInputWr; char *cpErrorString;

FILE *hpPatchFile;

FILE *hpTelNoFile;

DCB dcb;

HANDLE hCom; char *pcCommPort = "COM1";

Rev. 1.41

275

A N 9 3

COMMTIMEOUTS sCOMMTIMEOUTS; int iCharCount; char *cpInputRd, *cpInputRd_temp, cpInput_test[255]; char caUA_PKT_STR[] = {(char)0x30, (char)0x73, (char)0x19, (char)0xb1, (char)0 }; char caRR_PKT_STR[] = {(char)0x30, (char)0x19, (char)0xa0, (char)0x19, (char)0xb1, (char)0 }; char caSNRM_PKT_STR[] = {(char)0x30, (char)0x93, (char)0x19, (char)0xb1, (char)0 }; char caRX_PKT_STR[] = {(char)0x19, (char)0xb1, (char)0 }; void AlternateCall(void); int main(int argc, char* argv[])

{

// Initialize these buffers.

cpInBuffer = (char *)malloc(100000);

cpOutBuffer = (char *)malloc(100000);

cpErrorString = (char *)malloc(100000);

for (int i= 0; i< 10000; i++)

{

cpInBuffer[i] = 0;

cpOutBuffer[i] = 0;

cpErrorString[i] = 0;

}

cpInputRd = cpInBuffer;

cpInputWr = cpInBuffer;

unsigned long ulNoOfbytes;

SetupSerPort();

LoadAndSendPatch();

AssertDTR(true);// Leave DTR asserted for calling

cpInputRd = SendAndWaitFor("atz\r", cpInputRd, "OK\r\n", 300); // A soft reset Just in case

Delay(300); // Important, AN93 implies this delay must be done after an ATZ.

cpInputRd = SendAndWaitFor("ATE0\r", cpInputRd, "OK\r\n", 300);

cpInputRd_temp = SendAndWaitFor("AT&T6\r", cpInputRd, "OK\r\n", 300);// Get the patch CRC

printf ("%s \n", cpInputRd); cpInputRd=cpInputRd_temp; // Display the patch CRC

// setup county of operation ********************MODIFY to your locality******************

// cpInputRd = SendAndWaitFor("at+gci=B5\r", cpInputRd, "OK\r\n", 300);

// &D2 enables escape pin, // X4 enable extended result codes

// \V2 report connect message only // %c0 disable data compression

// %V1 Auto line status detection mode is the fixed method

// +IFC=0,2 No data flow control, Hardware flow control

// +ES=6,,8 enabled synch access, // 6,, enables synch access on initiating a connect // ,,8 enables synch access on answering a connect

// AT+ESA=0,0,0,,1 synch access mode control

276 Rev. 1.41

AN93

// 0,,,, modem transmits SYN if underrun during transparent mode

// ,0... modem tx's flags after underrun after flag happens in framed sub mode

// ,,0,, modem tx's abort on underrun in frame middle during framed sub mode

// ,,,,1 enables CRC generation and checking

// "AT:U87,050A Synch access mode config

// 0x0400 bit 10 Minimal transparency <EM><T1 thru T4> during Rx

// 0x0100 bit 8 Upon connection immediately enter framed sub mode

// 0x000A bits 3:0 Wait for 10 bytes before starting xmission.

cpInputRd = SendAndWaitFor("AT:U4D&BFF7\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:U70|8000\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT&D2\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT+IFC=0,2\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT+ITF=0383,0128\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:U87,050A\r", cpInputRd, "OK\r\n", 300);

// \N0 wire mode, // +FCLASS=1 HDLC cpInputRd = SendAndWaitFor("AT\N0\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT+ES=6,,8\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT+ESA=0,0,0,,1\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:U1D4|4000\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:UAA,8004\r", cpInputRd, "OK\r\n", 300);

// U7A[0]=1(Fast Connect), U7A[3]=1(V29FC), U7A[13]=1 (RTS half duplex)

// UAA=4 Enables V29FC rude disconnect with &D2

// UD3=B4 Sets V29FC answer-tone duration threshold=180ms cpInputRd = SendAndWaitFor("AT:U7A|2009\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:UAA,4\r", cpInputRd, "OK\r\n", 300); cpInputRd = SendAndWaitFor("AT:UD3,B4\r", cpInputRd, "OK\r\n", 300);

if ((hpTelNoFile = fopen(fnameTelno, "rb")) == NULL)

{

fprintf(stderr, "The Tel. Number File is missing.\n");

exit(1);

}

char caOutGoing[256];

bool bValidLine = GetFileTextLine(caOutGoing);

printf("Phone Number: %s\n",caOutGoing);

if(bValidLine)

cpInputRd = SendAndWaitFor(caOutGoing, cpInputRd, "CONNECT\r\n", 120000);

else

{

fprintf(stderr, "The Tel. Number File is incorrect.\n");

exit(1);

}

int iLength;

iCharCount = 0; //reset the total chars to 0 for data mode.

Rev. 1.41

277

A N 9 3

// Skip waiting for the speed packet.

// cpInputRd = WaitForResponse("\0x19\0xbe\0x24\0x24\0x19\0xb1", cpInputRd, 6000); // ???

// Long training happens now!

cpInputRd = WaitForResponse(caSNRM_PKT_STR, cpInputRd, 6000);

Delay(50); //Delay to allow the line to turn around

AssertRTS(true); //RTS=1 for transmitting

Delay(300); //Delay to allow the line to turn around

// Alternatively use USE CTS

iLength = strlen(caUA_PKT_STR);

WriteFile(hCom, caUA_PKT_STR, iLength, &ulNoOfbytes, 0); // Tx UA messge

Delay(100);

while(1) // Short training happens now!

{

AssertRTS(false); printf("RTS=0 Rx "); //RTS=0 for receiving

cpInputRd=WaitForResponse(caRX_PKT_STR,cpInputRd,3000);//Rx RR message

iLength = strlen(cpInput_test);

for (int i=0; i<iLength; i++)

printf("%02x ", (unsigned char)cpInput_test[i]);printf("**%d ", *cpInputRd);

//Alternatively use CTS

Delay(150);

do{ // flush out the bytes for last RX packets.

BOOL bError = !ReadFile(hCom, cpInputWr, 1, &ulNoOfbytes, 0); //ulNoOfbytes=1

printf("%02x ", (unsigned char)cpInputWr[0]);

}while (ulNoOfbytes); printf("\n");

AssertRTS(true); printf("RTS=1 Tx "); //RTS=1 for transmitting

Delay(50); // morrie 01/20/06

iLength = strlen(caRR_PKT_STR);

for (i=0; i<iLength; i++)printf("%02x ", (unsigned char)caRR_PKT_STR[i]); printf("\n");

WriteFile(hCom, caRR_PKT_STR, iLength, &ulNoOfbytes,0); //Tx RR message

Delay(100); //Delay x ms to complete TX sending before set RTS=0 for RX

}

return;

}

// -------------------------------------------------------------------------------------

// Use this call to check CTS status

// DWORD iEVentMAsk; // wait for EV_CTS

// BOOL WaitCommEvent(HANDLE hFile, &iEVentMAsk, LPOVERLAPPED lpOverlapped);

// ---------------------------------------------------------------void SetupSerPort()

{

278 Rev. 1.41

BOOL bSuccess;

hCom = CreateFile(pcCommPort, GENERIC_READ | GENERIC_WRITE, 0,

NULL, OPEN_EXISTING, 0, NULL);

if (hCom == INVALID_HANDLE_VALUE)

{ // Handle the error.

printf ("CreateFile failed with error %d.\n", GetLastError());

exit(1);

}

// Build on the current configuration, and skip setting the size

// of the input and output buffers with SetupComm.

bSuccess = GetCommState(hCom, &dcb);

if (!bSuccess)

{

// Handle the error.

printf ("GetCommState failed with error %d.\n", GetLastError());

exit(1);

}

// Fill in DCB: 57,600 bps, 8 data bits, no parity, and 1 stop bit.

dcb.fBinary = TRUE; // Binary mode; no EOF check dcb.fOutxCtsFlow = FALSE; // No CTS output flow control dcb.fOutxDsrFlow = FALSE; // No DSR output flow control dcb.fDtrControl = DTR_CONTROL_ENABLE; // DTR flow control type dcb.fDsrSensitivity = FALSE; // DSR sensitivity dcb.fTXContinueOnXoff= TRUE; // XOFF continues Tx dcb.fOutX = FALSE; // No XON/XOFF out flow control dcb.fInX = FALSE; // No XON/XOFF in flow control dcb.fErrorChar = FALSE; // Disable error replacement dcb.fNull = FALSE; // Disable null stripping dcb.fRtsControl = RTS_CONTROL_ENABLE; // assert RTS dcb.fAbortOnError = FALSE; // Do not abort rds/wr on error

dcb.BaudRate = CBR_115200; // set the baud rate

dcb.ByteSize = 8; // data size, xmit, and rcv

dcb.Parity = NOPARITY; // no parity bit

dcb.StopBits = ONESTOPBIT; // one stop bit

bSuccess = SetCommState(hCom, &dcb);

if (!bSuccess)

{ // Handle the error.

printf ("SetCommState failed with error %d.\n", GetLastError());

exit(1);

}

printf ("Serial port %s successfully initialized.\n", pcCommPort);

return;

}

// ------------------------------------------------------------------------------char *SendAndWaitFor(char *cpCommand, char *cpInBuffRd,

AN93

Rev. 1.41

279

A N 9 3

char *cpResponse, int iTimeoutMs)

{

unsigned long ulNoOfbytes;

strcpy(cpOutBuffer, cpCommand);

WriteFile(hCom, (long *)cpOutBuffer, strlen((char *)cpOutBuffer),

&ulNoOfbytes, 0);

if(iTimeoutMs)

cpInBuffRd = WaitForResponse(cpResponse, cpInBuffRd, iTimeoutMs);

if(!cpInBuffRd)

exit(0);

return cpInBuffRd;

}

// Check for a specific response in the input buffer, and return ptr to what

// follows. If this times out or ERRORs before the response is found then a

// NULL is returned; It keeps reading the ser channel while waiting char *WaitForResponse(char *cpResponse, char *cpInputBuffer, int iTimeOutInMs)

{

unsigned long ulNoOfbytes;

clock_t sStartTime = clock();

clock_t sCurrentTime;

// covert wait time in ms's to clock_t by mutiplying by CLOCKS_PER_SEC/1000

clock_t sWaitTime = (clock_t)(iTimeOutInMs*CLOCKS_PER_SEC)/1000;

int iPasses = 0;

int iCharCnt =0; // set to 0

while(1)

{

char cTemp = *cpInputWr;

*cpInputWr = 0;

char *cpFound = strstr(cpInputBuffer, cpResponse);

*cpInputWr = cTemp;

if(cpFound)

{//copy the received bytes for late display

strncpy(cpInput_test, cpInputBuffer, iCharCnt);cpInput_test[iCharCnt]='\0';

return cpFound + strlen(cpResponse);

}

// Setup a 50 ms timeout for reads

sCOMMTIMEOUTS.ReadIntervalTimeout = 0;

sCOMMTIMEOUTS.ReadTotalTimeoutMultiplier = 0;

sCOMMTIMEOUTS.ReadTotalTimeoutConstant = 50;

sCOMMTIMEOUTS.WriteTotalTimeoutMultiplier = 0;

sCOMMTIMEOUTS.WriteTotalTimeoutConstant = 0;

SetCommTimeouts(hCom, &sCOMMTIMEOUTS);

// Read the serial port

//cpInputWr has char from the port

BOOL bError = !ReadFile(hCom, cpInputWr, 1, &ulNoOfbytes, 0);

iCharCount += ulNoOfbytes; iCharCnt+=ulNoOfbytes;

280 Rev. 1.41

AN93

if(bError)

{

strcat(cpErrorString, "Read Error\r\n");

exit(10); // implement a write to file before exit(0)

}

cpInputWr += ulNoOfbytes;

// check for a timeout

sCurrentTime = clock();

iPasses++;

if( sCurrentTime > (sStartTime + sWaitTime) )

{

strcat(cpErrorString, "Timeout of "); strcat(cpErrorString, cpResponse);

printf ("\n%s\n", cpErrorString);

strncpy(cpInput_test, cpInputBuffer, iCharCnt);

cpInput_test[iCharCnt]='\0'; //copy the received bytes for late display

return cpInputBuffer; // we exit with the same input string we came in with

// because we time out.

}

}

};

// ------------------------------------------------------------------------void AssertRTS(bool bAssert)

{

BOOL bSuccess;

if(bAssert)

dcb.fRtsControl = RTS_CONTROL_ENABLE; // assert RTS

else

dcb.fRtsControl = RTS_CONTROL_DISABLE; // dis-assert RTS

bSuccess = SetCommState(hCom, &dcb);

if (!bSuccess)

{ // Handle the error.

printf ("SetCommState failed with error %d.\n", GetLastError());

exit(1);

}

else

return;

} void AssertDTR(bool bAssert)

{

BOOL bSuccess;

if(bAssert)

dcb.fDtrControl = RTS_CONTROL_ENABLE; // assert RTS

else

Rev. 1.41

281

A N 9 3

dcb.fDtrControl = RTS_CONTROL_DISABLE; // dis-assert RTS

bSuccess = SetCommState(hCom, &dcb);

if (!bSuccess)

{ // Handle the error.

printf ("SetCommState failed with error %d.\n", GetLastError());

exit(1);

}

return;

} void Delay(long iMs)

{

clock_t wait;

// covert ms's to clock_t by mutiplying by CLOCKS_PER_SEC/1000

wait = (clock_t)(iMs*CLOCKS_PER_SEC)/1000;

clock_t goal;

goal = wait + clock();

while( goal > clock() )

;

} void LoadAndSendPatch(void)

{

char caOutGoing[256];

cpInputRd_temp = SendAndWaitFor("AT&T7\r", cpInputRd, "OK\r\n", 300); // Reset the modem

printf ("Current %s \n", cpInputRd); cpInputRd=cpInputRd_temp;

printf ("Loading patch:%s...\n", fnamePatch);

if ((hpPatchFile = fopen(fnamePatch, "rb")) == NULL)

{

fprintf(stderr, "The Patch File is missing.\n");

exit(1);

}

AssertRTS(true );

cpInputRd=SendAndWaitFor("ATE1\r", cpInputRd, "OK\r\n", 300);

bool bValidLine = true;

while(bValidLine)

{

bValidLine = GetFileTextLine(caOutGoing);

if(bValidLine)

cpInputRd = SendAndWaitFor(caOutGoing, cpInputRd, "OK\r\n", 3000);

}

cpInputRd = SendAndWaitFor("ATE1\r", cpInputRd, "OK\r\n", 300);

cpInputRd_temp = SendAndWaitFor("AT&T6\r", cpInputRd, "OK\r\n", 300);

printf ("Finish Loading, %s \n", cpInputRd); cpInputRd=cpInputRd_temp;

fclose(hpPatchFile);

}

282 Rev. 1.41

// Returns FALSE when at end of file

// Stops after first LF.

bool GetFileTextLine(char *cpIn)

{

*cpIn = 0; char cpInChar[8]; cpInChar[1] = 0;

while(!feof(hpPatchFile))

{

cpInChar[0] = fgetc(hpPatchFile);

strcat(cpIn, cpInChar);

if(*cpInChar == '\n')

return TRUE;

}

return FALSE;

}

AN93

Rev. 1.41

283

A N 9 3

V.29 FastPOS Detailed Wave Files

The following is a wave file that shows a V.29 FastPOS SDLC transaction. It was captured with the program listed

above with a keep-alive loop. See "Appendix B—Line Audio Recording" on page 286 for details on how to capture

wave files.

RTS (not

RTS) signal

284

V.29 Calling Tone

Answer Tone

(2225 Hz)

Repeat

Then the SNRM Packet:

<0x30><0x93><EM><0xB1>

DTE sends the calling modem a UA packet

Calling modem is receiving and sends to the DTE: to transmit:

<0x30>(0x73><EM><0xB1>

“Connect Packet” :

<EM><0xBE><0x24><0x24><EM><B1>

DTE sends the calling modem an RR packet to transmit:

<30><EM><0xA0><EM><B1>

Calling modem is receiving.

Sends a Tx abort to DTE:

<EM><0xB2>

Then the received RR packet:

<30><EM><0xA0><EM><B1>

Rev. 1.41

AN93

V.29 FastPOS DTE Trace

This is recorded while the program listed above is running. The patch load is left out for brevity.

DCE CR LF CR LF O K CR LF a t z CR CR LF O K CR LF

DTE a t z CR A T

DCE A T E 0 CR CR LF O K CR LF CR LF C :

DTE E 0 CR a t & T 6 CR

DCE b c d 8 CR LF CR LF O K CR LF CR LF O K CR LF

DTE A T * y 0 CR

DCE CR LF O K CR LF

DTE a t + g c i = B 5 CR A T & D 2 x 4 \

DCE CR LF O K CR LF

DTE V 2 % c 0 % V 1 + I F C = 0 , 2 CR A

DCE CR LF O K CR LF

DTE T \ N 0 + F C L A S S = 1 CR A T : U

DCE CR LF O K CR LF

DTE A A , 8 0 0 4 CR A T + E S = 6 , , 8

DCE CR LF O K CR LF CR

DTE CR A T + E S A = 0 , 0 , 0 , , 1 CR

DCE LF O K CR LF CR LF O K CR LF

DTE A T : U 8 7 , 0 5 0 A CR A

DCE CR LF O K CR LF

DTE T : U 7 A , 1 CR A T D T 8 , 0 1 1 5

DCE CR LF C O N N E C T CR LF

DTE 5 1 1 5 8 5 3 2 5 0 7 CR LF

DCE EM BE $ $ EM B1 0 93 EM B1 EM B2 0 EM A0 EM B1

DTE 0 s EM B1 0 EM A0

DCE EM B2 0 EM A0 EM B1 EM B2 0 EM A0 EM B1

DTE EM B1 0 EM A0 EM B1 0 EM A0

Rev. 1.41

285

A N 9 3

A

PPENDIX

B—L

INE

A

UDIO

R

ECORDING

Recording and examining the audio signals on the phone line is one of the best debugging techniques for PSTN modems. Virtually all the relevant signals are in the audio spectrum and are easy to acquire using a standard PC sound card and accessory hardware and software that is especially designed for music creation and analysis.

The required hardware is a device that connects to the PC audio input to the telephone line, such as the Radio

Shack

®

Phone Recorder Controller. It can be used with any computer equipped with a 3.5 mm audio-input jack.

The resulting audio signal can usually be recorded in the field using the computer’s operating-system resources, but for analysis, a software package capable of showing the spectral contents as they change over time is recommended. The two most widely used ones are Adobe Audition, a commercial product, and WaveSurfer, which is a free open-source product that runs on Windows, Linux, OS X and Unix. This audio-recording technique does not replace sophisticated test equipment, but it is quite useful in showing up some faults in the line and in the modem's (DUT) negotiation with the device on the other side of the phone line.

When to Use Audio Recording

This technique is best used when the modem appears to connect normally against some servers but does not connect well when calling a specific server or modem. This implies the hardware is functional and the issues most likely involve the negotiations between the modems during connect and retrain. One way to rule out the possibility of a hardware problem is to call the server or modem where the connect issue is found using the Silicon Labs EVB module.

Times When Audio Recording May Not Help

Some signals are exceptions and cannot be monitored in this way due to the limits of the bandwidth examined.

Examples are the dc voltage and currents that exist during both on- and off-hook conditions, precise details of the pulse dialing waveforms, and most EMI signals. EMI signals, which are not visible during the recordings, may produce in-band demodulated and cross-product signals in the modem.

Some in-band signals cannot easily be monitored this way because they are common-mode signals. While they may be less visible to the recording apparatus, they can be received by the modems in some cases. An example of this is a strong common-mode 50 or 60 Hz hum with its harmonics (a 50 or 60 Hz buzz).

Hardware Setup

The Radio Shack Recorder Control contains a transformer that bridges the phone line with a dc-blocking capacitor, plus a voice-operated switch output that starts and stops a recording device. We only use one of the output connectors since we are not interested in the VOX mechanism. Connect the audio output connector (a 3.5 mm

O.D. connector) to the microphone input socket. The RJ11 connector on the Recorder Control should be connected to the Tip and Ring of the phone line being monitored.

286 Rev. 1.41

AN93

The larger of the two jacks (3.5 mm) carries audio to the PC

Connect the R11 jack in parallel with Tip/Ring of modem

Figure 54. Hardware Setup

Setting PC Microphone Input for Recording

Use the following procedure:

1. Open the application that controls the audio input.

2. Select Microphone or Line In as the input.

3. Adjust balance and volume as necessary.

4. Make sure that AGC is disabled (may be called "Mic Boost"). Changing the input gain during recording makes the recorded signal difficult to analyze.

Making the Recording

Use the following procedure:

1. Open an application that records an audio input signal and saves it to a file. The preferred format is PCM

(*.wav); MP3 (*.mp3) is also acceptable.

2. To reduce the size of the resulting file, set the sample rate to 8000 Hz, resolution to 16 bits, single channel

(mono). If further compression is desired, companding (A-law / µ-law) can be done, but higher forms of compression are not recommended, since they are optimized for the human voice, not modem data.

Rev. 1.41

287

A N 9 3

Audio Playback and Analysis

Below are two displays showing the results of recording a good V.22 transaction using Adobe Audition. We need to examine the signal both in the time domain and the frequency domain, with the frequency domain being a much more useful view. The graphs below show time on the horizontal axis and either wave energy in dB or Frequency in

Hz on the vertical scale. In the frequency display, the color of the wave indicates the energy at that combination of elapsed time and frequency. The color scheme is programmable. It is typical in the temporal view to see a dc offset until one applies a high-pass filter, a step that is rarely necessary.

Figure 55. Adobe Audition Temporal View of a Good V.22 Transaction

288 Rev. 1.41

AN93

Figure 56. Adobe Audition Spectral View of a Good V.22 Transaction

An important parameter that is not obvious at first glance is the resolution in “bands” of the spectral display. There is a tradeoff that must always be considered. This is set up in the Options->Settings Display tab in the Adobe

Audition product. This parameter allows for finer and coarser vertical (frequency) resolution at the cost of time-

domain uncertainty. Figures 57 and 58 depict the same wave files but with 256 bands versus 2048 bands. One can see better timing details in one graph compared with the other. The 256-band spectral display shown in Figure 57

shows the fine timing details of the protocol, but with poor frequency resolution. The 2048-band spectral display

shown in Figure 58 allows more precise frequency measurements and signal separation, but at the cost of

obtaining a coarser time resolution.

Rev. 1.41

289

A N 9 3

Figure 57. 256 Band Spectral Display

290

Figure 58. 2048 Band Spectral Display

Rev. 1.41

AN93

Audio-Recording Pitfalls

To facilitate communications protocol debugging, it is imperative that audio recordings be made properly. The two most common conditions that degrade the quality of audio recordings are:

 "Waveform clipping due to excessive recording level

 "Time-varying levels due to use of AGC (automatic gain control)

Figure 59. Recording Made at Excessive Level

The above recording was made at an excessively high level. One can see clipping in the time domain and numerous distortion products in the frequency domain.

Figure 60. Recording Made with AGC Noise Reduction

The above recording was made with AGC "Noise Reduction" still enabled, as can be seen from the gradual level drop in the time domain graph at the start of V.22 negotiations. It also shows evidence of a microphone being used instead of the Radio Shack adapter. This is visible in the frequency-domain graph as horizontal striations (an undulating frequency response) during the scrambled portion of the V.22 communication. One can also see thirdharmonic distortion.

Rev. 1.41

291

A N 9 3

Details of Some Low-Speed Protocols

The following annotated recordings give basic ideas of what to expect the EPOS modem transactions will look like.

There are many possible variations of these examples, both in and out of compliance with published standards, in common use. There are also very unusual variations that Silicon Labs has made efforts to support in order to allow customers to connect to non-standard and essentially broken modems. Some of these are described in a later section.

Bell 212 (2225 Hz

Answer Tone)

Answering modem’s

Scambled Binary

Ones and Scrambled

Data; visually indistinguishable from each other.

DTMF dialing

Calling modem’s

Scrambled Binary

Ones and Scrambled

Data; visually indistinguishable from each other.

Figure 61. Appearance of Bell 212 Protocol

2100 Hz

Answer Tone

DTMF dialing

Unscrambled Binary

Ones (USB1) signal.

Two tones at 2250 and

2850 Hz.

Scrambled Binary

Ones and Scrambled

Data; visually indistinguishable from each other.

Calling modem’s

Scrambled Binary

Ones and Scrambled

Data; visually indistinguishable from each other.

292

Figure 62. Appearance of V.22 Protocol

Rev. 1.41

AN93

Unscrambled Binary

Ones (USB1) signal.

Two tones at 2250 and 2850 Hz.

2100 Hz Answer Tone.

The three short horizontal lines are the S1 signal that triggers V.22bis training. The S1 signal is an unscrambled double digit 00 – 01.

Answering modem’s scrambled binary ones and scrambled data; visually indistinguishable from each other.

Calling modem’s

Scrambled Binary

Ones and Scrambled Data; visually indistinguishable from each other.

Figure 63. Appearance of V.22 bis Protocol

This looks the same as the V.22 bis protocol above except for S1 signal used for signaling V.22 bis(ness) and for start of retrains.

2100 Hz Answer Tone.

DTMF dialing.

Caller Responds with

SB1s and scrambled data.

Caller sends SB1s immediately.

Figure 64. Appearance of V.22 Fast Connect Protocols

Rev. 1.41

293

A N 9 3

As shown in Figure 65, the V.29 FastPOS protocol looks different than the older, slower V.22-like protocols. It is

also half-duplex, and each participating modem uses the entire spectral space available on the telephone line.

A receiving modem recognizes that the calling modem is V.29-capable by detecting the V.29 calling tone at 980 Hz.

Another example with some more SDLC-oriented data is provided later in this document.

DTMF dialing.

V.29 Calling

Tone (980 Hz).

Answer Tone

(2225 or 2100 Hz).

Answering modem sends training patterns and packet(s).

Calling modem sends training patterns and packet(s).

Figure 65. Appearance of V.29 FastPOS Protocol

Modem exchange packets.

294 Rev. 1.41

AN93

A V.22 bis server with unpredictable and undesirable gaps during the

USB1 signal.

A V.22 bis server with a 2225 answer tone instead of

2100 Hz.

Figure 66. Examples of EPOS Server Misbehavior

Rev. 1.41

295

A N 9 3

The Answer Tone is too short at

400 ms.

Innocent, answer modem generated, guard tone.

Figure 67. Example of EPOS Server Misbehavior

296 Rev. 1.41

Examples of Line Impairments

DTMF Distorted by Low Line Level

AN93

Figure 68. Defective DTMF

Figure 69. Normal DTMF

Solutions:

Fix the telephone line.

Lower the DTMF level with AT:U46, 0BD0 or AT:U46, 0CF0

Check the loop-current level with AT:R79 and AT:R6C.

Rev. 1.41

297

A N 9 3

Power Line Related Noise

Figure 70. Odd Harmonics of 50 Hz Manifest as Horizontal Lines Spaced at 100 Hz

Causes:

Unbalanced phone line

High ac leakage supply

 Poor CMR in modem

Solutions:

Fix the telephone line.

Ground the system to earth or float completely using a battery.

Use an analog supply with lower ac Leakage

298 Rev. 1.41

AN93

UltraCOM Terminal Emulator

UltraCOM is a powerful serial terminal tool developed by Silicon Laboratories for use with the ISOmodem devices.

UltraCOM is capable of supporting up to four concurrent DTE Terminal windows, which interface to serial COM ports. The DTE Terminal provides file transfer tools for patch loading and block data transfer. It supports a full range of COM port settings, including baud rate, data size, parity, mark bits, flow control, and timeouts. The main terminal panel can display non-printable characters; it also supports copy/paste, search, and file logging.

UltraCOM provides a basic scripting language for automated DTE port control with a time-stamped results log. The tool also provides synchronized WAV file recording via the Microsoft Windows OS mixer device. This feature provides a way to record a telephone call on the PSTN line that is synchronized to the DTE commands and data.

Terminal Overview

The Terminal menu is used to open a connection to up to four serial ports. The DTE Terminal window consists of a terminal toolbar, main terminal panel, terminal shell panel, and terminal command history, and status bar as shown

in Figure 71.

 

Figure 71. UltraCOM Terminal Window

Main Terminal Panel

The Main Terminal panel provides direct, live typing to the serial port. These direct commands are buffered in the command history panel upon the detection of a carriage return. The proceeding characters (since the previous carriage return) are appended to the Command History panel.

Terminal Shell Panel

This panel provides a buffer to construct a command or paste text from other applications. The text in this panel is sent to the modem when the user types a carriage return. The transmitted string is also stored in a shell history list, which is navigated using the up and down arrows, page up, and page down keys.

Rev. 1.41

299

A N 9 3

Command History Panel

The Command History panel provides access to the command history, which is accumulated from direct typing in the Main Terminal panel or read from a text file.

Script Overview

A script is a text file that is used to send and receive commands and data to and from an ISOmodem . Each line of the script consists of three fields: command, data, and control. The command tells UltraCOM what to do with the data, and the control field is an integer parameter for that transaction. For instance, one of the most commonly used commands is "S" to send a text string to the modem. In the script in Figure 2, for the line:

S AT\r 100

UltraCOM sends the string “AT” followed by an ASCII <CR>, then waits 100 ms until it executes the next command. A full list of commands can be found in the documentation that is shipped with UltraCOM.

The Script menu is used to edit, execute, and review results for the DTE Terminal scripts. A script is associated with each DTE Terminal. The UltraCOM script engine will execute all DTE Terminal scripts concurrently, making

UltraCOM a powerful tool for analyzing both ends of a modem transaction. A script file can be written and edited

using the UltraCOM Script Editor (see Figure 72) or an external text editor.

300

Figure 72. UltraCOM Script Editor

Rev. 1.41

AN93

Once the script is written, it is executed using the Script Execution dialog box (Figure 73). In this example, there is

one DTE terminal active; the script is to be executed once, and the signal on the audio input is recorded to a PCM file, which, by default, is call.wav in the UltraCOM directory.

Figure 73. UltraCOM Script Execution Dialog Box

A results script is generated for each DTE Terminal script, as shown in Figure 74. This illustrates one of the most

powerful features of UltraCOM: each line in the script is timed stamped, where the time corresponds to that in the recorded file, call.wav. This gives the ability to correlate events on the telephone line to commands and data sent over the DTE interface.

Figure 74. UltraCOM Script Results Viewer

For more information on UltraCOM, please contact Silicon Laboratories.

Rev. 1.41

301

A N 9 3

A

PPENDIX

C—P

ARALLEL

/SPI I

NTERFACE

S

OFTWARE

I

MPLEMENTATION

This appendix describes the software interface requirements for communication with the ISOmodem in parallel or

SPI mode. Figure 75 shows a typical connection between a PC and the modem using the MCU C8051F12x as

interface:

Figure 75. PC to Modem Connection through a C8051F12x Demo Board

A typical application is structured in four software layers:

1. Hardware access: where the MCU performs all the basic I/O accesses to and from the modem

2. Interrupt service or polling: depending on the mode of access (polling or interrupt), this layer contains the algorithms that determine when the host and the modem exchange data.

3. Data buffer management, status and control: this portion of the code relays data between the UART and the modem in both directions. Access functions to set the software interrupt mask and the escape bit, and to query the status of software interrupts. The implementation of this layer depends on the requirements of the application layer.

4. The application layer: this code depends on the application.

302 Rev. 1.41

AN93

Software Description

Hardware Access Layer

This layer contains all the routines to access the MCU and modem hardware at the most basic level. The application layer typically does not need to access these functions directly.

Interrupt Service and Polling Layer

This block contains the interrupt service routines for both modem access and MCU to PC UART access. The application layer typically does not need to access these functions directly. The next two sections detail out the functioning of the polling and interrupt modes.

Polling HIR1 Method

Transmitting and receiving data to and from the modem is accomplished by polling HIR1 status bits TXE and REM.

Polling is implemented by the following code fragment, which runs in an infinite loop: static char bytesToSend == 12; // Declared in modemCommunicationUpdate() if ( ( readModem( HIR1 ) & SiREM ) == 0 && rxBufferSize < MODULUS_MASK )

{

readModemByte;

} if ( gUARTToModemBufferSize > 0 ) // If there are data to be sent

{

if ( bytesToSend == 12 ) // Check TXE only every twelve bytes sent

{

status = readModem( HIR1 ) & SiTXE;

if ( status ) // If transmit FIFO empty

{

writeModem( HIR0, pullByteForModem(), 0xFF );

bytesToSend--;

}

}

else // No need to check TXE because transmit FIFO is twelve deep

{

writeModem( HIR0, pullByteForModem(), 0xFF );

bytesToSend--;

// If the bytes to send count = 0, reset the count

if ( bytesToSend == 0 )

{

bytesToSend = 12;

}

}

}

Rev. 1.41

303

A N 9 3

Interrupt Service Routine (ISR) Method

Transmitting and receiving data to and from the modem is accomplished by servicing the interrupts generated by the modem. The interrupt sources are described below. Whenever new communication is initiated after a period of idling with respect to the TXE interrupt, the interrupt must be "jump-started" by calling the interrupt service routine manually.

RXF Interrupt: Receive FIFO Almost Full

The RXF bit indicates the status of the receive FIFO. If this bit is set, the FIFO is either full (contains 12 bytes) or almost full (contains 9, 10, or 11 bytes). There are two ways to clear this interrupt: the RXF bit in HIR1 can be cleared by the host, or enough bytes can be read from the receive FIFO to leave 8 bytes or less, thus removing the condition for the interrupt. If the host clears the RXF bit, the interrupt is disabled. The interrupt can be rearmed only when the receive FIFO drops below the ten-byte threshold. The interrupt can then trigger again when the receive

FIFO fills up to ten bytes or more.

TXE Interrupt: Transmit FIFO Almost Empty

This interrupt occurs when only two bytes or fewer remain in the modem's transmit FIFO. The interrupt can be cleared by writing more data to the FIFO to clear the interrupt condition, or by clearing the TXE bit in the HIR1.

However, if the FIFO is emptied by the modem faster than it is being filled, the TXE interrupt will either persist or trigger again. If the TXE bit is cleared, the interrupt is disabled and can be rearmed only when three bytes have been placed into the transmit FIFO. The TXE interrupt may then trigger again when the transmit FIFO drops below the three-byte threshold. If the transmit FIFO is empty and new data need to be transmitted after the TXE interrupt has been cleared, the TXE interrupt needs to be jump-started by calling the interrupt service routine manually.

Timer Interrupt: Receive FIFO Not Empty

This interrupt occurs whenever some data remained in the modem's receive FIFO without the FIFO being read for a period of time set in register U6F. This happens typically at the end of a data burst, when there aren't enough bytes in the receive FIFO to cause an RXF interrupt, and no more data are received. A timer interrupt can also occur when the receive FIFO is full if the RXF interrupt was disabled by clearing the RXF bit. The timer is also reset when new received data are added to the receive FIFO.

The reset value of U6F is 1 ms. The timer interrupt can only be cleared by reading at least one byte from the receive FIFO. If there remain bytes in the receive FIFO after servicing a timer interrupt, the timer will trigger another interrupt after the same amount of time specified in the U6F register.

U70 Interrupt

This interrupt is analogous to the interrupt pin when operating in UART mode. It is the result of a condition set in the U70 register being met, e.g. a parallel phone detection if bit PPDM was set in U70.

The U70 interrupt, indicated by the INT bit in HIR1, can be enabled and disabled using the INTM bit in the same register. The only way to clear this interrupt is by sending the AT:I command to the modem. Typically, this requires the application layer to send an ESC control word to place the modem in command mode before sending AT:I. The response from the AT:I reports the cause of the interrupt. Refer the programmer's guide for more information.

Figure 76 shows the ISR implementation for modem-originated interrupts. The interrupt service routine keeps

running in a loop until all interrupt conditions are cleared.

304 Rev. 1.41

AN93

Figure 76. Parallel- or SPI-Port Interrupt-Service Flowchart

Rev. 1.41

305

A N 9 3

D

OCUMENT

C

HANGE

L

IST

Revision 0.5 to Revision 0.6

Added Si2493 to title.

Added V.92 information.

Added V.44 information.

Added and expanded several AT+ commands.

Added U71 and U9F-UAA registers.

Corrected CTS* trigger points.

Added note for U70 configuration for Australia and

Brazil

Expanded "5.14. Legacy Synchronous DCE Mode/

V.80 Synchronous Access Mode".

Added "2.5. PCM/Voice Mode (24-Pin TSSOP and

38-Pin QFN Only)".

Added "6.4. SMS Support".

Added "6.5. Type II Caller ID/SAS Detection".

Added "6.7. Modem-On-Hold".

Added "6.12. V.92 Quick Connect".

Revision 0.6 to Revision 0.7

Added V.29 FC to Table 1.

Updated part numbers in "4.3. Bill of Materials".

Updated EE section and example code.

Updated Table 57, “U-Register Descriptions,” on page 98.

Updated U63 bit map.

Updated U7D bit map

Updated “22.1. Country Register Settings for CTR/

TBR21 ATAAB and CTR21 Type Countries” on page

138.

Corrected New Zealand Pulse dial settings in “22.20

Country Register Settings for New Zealand” on page

147.

Updated Table 113 on page 170.

Deleted references to U69 (now for internal use only).

Revision 0.7 to Revision 0.8

 Updates to Registers CALT and GEND.

Revision 0.8 to Revision 0.9

Document format changes.

Minor text edits.

Deleted Legacy-Synchronous mode.

Updated layout guidelines.

Updated country configuration tables.

Added “Appendix C—Si3008 Supplement”.

Added “Appendix D—EPOS Application”.

Revision 0.9 to Revision 1.0

 Added “Appendix D—Si3006/3009 Supplement” for for 3006 and 3009 DAA support.

Revision 1.0 to Revision 1.1

Major revision to reflect the latest Si24xx ISOmodem product offerings.

Added support for new product features: SPI interface and 32.768 kHz clock input.

Added software support for parallel and SPI interfaces.

Revision 1.1 to Revision 1.2

 Correction to SPI and 32.768 kHz and SPI strapping tables.

Added several registers.

Removed Appendix D.

Updated for Si2493/57/34/15/04 Revision D.

Added Si2493 and Si2439 configuration and voice functions.

Revision 1.2 to Revision 1.3

Added Si2494 and Si2439 configuration and voice functions.

Added "2.6. SSI/Voice Mode (24-Pin TSSOP and 38-

Pin QFN Only)" on page 33.

Added "5.13. EPOS (Electronic Point of Sale)

Applications" on page 137.

Added "7. Handset, TAM, and Speakerphone

Operation" on page 185.

Added "8. Security Protocols" on page 236.

Added "9. Chinese ePOS SMS" on page 244.

Revision 1.3 to Revision 1.4

Added Table 44, “Power Dissipation,” on page 59

Clarified flow control options on page 70

Deleted “6.2.2.3 Special Requirements for India”.

Updated “6.6.2 Off-Hook Condition”.

Added “7.3.3.5 Control Register Overview”.

Consolidated “7.7.2 Simplex Speakerphone” and

“7.7.5 Simplex Speakerphone Configuration”.

Updated “Appendix C Parallel/SPI Interface

Software Implementation”.

Revision 1.4 to Revision 1.41

Updated Table 104, “Country Initialization Table,” on page 146.

306 Rev. 1.41

Smart.

Connected.

Energy-Friendly

.

Products

www.silabs.com/products

Quality

www.silabs.com/quality

Support and Community

community.silabs.com

Disclaimer

Silicon Laboratories intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or intending to use the Silicon Laboratories products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and

"Typical" parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Laboratories reserves the right to make changes without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Silicon Laboratories shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted hereunder to design or fabricate any integrated circuits. The products are not designed or authorized to be used within any Life Support System without the specific written consent of Silicon Laboratories. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal injury or death. Silicon Laboratories products are not designed or authorized for military applications. Silicon Laboratories products shall under no circumstances be used in weapons of mass destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons.

Trademark Information

Silicon Laboratories Inc.® , Silicon Laboratories®, Silicon Labs®, SiLabs® and the Silicon Labs logo®, Bluegiga®, Bluegiga Logo®, Clockbuilder®, CMEMS®, DSPLL®, EFM®, EFM32®,

EFR, Ember®, Energy Micro, Energy Micro logo and combinations thereof, "the world’s most energy friendly microcontrollers", Ember®, EZLink®, EZRadio®, EZRadioPRO®, Gecko®,

ISOmodem®, Precision32®, ProSLIC®, Simplicity Studio®, SiPHY®, Telegesis, the Telegesis Logo®, USBXpress® and others are trademarks or registered trademarks of Silicon Laboratories Inc. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand names mentioned herein are trademarks of their respective holders.

Silicon Laboratories Inc.

400 West Cesar Chavez

Austin, TX 78701

USA

http://www.silabs.com

Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement

Table of contents