Intro

This is Eloy's website, trying to document some information on retro telecom stuff.

Git repo here: https://codeberg.org/eloy/telco-book

This was partly inspired by the guide from Doge Microsystems. If you want to replicate something like this yourself I can recommend this guide, because it uses parts that are more easily available. I got quite lucky with the modem bank I received from a museum collection.

Also good guide by Marrold: https://www.marrold.co.uk/2022/04/creating-your-very-own-56k-dial-up.html

More: http://robertmartinwhite.blogspot.com/2017/09/using-cisco-vg224-analog-voice-gateway.html

https://github.com/ssshake/retro-computing-internet-resources

PBX by Hans Gelke: https://media.ccc.de/v/37c3-11716-analog_rotary_phones_get_a_second_life_with_raspberry_pi

repo: https://github.com/hansgelke/retro_v3

Event setup

BornHack

The VG224 has 24 FXS lines, which I am splitting in two parts: 14 are going to the left side of the patch panel, 10 are going to the modem bank. At most 10 patch panel ports can be used simultaneously for internet connections.

The Asterisk box should be connected to the POC system, it is possible to have in and outgoing connectivity to the DECT network as well.

There are some modems as well. If you want to connect your own computer to the internet, this is possible as well.

Deployment

  • LackRack
  • Ansible -> vg224

UART

The modem bank has 16x female DB-25 connectors. These should be connected to a dial-in server. How to connect them?

  • PCI(express) card, maybe StarTech stuff?
  • USB hub with cheap USB FTDI/CH340 stuff
  • something else?

Trunking

Bring your own Ethernet cable, we can probably make a trunk to the other side of the assembly hall, but this require crimping cables and such. And maybe NOC does have an opinion on this, needs more investigation.

Todo: buy crimping equipment and RJ45 plugs

Layout

"thinkpad 760" -> "U.S Robotics modem" -> "Panduit, port 1" -> "1st vg224";

digraph G {


"thinkpad 760" -> "U.S Robotics modem" -> "Panduit, port 1" -> "1st vg224";

"1st vg224" -> "PTT bank, modem 1";
"1st vg224" -> "PTT bank, modem 2";
"1st vg224" -> "PTT bank, modem 3";
"1st vg224" -> "PTT bank, modem 4";
"1st vg224" -> "PTT bank, modem 5";
"1st vg224" -> "PTT bank, modem 6";
"1st vg224" -> "PTT bank, modem 7";
"1st vg224" -> "PTT bank, modem 8";

"PTT bank, modem 1" -> "USB serial";



}

37C3

At 37C3 I had great plans, but it failed because of multiple reasons. Lack of time during the event and a broken power supply of the dial in server. And not enough preparations. we had vintage ThinkPads & telco assembly registered. Better luck next time.

FXO and FXS

see https://osmocom.org/projects/retronetworking/wiki/FXO_and_FXS

The Cisco VG244 (voice gateway) was announced EoL in 2014, but the documentation is still available through the Wayback Machine.

It provides 24 FXS ports, exposed over a RJ21 connector on the back side. The pinout is as follows: https://www.cisco.com/c/en/us/td/docs/routers/access/vg224/hardware/installation/guide/hig/higcabl.html

In essence, the pin of the top is the ring and the bottom is the tip, 1 to 24 from left to right. The rightermost top/botton pair is not connected.

Different names are used for an RJ21 connector. It is also used in SCSI cables. From my own experience, I can recommend against disassembling an old SCSI cable because not all pins are connected to a wire, so you can't cut the cable and solder the wires. The second reasons is the high amound of glue used within the connector part, which is a lot of work to cleanup.

But it can be cheaper to buy a '50 pin SCSI connector' on Mouser for example than to try looking for an 'telco' or 'Amphenol connector', which are the names usually used in the telco sphere.

For the patch panel, a very useful thing to know is that RJ11 cables do fit in a RJ45 socket. This is not good for the durability of the patch panel as a RJ45 panel, but if you just continue using it for RJ11, you are fine. Ethernet cables can be used for link agregation. Phone lines are a single pair, Ethernet uses 4 pairs, so they can carry 4 phone lines.

In an RJ45 socket, the middle pair consists of a blue and white/blue cable. That is the pair that is connected with RJ11. On the back side of the patch panel, the order of colors could be changed. Make sure to verify it with a multimeter.

A thing to consider: the patch panel might be 1-indexed, but the Cisco config is 0-indexed.

