Hi All,
Here are my code changes attached. Most are in software_imbe_decoder.cc and rs.cc
<http://rs.cc/>
I tried to document the best I can, my initials are next to my changes.
Again I am gonna need some help with retrieving the RID (source) and other fields from the
LDU1 and TDU with LC frames.
thanks!
On Jul 26, 2016, at 11:57 PM, Joseph Cardani
jcardani(a)verizon.net [op25-dev] <op25-dev(a)yahoogroups.com> wrote:
Hi Matt,
Sure no problem. The code is not elegant, so if anyone has a more efficient way of
handling things I’m all ears.
And again any help with the coding to retrieve the RID and other stuff from the LDU1 and
TDU would be greatly appreciated.
I’ll post tomorrow after I clean up some stuff. Getting late here.
thanks!
Joe
On Jul 26, 2016, at 10:27 PM, Matt Ames
matt.ames7bc(a)gmail.com <mailto:matt.ames7bc@gmail.com> [op25-dev]
<op25-dev(a)yahoogroups.com <mailto:op25-dev@yahoogroups.com>> wrote:
Hey Joe,
Can you post your code here so that anyone that's interested may have a look?
Cheers,
Matt
On 27 July 2016 at 11:32, Joseph Cardani jcardani(a)verizon.net
<mailto:jcardani@verizon.net> [op25-dev] <op25-dev(a)yahoogroups.com
<mailto:op25-dev@yahoogroups.com>> wrote:
Also for those who are interested, I was finally successful with displaying the voice
frames in OP25. Made the appropriate code changes and now VC1 through VC9 displays after
each LDU1 or LDU2 frame.
11 bytes of VC info are displayed. For example an unencrypted silence frame from a
subscriber unit for VC1 and VC2 appear like
VC1 is 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC2 is 04 0C FD 7B FB 7D F2 7B 3D 9E 45
Also found an issue with the MI that’s displayed in the LDU2. It’s displayed by OP25 as
12 hex bytes. I re-formatted it to display as 9 regular bytes, with the first 8 having
relevant information.
I also added a display of the MI that’s in the HDR.
I’m starting on coding to display the TGID and RID (Destination and Source) that’s
located in the LDU1 and TDU, but the error coding appears not to have been done here. That
is way over my head so can anyone be kind enough to help with this?
Once I test my code changes I’ll submit them to Max or anyone else who can incorporate
them into the OP25 release. Testing this code is the reason I inquired on how to record a
P25 voice channel so a friend can record and send me test files that I can play it back
in OP25.
Here is the sample output from the console:
process_data_unit timeout
NAC 0x461 DUID 0x3 len 72 errs 0
NAC 0x461 DUID 0xF len 216 errs 4 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0x0 len 396 errs 1 HDU: rc 0 MFID 0 ALG 80 KID 0 TGID 20351 MI 00 00 00
00 00 00 00 00 00
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 0 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 05 0C 7F 7F 7F BF F3 FF FF FF FD
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 05 73 80 80 80 40 F0 00 00 00 0C
VC: 09 25 F3 27 3C 6D 01 80 4E 7B BF
VC: 95 5E 24 69 E5 44 EC 06 9A 6B E2
VC: 91 25 F7 A3 F9 2E B5 24 C9 D1 73
VC: 99 5E 12 D0 BA 42 FD 37 A7 D6 F8
VC: 99 42 EA 27 6A 1E F7 27 70 5D 13
VC: 95 52 6C 49 96 C6 ED 36 B3 63 F8
VC: 95 5C B7 E3 1A 68 E5 B5 98 AD EB
VC: 95 44 D4 92 AC F0 F4 56 90 B0 3E
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 0 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 91 4A B8 53 44 C7 E4 64 48 CE 7D
VC: 85 5B 0D 98 3D E2 ED 05 77 C0 E4
VC: 95 2D A3 CA 65 F1 DD 97 58 DB FB
VC: 91 42 F8 10 78 A3 00 04 6C DC 62
VC: AD 59 4F 5E B6 35 FF F9 60 65 07
VC: 95 37 D7 38 D4 A8 F4 17 93 9A F0
VC: 91 4E B0 02 85 8B 80 06 CC 00 ED
VC: 8D 52 1F 5B C8 E4 80 04 67 94 46
VC: 7D 52 1B 6C 17 1B B5 24 58 D7 01
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 91 48 FA BB 63 F2 D9 A8 EC 9F 70
VC: 8D 46 78 55 D0 89 80 05 A6 95 47
VC: 8D 36 FB 2A 68 87 F4 4B B7 39 06
VC: 4A C9 20 68 AE 6E 00 13 BC AD AB
VC: 5F 54 A8 60 9B EF FF D8 A4 1A B8
VC: 5F 54 B0 A8 6F C5 FF 63 50 A4 95
VC: 5F 1C 99 AC 2B FF FF EF 1D 94 0C
VC: 5F 54 98 EE 1B 63 FF E5 2A F4 9B
VC: 5E B8 D9 F0 3B A2 80 3F 08 89 FE
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 1 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 65 B5 A4 E1 6F 93 80 14 24 C6 65
VC: 65 63 C9 4F 0C B9 81 18 CC 12 0C
VC: 71 2A B4 CD 8F 78 48 8C 0C D1 D3
VC: 69 B1 07 BF F8 72 00 1C 90 97 50
VC: 62 B7 94 C3 FD D0 DF E9 80 E1 4B
VC: 62 E1 09 B3 0E 94 FD 5F 64 17 14
VC: 6A BF 48 B2 CF 29 FF 02 55 82 23
VC: 71 45 9A C4 B2 98 00 0B C5 4D FC
VC: 69 4F 74 A8 02 A7 00 0A B2 83 59
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 71 5E 81 E5 9F 44 00 04 BC 6F F0
VC: 65 48 F3 C4 2C 2E 00 08 7C 13 0F
VC: 4A 70 B6 9C B3 ED 80 7F DE A1 5E
VC: 4A B9 9D 00 EF BA 00 10 35 1B 2F
VC: 57 17 2A 5E 42 F9 FF B0 3D 00 BC
VC: 5B 1E 44 D6 BA F8 FF FA 4A B4 B3
VC: 5B 2D 45 B6 2A 78 FF E7 9D 00 6E
VC: 5F 46 98 EC 39 2E FF EF 8F CD B3
VC: 5F 62 8E 6C 90 CF FF CF AB 30 C6
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 0 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 65 E7 8D 7B 8B A0 80 13 C9 79 4B
VC: 65 E5 90 96 19 D9 E8 45 44 85 8A
VC: 71 37 EC 8C 2E 07 00 08 0C F5 7B
VC: 71 44 5B 73 15 FA 00 08 A5 15 74
VC: 65 E7 3A 6C 8C 67 80 10 E8 F0 85
VC: 6A AA B9 36 0E 80 7F E5 9D B9 52
VC: 6E CD 98 04 85 E7 F7 EA B3 BB BF
VC: 7D A7 7C C2 CF 05 00 02 1A E1 0C
VC: 79 52 5B 2D 75 9B D0 09 50 56 0F
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 79 5C 45 E9 30 CD D4 0A 58 0D CE
VC: 91 27 DD 6B FC 83 00 03 ED 72 59
VC: 79 E0 E0 85 D5 BF 00 02 F0 9E EC
VC: 51 C3 FD B2 18 E4 00 4A C7 7F 4F
VC: 4A 59 35 0B D5 DF 80 74 20 34 AA
VC: 5A F0 08 2A AB 50 FF FA 84 D2 99
VC: 5A F8 52 84 66 F7 FF F0 31 B7 AA
VC: 5E D4 05 F4 F3 28 FF BF CD 6C 89
VC: 67 4E 58 01 18 E6 FF E7 61 CD 32
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 0 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 67 4B 79 A0 5C FE FF E6 53 72 77
VC: 6A E3 47 93 5B 72 FF 82 AE C2 98
VC: 6A 56 73 70 1B 5B FF F9 8D 1F 29
VC: 6A 4E 64 71 D7 A9 FF F8 14 99 52
VC: 69 DF 4D 7A 4C 5D 80 0B B3 E5 E1
VC: 85 B8 07 65 45 47 80 02 54 07 4E
VC: 89 26 75 7D A1 35 00 0C F7 F6 B9
VC: 71 35 AA CE A0 FB 00 0D 5C 48 24
VC: 5D 62 82 2E E8 AD 00 3F 9D 5F 75
NAC 0x461 DUID 0x5 len 864 errs 0 LDU1:
VC: 61 67 28 B5 83 02 00 11 B6 53 CA
VC: 81 4E A7 A4 39 E3 84 06 B4 3D F9
VC: 8D 5A 1D 5A 3C 5A C5 15 9D 48 88
VC: 8D 4F 4A 71 55 A0 00 07 73 FF 95
VC: 95 50 7B 82 93 37 00 00 91 07 E8
VC: 8D 4E 4A 28 D4 67 92 05 9F EB 01
VC: 6D 5F C1 3A 52 4C 88 54 18 08 FE
VC: 8D 35 BB 93 2A 4F 80 15 31 3B 91
VC: 99 5C 33 45 61 59 C4 14 61 F4 10
NAC 0x461 DUID 0xA len 864 errs 0 LDU2: rc 0 ALGID 80 KID 0 MI 00 00 00 00 00 00 00 00
00
VC: 91 48 8E A8 57 87 54 16 27 D2 25
VC: 79 46 BE 67 4E 27 88 06 0C 0B B2
VC: 6D 52 8D 21 65 AC 08 4A DB BA 05
VC: 7D 4F A5 94 CA D9 88 44 C4 E3 52
VC: A5 17 14 0D 1E 1A 02 17 30 0C EB
VC: 79 56 97 2C 1E D8 88 44 8D EA 22
VC: 91 3B 32 7A 25 22 44 17 4C A7 CF
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 44
VC: 04 0C FD 7B FB 7D F2 7B 3D 9E 45
NAC 0x461 DUID 0x3 len 72 errs 0
NAC 0x461 DUID 0xF len 216 errs 2 TDU:
NAC 0x461 DUID 0xF len 216 errs 2 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0xF len 216 errs 0 TDU:
NAC 0x461 DUID 0x3 len 72 errs 0
NAC 0x461 DUID 0x3 len 72 errs 0
thanks,
Joe