SSR Codes Allocation (ASSR)

The ssr.xml file defines the SSR code blocks to be used and the SSR Code allocation rules used for departing or transiting aircraft when a code allocation or change is necessary. The file is composed of two sections, the first one defining the code blocks that shall be used, the second one defining the allocation rules.

The ssr.xml file is located in the fir/ directory

Root Elementssr

The structure of the elements are as follows:

idstringUnique ID of this code block - must be unique for this FIR !
firstintegerFirst code available in this block
lastintegerLast code available in this block
prtmintegerPRotection TiMe - time in minutes that a code is protected (not allocated)

The <modesasp> elements shall only be used when mode A code 1000 can be assigned to specific city pairs. Note that only specific departure and destination airports and routes are eligible for a A1000 ssr code. The usage of A1000 requires complete mode S surveillance coverage from ground to air to ground at arrival (gate to gate Mode S coverage). This is also called Mode S declared airspace. Only major airports with the required surveillance equipment (multilateration, mode S radar coverage, etc..) use A1000. If not present,A1000 is not used. A1000 does not use a ssr code block.

adepstringdeparture airport icao code (starts with)
adesstringarrival airport icao code (starts with)

SSR code allocation rules

blockstringID of code block defined in <codeblocks>, a code block can be used in multiple allocation rules
frV / I / IVFlight Rules (I = IFR, V= VFR) - default IV
adepstringDeparture aerodrome (1, 2, 3, 4 characters of ICAO code = EB or EBBR)
adesstringArrival aerodrome (1, 2, 3, 4 characters of ICAO code = EB or EBBR)
sidstringAssigned SID standard instrument departure route (starts with)
minrflintegerLowest requested flight level - default zero
maxrflintegerHighest requested flight level - default 999

All attributes are optional except for the block attribute. The order is of importance! The first block found is used first, if the code block has no free ssr codes then the next found ssr block is used etc…

SSR codes are allocated randomly from each block. SSR Codes are available after the protection time defined for each block. (last radar detection time + PRTM in minutes) So it is quite important that at the end you have a catch-all code block rule - this could be the transit code block rule.

tip: use the first part (point name) of the SID name to allocate to multiple SIDs which use the same point name.