Full PDF is available here: https://web.archive.org/web/20040708065028if_/http://www.cisco.com:80/univercd/cc/td/doc/product/access/vg/vg224/scg/vg224scg.pdf

Images: http://cios.dhitechnical.com/VG_2XX/vg224/ The VG224 has a CompactFlash slot, but it is known that it does not work well with large cards in the order of gigabites. They come with a Cisco branded CF card by default, but if that is unavailable use a small card of 128MiB or something like that.

https://web.archive.org/web/20180305040316/http://robertmartinwhite.blogspot.com/2017/09/using-cisco-vg224-analog-voice-gateway.html

https://www.cisco.com/c/en/us/td/docs/routers/access/vg224/hardware/installation/guide/hig/higovw.html

https://web.archive.org/web/20040502195202/http://www.cisco.com/univercd/cc/td/doc/product/access/vg/vg224/scg/index.htm

https://gist.github.com/anounyym1/63450d64d4ccf817c4829260101c3b04#file-vg204-conf-L118

Config register

Check before rebooting!
To save the config before rebooting, run `copy running-config startup-config`. Sometimes the config register setting prevent this from working, change it to `0x2102` to make it save configs:
en
conf t
    config-register 0x2102

Configuration

notes at the RevSpace config: port 1 -> thomastheo phone port 2 -> modem pbx laptop

these are labeled different from config and patch panel:

port 14 -> modem 2 port 15 -> modem 1

note 0-indexing vs 1-indexing

The following is the config at 37C3, but is shown as an example:

!
hostname susco
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
!
!
!
!
voice-card 0
!
!
!         
voice service voip 
 modem passthrough nse codec g711ulaw
!
!
!
!
!
!
!
!
!
!
!
!
archive
 log config
  hidekeys
!
!
!
!
interface FastEthernet0/0
 ip address dhcp
 duplex full
 speed auto
!
interface FastEthernet0/1
 ip address 10.33.33.32 255.255.255.0
 duplex auto
 speed auto
!
interface Dialer0
 no ip address
!
!
ip http server
!
!
!
control-plane
!
!
!
voice-port 2/0
!
voice-port 2/1
 no echo-cancel enable
 no comfort-noise
!
voice-port 2/2
!
voice-port 2/3
!
voice-port 2/4
!
voice-port 2/5
!
voice-port 2/6
!
voice-port 2/7
!
voice-port 2/8
!
voice-port 2/9
!
voice-port 2/10
!
voice-port 2/11
!
voice-port 2/12
!
voice-port 2/13
 no echo-cancel enable
 no comfort-noise
!
voice-port 2/14
 no echo-cancel enable
 no comfort-noise
!
voice-port 2/15
!
voice-port 2/16
!
voice-port 2/17
!
voice-port 2/18
!
voice-port 2/19
!
voice-port 2/20
!
voice-port 2/21
!         
voice-port 2/22
!
voice-port 2/23
!
!
!
!
!
dial-peer voice 101 voip
 destination-pattern .T
 modem passthrough nse codec g711ulaw
 session protocol sipv2
 session target sip-server
 incoming called-number 200*
 dtmf-relay rtp-nte
 codec g711ulaw
!
dial-peer voice 1 pots
 destination-pattern 2001
 port 2/0
 authentication username 2001 password 091E1E5948
!
dial-peer voice 2 pots
 destination-pattern 2002
 port 2/1
 authentication username 2002 password 1357474259
!
dial-peer voice 13 pots
 destination-pattern 2013
 port 2/13
 authentication username 2013 password 1445425A5F
!
dial-peer voice 14 pots
 destination-pattern 2014
 port 2/14
 authentication username 2014 password 135747435F
!
dial-peer voice 102 voip
 session protocol sipv2
 session target sip-server
!
!
sip-ua 
 registrar ipv4:10.42.160.12 expires 3600
 sip-server ipv4:10.42.160.12
!         
!
line con 0
line aux 0
line vty 0 4
!
end

Anchor Datacomm modem bank

https://osmocom.org/projects/retronetworking/wiki/Anchor_Datacomm_Compact_336-144

Dialup on modern Linux

StarTech UART PCIe breakout

https://osmocom.org/projects/retronetworking/wiki/StarTech_PEX16S952LP

DSLAM

https://osmocom.org/projects/retronetworking/wiki/Allnet_ALL1268M