- This topic has 6 replies, 1 voice, and was last updated 21 years, 4 months ago by
Rons.
-
AuthorPosts
-
25th October 2004 at 07:00 #40028
Rons
Guesthi all
when you check subscriber IMEI number in nokia switch with command MVP, it is not showing the correct number? what could be the reason for that?
The IMEI from switch differs from actual IMEI of particular mobile in last digit.
waiting for reply
thanks25th October 2004 at 07:32 #40029Misa
GuestHi,
This is not a problem. In my Ericsson switch the situation is the same. The last digit is always 0. This is because the last digit (also called Luhn check digit) is not used to identify the mobile, it is used to verify if the IMEI is valid (correct) or not. You can calculate the last digit yourself, based on first 14 digits.
Rgds
Misa25th October 2004 at 10:55 #40030Rons
GuestThanks misa for your ans.
can you tell me how we can find the last digit with first 14 digits? my mail id is suthar.kartik@adacellworks.com
thanks again
-kartik26th October 2004 at 01:41 #40031Misa
GuestLet say the IMEI is presented as D14-D13-D12-…-D1-D0 (15 digits), where D0 is the check digit.
The last digit D0 is calculated as follow:
1. Double the values of the odd labelled digits D1, D3, D5 … D13.
2. Add together the individual digits of all the seven numbers obtained in step 1, and then add this sum to the sum of all the even labelled digits D2, D4, D6 … D14.
3. If the result obtained in step 2 ends with 0, then D0 = 0. If it does not end in 0, then D0 equals to the number subtracted from the next higher number which does end in 0.
If you familiar with VB, I can give you a procedure written in VB for calculation of this last digit.
26th October 2004 at 04:30 #40032Rons
GuestThanks very very much Misa.
I am familiar with VB. so if you send it, it will be very helpful for me.
thanks very much again.
-rons
26th October 2004 at 08:48 #40033Misa
GuestHere is the VB function:
Function CheckDigit(sImei As String) As String
Dim iDigit(0 To 14) As Integer, i As Integer, iCD As Integer, sCD As String
For i = 1 To 14
iDigit(i) = CInt(Mid(sImei, 15 – i, 1))
If i Mod 2 = 1 Then
iDigit(i) = 2 * iDigit(i)
If iDigit(i) > 9 Then iDigit(i) = iDigit(i) – 9
End If
Next
For i = 1 To 14
iCD = iCD + iDigit(i)
Next
If iCD Mod 10 = 0 Then
sCD = “0”
Else
sCD = CStr(((iCD \ 10) + 1) * 10 – iCD)
End If
CheckDigit = sCD
End Function27th October 2004 at 05:12 #40034Rons
GuestThanks Very Much Misa.
-Rons -
AuthorPosts
- The forum ‘Telecom Design’ is closed to new topics and replies.



