Skip to main content

FXO vs FXS: which interface connects to what?

FXO and FXS describe opposite sides of a traditional analog telephone connection. Confusing them is easy because both may use familiar telephone connectors, but electrically and functionally they do different jobs.

A useful rule is:

  • FXS provides a telephone line to an analog endpoint.
  • FXO behaves like the analog endpoint and connects to a telephone line.

FXS and FXO relationship showing an analog telephone connected to FXS and a PSTN line connected to an FXO gateway that bridges to SIP

What is an FXS interface?​

Foreign Exchange Station (FXS) is the side that provides line service to a telephone or other analog device. It typically provides functions such as:

  • DC line/battery feed;
  • ringing voltage;
  • dial tone or related call-progress behavior;
  • detection of on-hook/off-hook state;
  • caller-ID signaling depending on implementation and region.

On an analog PBX or ATA, the port into which you plug a conventional telephone is normally an FXS port.

If the goal is to connect an analog telephone, fax machine or modem-like endpoint to SIP, an FXS gateway/ATA is usually the relevant device.

What is an FXO interface?​

Foreign Exchange Office (FXO) is the side that connects to an FXS-provided line. It behaves electrically like the telephone-side device.

An FXO interface therefore needs to handle functions such as:

  • line seizure/off-hook;
  • ring detection;
  • caller-ID reception;
  • loop-current behavior;
  • call-progress/tone detection;
  • analog audio transmit and receive.

If the goal is to connect a PSTN line or analog PBX extension/trunk into a SIP system, the gateway needs FXO ports.

IRIS4000, for example, provides two FXO interfaces specifically for this direction of integration.

FXO/FXS in a SIP migration​

Consider an organization replacing an old PBX with Asterisk or another SIP PBX but retaining one legacy analog PSTN line.

The path becomes:

PSTN line (FXS service)
↓
FXO port on gateway
↓
SIP/RTP over IP
↓
Asterisk / SIP PBX
↓
IP phones or applications

The FXO gateway terminates the electrical behavior of the analog line and presents the call to the IP system using SIP.

The reverse problem — connecting a traditional analog telephone to the new SIP PBX — uses an FXS gateway instead.

Why regional analog behavior matters​

Unlike SIP signaling, analog telephone behavior is not completely uniform around the world. Deployment can vary in:

  • impedance/termination;
  • ringing cadence;
  • caller-ID signaling method and timing;
  • call-progress tones;
  • disconnect supervision;
  • line-voltage characteristics.

An FXO design therefore needs regional configuration and field validation. A gateway that works with one carrier can require different timing or line settings on another network even though its SIP side is unchanged.

Caller ID timing​

Caller ID can be especially sensitive to local signaling rules. Depending on the network, caller-ID information may arrive between ring bursts or through different modulation/DTMF formats.

The gateway must avoid seizing the line too early if doing so would prevent caller-ID reception. This is one reason analog telephony firmware often includes configurable ring-count and caller-ID timing behavior.

Why FXO gateways still exist in an IP world​

Even where most new communication systems are IP-based, analog interfaces remain in:

  • legacy PSTN lines;
  • older PBXs;
  • building systems;
  • alarm and emergency equipment;
  • installed intercoms;
  • remote sites where replacement is gradual rather than immediate.

An FXO gateway provides a migration boundary between that installed analog equipment and the IP application.

FXO gateway design considerations​

A compact embedded FXO-to-SIP product normally includes:

  1. analog line-interface circuitry;
  2. audio conversion;
  3. ring/caller-ID/call-progress handling;
  4. a processor or embedded host;
  5. SIP signaling;
  6. RTP media;
  7. provisioning and diagnostics.

The analog line interface and the SIP component solve different problems, which is why a robust design keeps them separated behind clear application logic.