Before commenting read Forum rules
Don't comment the topic if you have a new question.
You can create a new topic selecting correct category from Gurux Forum and then create a new topic selecting "New Topic" from the top left.
Before commenting read Forum rules
Don't comment the topic if you have a new question.
You can create a new topic selecting correct category from Gurux Forum and then create a new topic selecting "New Topic" from the top left.
Hi Sir,
Please find Block Cipher and Authentication Keys(kept both same only) - 1234567812345678
We are trying the same thing as reading works if we use "readObject(profileGeneric, 3);(Capturing Objects)" and "readObject(profileGeneric, 2);(The Buffer Data)".
But it returns Exception like "Failed to get the certificate." from GXDLMSSettings.java class when we try to call "byte[][] data = mClient.readRowsByRange(pg, start, end);" OR "byte[][] data = mClient.readRowsByEntry(pg, 10, 10);"
Here is the Calendar date config...
//////////
readObject(profileGeneric, 3);//Capturing Objects first as expected
Calendar start = Calendar.getInstance();
start.set(Calendar.HOUR_OF_DAY, 0);
start.set(Calendar.MINUTE, 0);
start.set(Calendar.SECOND, 0);
start.set(Calendar.MILLISECOND, 0);
Calendar end = Calendar.getInstance();
end.set(Calendar.SECOND, 0);
end.set(Calendar.MILLISECOND, 0);
byte[][] data = mClient.readRowsByRange(pg, start.getTime(), getTime());
//////////
//////////////////////////Please find the Trace from GXDLMSDirector below////////////////////////////
16:26:52 Read object type ProfileGeneric index: 4
TX: 7E A0 2C 03 61 54 9C BA E6 E6 00 C8 1E 30 00 00 00 76 65 46 E1 D0 7E 96 75 E5 D8 02 FB FC 20 59 6C A3 B0 A1 25 1C FF 4C F6 8C 0B 6E F1 7E
16:26:52
RX: 7E A0 28 61 03 74 62 0F E6 E7 00 CC 1A 30 00 04 0A F0 46 D4 BD B9 AA AB 42 63 7A 81 36 C4 C2 FE 05 8A BA 78 60 9F 90 F1 62 7E
16:26:52 Read object type ProfileGeneric index: 5
TX: 7E A0 2C 03 61 76 8C B8 E6 E6 00 C8 1E 30 00 00 00 77 04 DE 07 98 73 17 B2 85 B9 ED 02 20 4C 4B ED 23 DC 26 47 86 95 D2 A3 FE BA 1C 80 7E
16:26:52
RX: 7E A0 25 61 03 96 F1 40 E6 E7 00 CC 17 30 00 04 0A F1 E8 7D 08 13 CF 49 24 55 13 01 2B 65 EB 87 B8 A8 81 27 A6 C8 7E
16:26:52 Read object type ProfileGeneric index: 6
TX: 7E A0 2C 03 61 98 FC B6 E6 E6 00 C8 1E 30 00 00 00 78 01 9C 4F B6 83 C6 BF 9E 99 73 CB CE 0E 3A 09 AD A8 EB 5C 0C F3 8B 22 E8 6B 56 D4 7E
16:26:52
RX: 7E A0 35 61 03 B8 2C 4B E6 E7 00 CC 27 30 00 04 0A F2 39 8D 0F 90 79 9F EE A0 FE 8F BE 6A 6C 13 17 30 B2 74 CD 0C 97 F9 49 E1 52 36 66 B1 C9 68 6C 1C 88 73 2C 8A 7E
16:26:53 Reading profile generic data
TX: 7E A0 5F 03 61 BA 64 CB E6 E6 00 C8 51 30 00 00 00 79 49 75 1E 7B C8 AD DE 46 70 B9 EE 55 54 FB CE 11 00 B8 FF 1E EB D4 47 2D FF A4 B7 96 40 86 B8 49 32 B3 6C 4E 9F A6 58 3E BB C0 51 4D EB CE 1F 80 41 93 1C 86 B8 01 82 15 BB 75 FC 67 27 67 C1 00 78 13 09 31 A8 A7 42 D8 D4 68 B4 AE 6E 0F 7E
16:26:54
RX: 7E AA 4C 61 03 DA B6 E4 E6 E7 00 CC 82 04 30 30 00 04 0A F3 AB A4 29 E2 6C 57 52 60 DA 71 EA A3 FF F4 42 A8 DD 02 B9 03 C3 8D EF F0 2D 44 E9 A4 BA 6C F1 2E A5 ED 71 7E C7 63 0A 24 0B 8D 3C AC 0F 3E 76 49 80 0F 38 0F 02 D4 B5 BB 73 60 E0 F1 90 7D 42 E2 91 D7 99 6B F1 91 DE E4 C2 44 FF 07 F2 BC 25 85 00 7A 16 12 5D 97 FA FC 07 62 93 7A 87 81 87 B1 77 74 55 0C 10 54 8E 47 AF 5C 6F 8A 7A 86 20 90 9C 2A 2B 85 01 89 E1 50 B3 95 8A BF 09 89 03 8D 76 A4 34 9A B3 B5 39 55 34 41 66 1F 25 F5 7D 10 34 E6 36 48 20 69 88 E5 72 DD B1 72 2C 50 77 6E FC 6E 42 B1 E0 51 C0 5D 54 43 66 83 3F 29 D4 ED 7D 89 77 84 29 01 0E 03 08 15 72 FC 35 5D 91 51 9F DA E7 42 74 CA C4 3A F1 1C 22 11 39 4A 5C AE D2 B4 EB D3 8D 69 09 E9 2D 17 F2 5B 54 9C C7 3A ED 5E E7 BA 43 E7 6D E7 CA 09 27 BA 56 48 07 09 F6 15 BC 38 02 D7 85 39 8C D8 BF 10 EA B6 92 4F C5 55 D9 5C 37 7F 5E C2 76 56 60 61 13 D0 E8 22 C6 BF 15 A6 38 A8 F0 53 49 AB EE 66 26 E8 5A 6F 36 1C DA 6E 39 C9 44 BA 47 75 17 10 42 D3 77 A4 F8 63 1B 49 D6 32 7D 55 61 A0 42 27 24 DF 9A A0 9E 62 20 4B A3 8A D3 56 46 73 63 A8 86 37 B9 DA 2D 42 CF 89 AA 63 EA FA 9F C1 75 AE 7A 8B F3 7D B2 24 74 B8 81 8B 78 8E BE 0C 11 48 13 96 DE F1 32 18 61 14 4D B9 4D 76 1C 44 23 F6 CA 81 99 61 C2 B0 FA 56 75 32 30 81 AD 5A E1 4C 54 0F C4 90 E5 53 C7 7E 72 75 8B 3A 72 A0 A0 DA 4F 5E 07 FA 16 E9 7E 9E D8 85 A8 CA B9 92 E4 4B 6C 4B 45 C8 4B 66 80 AF 53 71 2E E7 62 98 E4 08 A0 34 46 74 92 BB 80 94 A2 51 82 BC 0C 5B AB 66 EC 9E CA D9 84 37 8C 89 3F 9D 0A DD 39 53 94 44 B5 67 BD 57 0C AD 26 B9 FC E5 5F FA A2 C3 AA F9 04 66 F7 97 E8 61 F0 5C 2E F8 92 AA 3D 59 19 00 98 20 D2 79 A1 70 57 1D D3 1D 85 DF BD ED 02 47 E7 95 34 11 D8 0C 3D 2D 26 0A A1 38 91 52 C4 62 E8 38 DC 05 73 1D 8D C0 BB 36 51 63 F9 6C 76 28 F9 4F 2A 68 8A C5 4C 3C EE 95 B0 34 E7 7E
16:26:54
TX: 7E A0 07 03 61 D1 7F 26 7E
16:26:54
RX: 7E A1 FD 61 03 DC 4B BB 9C 7E 09 0C F2 D2 D8 47 18 5E 5D DD 62 33 8B 91 C9 DE A1 8C 52 28 DF EC A7 9F 90 B7 F6 6B A8 BC D0 A8 25 22 80 42 6E 78 BC B6 9E DF 04 9F 51 2D 71 5D 00 AA 3F BC 34 74 0D 83 F6 0B F7 32 69 25 77 82 69 D0 2E 30 A5 C4 DB D4 CF 91 DB 52 1D BB EF EF F1 DA D9 7A 93 8A C2 27 2F 39 0E BE 2B 74 55 D1 17 80 63 E7 2D 4C 67 28 58 2E 99 7C E0 59 A0 69 CC 0D 0A BD FD 9A E8 59 B1 2E 63 8A 7E 6A 26 12 19 F4 9D BE 63 C1 09 B8 F8 7B D7 BD C0 9E 8D 5E 56 EF E4 40 81 A3 C9 37 72 DE 6F 72 22 60 1F E3 BC D8 5B D7 A2 0C 41 BB 2D 86 64 2F 33 54 76 00 01 C3 C2 0C A0 F5 E4 92 AC 1D 17 71 EB B1 84 27 A3 00 76 9E 6A 23 5D 68 78 40 26 4E BE FA DF 2F 60 CF C2 85 E5 9D 2A 5A 11 0C 89 08 07 A9 04 42 D4 A7 C1 84 54 A5 FF DE 14 3E 07 34 4B 89 70 F8 00 06 10 88 A0 06 5F 3B 40 B0 25 41 42 7F F4 2B 8D DE 67 F9 2E 5B 2D 73 EA BE CE 6E 5B 3D 4F 9C 29 85 58 E3 0E 1D 2C B4 CD F8 B6 2B 09 38 4F 97 12 05 98 AB 78 29 E6 F5 D6 81 83 82 B7 0E E9 1C DB 50 97 71 31 0E 67 F6 0A 60 E5 70 DD BF 92 AA F7 11 1D 53 D2 0D DF F3 FA 47 66 16 9B 74 C5 99 F3 4D C3 1D 95 62 33 89 9C EB 1E 2D 47 35 9A 41 34 31 76 C2 FB 22 2F CD DD 98 68 09 FF C1 E6 1F 93 3B F8 E5 17 45 E9 B5 E8 8E 01 0C D9 CE 2E 89 93 B9 03 B3 7F 6A DA EB F5 B6 4D 36 A1 E6 BD F3 4A 14 EF 1C FF A5 82 10 2C 4F 7E 61 25 2F 52 4F FB C1 FA 68 1D EB 33 03 7E AE CF AE 29 DA 6D 4C 84 6E EB 10 E9 1E 58 B0 8B 49 A2 B1 B3 6A B9 E2 CE B0 31 9A BD 8E 64 CE 72 E3 7C E3 B3 18 28 B1 25 3C 23 F8 3A 17 6F 02 F2 E7 FF DB 87 53 A3 BB 7C 65 EF 95 A1 A9 58 33 EB 9B 3B 4B B2 A8 70 C9 D8 E1 A4 0D 7E
16:26:54
TX: 7E A0 26 03 61 FC 70 4F E6 E6 00 C8 18 30 00 00 00 7A 93 50 A4 CB CD 94 07 0B 21 0B 88 94 7C 59 0E 67 A5 6E 24 1B 95 7E
16:26:55
RX: 7E AA 4C 61 03 FE 90 83 E6 E7 00 CC 82 04 30 30 00 04 0A F4 97 EA 70 F8 FD 4C 96 69 85 65 7B 1C 18 A2 93 B9 40 68 0C A4 B8 60 95 9D 6A 3D 11 FE 3E 08 FB D9 78 FF 8A 1D F8 C7 4C 12 C3 E2 C8 6D EE 3F EE 99 91 BC 5E 54 04 09 34 79 AF 4B 37 0B 18 85 5C 2F B3 36 1D 25 EA E8 61 F0 78 0B CB FB AA 4E 29 82 E8 AA 69 9E EE 43 6C F2 40 75 6F 8F CA D6 FA CE D9 89 92 BC 30 89 94 E1 C7 8B 03 49 7F 3B 44 A8 C3 58 71 98 53 A9 23 BE DA 89 B8 3A BE 0A D0 B8 27 D0 4F 06 14 E0 28 84 D4 36 64 A0 3A 00 A3 E4 D4 23 A2 45 DC DC CE E3 A6 35 30 A1 AE DF 75 FF 03 F3 17 00 83 E4 18 45 F6 6F EF 19 B6 F0 94 02 AD 4F 7F 9D 79 E4 C8 F5 56 54 45 61 8A A7 6F 08 CE A6 5E DB BD E9 3A 5E 07 BC 7E 3B 25 21 11 74 A8 D1 02 BB 4E 8A F4 D9 A3 56 AF 59 62 21 8A 96 9C D4 4E 47 7B 28 D6 2C 16 1F 39 29 97 1A 57 67 93 53 9C F4 0C B7 D0 34 24 5E 49 EC 4D DC 6F DD 2B 20 58 D2 21 01 DE 36 6C B9 E5 41 A9 DE E8 6E 7B 25 80 10 2B 7C 4D C9 E9 07 F6 D1 3C F8 D3 71 83 AA A0 8A CB 63 B1 CB D9 77 CF 42 E1 00 07 7E 12 15 0E E3 C7 34 83 E2 1C 3D DA 48 B5 0E EF 16 67 E3 D6 C9 E1 EB C8 38 05 22 A3 EE EE 33 24 7D 4C F2 7B 4E 2F 73 20 B1 61 49 25 BD 74 35 F8 FE 59 57 58 C2 22 D1 CA 68 E8 C6 99 C7 DC 09 0E 6F 8D 01 76 19 FD 16 DC 1B 42 60 27 8E B4 04 1E 66 11 D4 08 EB 66 BB 2B 09 14 A3 A1 C2 B8 74 7C FE 21 BB 15 48 94 44 19 A9 43 41 4D C8 37 70 99 23 6B 2C AB 84 F4 4C C9 44 AC 76 44 86 E7 28 64 52 D3 5E ED 0F 27 89 78 0C 51 AC DA F8 55 29 C9 E0 D6 10 5A 05 13 06 E4 E5 FD 02 B4 5A 81 F5 0E E0 89 AF F9 E0 30 57 6E 18 69 D5 43 5B 8D 20 52 9C 87 2B 52 7D 89 3E 60 33 32 9E 08 5F 45 FC BE 8F 82 26 51 AE 2C 75 EA E5 3E 9B 33 A2 F8 AA 3F 58 77 46 8F 96 77 E2 36 56 5F F5 38 5C 9D 03 DB 95 4E FA 57 90 66 B7 D7 ED 4E 92 2C 21 6D AF 4F 38 63 5D 79 9B C5 94 91 DE EB 83 3B D4 BD 83 09 BE AC 16 09 39 7A DD 80 FB 47 7E
16:26:55
TX: 7E A0 07 03 61 11 73 E0 7E
16:26:56
RX: 7E A1 FD 61 03 F0 25 50 0F AA 05 DD 5F 38 5D F2 BA 9A 0E 38 68 41 2C 4A 10 4F E5 A1 8A A0 51 5A FD 09 3F A5 5D D1 3A D7 84 7F 8B 08 8E 1F BF 4B C8 25 B5 2F 69 94 E8 80 37 7E C0 AF C2 4E 88 CA 49 BB 13 C8 3D 30 C8 24 7A C8 31 6B 89 F6 D8 1E FD 55 F9 F3 24 9F 4C 02 27 20 BB C4 B8 10 23 24 B1 59 F9 1A 15 A1 98 33 49 FE 52 48 16 66 25 C1 3E CE AF C5 88 68 A1 94 E0 75 7A 83 8F F8 84 1A 16 0E C8 C4 9D A7 31 53 DC FC 62 B5 94 D1 DE D1 D5 6D 85 91 1D 63 21 AF BB F2 CB 37 7D 2F E9 0B 8E 7C A2 B7 68 85 BC 8E 37 4D CE 90 62 11 A8 AD E7 3F EF 3C 01 4C E8 11 67 7B B1 45 F1 66 4B 04 7A 1C B4 08 BB 1D C6 BF 81 02 F7 6E 38 9C 0A 9C 62 20 0C 02 F4 50 F2 83 C6 1D 97 33 ED 5E B8 64 D4 80 55 23 68 1F D2 0A 81 E3 F9 14 33 20 94 25 4C F8 3C 19 44 17 9A BF 8A 07 BB 19 E2 85 94 93 17 98 89 1E CC FD BD 17 42 86 F0 B8 3D 62 4C 5C 28 F6 42 83 55 C8 C9 31 B1 2D 03 CC FF AF 17 46 22 CD C2 C4 ED 18 98 ED AE B1 8E C4 04 4C 66 C6 6B 22 27 9B B7 74 EA A3 BC CB 5D E5 2B CD 25 5D 4C 06 94 D7 4F 8C 91 D1 3D 12 65 91 62 D8 AF D7 84 3A 76 77 12 83 F4 1A C1 4F 4C D3 FD 59 E4 62 58 8A 8F DB 3D 64 3E 1D E6 B5 83 19 DE BE E8 0A 72 C7 6B BC 1B E2 05 08 80 8E C8 00 E7 15 CF 8E 16 32 77 14 3A 82 97 DA B1 1F 74 BC 4E 02 B9 8A BD 9A 91 E9 92 58 AB 1B 36 65 60 04 E7 AC 10 E6 2B 96 6A 08 CA 48 5B 47 9C 7E CC 12 48 E8 5A 4A FB F9 E3 65 71 C7 CA 5E 48 C1 E5 C7 9E 3F B3 DF C0 18 16 F9 6A 38 F6 07 28 DE 82 D9 CB 20 B2 39 50 FF 37 70 06 2E 5A 29 AA 65 E8 54 C0 7D AF B1 6D 2F 36 F7 E9 8B CD 6F E0 E6 F4 BE D0 A9 4E 35 6F E0 1F A7 31 39 EE 03 F2 07 72 FF F2 FF 7E
16:26:56
TX: 7E A0 26 03 61 3E 6E AA E6 E6 00 C8 18 30 00 00 00 7B A9 11 96 AA B5 06 13 68 8F 5C EF 90 20 64 E9 36 E3 F2 17 14 25 7E
16:26:56
RX: 7E A0 63 61 03 12 F0 DF E6 E7 00 CC 55 30 00 04 0A F5 5F 03 85 FB FC 1C 08 D0 5A F8 21 56 B3 FC 5F 59 EF 2E 4E F4 24 3D EE 61 80 40 EB BC 55 C2 30 B2 4B 2F 05 76 A5 6F CA F8 06 09 70 D4 5F E6 6A E8 F5 A1 28 97 B4 FB A8 8B B7 73 6A 5C 3C DF B8 4B 08 3B 26 20 33 8F C7 C5 7C DB 90 0D 0C 5C F4 7F 3E F2 7E
16:26:56 Read object type ProfileGeneric index: 7
TX: 7E A0 2C 03 61 50 B8 FC E6 E6 00 C8 1E 30 00 00 00 7C F4 96 18 FD 5E 30 2E F5 57 81 0F 57 63 0E 98 94 13 FB AD E7 1E 7A 1E 4C 86 2B B4 7E
16:26:57
RX: 7E A0 28 61 03 34 66 4D E6 E7 00 CC 1A 30 00 04 0A F6 AD 10 B6 BA CD 4D F7 5E 98 77 09 91 00 68 02 D1 13 A1 8F 00 94 53 78 7E
16:26:57 Read object type ProfileGeneric index: 8
TX: 7E A0 2C 03 61 72 A8 FE E6 E6 00 C8 1E 30 00 00 00 7D 8E 65 F9 BF 49 28 74 46 4B 34 2C 8F C5 A7 CC DE 45 57 40 9C 28 8B 8D 01 B4 3C BE 7E
16:26:57
RX: 7E A0 28 61 03 56 72 0D E6 E7 00 CC 1A 30 00 04 0A F7 D8 BC 08 66 54 A7 62 57 46 03 BF A0 69 2A 1B 36 B0 CE D5 93 F0 F2 75 7E
Hi, This is fixed for…
Hi,
This is fixed for version 2.0.4. Let me know if you have any problems.
BR,
Mikko
Hi sir, very good morning…
Hi sir, very good morning.
NOTE : Manufacturer(Indian Standard)
As We have imported the DLMS code from current version 2.0.4 into our application, it's having a problem opening the connection in "US" authentication, it Says "Connection is permanently rejected The authentication mechanism name is not recognized."
In the previous version, it was working properly (Vesion : 2.0.3).
//Not related to topic, just a additional note.
I have added below code to "Signing.java" from other enums which I think it should be there in future releases for use.
"
public int getValue() {
return this.ordinal();
}
public static Signing forValue(final int value) {
Signing ret = values()[value];
if (ret == null) {
throw new IllegalArgumentException("Invalid signing enum value.");
}
return ret;
}
"
Hi, I did try to connect…
Hi,
I did try to connect with "US" and it worked without problems. Can you connect with the Client example?
BR,
Mikko
Hi Sir, Sorry for the…
Hi Sir,
Sorry for the delayed response but Thankyou as you suggested I tried Client Example also still it was not worked initially.
But after some debugging, I found that Selecting "US" Authentication was still providing "NONE" as the type because of an Exception at another place while porting the code.
But now all is working fine. readRowsByRange is also working properly Sir.
Thank you for your support.
I am attaching the issue caused by an exception from our side.
In the previous code I had…
In the previous code I had explained that even with Authentication "US", we were getting "NONE" as a type. I found something which is actually related to this issue and not actually our Exceptions.
This is just a suggestion as In MainActivity.java class when we call loadSettings().
try {
mDevice.setAuthentication(new GXAuthentication(s.getString("authentication", "None")));
} catch (Exception ex) {
//Old way...
mDevice.setAuthentication(new GXAuthentication(Authentication.forValue(s.getInt("authentication", 0)).toString()));
}
in above >>> new GXAuthentication(....<<< returns "US" Authentication name along with "NONE" as type.
So when user user goes on MeterSetting Page there he/she can see the Authentication as what was selected but it will have different type. SO when we go to the main page to read...while establishing a connection it gets the wrong Authentication type too.
If user clicks and select AUthentication again then there is no issue because there we are loading manufacturer's Authentication type list, so we get proper Authentication name and type.
My only Suggestion is for Client Application is, that you replace this code
"
try {
mDevice.setAuthentication(new GXAuthentication(s.getString("authentication", "None")));
} catch (Exception ex) {
//Old way...
mDevice.setAuthentication(new GXAuthentication(Authentication.forValue(s.getInt("authentication", 0)).toString()));
}
"
WITH
"
if (s.contains("authentication")) {
//Setting UP Authentication based on Actual Manufacturer
GXManufacturer man = getManufacturer();
assert man != null;
List<GXAuthentication> values = new ArrayList<>(man.getSettings());
int selected = -1;
int pos = 0;
String selectedItem = s.getString("authentication", "None");
for (GXAuthentication it : values) {
//Get selected item.
if (it.toString().compareTo(selectedItem) == 0) {
selected = pos;
}
++pos;
}
mDevice.setAuthentication(values.get(selected));
} else {
//Old way...
mDevice.setAuthentication(new GXAuthentication(Authentication.forValue(s.getInt("authentication", 0)).toString()));
}
"
OR any short version of it as it will return proper Selected Authentication name and type from the selected manufacturer.
Hi, The authentication name…
Hi,
The authentication name is just a description string for the user. It's not used anywhere or means anything.
The example is updated and the authentication level is read from the manufacturer settings as you proposed. Get the latest version from GitHub.
BR,
Mikko
Ok, Thankyou for accepting…
Ok, Thankyou for accepting the suggestion.