Got "unacceptable frame" when dlmsdirector connecting to Nordic meter. Sometimes it connects without problem.
trace is:
19:33:26 Send SNRM request.
TX: 7E A0 07 03 23 93 BF 32 7E
19:33:26
RX: 7E A0 1E 23 03 73 7B CF 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
19:33:26 Send AARQ request.
TX: 7E A0 41 03 23 10 01 D9 E6 E6 00 60 33 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 07 80 05 47 75 72 75 78 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 62 1E 5D FF FF A0 9D 7E
19:33:34 Data send failed. Try to resend 1/3
19:33:34
RX: 7E A0 07 23 03 97 93 54 7E
19:33:34
RX: 7E A0 1E 23 03 73 7B CF 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
Hi, Are you using the…
Hi,
Are you using the example for the Nordic or have you made any changes?
How often this is occurred?
BR,
Mikko
Just tested sample as is. i…
Just tested sample as is. i traced serial data on tx from DLMSDirector and there is one byte (setted 0x02) at the same places in every time and debuged in the VCS of server catched CRCerror. DLMSDirector has bug? Sometimes there no changes in payload and connection got ok
Hi, The first byte should be…
Hi,
The first byte should be 0x7E. The payload should be the same when you are connecting. GXDLMSDirector is used widely so I don't believe that is the problem here. What Nordic board you are using? Have you built this with VS Code?
BR,
Mikko
20:55:43 Send SNRM request…
20:55:43 Send SNRM request.
TX: 7E A0 07 03 25 93 6F 66 7E
20:55:43
RX: 7E A0 1E 25 03 73 A2 19 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
20:55:43 Send AARQ request.
TX: 7E A0 4C 03 25 10 5E 06 E6 E6 00 60 3E A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 02 AC 12 80 10 5A 34 3E 75 00 0A 11 42 47 73 38 1D 40 6D 50 52 BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 62 1E 5D FF FF 19 1F 7E
20:55:43
RX: 7E A0 58 25 03 30 10 34 E6 E7 00 61 4A A1 09 06 07 60 85 74 05 08 01 01 A2 03 02 01 00 A3 05 A1 03 02 01 0E 88 02 07 80 89 07 60 85 74 05 08 02 02 AA 12 80 10 70 38 9C CE 67 B3 59 AC 56 AB 55 2A 15 8A 45 22 BE 10 04 0E 08 00 06 5F 1F 04 00 00 1E 1D 02 00 00 07 DC F0 7E
20:55:43 Authenticating.
TX: 7E A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 64 A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03 CB 9F 7E
20:55:48 Data send failed. Try to resend 1/3
20:55:48
RX: 7E A0 07 25 03 97 4A 82 7E
20:55:48
RX: 7E A0 1E 25 03 73 A2 19 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
and i traced with logic analyzer at tx then
7E A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 66 A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03 CB 9F 7E
this ...78 66 (not 64) every time with crcerror then unacceptable frame.
this payload on PC serial tx where DLMSDirector running. suspective DLMDirector or USB2UART driver on windows
Hi,…
Hi,
6E407866A2F5FA45A68F8C6DEF93C703 is a client to server challenge. Data and CRC seem to be correct.
What board you are using? We test this with the same board.
BR,
Mikko
this is nrf52840 custom…
this is nrf52840 custom board. server running fine. DLMSDirector perform well, but sometimes got this problem. How did you check crc for paylod, so got correct CRC? i checked CRC goes wrong and it will be 91 94 not CB 9F
Hi, CRC locations below: 7E…
Hi,
CRC locations below:
7E A0 2B 03 25 32
8B CA //HEADER CRC.
E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 66 A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03
CB 9F //DATA CRC.
7E
BR,
Mikko
CRC calculated for entire A0…
CRC calculated for entire A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 64 A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03and is 0x9FCB CRC (CB9F) that is origin payload.
corrupted at tx is: A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 66 A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03 and it's CRC is 0x9491 (9194) which generate CRCerror. Please, check it
Hi, Trace what you can see…
Hi,
Trace what you can see on the log is what is written to the RS-232. I don't know why 0x64 is changed to 0x66 on the way. You need to try with a different UART converter and also check your cables. I can say that cables cause a lot of problems if they are too long or are located in places where other devices cause problems, e.g. too
close to the monitor cables.
BR,
Mikko
7E A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 64 //DIFF
A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03 CB 9F 7E
Corrupted data that you can see with a logic analyzer:
7E A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 6E 40 78 66 //DIFF
A2 F5 FA 45 A6 8F 8C 6D EF 93 C7 03 CB 9F 7E