Hi Gurux,
We are getting "Invalid Block number" exception while reading Association from meter. This error only coming for "1.0.98.1.0.255" remaining obiscode's are readed by JAVA DLMS implementation.
We didn't facing this issue while reading association via Gurux DLMS Directory (9.0.23XX)
Java DLMS packets:
TX: 00 01 00 30 00 01 00 20 D0 1E 30 00 00 00 93 98 AE 06 FD 49 45 11 E7 B3 7C 73 67 3D 93 4B 6C 82 22 2E 82 38 F7 65 D4 21
RX: RX: 00 01 00 01 00 30 03 17 D4 82 03 13 30 00 00 00 90 7A B7 84 80 01 C7 E9 85 D5 07 DD DF 84 00 EA FD E5 9A F0 3B 08 B0 B5 4F B3 A3 C4 1E 3D 61 54 5D 76 FA 50 17 D0 AB B3 31 EE E5 7B 19 A3 D1 10 D3 84 F0 69 44 77 84 FC 30 D4 D3 66 58 C3 FC 22 FE 57 7D 54 75 15 B9 8D 22 15 95 03 CB D3 6A 29 1C 8B 73 9D 00 0B 00 59 76 64 A2 5C 0B 1F 26 B4 A3 74 5A F7 79 CB 4E 65 0D 48 1F 16 0E 67 0C E5 76 1B DD F9 7A E5 B3 BA F4 CA 5D 69 E0 84 7E 7C 4B F0 09 7C 63 FB 62 FF 7A 5D D8 2B EE 08 FB EA 9C 24 18 C6 43 B1 22 49 C0 71 33 F8 39 8D 4A 03 57 C5 D0 61 F2 48 69 61 39 FE 22 08 E9 D7 AC 52 6C 52 AA 8B E1 B6 4A 64 E1 6C 25 FE 78 A8 1E B4 23 A4 E1 ED 33 8A C3 B6 44 17 DD 85 99 00 98 BB A3 C7 D8 BC 8C 7C BE D1 95 CD A5 C6 30 6A 93 56 4F BD 69 44 C3 58 F1 7B FA A8 A3 81 2B AE 35 18 91 C7 CB 6B 79 37 92 69 B7 BD D9 A9 B1 50 73 D9 23 89 A4 91 E6 FD 94 33 84 31 97 09 AF 12 60 C2 A4 44 32 AD C6 38 79 84 7C B0 6F E5 71 F0 64 7E A4 10 3A D0 AA 12 D3 76 F8 8F 61 0A 5F 6A 5A EA E5 E0 A7 BF C8 74 4F 46 7D 3A F2 0B 33 53 48 E0 E9 99 E8 7E 87 54 20 F4 C8 EA E8 4B 1A F8 A2 D5 C5 EA B1 4D 0B 5A BC 06 5C 9C C0 E7 DD 9A AC A9 41 36 73 35 AD 64 AD 61 46 68 F4 B9 45 E2 50 C7 61 85 F8 7F 1F 34 DD 1B E1 C8 E1 8F CB 94 F7 A2 75 83 86 84 63 09 57 25 25 C2 7C E3 E6 13 7A DC D0 DD 71 62 F8 20 F4 91 3D 0B 5F E2 BA E4 14 7B 57 C8 2E 3E CE 2A F2 49 41 63 8D 0C 13 D5 0F 66 0B 37 98 06 FA 0F 36 04 D1 70 8E C4 F0 5D B6 87 3E 58 07 28 69 B7 FC 31 A3 76 46 9F 7F E5 4A A9 AA E7 5B 6A 64 4C 89 D4 6B 27 84 5B 0F 15 54 4E 24 FE 84 B7 18 80 BD 6A 4D E0 61 D8 44 05 BB FE 51 A7 2C C9 58 68 39 59 03 7A 44 73 1D 9E B9 71 5C 72 29 20 01 B1 2F 08 56 05 96 F0 C3 BA EA 4D 6C 77 00 F9 9B 3A CA 0E 3A F5 3B 02 8D 07 40 0A 08 B9 DB 3D 64 58 FC F8 00 DF D9 C0 B4 1F 0B 02 2C E0 30 46 6F FB AC 1C 70 C7 06 C4 7C 12 B0 B8 DD CB 28 AB 75 5A FC 52 13 17 4A 15 FF F8 FF E7 93 0A 1F 05 C1 28 8E 3E 44 1C 5A 38 30 A0 34 B3 4D 77 7C 4B 7E FF 74 95 AF 86 14 4B 3A E1 2E 31 18 80 59 AD EA 94 F7 68 8F 5A 36 27 75 30 59 37 3A 04 0D 85 8B 25 98 84 39 AD 60 6B 5B 11 5E FC C1 D1 89 1B 2D 5D BC 9A D9 B9 5E 96 90 4D C3 D4 E4 C8 4B 66 07 99 F4 FC 48 48 7F 3A 3B 31 60 37 28 B2 3A 5C 58 2A 53 68 4D B2 96 4B 7C 82 A5 53 F1 48 F1 1C 72 3D C3 BD 41 1C A6 10 AF C7 0B 14 75 6C 36 1A 36 38 09 3B 4B CD C4 9E 38 B6 2C 7B 32 FF 95 45 40 ED E3 D8 59 7C 75 01 F1 A3 0E EB F8 CB AE D0 BD BC D2 25 41 0A AE 92 C0 39 D8 1B 5A 92 BC EF C3 64 14 53 F1 21 B9 A7 1C BD 6D
GXDLMSDirectory Pocket: (Same obiscode read and it's working fine)
17:01:16 Reading object 1.0.98.1.0.255, interface ProfileGeneric
00 01 00 30 00 01 00 20 C8 1E 30 00 00 00 B9 7B 3A D1 B0 A7 A6 6E DA 42 1F A6 CE 73 CC 7F C2 A6 EC 9D BF 34 71 BF CB F5
17:01:16 Get profile generic columns...
00 01 00 30 00 01 00 20 C8 1E 30 00 00 00 B9 7B 3A D1 B0 A7 A6 6E DA 42 1F A6 CE 73 CC 7F C2 A6 EC 9D BF 34 71 BF CB F5
17:01:16
00 01 00 01 00 30 00 D5 CC 81 D2 30 00 00 00 B9 9A A6 85 62 46 A1 CC F0 81 24 79 78 22 F9 55 1F 3A 58 B8 42 40 CB 81 15 41 9B 3E C6 2C 48 5C B9 BF 39 F2 EC 89 F5 A6 49 2F 27 37 6E 4B CF 1E 49 93 9D 02 04 DB 75 80 1B 23 28 A8 C2 3D 96 D4 BB 9E FF 4D E1 7B A8 FC D9 24 40 28 75 F0 3C 5B 4D 1F 5D 70 0E A1 10 F9 5F 84 0C 8A BC C6 3F 09 0E E5 6C 47 72 68 26 14 58 51 78 D7 9D DA 55 CD 3E 5A DC EC AC 67 E7 39 38 7B F6 9D 87 08 79 CE 04 2E 9E A1 B6 A9 6C A6 FF B6 F0 4B 84 9A DD DA DF B8 B5 CF C7 17 8D 07 FD 66 4F 3D 99 E2 51 DA A7 76 76 9E 2C FC DF A9 F4 5B 7A F3 13 B5 9E 8C 47 80 BA 27 DA 4D E0 66 4B 8F 1D DD 79 23 22 DD BE 4C 5E 2D 6A 06 6D F2 8B 08 87 61 9B 89
17:01:16 Get Next Data block.
17:01:16 Get profile generic columns...
00 01 00 30 00 01 00 1A C8 18 30 00 00 00 BA 7D 54 77 7C 1F 88 4B 08 DB 16 D2 52 AC 50 1A E9 64 BC 1F
17:01:17
00 01 00 01 00 30 00 D3 CC 81 D0 30 00 00 00 BA F6 02 34 9B 86 E4 7F F1 02 D8 CA 76 85 4C D5 32 3C 51 D2 E7 E7 63 64 F2 D6 E8 9F 0C AC 54 C2 AC 0C D7 83 9D 80 9A A9 E9 A9 CD 09 51 9E 30 BC 74 26 4C 17 B8 82 35 02 B0 D7 87 DE 80 EF 9B D4 43 0F 29 73 65 D1 F3 79 0B E8 A1 65 D8 A8 9D 2D 5C E4 19 F2 E8 16 00 90 05 B7 68 C1 BC A5 94 1E A3 ED 0E 91 55 81 C4 B8 12 E9 20 33 A0 FC 84 58 15 6C E8 7C A4 51 F2 A0 FA 02 C8 6E EB 04 D7 5B 2A 52 68 D6 B1 B1 2B 56 3B D3 48 45 16 B2 86 D4 29 22 66 DD B8 1F 62 25 4A 68 D5 B6 68 2D B5 7C E8 D7 50 91 D7 24 56 44 5D 5A 25 54 38 E5 D1 B1 F1 3D E0 00 97 12 65 E8 3E 84 8B E1 0D 6C AD BF F4 82 3E 91 AD E1 C6 A5 D5 22 5F C5
17:01:17 Get Next Data block.
17:01:17 Get profile generic columns...
Please provide some suggestion or input to resolve this Invalid Block number issue
Hi, Your meter is returning…
Hi,
Your meter is returning an invalid block number. Block number is a one-based integer. Because data is ciphered, I can't check this from the bytes. If you can share the block cipher key I can verify it.
You can read this with GXDLMSDirector works because there is a special case for one of the client meters where block cipher is one-based. I believe it's the same in your case, but I want to verify it first.
BR,
Mikko
Hi, Thanks for your response…
Hi,
Thanks for your response.
Is it possible to add that special case in our JAVA DLMS code?
If you have any code snippet please share the same and it would be appreciated.