Hello,
we have issue with counter ZMD DLMS communication:
Counter Number: LGZ97755421
Configuration ID: B.M3BCPTSCMDO.0459.AT0S vGsarHSP
Firmware: B31
Please follow my explanation.
If we ask the counter for data from period which has no data, counter answers as expected, that there is no data. Like that:
SENDING MESSAGE:
7E A0 47 00 02 64 2B 41 B8 1F 4F E6 E6 00 05 01 04 62 78 01
02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00
09 0C 07 E2 06 1E FF 00 00 00 00 80 00 FF 09 0C 07 E2 07 01
FF 00 00 00 00 80 00 FF 01 00 14 36 7E
RECEIVED MESSAGE:
7E A0 14 41 00 02 64 2B BA 34 A0 E6 E7 00 0C 01 00 01 00 F9
F1 7E
And that is great, but after then if we ask for data from next period, we receive some strange message which we don't know how to interprate. Like that:
SENDING MESSAGE:
7E A0 47 00 02 64 2B 41 B8 1F 4F E6 E6 00 05 01 04 62 78 01
02 04 02 04 12 00 08 09 06 00 00 01 00 00 FF 0F 02 12 00 00
09 0C 07 E2 07 01 FF 00 00 00 00 80 00 FF 09 0C 07 E2 07 02
FF 00 00 00 00 80 00 FF 01 00 FE 7C 7E
RECEIVED MESSAGE (WHICH WE DON'T UNDERSTAND):
7E A0 0F 41 00 02 64 2B 97 98 99 B8 AC 08 E0 09 7E
Is there anyone who could help with such issue? I can't find anything in documentation.
Meter rejects the frame. HDLC frame id is wrong. How long you are waiting between the reads?
Do you start communication again in before sending msg 2 or do you wait and try to read next part?
Hello, thanks for your answer.
No, I do not start comunication again before next read.
Of course I can arrange that. But don’t you think it’s strange and unpropriate to start new comunication every time there is no data in some period?
First of all, we use our own library.
But the point is that we don't try to read the meter twice.
First question is about first day we know that meter doesn't have any data. And answer is just like that, no data.
Next we ask the meter about the next day, next period where meter also has no data (but during the same read session). So why should we use different type of HDLC frame?
The problem doesn't exist when we ask about days where meter has data, day by day. That's the point.
I am not sure, I am new in DLMS, but I think we have some misunderstanding.
You say frame id is wrong.
But there is no problem if counter has data.
We do exactly the same, and there is no problem in normal scenario.
The problem is only if counter has no data. So it looks like problem is in the counter. We make everytime exactly the same communication protocule.
Should we manualy change the frame id only in case counter has no data or what?
As I know frame id increases automaticaly everytime counter answer.
Hi,
Hi,
Meter rejects the frame. HDLC frame id is wrong. How long you are waiting between the reads?
Do you start communication again in before sending msg 2 or do you wait and try to read next part?
BR,
Mikko
Hello, thanks for your answer
Hello, thanks for your answer.
No, I do not start comunication again before next read.
Of course I can arrange that. But don’t you think it’s strange and unpropriate to start new comunication every time there is no data in some period?
Hi,
Hi,
I don't believe that you are using our libraries.
Your HDLC frame type is wrong if you try to read your meter twice. You need to fix that.
BR,
Mikko
First of all, we use our own
First of all, we use our own library.
But the point is that we don't try to read the meter twice.
First question is about first day we know that meter doesn't have any data. And answer is just like that, no data.
Next we ask the meter about the next day, next period where meter also has no data (but during the same read session). So why should we use different type of HDLC frame?
The problem doesn't exist when we ask about days where meter has data, day by day. That's the point.
Hi,
Hi,
If you are asking next day after first day it will fail because you don't increase HDLC frame counters.
Meter rejects next frame because frame id is wrong.
http://www.gurux.fi/GuruxDLMSTranslator?translate=7EA00F410002642B97989…
BR,
Mikko
I am not sure, I am new in
I am not sure, I am new in DLMS, but I think we have some misunderstanding.
You say frame id is wrong.
But there is no problem if counter has data.
We do exactly the same, and there is no problem in normal scenario.
The problem is only if counter has no data. So it looks like problem is in the counter. We make everytime exactly the same communication protocule.
Should we manualy change the frame id only in case counter has no data or what?
As I know frame id increases automaticaly everytime counter answer.