Project

General

Profile

Actions

TCSM2 Exchange Terminal modules

A working Nokia TCSM2 system requires a minimum of 1 and a maximum of 4 Exchange Terminal modules, either ET2E (2xE1) or ET2A (2xT1). The choice of ET module determines whether the TCSM2 system will operate in E1-based ETSI environment or T1-based ANSI environment. (More precisely, the selection between the two fundamental environments is done with a global configuration command on the TRCO - but in order to get a working system, that selection needs to match physically present ET hardware.)

Principle of operation

The Line Interface (LI) between TRCO and each ET module is a bidirectional synchronous serial pipe running at 4096 kbit/s, i.e., twice the bit rate of an E1 circuit. There is an 8 MHz clock generated by TRCO and carried to the ET1TC backplane by the interchassis cable; the latter backplane then delivers this clock to all ET module slots. (Because the clock rate is 8.192 MHz but the LI bit rate is 4096 kbit/s, there are two clock cycles per bit interval.) There is also an 8 kHz frame sync signal, similarly distributed from TRCO to all connected ET modules. For each individual ET module slot (up to 4 of which can be connected to one TRCO), there is one dedicated differential pair carrying LI bits from TRCO to the ET module, and another dedicated differential pair carrying LI bits in the other direction. This 4096 kbit/s proprietary interface carries all of the traffic for both E1 (or T1) interfaces served by the ET module, although it is unclear from the documentation if the bit streams from the two E1s are interleaved per bit or per 8-bit timeslot.

Whichever interleaving scheme is used, the part of 4096 kbit/s LI that would otherwise correspond to E1 timeslot 0 (only on E1 trunk 0 or perhaps on both E1 trunks, not clear) is repurposed for a private HDLC channel between TRCO and the local processor on the ET module.

Relation to other Nokia platforms

It appears that the same ET2E modules (and perhaps ET2A) were also used in Nokia's BSC of the same era, and maybe in an MSC too. It is an open question if there are any firmware differences, or perhaps differences in jumper or other hardware configuration, between ET2E used in TCSM2 and the same ET2E used in BSC or MSC or other platforms.

ET2A for T1 circuits

I (falconia) do not currently have an ET2A to play with: unlike ET2E, ET2A does not show up in the online inventory system of the surplus vendor I currently work with, the one willing to sell to ultra-small customers who don't have compliance managers. I might ask them about it at a later time, though.

Compared to E1 modules examined below, ET2A has one distinct advantage: each of the two T1 interfaces is brought out on a standard RJ-48C jack. (Most people call it RJ-45, but RJ-48C is the official designation for this type of jack when it is used for a T1 interface per FCC specifications.) However, this advantage is effectively nullified by the problem that icE1usb supports only E1, and there is currently no solution for T1 that offers the same level of sanity. (Sanity as in something other than aftermarket Digium cards where the quality of driver code is atrocious, and it is not even clear if a non-working system is a driver problem or defective hardware.)

ET2E for E1 circuits

Even though RJ-48C is an official standard only for T1, many people have adopted the same convenient 8-position modular jack for E1 circuits, including the designers of the already mentioned icE1usb. But unfortunately, not Nokia: AFAICT Nokia never made a version of ET2E for TCSM2 that brings out the same convenient jacks. Instead ET2E for 2xE1 was made in two versions in terms of physical interfaces:

ET2E with a DIN 41612 half-C connector

The electrical interface for the two E1 circuits on this ET2E version is the same as it would have been if they had provided RJ-48C jacks, the same 120 ohm electrical interface one would connect directly to an icE1usb. But the connector is a difficult one: it is DIN 41612 of size "1/2 C", i.e., 3 rows with 16 pins in each row. It is the same E1 interface connector as used by the same manufacturer (Nokia) on the EKSOS N20 NCU. Official mating connectors that are meant to be mounted on cables (free-hanging inline) do exist, but only with a cost-prohibitive MOQ. I tried using the same approach that was used by laforge on the EKSOS - use a female connector that is officially meant for PCB rather than cable mounting - but I ran into an unexpected problem: the connector does not fit unless I destructively break off some plastic tabs from the connector housing on the ET2E module, which I was reluctant to do. (Update: I am now more willing to do that little bit of destructive surgery on the plastic, but this approach has been shelved for now, as the ET2E-T module in question has other issues - see below.)

ET2E with coaxial E1 interfaces

