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
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