Wednesday, December 30, 2015

ERROR found in BS EN 15722:2011 "Intelligent transport systems —eSafety — eCall minimum setof data (MSD)"

ERROR DESCRIPTION

There seems to be an error in the document BS EN 15722:2011  "Intelligent transport systems —eSafety — eCall minimum set  of data (MSD)" on page 18.

The example MSD message is decoded wrongly: the Decoding in the document mentions value "<isowmi>WMI</isowmi>", while it shall be "<isowmi>WM9</isowmi>".

 
We have found the error while working on development of our Encoder/Decoder for eCall MSD Messages.

You can check the correct Decoding using our online tool:  http://www.3gpp-message-analyser.com/decoder/msd.htm 



ANALYSIS of ERROR

(1) ORIGINAL example MSD message from page 18.



ASN.1 PER unaligned example MSD message =
"0x015C0681D54970D65C3597CA0420C41464583ADE68AC52E9BB8413F149C07414FB414F6010180813E82181823230"

(2) WRONG decoding on page 18.


<vehicleIdentificationNumber>
<isowmi>WMI</isowmi>
...
</vehicleIdentificationNumber>

(3) REASONS, why "I" Symbol is not allowed

(3.A) the ASN.1 Grammar stops at "H" and starts from "J", it means "I" is excluded.


isowmi PrintableString (SIZE(3))

(FROM("A".."H"|"J".."N"|"P"|"R".."Z"|"0".."9")),

 

(3.B) Wiki page about WMI also Shows that "I" is no used in WMI

see the 2nd table at the following link. The "WMI" is not defined and is not allowed.


 

(4) CORRECT DECODING by 3GPP Message Analyser (http://www.3gpp-message-analyser.com/decoder/msd.htm)


 

Standard Specification Version: 3GPP Rel12:Jun 2015
Message name: ECallMessage
Message PDU(
46octets):015C0681D54970D65C3597CA0420C41464583ADE68AC52E9BB8413F149C07414FB414F6010180813E82181823230

             ECallMessage:
01 00000001   id = 1
              msd(MSDMessage):
5C 0.......    Extension of MSDMessage = 0 :Absent
   .1......    optionalAdditionalData = 1 :Present
               MSDStructure:
   ..0.....     Extension of MSDStructure = 0 :Absent
   ...1....     recentVehicleLocationN1 = 1 :Present
   ....1...     recentVehicleLocationN2 = 1 :Present
   .....1..     numberOfPassengers = 1 :Present
   ......00     messageIdentifier = 1
06 000001..
                control(ControlType):
   ......1.      automaticActivation = 1 :True
   .......0      testCall = 0 :False
81 1.......      positionCanBeTrusted = 1 :True
                 VehicleType:
   .0......       VehicleType ENUMERATED value from = 0 :before Extension marker
   ..0000..        VehicleType = 0 :passengerVehicleClassM1
                vehicleIdentificationNumber(VIN):
   ......01      isowmi[0] = 29 :"W"
D5 1101....
   ....0101      isowmi[1] = 21 :"M"
49 01......
   ..001001      isowmi[2] = 9 :"9"
70 011100..      isovds[0] = 28 :"V"
   ......00      isovds[1] = 13 :"D"
D6 1101....
   ....0110      isovds[2] = 25 :"S"
5C 01......
   ..011100      isovds[3] = 28 :"V"
35 001101..      isovds[4] = 13 :"D"
   ......01      isovds[5] = 25 :"S"
97 1001....
   ....0111      isovisModelyear = 31 :"Y"
CA 11......
   ..001010      isovisSeqPlant[0] = 10 :"A"
04 000001..      isovisSeqPlant[1] = 1 :"1"
   ......00      isovisSeqPlant[2] = 2 :"2"
20 0010....
   ....0000      isovisSeqPlant[3] = 3 :"3"
C4 11......
   ..000100      isovisSeqPlant[4] = 4 :"4"
14 000101..      isovisSeqPlant[5] = 5 :"5"
   ......00      isovisSeqPlant[6] = 6 :"6"
64 0110....
                VehiclePropulsionStorageType:
   ....0...      Extension of VehiclePropulsionStorageType = 0 :Absent
   .....1..      gasolineTankPresent = 1 :Indicated afterward
   ......0.      dieselTankPresent = 0 :DEFAULT FALSE
   .......0      compressedNaturalGas = 0 :DEFAULT FALSE
58 0.......      liquidPropaneGas = 0 :DEFAULT FALSE
   .1......      electricEnergyStorage = 1 :Indicated afterward
   ..0.....      hydrogenStorage = 0 :DEFAULT FALSE
   ...1....      gasolineTankPresent = 1 :True
   ....1...      electricEnergyStorage = 1 :True
   .....000     timestamp = 123456789
3A 00111010
DE 11011110
68 01101000
AC 10101...
                VehicleLocation:
   .....100      positionLatitude = 2321364848 : 2321364848 - 2147483648 = 173881200
52 01010010
E9 11101001
BB 10111011
84 10000...
   .....100      positionLongitude = 2189306168 : 2189306168 - 2147483648 = 41822520
13 00010011
F1 11110001
49 01001001
C0 11000...
   .....000     vehicleDirection = 14
74 01110...
                recentVehicleLocationN1(VehicleLocationDelta):
   .....100      latitudeDelta = 522 : 522 - 512 = 10
14 0001010.
   .......0      longitudeDelta = 502 : 502 - 512 = -10
FB 11111011
41 0.......
                recentVehicleLocationN2(VehicleLocationDelta):
   .1000001      latitudeDelta = 522 : 522 - 512 = 10
4F 010.....
   ...01111      longitudeDelta = 492 : 492 - 512 = -20
60 01100...
   .....000     numberOfPassengers = 2
10 00010...
               optionalAdditionalData(AdditionalData):
   .....0..     Range of oid length(octet) = 0 :Up to 127
   ......00      oid length(octet) = 3
18 00011...
   .....000     oid = 01027Dh
08 00001000
13 00010011
E8 11101...
   .....0..     Range of data length(octet) = 0 :Up to 127
   ......00      data length(octet) = 4
21 00100...
   .....001     data = 30304646h
81 10000001
82 10000010
32 00110010
30 00110...
   .....000  Spare Bits = 000b

Copyright (C) 2010-2012 3GPP Message Analyser

No comments:

Post a Comment