Followings are the frame formats in non suite and suite0:
Non Suite: (Data notification frame)
7E A0 43 61 00 02 BA 69 30 13 51 E6 E7 00 0F C0 00 00 01 00 02 04 0A 09 37 30 32 32 30 30 30 35 39 0A 0F 38 36 35 32 33 34 30 33 30 33 34 37 36 37 37 0F 0C 09 0C 07 E5 05 0A 01 00 36 2C FF 80 00 FF 78 64 7E
Suite0: (General global cyphering with data notification frame)
7E A0 5F 61 00 02 BA 69 5E 38 DF E6 E7 00 DB 08 33 44 4C 07 02 20 00 59 45 30 01 23 45 67 52 49 20 18 3B B3 F0 20 56 73 9E 4C 0C D2 09 6D E5 43 3E D4 F1 85 D7 3B 2C 89 58 9C 7F 62 91 72 E8 D2 D9 21 C8 6E 2D 38 42 57 ED 8E D8 DC 66 42 32 08 2F E5 BF 57 19 4E 6A 83 25 89 24 62 D0 AF 76 56 7E
I have built these frames with the help of the green book.
but i want to confirm that whether these frames are correct or not and can be accepted by the guruxdirector because i don't getting much information about last gasp message from anywhere.
DLMS standard doesn't define the content of the push messages. In general, it's good to send the logical device name as a first parameter so the client will know who is sending the data and what might be the structure of it.
Hi,
Hi,
You can use GXDLMSTranslator to verify the frame.
https://www.gurux.fi/GuruxDLMSTranslator?translate=7EA043610002BA693013…
For ciphered connection, you can use GXDLMSDirector GuruxDLMSTranslator. Set correct block ciphered key and authentication key to decrypt the data.
BR,
Mikko
Hii,
Hii,
Our message get decoding in notification log window as follows:
Non Suite:
Notifications listen started on Tcp port 9005.
Client connected: 192.168.42.209:52320
Client disconnected: 192.168.42.209:52320
Client connected: 192.168.42.209:52338
Client disconnected: 192.168.42.209:52338
Client connected: 192.168.42.209:52378
Invalid DLMS frame.
10/5/2021 4:19:44 pm
<HDLC len="42" >
<TargetAddress Value="30" />
<!-- Logical address:1, Physical address:11956 -->
<SourceAddress Value="6EB4" />
<!-- Notification frame. -->
<FrameType Value="13" />
<PDU>
<DataNotification>
<!-- High priority. -->
<!-- Confirmed service. -->
<!-- Invoke ID: 1 -->
<LongInvokeIdAndPriority Value="C0000001" />
<!-- 1/1/0001 12:00:00 am -->
<DateTime Value="" />
<NotificationBody>
<DataValue>
<Structure Qty="04" >
<String Value="702200059" />
<String Value="865234030347677" />
<Int8 Value="0C" />
<!-- 10/5/2021 7:12:56 am -->
<OctetString Value="07E5050A01070C38FF8000FF" />
</Structure>
</DataValue>
</NotificationBody>
</DataNotification>
</PDU>
</HDLC>
10/5/2021 4:19:50 pm
<HDLC len="42" >
<TargetAddress Value="30" />
<!-- Logical address:1, Physical address:11956 -->
<SourceAddress Value="6EB4" />
<!-- Notification frame. -->
<FrameType Value="13" />
<PDU>
<DataNotification>
<!-- High priority. -->
<!-- Confirmed service. -->
<!-- Invoke ID: 1 -->
<LongInvokeIdAndPriority Value="C0000001" />
<!-- 1/1/0001 12:00:00 am -->
<DateTime Value="" />
<NotificationBody>
<DataValue>
<Structure Qty="04" >
<String Value="702200059" />
<String Value="865234030347677" />
<Int8 Value="0C" />
<!-- 10/5/2021 7:12:56 am -->
<OctetString Value="07E5050A01070C38FF8000FF" />
</Structure>
</DataValue>
</NotificationBody>
</DataNotification>
</PDU>
</HDLC>
is this correct process of testing ?
BR,
Aoudumbar
Hi,
Hi,
DLMS standard doesn't define the content of the push messages. In general, it's good to send the logical device name as a first parameter so the client will know who is sending the data and what might be the structure of it.
BR,
Mikko