4G/LTE - PWS/CBS |
|||||||||||||||||||||||||||||||||||||||
CMAS
CMAS stands for Commercial Mobile Alert System. It is equivalent to CBS(Cell Broadcasting Service) in 2G and 3G. At high level view, CMAS, ETWS, CBS belongs to a system called PWS (Public Warning System).
In LTE, there are three main components getting involved in sending CMAS as follows. i) Paging : CMAS Notification. ii) SIB 12 : Message Format and Contents
Following is Paging, SIB12 showing the field (IEs) related to CMAS. (For the details of ETWS, refer to 3GPP TS23.828 and TS22.268 and TS 36.523 18.1 CMAS on LTE)
PCCH-Message ::= SEQUENCE +-message ::= CHOICE [c1] +-c1 ::= CHOICE [paging] +-paging ::= SEQUENCE [0001] +-pagingRecordList ::= SEQUENCE OF OPTIONAL:Omit +-systemInfoModification ::= ENUMERATED OPTIONAL:Omit +-etws-Indication ::= ENUMERATED OPTIONAL:Omit +-nonCriticalExtension ::= SEQUENCE [01] OPTIONAL:Exist +-lateNonCriticalExtension ::= OCTET STRING OPTIONAL:Omit +-nonCriticalExtension ::= SEQUENCE [10] OPTIONAL:Exist +-cmas-Indication-r9 ::= ENUMERATED [true] OPTIONAL:Exist +-nonCriticalExtension ::= SEQUENCE OPTIONAL:Omit
BCCH-DL-SCH-Message ::= SEQUENCE +-message ::= CHOICE [c1] +-c1 ::= CHOICE [systemInformation] +-systemInformation ::= SEQUENCE +-criticalExtensions ::= CHOICE [systemInformation-r8] +-systemInformation-r8 ::= SEQUENCE [0] +-sib-TypeAndInfo ::= SEQUENCE OF SIZE(1..maxSIB[32]) [1] | +- ::= CHOICE [sib12-v920] | +-sib12-v920 ::= SEQUENCE [10] | +-messageIdentifier-r9 ::= BIT STRING SIZE(16) [0001000100010010] | +-serialNumber-r9 ::= BIT STRING SIZE(16) [0011000000000000] | +-warningMessageSegmentType-r9 ::= ENUMERATED [lastSegment] | +-warningMessageSegmentNumber-r9 ::= INTEGER (0..63) [0] | +-warningMessageSegment-r9 ::= OCTET STRING SIZE(ALIGNED) [01C576597E2EBBC7F950A8D168341A8D46A3D168341 A8D46A3D168341A8D46A3D168341A8D46A3D168341A 8D46A3D168341A8D46A3D168341A8D46A3D168341A8 D46A3D168341A8D46A3D168341A8D46A3D1000A] | +-dataCodingScheme-r9 ::= OCTET STRING SIZE(1) [01] OPTIONAL:Exist | +-lateNonCriticalExtension ::= OCTET STRING OPTIONAL:Omit | +-EXTENSION ::= SEQUENCE +-nonCriticalExtension ::= SEQUENCE OPTIONAL:Omit
Followings are the description related to warningMessageSegment. (For messageIdentifier, serialNumber, dataCodingScheme, click on the link for the details) According to 36.331, warningMessageSegmentType, warningMessageSegmentNumber,warningMessageSegment are defined as follows.
warningMessageSegment : Carries a segment of the Warning Message Contents IE defined in TS 36.413-9.2.1.53. The first octet of the Warning Message Contents IE is equivalent to the first octet of the CB data IE defined in and encoded according to TS 23.041 - 9.4.2.2.5 and so on.
< 36.413-9.2.1.53 Warning Message Contents >
warningMessageSegmentNumber : Segment number of the ETWS warning message segment contained in the SIB. A segment number of zero corresponds to the first segment, one corresponds to the second segment, and so on.
warningMessageSegmentType : Indicates whether the included ETWS warning message segment is the last segment or not.
NOTE : If you want to get an example of full log for ETWS, check out this tutorial from Amarisoft TechAcademy
According to 36.331-5.3.2.3, the procedure to receiving CMAS is described as follows.
When UE recieved the Paging message,
BCCH-DL-SCH-Message message: c1 (0) c1: systemInformationBlockType1 (1) systemInformationBlockType1 cellAccessRelatedInfo plmn-IdentityList: 1 item Item 0 PLMN-IdentityInfo plmn-Identity mcc: 3 items Item 0 MCC-MNC-Digit: 0 Item 1 MCC-MNC-Digit: 0 Item 2 MCC-MNC-Digit: 1 mnc: 2 items Item 0 MCC-MNC-Digit: 0 Item 1 MCC-MNC-Digit: 1 cellReservedForOperatorUse: notReserved (1) trackingAreaCode: 0000 [bit length 16, 0000 0000 0000 0000 decimal value 0] cellIdentity: 00000000 cellBarred: notBarred (1) intraFreqReselection: notAllowed (1) .... ..0. csg-Indication: False cellSelectionInfo q-RxLevMin: -110dBm (-55) p-Max: 23dBm freqBandIndicator: 4 schedulingInfoList: 3 items Item 0 SchedulingInfo si-Periodicity: rf16 (1) sib-MappingInfo: 0 items Item 1 SchedulingInfo si-Periodicity: rf32 (2) sib-MappingInfo: 1 item Item 0 SIB-Type: sibType3 (0) Item 2 SchedulingInfo si-Periodicity: rf32 (2) sib-MappingInfo: 1 item Item 0 SIB-Type: sibType12-v920 (9) si-WindowLength: ms20 (5) systemInfoValueTag: 0 nonCriticalExtension nonCriticalExtension ims-EmergencySupport-r9: true (0)
BCCH-DL-SCH-Message message: c1 (0) c1: systemInformation (0) systemInformation criticalExtensions: systemInformation-r8 (0) systemInformation-r8 sib-TypeAndInfo: 1 item Item 0 sib-TypeAndInfo item: sib12-v920 (10) sib12-v920 messageIdentifier-r9: CMAS Identifier for CMAS Presidential Level Alerts (4370) serialNumber-r9: 3000 [bit length 16, 0011 0000 0000 0000 decimal value 12288] 00.. .... .... .... = Geographical Scope: Display mode immediate, cell wide (0) ..11 0000 0000 .... = Message Code: 768 .... .... .... 0000 = Update Number: 0 warningMessageSegmentType-r9: lastSegment (1) warningMessageSegmentNumber-r9: 0 warningMessageSegment-r9: 0154747a0e4acf416137a8d82ecbcf65f7388... 0000 .... = Coding Group: Coding Group 0 (Language using the GSM 7 bit default alphabet) (0) .... 0001 = Language: English (1)
PCCH-Message message: c1 (0) c1: paging (0) paging nonCriticalExtension nonCriticalExtension cmas-Indication-r9: true (0) [Expert Info (Warn/Sequence): Commercial Mobile Alert System Indication!] [Commercial Mobile Alert System Indication!] [Severity level: Warn] [Group: Sequence]
NOTE : This paing would not carry specific UE ID since this Paging is broadcasting (i.e, for every UE in the cell)
Additional Examples of SIB 12 Message
Example 01 :
BCCH-DL-SCH-Message message: c1 (0) c1: systemInformation (0) systemInformation criticalExtensions: systemInformation-r8 (0) systemInformation-r8 sib-TypeAndInfo: 1 item Item 0 sib-TypeAndInfo item: sib12-v920 (10) sib12-v920 messageIdentifier-r9: CMAS Identifier for CMAS Presidential Level Alerts (4370) serialNumber-r9: 3007 [bit length 16, 0011 0000 0000 0111 decimal value 12295] 00.. .... .... .... = Geographical Scope: Display mode immediate, cell wide (0) ..11 0000 0000 .... = Message Code: 768 .... .... .... 0111 = Update Number: 7 warningMessageSegmentType-r9: lastSegment (1) warningMessageSegmentNumber-r9: 0 warningMessageSegment-r9: 01c576597e2ebbc7f950a8d168341a8d46a3d168341a8d46... [1 Fragment (84 bytes): #1(84)] [Frame: 1, payload: 0-83 (84 bytes)] [Fragment Count: 1] [Reassembled Length: 84] [Reassembled Data: 01c576597e2ebbc7f950a8d168341a8d46a3d168341a8d46...] dataCodingScheme-r9: 01 0000 .... = Coding Group: Coding Group 0(Language using the GSM 7 bit default alphabet)(0) .... 0001 = Language: English (1)
HEX (BCCH) : 00 40 2E 21 11 23 00 78 0A 80 38 AE CB 2F C5 D7 78 FF 2A 15 1A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 2D 06 83 51 A8 D4 7A 20 01 40 20 00
HEX (warningMessageSegment-r9) : 01 C5 76 59 7E 2E BB C7 F9 50 A8 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 68 34 1A 8D 46 A3 D1 00 0A => According to 23.041-9.4.2.2.5 CB Data, the decoded result is as follows 01 : Number of Page = 1 0A : Message Information Length = 11 Contents of the Message : C5 76 59 7E 2E BB C7 F9 50 A8 ==> Emergency!!
Decoding / Encoding the warningMessageSegment
The contents of CMAS(warningMessageSegment) is encoded in various different method as described in DCS page. Since there are too many different coding scheme, it would be hard to find a tool that can encode/decode every coding scheme. But if the message uses the two most common coding scheme called GSM 7bit and UCS, you can use the on-line tool called SMS Server Tools 3. As the name implies, this tool is not specifically designed for CMAS. It is designed for encoding / decoding SMS. But the coding scheme for SMS and CMAS is similar, you can use this tool to encode / decode CMAS message.
Here goes short tips on how to use this tool.
Encoding : Text To HEX (GSM 7 bit)
(1) Select '7' at Alphabet Size (2) type in the text you want to send as CMAS message (3) press [Convert>] button (4) the resulting AT command to send this message (5) the resulting HEX string for the message
Decoding : HEX (GSM 7 bit) to Text
(1) Select '7' at Alphabet Size (2) Select 'GSM 7bit packed' (3) type in HEX string for the text you want to send as CMAS message (4) press [Convert>] button (5) the result text
Reference :
[1] Appendix: GSM 7-bit Default Alphabet Table (with Character Codes of ISO 8859 Latin 1)
|
|||||||||||||||||||||||||||||||||||||||