mini-M NCS for POR

Below is a screen capture from SpectaVue showing the Inmarsat signal that serves as the NCS for mini-M on POR.

mM_NCS

A quick run through SA confirms the 6000 bps BPSK signal.

sa_6000

Searches on google revealed the following:
  • Sync Word = 0x485763E6
  • Frame size is 1552 bits (not including sync) with FEC
  • FEC R=1/2, K=7 Poly A=0x6D Poly B=0x4F
  • Frame size is 776 bits after FEC decoding
  • De-Scramble PN 215-1 with initial vector of 0x6959
  • Differential Coding to remove phase ambiguity
  • Decoding sequence is BPSK -> FEC -> De-Scramble -> Differential Decode

Leveraging a previously developed BPSK decoder and some debug time and I now have carrier, symbol and frame lock.

mM_decoder

Also found using google was the following information:
  • Signaling Unit is 12-bytes in size
  • There are 8 time slots within a frame, each slot has a signaling unit
  • There is an extra 8-bits preceding the signaling units called “Multi-Frame”
  • 776 bits = 8 (Multi-Frame) + 12 (bytes per SU) * 8 (Time Slots) * 8 (bits per byte)

More extensive searches on google revealed the following information:
  • Message type = 0x81 is Call Announcement
  • Message type = 0x86 is Channel Assignment

Also empirically derived was the channel frequencies for spot beams advertised within the NCS channel. This is message type 0x90.

Here is some sample output from decoder:

815F09FC2C03010302300AB0
Call Announcement
MES = FC095F
LES = 2C
Priority = 03
Srv Nature = 00
Srv Type = 01--Telephone
Ch Params = 03
DID = 02
Msg # = 3

868F15D82006FA1CFA1C5AF3
Channel Assignement
MES = D8158F
LES = 20
Spot ID = 06
FreqA = 1528.5450 (1CFA)
FreqB = 1630.0450 (1CFA)

907F40400400063BA102C6A8
***** Spot Beam ******
Num = 7F40
Unknown = 4004
LES = 00
FreqA = 1547.7750 (3B06)
Channel FN = A
Channel ID = 1
Spot ID = 0


This is enough work on the NCS decoder for now. Time to move on to the voice/data channels.