Hello!
When I tried to use this function, I found that, regardless of the arguments passed to the time boundaries, all objects are selected. What could be wrong?
I am currently using the DLMS_USE_EPOCH_TIME definition in gxignore.h.
I tried different time intervals in the UNIX format. It is known that in these time limits there are entries in the counter. However, a full read occurs. I even tried to set a zero time interval - the result is the same.
Can you read your meter with GXDLMSDirector? - yes. What should I do?
Attached the debug output of the exchange when requesting a profile. The results in both cases are the same. Apparently the library did not come across such a meter!
From the pic it seems that meter is also returning external rows with GXDLMSDirector. Not just between the selected range. If this is true, ask the meter manufacturer to fix this.
Other app don't use deviation or status, I believe that your meter can't handle deviation and it breaks this. You should ask the meter manufacturer to fix it.
Because this is not the first meter that can't handle time zone or status, I'll try to way how to define this in the GXDLMSDirector. I believe that there will be one more setting for this.
Hi!
flags are not used in functions:
int cl_readRowsByRange2(
dlmsSettings* settings,
gxProfileGeneric* object,
gxtime* start,
gxtime* end,
message* messages)
{
#ifdef DLMS_USE_EPOCH_TIME
return cl_readRowsByRange(settings, object, start->value, end->value, messages);
#else
return cl_readRowsByRange(settings, object, &start->value, &end->value, messages);
#endif //DLMS_USE_EPOCH_TIME
}
They are not even transferred there!!!
Hi!
Standart says: "Date and time information may be represented using the data type octet-string".
Meter uses the AXDR 19 (DateTime) type. Gurux library - issues it in the form of OS (12). How can I request in format AXDR 19 (DateTime) type?
If we are talking from profile generic here data type must be octet-string, not DateTime.
The reason for this is that capture objects column is Clock object 0.0.1.0.0.255 and the attribute Index is #2. Clock object time type is octet-string, not DateTime.
It's not possible to use DateTime data type if clock selected as sort_object.
Data type must be the same that capture object is using.
Using DateTime here breaks compatibility for reading all other meter types.
Hi,
Hi,
Check that your start and end time are correct. Can you read your meter with GXDLMSDirector?
BR,
Mikko
I am currently using the DLMS
I am currently using the DLMS_USE_EPOCH_TIME definition in gxignore.h.
I tried different time intervals in the UNIX format. It is known that in these time limits there are entries in the counter. However, a full read occurs. I even tried to set a zero time interval - the result is the same.
Can you read your meter with GXDLMSDirector? - yes. What should I do?
Hi,
Hi,
Add readRowsByRange read request from GXDLMSDirector and ANSI C here. I'll check what is different in the messages.
BR,
Mikko
Hi!
Hi!
debug output from meter:
[TRNSP_USART]: Send buf:
7E A0 08 02 21 41 93 50 B4 7E
[TRNSP_USART]: Received buf:
7E A0 21 41 02 21 73 DB D8 81
80 14 05 02 00 80 06 02 00 80
07 04 00 00 00 01 08 04 00 00
00 01 CE 6A 7E
[TRNSP_USART]: Send buf:
7E A0 45 02 21 41 10 95 BF E6
E6 00 60 36 A1 09 06 07 60 85
74 05 08 01 01 8A 02 07 80 8B
07 60 85 74 05 08 02 01 AC 0A
80 08 30 30 30 30 30 30 30 30
BE 10 04 0E 01 00 00 00 06 5F
1F 04 00 00 1E 1D 00 80 EC 89
7E
[TRNSP_USART]: Received buf:
7E A0 38 41 02 21 30 60 4D E6
E7 00 61 29 A1 09 06 07 60 85
74 05 08 01 01 A2 03 02 01 00
A3 05 A1 03 02 01 00 BE 10 04
0E 08 00 06 5F 1F 04 00 00 14
15 00 80 00 07 CE AB 7E
[TRNSP_USART]: Send buf:
7E A0 1A 02 21 41 32 1B A2 E6
E6 00 C0 01 81 00 07 00 00 63
62 02 FF 03 00 3F 59 7E
[TRNSP_USART]: Received buf:
7E A0 49 41 02 21 52 C3 13 E6
E7 00 C4 01 81 00 01 03 02 04
12 00 08 09 06 00 00 01 00 00
FF 0F 02 12 00 00 02 04 12 00
01 09 06 00 00 60 0B 02 FF 0F
02 12 00 00 02 04 12 00 03 09
06 00 00 60 08 00 FF 0F 02 12
00 00 86 AF 7E
[TRNSP_USART]: Send buf:
7E A0 1A 02 21 41 54 2B A4 E6
E6 00 C0 01 81 00 07 00 00 63
62 02 FF 07 00 5F 3E 7E
[TRNSP_USART]: Received buf:
7E A0 16 41 02 21 74 69 48 E6
E7 00 C4 01 81 00 06 00 00 00
64 59 FA 7E
[TRNSP_USART]: Send buf:
7E A0 1A 02 21 41 76 3B A6 E6
E6 00 C0 01 81 00 07 00 00 63
62 02 FF 08 00 97 BD 7E
[TRNSP_USART]: Received buf:
7E A0 16 41 02 21 96 75 8C E6
E7 00 C4 01 81 00 06 00 00 01
00 A3 C6 7E
[TRNSP_USART]: Send buf:
7E A0 4D 02 21 41 98 F5 ED E6
E6 00 C0 01 81 00 07 00 00 63
62 02 FF 02 01 01 02 04 02 04
12 00 08 09 06 00 00 01 00 00
FF 0F 02 12 00 00 09 0C 07 E4
05 0E 04 0A 10 00 00 00 00 00
09 0C 07 E4 05 0F 05 0A 10 00
00 00 00 00 01 00 73 22 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 B8 48 5C E6
E7 00 C4 02 81 00 00 00 00 01
00 6C 01 64 02 03 19 07 E4 05
0D FF 0C 07 06 FF 80 00 00 11
01 06 00 00 00 0D 02 03 19 07
E4 05 0E FF 0A 03 06 FF 80 00
00 11 02 06 00 01 34 7D 02 03
19 07 E4 05 0E FF 0B 09 2A FF
80 00 00 11 01 06 00 01 44 18
02 03 19 07 E4 05 0F FF 0A 33
2C FF 80 00 00 11 02 06 00 02
91 62 02 03 19 07 E4 05 0F FF
0B 11 2C FF 80 00 00 11 01 06
7D DC 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 BA E3 CB E6
E6 00 C0 02 81 00 00 00 01 73
7F 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 DA 5C 1C E6
E7 00 C4 02 81 00 00 00 00 02
00 6C 00 02 97 78 02 03 19 07
E4 05 0F FF 0B 11 2E FF 80 00
00 11 02 06 00 02 97 7A 02 03
19 07 E4 05 0F FF 10 04 1E FF
80 00 00 11 01 06 00 02 DA AF
02 03 19 07 E4 05 0F FF 10 04
20 FF 80 00 00 11 02 06 00 02
DA B1 02 03 19 07 E4 05 0F FF
13 03 29 FF 80 00 00 11 01 06
00 03 04 AF 02 03 19 07 E4 05
0F FF 13 04 02 FF 80 00 00 11
AE 87 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 DC D3 CD E6
E6 00 C0 02 81 00 00 00 02 E8
4D 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 FC 68 58 E6
E7 00 C4 02 81 00 00 00 00 03
00 6C 02 06 00 03 04 C4 02 03
19 07 E4 05 0F FF 13 09 30 FF
80 00 00 11 01 06 00 03 06 1E
02 03 19 07 E4 05 0F FF 13 0A
02 FF 80 00 00 11 02 06 00 03
06 2C 02 03 19 07 E4 05 0F FF
13 0B 04 FF 80 00 00 11 01 06
00 03 06 6A 02 03 19 07 E4 05
0F FF 13 0B 06 FF 80 00 00 11
02 06 00 03 06 6C 02 03 19 07
E4 05 0F FF 13 13 2B FF 80 00
EF 36 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 FE C3 CF E6
E6 00 C0 02 81 00 00 00 03 61
5C 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 1E 74 9C E6
E7 00 C4 02 81 00 00 00 00 04
00 6C 00 11 01 06 00 03 08 71
02 03 19 07 E4 05 12 FF 0C 33
22 FF 80 00 00 11 02 06 00 06
A1 F8 02 03 19 07 E4 05 12 FF
0C 36 27 FF 80 00 00 11 01 06
00 06 A2 B0 02 03 19 07 E4 05
12 FF 0D 09 19 FF 80 00 00 11
02 06 00 06 A6 26 02 03 19 07
E4 05 12 FF 0D 12 37 FF 80 00
00 11 01 06 00 06 A8 61 02 03
19 07 E4 05 12 FF 0D 26 1E FF
9F 9F 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 10 B3 C1 E6
E6 00 C0 02 81 00 00 00 04 DE
28 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 30 08 54 E6
E7 00 C4 02 81 00 00 00 00 05
00 6C 80 00 00 11 02 06 00 06
AC F8 02 03 19 07 E4 05 12 FF
0D 2C 17 FF 80 00 00 11 01 06
00 06 AE 59 02 03 19 07 E4 05
12 FF 0E 39 03 FF 80 00 00 11
02 06 00 06 BF 61 02 03 19 07
E4 05 12 FF 0F 04 09 FF 80 00
00 11 01 06 00 06 C1 0B 02 03
19 07 E4 05 12 FF 0F 05 00 FF
80 00 00 11 02 06 00 06 C1 3E
02 03 19 07 E4 05 12 FF 0F 06
F8 BC 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 32 A3 C3 E6
E6 00 C0 02 81 00 00 00 05 57
39 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 52 1C 14 E6
E7 00 C4 02 81 00 00 00 00 06
00 6C 20 FF 80 00 00 11 01 06
00 06 C1 9A 02 03 19 07 E4 05
12 FF 0F 16 09 FF 80 00 00 11
02 06 00 06 C5 43 02 03 19 07
E4 05 12 FF 11 09 37 FF 80 00
00 11 01 06 00 06 DE 86 02 03
19 07 E4 05 12 FF 11 09 39 FF
80 00 00 11 02 06 00 06 DE 88
02 03 19 07 E4 05 12 FF 12 14
21 FF 80 00 00 11 01 06 00 06
EF 14 02 03 19 07 E4 05 12 FF
1A CF 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 54 93 C5 E6
E6 00 C0 02 81 00 00 00 06 CC
0B 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 74 28 50 E6
E7 00 C4 02 81 00 00 00 00 07
00 6C 12 38 16 FF 80 00 00 11
02 06 00 06 F7 79 02 03 19 07
E4 05 12 FF 13 1C 3B FF 80 00
00 11 01 06 00 06 FF 1E 02 03
19 07 E4 05 12 FF 13 1D 08 FF
80 00 00 11 02 06 00 06 FF 27
02 03 19 07 E4 05 12 FF 13 2D
01 FF 80 00 00 11 01 06 00 07
02 E0 02 03 19 07 E4 05 12 FF
13 2D 07 FF 80 00 00 11 02 06
00 07 02 E6 02 03 19 07 E4 05
D2 53 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 76 83 C7 E6
E6 00 C0 02 81 00 00 00 07 45
1A 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 96 34 94 E6
E7 00 C4 02 81 00 00 00 00 08
00 6C 12 FF 14 0D 26 FF 80 00
00 11 01 06 00 07 09 95 02 03
19 07 E4 05 12 FF 14 0D 28 FF
80 00 00 11 02 06 00 07 09 97
02 03 19 07 E4 05 12 FF 14 0F
2A FF 80 00 00 11 01 06 00 07
0A 11 02 03 19 07 E4 05 12 FF
14 0F 35 FF 80 00 00 11 02 06
00 07 0A 1C 02 03 19 07 E4 05
12 FF 14 10 20 FF 80 00 00 11
01 06 00 07 0A 44 02 03 19 07
E1 95 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 98 F3 C9 E6
E6 00 C0 02 81 00 00 00 08 B2
E2 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 B8 48 5C E6
E7 00 C4 02 81 00 00 00 00 09
00 6C E4 05 12 FF 14 10 23 FF
80 00 00 11 02 06 00 07 0A 47
02 03 19 07 E4 05 12 FF 14 11
25 FF 80 00 00 11 01 06 00 07
0A 86 02 03 19 07 E4 05 12 FF
14 11 28 FF 80 00 00 11 02 06
00 07 0A 89 02 03 19 07 E4 05
12 FF 14 19 2A FF 80 00 00 11
01 06 00 07 0C 6C 02 03 19 07
E4 05 15 FF 0B 26 21 FF 80 00
00 11 02 06 00 0A 85 5F 02 03
84 5E 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 BA E3 CB E6
E6 00 C0 02 81 00 00 00 09 3B
F3 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 DA 5C 1C E6
E7 00 C4 02 81 00 00 00 00 0A
00 6C 19 07 E4 05 15 FF 0B 28
34 FF 80 00 00 11 01 06 00 0A
85 E9 02 03 19 07 E4 05 15 FF
0B 28 36 FF 80 00 00 11 02 06
00 0A 85 EB 02 03 19 07 E4 05
15 FF 0B 2B 01 FF 80 00 00 11
01 06 00 0A 86 6A 02 03 19 07
E4 05 15 FF 0B 2B 04 FF 80 00
00 11 02 06 00 0A 86 6D 02 03
19 07 E4 05 15 FF 0B 2C 0D FF
80 00 00 11 01 06 00 0A 86 B3
40 1C 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 DC D3 CD E6
E6 00 C0 02 81 00 00 00 0A A0
C1 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 FC 68 58 E6
E7 00 C4 02 81 00 00 00 00 0B
00 6C 02 03 19 07 E4 05 15 FF
0B 2C 11 FF 80 00 00 11 02 06
00 0A 86 B7 02 03 19 07 E4 05
15 FF 0B 2D 20 FF 80 00 00 11
01 06 00 0A 87 02 02 03 19 07
E4 05 15 FF 0B 2D 2F FF 80 00
00 11 02 06 00 0A 87 11 02 03
19 07 E4 05 15 FF 0B 30 1D FF
80 00 00 11 01 06 00 0A 87 B3
02 03 19 07 E4 05 15 FF 0B 30
21 FF 80 00 00 11 02 06 00 0A
8A C5 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 FE C3 CF E6
E6 00 C0 02 81 00 00 00 0B 29
D0 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 1E 74 9C E6
E7 00 C4 02 81 00 00 00 00 0C
00 6C 87 B7 02 03 19 07 E4 05
15 FF 0B 31 31 FF 80 00 00 11
01 06 00 0A 88 04 02 03 19 07
E4 05 15 FF 0B 31 35 FF 80 00
00 11 02 06 00 0A 88 08 02 03
19 07 E4 05 15 FF 0C 02 00 FF
80 00 00 11 01 06 00 0A 8A DF
02 03 19 07 E4 05 15 FF 0C 02
04 FF 80 00 00 11 02 06 00 0A
8A E3 02 03 19 07 E4 05 15 FF
0C 13 02 FF 80 00 00 11 01 06
56 97 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 10 B3 C1 E6
E6 00 C0 02 81 00 00 00 0C 96
A4 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 30 08 54 E6
E7 00 C4 02 81 00 00 00 00 0D
00 6C 00 0A 8E DE 02 03 19 07
E4 05 15 FF 0C 13 05 FF 80 00
00 11 02 06 00 0A 8E E1 02 03
19 07 E4 05 15 FF 0C 14 1C FF
80 00 00 11 01 06 00 0A 8F 35
02 03 19 07 E4 05 15 FF 0C 14
20 FF 80 00 00 11 02 06 00 0A
8F 39 02 03 19 07 E4 05 15 FF
0C 15 1E FF 80 00 00 11 01 06
00 0A 8F 74 02 03 19 07 E4 05
15 FF 0C 15 22 FF 80 00 00 11
02 47 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 32 A3 C3 E6
E6 00 C0 02 81 00 00 00 0D 1F
B5 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 52 1C 14 E6
E7 00 C4 02 81 00 00 00 00 0E
00 6C 02 06 00 0A 8F 78 02 03
19 07 E4 05 15 FF 0C 18 0E FF
80 00 00 11 01 06 00 0A 90 19
02 03 19 07 E4 05 15 FF 0C 18
1F FF 80 00 00 11 02 06 00 0A
90 2A 02 03 19 07 E4 05 15 FF
0C 1B 02 FF 80 00 00 11 01 06
00 0A 90 C1 02 03 19 07 E4 05
15 FF 0C 1B 06 FF 80 00 00 11
02 06 00 0A 90 C5 02 03 19 07
E4 05 15 FF 0C 21 1A FF 80 00
DA 1A 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 54 93 C5 E6
E6 00 C0 02 81 00 00 00 0E 84
87 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 74 28 50 E6
E7 00 C4 02 81 00 00 00 00 0F
00 6C 00 11 01 06 00 0A 92 42
02 03 19 07 E4 05 15 FF 0C 21
1D FF 80 00 00 11 02 06 00 0A
92 45 02 03 19 07 E4 05 15 FF
0C 2E 31 FF 80 00 00 11 01 06
00 0A 95 65 02 03 19 07 E4 05
15 FF 0C 2E 34 FF 80 00 00 11
02 06 00 0A 95 68 02 03 19 07
E4 05 15 FF 0D 31 3A FF 80 00
00 11 01 06 00 0A A4 32 02 03
19 07 E4 05 15 FF 0D 32 02 FF
25 F5 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 76 83 C7 E6
E6 00 C0 02 81 00 00 00 0F 0D
96 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 96 34 94 E6
E7 00 C4 02 81 00 00 00 00 10
00 6C 80 00 00 11 02 06 00 0A
A4 36 02 03 19 07 E4 05 15 FF
0D 34 1B FF 80 00 00 11 01 06
00 0A A4 C8 02 03 19 07 E4 05
15 FF 0D 34 1F FF 80 00 00 11
02 06 00 0A A4 CC 02 03 19 07
E4 05 15 FF 0D 37 06 FF 80 00
00 11 01 06 00 0A A5 68 02 03
19 07 E4 05 15 FF 0D 37 09 FF
80 00 00 11 02 06 00 0A A5 6B
02 03 19 07 E4 05 15 FF 0E 17
F3 4E 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 98 F3 C9 E6
E6 00 C0 02 81 00 00 00 10 7B
7E 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 B8 48 5C E6
E7 00 C4 02 81 00 00 00 00 11
00 6C 2B FF 80 00 00 11 01 06
00 0A AC 1E 02 03 19 07 E4 05
15 FF 0E 17 2D FF 80 00 00 11
02 06 00 0A AC 20 02 03 19 07
E4 05 15 FF 0E 1A 1B FF 80 00
00 11 01 06 00 0A AC C2 02 03
19 07 E4 05 15 FF 0E 1A 1E FF
80 00 00 11 02 06 00 0A AC C5
02 03 19 07 E4 05 15 FF 0E 1A
27 FF 80 00 00 11 01 06 00 0A
AC CE 02 03 19 07 E4 05 15 FF
6A B6 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 BA E3 CB E6
E6 00 C0 02 81 00 00 00 11 F2
6F 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 DA 5C 1C E6
E7 00 C4 02 81 00 00 00 00 12
00 6C 0E 1B 02 FF 80 00 00 11
02 06 00 0A AC E5 02 03 19 07
E4 05 15 FF 0E 1C 2D FF 80 00
00 11 01 06 00 0A AD 4C 02 03
19 07 E4 05 15 FF 0E 1C 31 FF
80 00 00 11 02 06 00 0A AD 50
02 03 19 07 E4 05 15 FF 11 1D
16 FF 80 00 00 11 01 06 00 0A
D7 A1 02 03 19 07 E4 05 16 FF
0F 1A 07 FF 80 00 00 11 02 06
00 0C 0C 3E 02 03 19 07 E4 05
F7 5B 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 DC D3 CD E6
E6 00 C0 02 81 00 00 00 12 69
5D 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 FC 68 58 E6
E7 00 C4 02 81 00 00 00 00 13
00 6C 16 FF 11 35 16 FF 80 00
00 11 01 06 00 0C 2E C0 02 03
19 07 E4 05 19 FF 0D 16 0B FF
80 00 00 11 02 06 00 0F E3 B1
02 03 19 07 E4 05 19 FF 11 2E
3B FF 80 00 00 11 01 06 00 10
21 C0 02 03 19 07 E4 05 1A FF
0B 1F 18 FF 80 00 00 11 02 06
00 11 1B 39 02 03 19 07 E4 05
1A FF 0D 04 0F FF 80 00 00 11
01 06 00 11 30 FB 02 03 19 07
C3 81 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 FE C3 CF E6
E6 00 C0 02 81 00 00 00 13 E0
4C 7E
[TRNSP_USART]: Received buf:
7E A0 83 41 02 21 1E 74 9C E6
E7 00 C4 02 81 00 00 00 00 14
00 6C E4 05 1A FF 0D 04 1C FF
80 00 00 11 02 06 00 11 31 08
02 03 19 07 E4 05 1A FF 11 27
2A FF 80 00 00 11 01 06 00 11
71 8B 02 03 19 07 E4 05 1B FF
0A 0F 3B FF 80 00 00 11 02 06
00 12 5B 0C 02 03 19 07 E4 05
1B FF 0A 1C 18 FF 80 00 00 11
01 06 00 12 5D F4 02 03 19 07
E4 05 1B FF 0A 20 02 FF 80 00
00 11 02 06 00 12 5E CE 02 03
DF ED 7E
[TRNSP_USART]: Send buf:
7E A0 14 02 21 41 10 B3 C1 E6
E6 00 C0 02 81 00 00 00 14 5F
38 7E
[TRNSP_USART]: Received buf:
7E A0 41 41 02 21 30 F7 09 E6
E7 00 C4 02 81 FF 00 00 00 15
00 2A 19 07 E4 05 1B FF 0A 22
2F FF 80 00 00 11 01 06 00 12
5F 73 02 03 19 07 E4 05 1B FF
0A 23 21 FF 80 00 00 11 02 06
00 12 5F A1 47 63 7E
Attached the debug output of the exchange when requesting a profile. The results in both cases are the same. Apparently the library did not come across such a meter!
Time limits are:
Time limits are:
sequence_command.time_start = 1589451360; // 14 May 2020 10:16:00 GMT
sequence_command.time_end = 1589537760; // 15 May 2020 10:16:00 GMT
Hi,
Hi,
From the pic it seems that meter is also returning external rows with GXDLMSDirector. Not just between the selected range. If this is true, ask the meter manufacturer to fix this.
BR,
Mikko
Hi!
Hi!
console output in own utilite:
====================================================================================================
Starting an action: ReloadSelectiveExecute
HDLC: Закрытие HDLC соединения
PTW_SerialPort: TP3_PTW_SerialPort.CloseConnect - OK
NetTR_Clear: TP3_PTW_Clear.CloseConnect - OK
HDLC: TP3_PTW_HDLC.CloseConnect - OK
Selectot set: 0.0.1.0.0.255 (Часы) in range from '14.05.2020 12:49:08.820 ' to '15.05.2020 12:49:14.240 ' (3 columns)
HDLC: Open connect. LL-transport: TP3_PTW_Clear
NetTR_Clear: Open connect. LL-transport: TP3_PTW_SerialPort
PTW_SerialPort: Open connect. LL-transport: Not used
PTW_SerialPort: Port settings: COM5 9600 8N1
PTW_SerialPort: Timeouts settings:
PTW_SerialPort: ReadIntervalTimeout: 4294967295
PTW_SerialPort: ReadTotalTimeoutMultiplier: 0
PTW_SerialPort: ReadTotalTimeoutConstant: 2000
PTW_SerialPort: WriteTotalTimeoutMultiplier: 0
PTW_SerialPort: WriteTotalTimeoutConstant: 0
PTW_SerialPort: Порт открыт (\\.\COM5)
HDLC: Инициализация обмена: SA:32, DA:16383.1
HDLC: Отправка команды DISC (U-кадр))
27-05-20 12:49:19.330: Передача 10 байт
7E A0 08 02 FF 41 53 48 ED 7E
~ ..яASHн~
27-05-20 12:49:19.341: Прием 10 байт
7E A0 08 41 02 21 1F 44 40 7E
~ .A.!.D@~
HDLC: Принят пакет HDLC: DM (U-кадр))
HDLC: Отправка команды SNRM (U-кадр))
27-05-20 12:49:19.374: Передача 10 байт
7E A0 08 02 FF 41 93 44 2B 7E
~ ..яA“D+~
27-05-20 12:49:19.411: Прием 35 байт
7E A0 21 41 02 21 73 DB D8 81 80 14 05 02 00 80 06 02 00 80 07 04 00 00 00 01 08 04 00 00 00 01 CE 6A 7E
~ !A.!sЫШЃЂ....Ђ...Ђ............Оj~
HDLC: Принят пакет HDLC: UA (U-кадр)) [Info: 23 б.]
HDLC: Параметры HDLC согласованы:
HDLC: Максимальный размер инфо-поля, принимаемого счетчиком: 128
HDLC: Максимальный размер инфо-поля, передаваемого счетчиком: 128
HDLC: Максимальный размер окна в кадрах, принимаемого счетчиком: 1
HDLC: Максимальный размер окна в кадрах, передаваемого счетчиком: 1
HDLC: Установка соединения через HDLC: успешно
DedicatedKey: Encoded data: 00
ResponseAllowed: Encoded data: 00
ProposedQualityOfService: Encoded data: 00
ProposedDLMSVersionNumber: Encoded data: 06
Conformance: Encoded data: 5F 1F 04 00 00 7E 1F
ClientMaxRecievePDUSize: Encoded data: 04 B0
PW_DLMS: Send apdu AARQ ([60H] AARQ)
AARQ:
*** Поля AARQ ***
[0] ProtocolVersion: <Empty>
[1] ApplicationContextName: 2.16.756.5.8.1.1 (Context Name)
[2] CalledAPTitle: <Empty>
[3] CalledAEQualifer: <Empty>
[4] CalledAPInvocationID: <Empty>
[5] CalledAEInvocationID: <Empty>
[6] CallingAPTitle: <Empty>
[7] CallingAEQualifer: <Empty>
[8] CallingAPInvocationID: <Empty>
[9] CallingAEInvocationID: <Empty>
[10] SenderACSERequirements: Authentication block present
[11] MechanismName: 2.16.756.5.8.2.1
[12] AuthenticationValue: [8 byte(s)]: 30 30 30 30 30 30 30 30
[29] ImplementationInformation: <Empty>
[30] UserInformation: [14 byte(s)]: 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0
DedicatedKey: <empty>
ResponseAllowed: No
ProposedQualityOfService = 0h (0)
ProposedDLMSVersionNumber = 6h (6)
+++ Conformance:
[0] reserved: Нет
[1] general-protection: Нет
[2] general-block-transfer: Нет
[3] read: Нет
[4] write: Нет
[5] unconfirmed-write: Нет
[6] reserved-six: Нет
[7] reserved-seven: Нет
[8] attribute0-supported-with-set: Нет
[9] priority-mgmt-supported: Да
[10] attribute0-supported-with-get: Да
[11] block-transfer-with-get-or-read: Да
[12] block-transfer-with-set-or-write: Да
[13] block-transfer-with-action: Да
[14] multiple-references: Да
[15] information-report: Нет
[16] data-notification: Нет
[17] access: Нет
[18] parameterized-access: Нет
[19] get: Да
[20] set: Да
[21] selective-access: Да
[22] event-notification: Да
[23] action: Да
+++ End of conformance
ClientMaxRecievePDUSize = 4B0h (1200)
*** Конец списка полей AARQ ***
ApplicationContextName: Encoded data: A1 09 06 07 60 85 74 05 08 01 01
SenderACSERequirements: Encoded data: 8A 02 07 80
MechanismName: Encoded data: 8B 07 60 85 74 05 08 02 01
AuthenticationValue: Encoded data: 80 08 30 30 30 30 30 30 30 30
AuthenticationValue: Encoded data: AC 0A 80 08 30 30 30 30 30 30 30 30
UserInformation: Encoded data: BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0
PW_DLMS:
PDU Raw data
60 36 A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 01 AC 0A 80 08 30 30 | `6Ў...`…t....Љ..Ђ‹.`…t....¬.Ђ.00
30 30 30 30 30 30 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 | 000000ѕ........_....~..°
HDLC: Отправляем порцию № 1, Размер = 59, осталось 0
HDLC: Отправка команды (I-кадр) RN:0, SN:0) [Info: 59 б.]
27-05-20 12:49:19.508: Передача 71 байт
7E A0 45 02 FF 41 10 81 20 E6 E6 00 60 36 A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 01 AC 0A 80 08 30 30 30 30 30 30
30 30 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 53 F3 7E
~ E.яA.Ѓ.жж.`6Ў...`…t....Љ..Ђ‹.`…t....¬.Ђ.000000
00ѕ........_....~..°Sу~
27-05-20 12:49:19.569: Прием 58 байт
7E A0 38 41 02 21 30 60 4D E6 E7 00 61 29 A1 09 06 07 60 85 74 05 08 01 01 A2 03 02 01 00 A3 05 A1 03 02 01 00 BE 10 04 0E 08 00 06 5F 1F 04 00
00 14 17 00 80 00 07 46 BD 7E
~ 8A.!0`Mжз.a)Ў...`…t....ў....Ј.Ў....ѕ......_...
....Ђ..FЅ~
HDLC: Принят пакет HDLC: (I-кадр) RN:1, SN:0) [Info: 46 б.]
HDLC: Send - OK
PduVariant: 61H (97): PDU Tag (AARE)
[0] : - ProtocolVersion
[1] : A1 09 06 07 60 85 74 05 08 01 01 - ApplicationContextName
[2] : A2 03 02 01 00 - Result
[3] : A3 05 A1 03 02 01 00 - ResultSourceDiagnostic
[4] : - RespondingAPTitle
[5] : - RespondingAEQualifer
[6] : - APInvocationID
[7] : - AEInvocationID
[8] : - ResponderACSERequirements
[9] : - MechanismName
[10] : - RespondingAuthenticationValue
[11] : - ImplementationInformation
[12] : BE 10 04 0E 08 00 06 5F 1F 04 00 00 14 17 00 80 00 07 - UserInformation
AARE: UserInforation field contain InitiateResponse
[0] : 00 - NegotiatedQualityOfService
[1] : 06 - NegotiatedDlmsVersionNumber
[2] : 5F 1F 04 00 00 14 17 - Conformance
[3] : 00 80 - ServerMaxReceivePduSize
[4] : 00 07 - VaaName
AARE: ------------------------------
AARE:
*** Поля AARE ***
[0] ProtocolVersion: <Empty>
[1] ApplicationContextName: 2.16.756.5.8.1.1 (Context Name)
[2] Result: Accepted
[3] ResultSourceDiagnostic: ACSE Service User.Null
[4] RespondingAPTitle: <Empty>
[5] RespondingAEQualifer: <Empty>
[6] APInvocationID: <Empty>
[7] AEInvocationID: <Empty>
[8] ResponderACSERequirements: <Empty>
[9] MechanismName: <Empty>
[10] RespondingAuthenticationValue: <Empty>
[29] ImplementationInformation: <Empty>
[30] UserInformation: [14 byte(s)]: 08 00 06 5F 1F 04 00 00 14 17 00 80 00 07
Fields of InitiateResponse:
NegotiatedQualityOfService = 0h (0)
NegotiatedDlmsVersionNumber = 6h (6)
+++ Conformance:
[0] reserved: Нет
[1] general-protection: Нет
[2] general-block-transfer: Нет
[3] read: Нет
[4] write: Нет
[5] unconfirmed-write: Нет
[6] reserved-six: Нет
[7] reserved-seven: Нет
[8] attribute0-supported-with-set: Нет
[9] priority-mgmt-supported: Нет
[10] attribute0-supported-with-get: Нет
[11] block-transfer-with-get-or-read: Да
[12] block-transfer-with-set-or-write: Нет
[13] block-transfer-with-action: Да
[14] multiple-references: Нет
[15] information-report: Нет
[16] data-notification: Нет
[17] access: Нет
[18] parameterized-access: Нет
[19] get: Да
[20] set: Нет
[21] selective-access: Да
[22] event-notification: Да
[23] action: Да
+++ End of conformance
ServerMaxReceivePduSize = 80h (128)
VaaName = 7h (7)
ConfirmedServiceError: <Empty>
*** Конец списка полей AARE ***
PW_DLMS: OpenConnect - OK
PW_DLMS: +-------------------------+
PW_DLMS: | LoadCosemClassAttribute |
PW_DLMS: +-------------------------+
PW_DLMS: Чтение ProfileGeneric.buffer
PW_DLMS: Selector enabled: 0.0.1.0.0.255 (Часы) in range from '14.05.2020 12:49:08.820 ' to '15.05.2020 12:49:14.240 ' (3 columns)
PW_DLMS: Send apdu GetRequest (GetRequestNormal: Объект запроса:0.0.99.98.2.255 (ProfileGeneric) [2](buffer), Селектор: <empty>)
GetRequest:
*** Поля GetRequest ***
Choice: 1 (GetRequest_Normal)
InvokeIdAndPriority:High priority, Noconfirmed, id = 1
CosemAttributeDescriptor:
CosemClassID: 0007H (7) - ProfileGeneric
CosemObjectInstanceID: 00000000636202FFH (0.0.99.98.2.255)
pvAttributeID: 02 (2) - buffer
AccessSelection:<empty>
*** Конец списка полей GetRequest ***
InvokeIdAndPriority: Encoded data: 81
CosemAttributeDescriptor: Encoded data: 00 07 00 00 63 62 02 FF 02
AccessSelector: Encoded data: 01
AccessParameters: Encoded data: 02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 19 07 E4 05 0E FD 0C 31 08 52 80 00 FF 19 07 E4 05 0F FD 0C 31 0E 18 80 00 FF 01 03 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00 01 09 06 00 00 60 0B 02 FF 0F 02 12 00 00 02 04 12 00 03 09 06 00 00 60 08 00 FF 0F 02 12 00 00
AccessSelection: Encoded data: 01 01 02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 19 07 E4 05 0E FD 0C 31 08 52 80 00 FF 19 07 E4 05 0F FD 0C 31 0E 18 80 00 FF 01 03 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00 01 09 06 00 00 60 0B 02 FF 0F 02 12 00 00 02 04 12 00 03 09 06 00 00 60 08 00 FF 0F 02 12 00 00
PW_DLMS:
PDU Raw data
C0 01 81 00 07 00 00 63 62 02 FF 02 01 01 02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 | А.Ѓ....cb.я.................я...
00 00 19 07 E4 05 0E FD 0C 31 08 52 80 00 FF 19 07 E4 05 0F FD 0C 31 0E 18 80 00 FF 01 03 02 04 | ....д..э.1.RЂ.я..д..э.1..Ђ.я....
12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00 01 09 06 00 00 60 0B 02 FF 0F 02 12 | ..........я..............`..я...
00 00 02 04 12 00 03 09 06 00 00 60 08 00 FF 0F 02 12 00 00 | ...........`..я.....
HDLC: Отправляем порцию № 1, Размер = 119, осталось 0
HDLC: Отправка команды (I-кадр) RN:1, SN:1) [Info: 119 б.]
27-05-20 12:49:19.766: Передача 131 байт
7E A0 81 02 FF 41 32 F6 44 E6 E6 00 C0 01 81 00 07 00 00 63 62 02 FF 02 01 01 02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 19 07
E4 05 0E FD 0C 31 08 52 80 00 FF 19 07 E4 05 0F FD 0C 31 0E 18 80 00 FF 01 03 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00
01 09 06 00 00 60 0B 02 FF 0F 02 12 00 00 02 04 12 00 03 09 06 00 00 60 08 00 FF 0F 02 12 00 00 34 E5 7E
~ Ѓ.яA2цDжж.А.Ѓ....cb.я.................я.......
д..э.1.RЂ.я..д..э.1..Ђ.я..............я.........
.....`..я..............`..я.....4е~
27-05-20 12:49:19.857: Прием 87 байт
7E A0 55 41 02 21 52 B3 D0 E6 E7 00 C4 01 81 00 01 03 02 03 19 07 E4 05 0F FF 0A 33 2C FF 80 00 00 11 02 06 00 02 91 62 02 03 19 07 E4 05 0F FF
0B 11 2C FF 80 00 00 11 01 06 00 02 97 78 02 03 19 07 E4 05 0F FF 0B 11 2E FF 80 00 00 11 02 06 00 02 97 7A BE F7 7E
~ UA.!RіРжз.Д.Ѓ.......д..я.3,яЂ.......‘b....д..я
..,яЂ.......—x....д..я...яЂ.......—zѕч~
HDLC: Принят пакет HDLC: (I-кадр) RN:2, SN:1) [Info: 75 б.]
HDLC: Send - OK
PduVariant: C4H (196): PDU Tag (GetResponse)
GetResponse: 01H (1) - Choice (GetResponse.Normal)
[0] : 81 - InvokeIdAndPriority
01 - Тэг типа данных XDR: Array
Парсинг 3 элемент(ов) списка
[0] Structure
[0] : 02 - Тэг типа данных XDR: Structure
[0] : Парсинг 3 элемент(ов) списка
[0] : [0] DateTime
[0] : 19 - Тэг типа данных XDR: DateTime
[0] : [1] UInt8
[1] : 11 - Тэг типа данных XDR: UInt8
[1] : 02 - Значение (2)
[0] : [2] UInt32
[2] : 06 - Тэг типа данных XDR: UInt32
[2] : 00 02 91 62 - Значение (168290)
[0] : Кол-во элементов = 3
[1] Structure
[1] : 02 - Тэг типа данных XDR: Structure
[1] : Парсинг 3 элемент(ов) списка
[1] : [0] DateTime
[0] : 19 - Тэг типа данных XDR: DateTime
[1] : [1] UInt8
[1] : 11 - Тэг типа данных XDR: UInt8
[1] : 01 - Значение (1)
[1] : [2] UInt32
[2] : 06 - Тэг типа данных XDR: UInt32
[2] : 00 02 97 78 - Значение (169848)
[1] : Кол-во элементов = 3
[2] Structure
[2] : 02 - Тэг типа данных XDR: Structure
[2] : Парсинг 3 элемент(ов) списка
[2] : [0] DateTime
[0] : 19 - Тэг типа данных XDR: DateTime
[2] : [1] UInt8
[1] : 11 - Тэг типа данных XDR: UInt8
[1] : 02 - Значение (2)
[2] : [2] UInt32
[2] : 06 - Тэг типа данных XDR: UInt32
[2] : 00 02 97 7A - Значение (169850)
[2] : Кол-во элементов = 3
Кол-во элементов = 3
[1] : 00 01 03 02 03 19 07 E4 05 0F ... 80 00 00 11 02 06 00 02 97 7A - GetDataResult
GetDataResult: 00H - Choice (Data)
GetDataResult: Data: Array[3]
GetResponse:
*** Поля GetResponse ***
Choice = 1 (GetResponseNormal)
InvokeIdAndPriority: High priority, Noconfirmed, id = 1
GetDataResult: Data.Array[3]
*** Конец списка полей GetResponse ***
GetDataResult.Data: Encoded data: 01 03 02 03 19 07 E4 05 0F FE 0A 33 2C 19 80 00 00 11 02 06 00 02 91 62 02 03 19 07 E4 05 0F FE 0B 11 2C 19 80 00 00 11 01 06 00 02 97 78 02 03 19 07 E4 05 0F FE 0B 11 2E 19 80 00 00 11 02 06 00 02 97 7A
PW_DLMS: Нет информации об ошибке
PW_DLMS: Send apdu RLRQ ([62H] RLRQ)
RLRQ:
*** Поля RLRQ ***
[0] Reason: <Empty>
[30] UserInformation: <Empty>
*** Конец списка полей RLRQ ***
Reason: Encoded data: 80 01 00
UserInformation: Encoded data: BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0
PW_DLMS:
PDU Raw data
62 15 80 01 00 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 | b.Ђ..ѕ........_....~..°
HDLC: Отправляем порцию № 1, Размер = 26, осталось 0
HDLC: Отправка команды (I-кадр) RN:2, SN:2) [Info: 26 б.]
27-05-20 12:49:19.918: Передача 38 байт
7E A0 24 02 FF 41 54 56 8E E6 E6 00 62 15 80 01 00 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 9B 42 7E
~ $.яATVЋжж.b.Ђ..ѕ........_....~..°›B~
27-05-20 12:49:19.936: Прием 17 байт
7E A0 0F 41 02 21 74 4D AD E6 E7 00 63 00 98 30 7E
~ .A.!tMжз.c.0~
HDLC: Принят пакет HDLC: (I-кадр) RN:3, SN:2) [Info: 5 б.]
HDLC: Send - OK
PduVariant: 63H (99): PDU Tag (RLRE)
[0] : - Reason
[1] : - UserInformation
RLRE:
*** Поля RLRE ***
[0] Reason: Nortmal
[30] UserInformation: <Empty>
*** Конец списка полей RLRE ***
HDLC: Закрытие HDLC соединения
HDLC: Отправка команды DISC (U-кадр))
27-05-20 12:49:19.971: Передача 10 байт
7E A0 08 02 FF 41 53 48 ED 7E
~ ..яASHн~
27-05-20 12:49:19.982: Прием 10 байт
7E A0 08 41 02 21 73 2E E9 7E
~ .A.!s.й~
HDLC: Принят пакет HDLC: UA (U-кадр))
HDLC: Отправка команды DISC (U-кадр))
27-05-20 12:49:20.15: Передача 10 байт
7E A0 08 02 FF 41 53 48 ED 7E
~ ..яASHн~
27-05-20 12:49:20.29: Прием 10 байт
7E A0 08 41 02 21 1F 44 40 7E
~ .A.!.D@~
HDLC: Принят пакет HDLC: DM (U-кадр))
PTW_SerialPort: \\.\COM5 Закрыт
PTW_SerialPort: TP3_PTW_SerialPort.CloseConnect - OK
NetTR_Clear: TP3_PTW_Clear.CloseConnect - OK
HDLC: TP3_PTW_HDLC.CloseConnect - OK
Completion of an action: ReloadSelectiveExecute
----------------------------------------------------------------------------------------------------
meter response correct in time interval!
PW_DLMS: Selector enabled: 0
PW_DLMS: Selector enabled: 0.0.1.0.0.255 (Часы) in range from '14.05.2020 12:49:08.820 ' to '15.05.2020 12:49:14.240 ' (3 columns)
Hi,
Hi,
Other app don't use deviation or status, I believe that your meter can't handle deviation and it breaks this. You should ask the meter manufacturer to fix it.
Other app:
<!-- 14.5.2020 12.49.08.820 -->
<DateTime Value="07E4050EFD0C3108528000FF" />
<!-- 15.5.2020 12.49.14.240 -->
<DateTime Value="07E4050FFD0C310E188000FF" />
Your app:
<!-- 14.5.2020 13.16.00 -->
<OctetString Value="07E4050E040A100000000000" />
<!-- 15.5.2020 13.16.00 -->
<OctetString Value="07E4050F050A100000000000" />
You need to ignore them. Something like:
gxtime start;
time_init(start...);
start.skip = DATETIME_SKIPS_DEVITATION | DATETIME_SKIPS_STATUS;
cl_readRowsByRange2(settings, pg, &start, ...)
BR,
Mikko
Thanks for the advice! I will
Thanks for the advice! I will pass on the information to the meter manufacturer. Attached a dump exchange of a successful query request.
7E A0 08 02 FF 41 53 48 ED 7E 7E A0 08 41 02 21 1F 44 40 7E 7E A0 08 02 FF 41 93 44 2B 7E 7E A0 21 41 02 21 73 DB D8 81 80 14 05 02 00 80 06 02 00 80 07 04 00 00 00 01 08 04 00 00 00 01 CE 6A 7E 7E A0 45 02 FF 41 10 81 20 E6 E6 00 60 36 A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 01 AC 0A 80 08 30 30 30 30 30 30 30 30 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 53 F3 7E 7E A0 38 41 02 21 30 60 4D E6 E7 00 61 29 A1 09 06 07 60 85 74 05 08 01 01 A2 03 02 01 00 A3 05 A1 03 02 01 00 BE 10 04 0E 08 00 06 5F 1F 04 00 00 14 17 00 80 00 07 46 BD 7E 7E A0 81 02 FF 41 32 F6 44 E6 E6 00 C0 01 81 00 07 00 00 63 62 02 FF 02 01 01 02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 19 07 E4 05 0E FD 0D 33 2F 28 80 00 FF 19 07 E4 05 0F FD 0D 33 33 55 80 00 FF 01 03 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00 02 04 12 00 01 09 06 00 00 60 0B 02 FF 0F 02 12 00 00 02 04 12 00 03 09 06 00 00 60 08 00 FF 0F 02 12 00 00 32 0E 7E 7E A0 55 41 02 21 52 B3 D0 E6 E7 00 C4 01 81 00 01 03 02 03 19 07 E4 05 0F FF 0A 33 2C FF 80 00 00 11 02 06 00 02 91 62 02 03 19 07 E4 05 0F FF 0B 11 2C FF 80 00 00 11 01 06 00 02 97 78 02 03 19 07 E4 05 0F FF 0B 11 2E FF 80 00 00 11 02 06 00 02 97 7A BE F7 7E 7E A0 24 02 FF 41 54 56 8E E6 E6 00 62 15 80 01 00 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 7E 1F 04 B0 9B 42 7E 7E A0 0F 41 02 21 74 4D AD E6 E7 00 63 00 98 30 7E 7E A0 08 02 FF 41 53 48 ED 7E 7E A0 08 41 02 21 73 2E E9 7E 7E A0 08 02 FF 41 53 48 ED 7E 7E A0 08 41 02 21 1F 44 40 7E
Hi,
Hi,
Because this is not the first meter that can't handle time zone or status, I'll try to way how to define this in the GXDLMSDirector. I believe that there will be one more setting for this.
BR,
Mikko
Hi
Hi
//Devitation is skipped.
DATETIME_SKIPS_DEVITATION = 0x100,
//Status is skipped.
DATETIME_SKIPS_STATUS = 0x200
} DATETIME_SKIPS;
typedef struct
{
#ifdef DLMS_USE_EPOCH_TIME
unsigned long value;
#else
struct tm value;
#endif
unsigned char skip; //DATETIME_SKIPS
short deviation;
unsigned char extraInfo;// DLMS_DATE_TIME_EXTRA_INFO
unsigned char status;//DLMS_CLOCK_STATUS
} gxtime;
unsigned char skip is small for flags 0x100 and 0x200!!!
Hi!
Hi!
flags are not used in functions:
int cl_readRowsByRange2(
dlmsSettings* settings,
gxProfileGeneric* object,
gxtime* start,
gxtime* end,
message* messages)
{
#ifdef DLMS_USE_EPOCH_TIME
return cl_readRowsByRange(settings, object, start->value, end->value, messages);
#else
return cl_readRowsByRange(settings, object, &start->value, &end->value, messages);
#endif //DLMS_USE_EPOCH_TIME
}
They are not even transferred there!!!
Hi,
Hi,
You are right. We'll fix this tomorrow.
BR,
Mikko
Hi!
Hi!
Standart says: "Date and time information may be represented using the data type octet-string".
Meter uses the AXDR 19 (DateTime) type. Gurux library - issues it in the form of OS (12). How can I request in format AXDR 19 (DateTime) type?
Hi,
Hi,
If we are talking from profile generic here data type must be octet-string, not DateTime.
The reason for this is that capture objects column is Clock object 0.0.1.0.0.255 and the attribute Index is #2. Clock object time type is octet-string, not DateTime.
It's not possible to use DateTime data type if clock selected as sort_object.
Data type must be the same that capture object is using.
Using DateTime here breaks compatibility for reading all other meter types.
BR,
Mikko
Hi,
Hi,
cl_readRowsByRange2 is fixed in version 20200528.1.
https://www.gurux.fi/node/15910
BR,
Mikko