The other version of ET2E brings out each E1 interface on a pair of miniature coaxial connectors - it is the 75 ohm unbalanced E1 interface. My initial naive thought (prior to getting one of these modules into my hands) was that these coaxial connectors are SMB - but that assumption turned out wrong. My current working hypothesis is that the connectors are Mini-SMB; a sample Mini-SMB plug for test fitting is currently on order from Digi-Key.

We do have one ET module with coaxial E1 interfaces: it is ET2E-C of the first generation. My plan is to test it with external balun adapters that convert the 75 ohm coaxial E1 interface to the 120 ohm version on RJ-48C, but this plan is currently deferred until I confirm that the connectors are indeed Mini-SMB (or if they aren't, figure out what connector type it is) and get the necessary adapter pigtail cables from this difficult connector to classic BNC.

Different generations of ET2E

Aside from the coaxial vs 120 ohm balanced dichotomy, it appears that ET2E was made in 3 different evolutionary generations:

First generation: ET2E and ET2E-C

In the first generation, the 120 ohm balanced version (with the weird connector) was called simply ET2E, whereas the coaxial interface counterpart is ET2E-C. We have one ET2E-C module in our hands; by examining this module, we can make the following observations:

  • The on-board processor is 80188 - the variant of 80186 with an 8 bit wide external data bus;
  • There is no flash memory on board, only an old-fashioned socketed EPROM (not writable) and RAM;
  • There are no CPLDs or FPGAs, only Infineon HDLC controller and E1 framer/LIU chips and a board full of discrete logic.

Some pictures of the board:

https://www.freecalypso.org/members/falcon/pictures/Nokia_TCSM2/ET2E-C/

This ET2E-C module works successfully with our TRCO: all ZCC:TOTAL tests pass, including "Loop Test 1", which implies successful communication between TRCO and the ET module's on-board processor. The firmware image in TRCO system flash that supports these early-generation ET2E (-C or not) modules is ET2RAMQA.PAC - note the "RAM" in the name - hence we see evidence of an architecture that consists of an immutable boot ROM on the board plus a RAM-based firmware image that is loaded from TRCO (over HDLC!) on every boot.

Second generation: ET2E-S and ET2E-SC

All we know is the name - we don't know if this version is closer to the original or to ET2E-T.

Third generation: ET2E-T and ET2E-TC

The first ET module we bought from shields-e is an ET2E-T, aka C105507. It appears to be a significantly redesigned implementation of ET module functionality compared to the original:

  • The processor is L186EB16, i.e., full 16 bit wide data bus instead of 80188;
  • Instead of the old-fashioned EPROM, this board sports an Am29LV400BT flash chip - directly soldered, no more socket;
  • There is a Lattice CPLD and an Altera FPGA, and a lot less discrete logic.

The principal visible difference between the early-generation ET2E-C and the late-generation ET2E-T is that the former works in our setup, whereas the latter does not. When I tried running built-in diagnostics from the test menu on TRCO, the visible behavior with ET2E-T connected (by way of our interchassis cable) was exactly the same as with no ET module present at all: all tests that touch the ET module would fail. At first I was uncertain as to the cause: the DIY interchassis cable was naturally suspect; I also wondered if perhaps TRCO to ET communication couldn't work in the absence of an incoming E1 clock, and I was (and still am) running without E1 circuit connections thanks to Nokia's connector conspiracy. However, when I replaced the ET2E-T module with the later-bought ET2E-C, all internal tests started passing, including "Loop Test 1" - hence we have proof now that our ET2E-T module has some kind of problem.

I am wondering if the problem might be a firmware incompatibility between whatever happens to be in the on-board flash on our ET2E-T and what our TRCO came loaded with. The old ET module architecture with an immutable boot ROM on the module and load-on-boot run-from-RAM operational firwmare is very sane for configuration management, but the new architecture used on ET2E-T is unclear. The corresponding ET firmware image on TRCO is EA2TCSM2.PAC, said to be common between ET2E-T and ET2A-T, but it is not clear at all whether it is a run-from-RAM image or if it gets written into on-module flash.

Given the difficulty of troubleshooting this ET2E-T issue (a proper reverse engineering job would have to start with reading out the full flash content from both TRCO and ET2E-T, both of which would be difficult), I am switching my focus to the older (and saner) ET2E-C for the time being.

Updated by falconia 1 day ago · 7 revisions

Add picture from clipboard (Maximum size: 48.8 MB)