Hello Sir,
Meter is responds with ExceptionResponse while reading logical_name of 0.0.40.0.0.FF in NO_SECURITY: Class ID-1. The report suggests as follow.
Errors
Invalid DLMS version: 0
AssociationLogicalName 0.0.40.0.0.255 Get 5 is invalid.
Expected:
<GetResponse>
<GetResponseNormal>
<InvokeIdAndPriority Value="*" />
<Result>
<Data>
<Structure Qty="6">
<BitString Value="*" />
<UInt16 Value="*" />
<UInt16 Value="*" />
<UInt8 Value="6" />
<Int8 Value="*" />
<OctetString Value="*" />
</Structure>
</Data>
</Result>
</GetResponseNormal>
</GetResponse>
Actual:
<GetResponse>
<GetResponseNormal>
<InvokeIdAndPriority Value="C1" />
<Result>
<Data>
<Structure Qty="06" >
<BitString Value="000000000000000000010000" />
<UInt16 Value="0400" />
<UInt16 Value="0400" />
<UInt8 Value="00" />
<Int8 Value="00" />
<OctetString Value="" />
</Structure>
</Data>
</Result>
</GetResponseNormal>
</GetResponse>
What could be the reason ?
Where should I make changes?
Thank you.
Regards,
Girija
Hi, You are returning zero…
Hi,
You are returning zero as a DLMS version when it should be six.
BR,
Mikko
Sir, I have changed the DLMS…
Sir,
I have changed the DLMS-Version from 0 to 6 as you suggested. Now the error regarding the version number is removed in the test-report. All the other values are still the same except for <UInt8 Value="00" /> is now replaced by <UInt8 Value="06" /> as mentioned above.
What does it mean by 'Get 5 invalid' ?
Regards,
Girija
Hi, Can you add request and…
Hi,
Can you add request and response hex values so I can check what might cause this?
BR,
Mkko
I understood that in my…
I understood that in my previous question, 'Get 5' represents an Attribute 5.
Here is the Request-Response Hex values of Association Logical Name : Attribute 05.
125: 7E A0 19 03 41 BA 7A B5 E6 E6 00 C0 01 C1 00 0F 00 00 28 00 00 FF 05 00 99 1E 7E
<HDLC len="18" >
<TargetAddress Value="1" />
<SourceAddress Value="20" />
<FrameType Value="BA" />
<PDU>
<GetRequest>
<GetRequestNormal>
<!-- Priority: High, ServiceClass: Confirmed, Invoke ID: 1 -->
<InvokeIdAndPriority Value="C1" />
<AttributeDescriptor>
<!-- AssociationLogicalName -->
<ClassId Value="000F" />
<!-- 0.0.40.0.0.255 -->
<InstanceId Value="0000280000FF" />
<AttributeId Value="05" />
</AttributeDescriptor>
</GetRequestNormal>
</GetRequest>
</PDU>
</HDLC>
126: 7E A0 23 41 03 DA 38 80 E6 E7 00 C4 01 C1 00 02 06 04 18 00 10 14 12 04 00 12 04 00 11 06 0F 00 09 00 34 DB 7E
<HDLC len="22" >
<TargetAddress Value="20" />
<SourceAddress Value="1" />
<FrameType Value="DA" />
<PDU>
<GetResponse>
<GetResponseNormal>
<!-- Priority: High, ServiceClass: Confirmed, Invoke ID: 1 -->
<InvokeIdAndPriority Value="C1" />
<Result>
<Data>
<Structure Qty="06" >
<BitString Value="000000000001000000010100" />
<UInt16 Value="0400" />
<UInt16 Value="0400" />
<UInt8 Value="06" />
<Int8 Value="00" />
<OctetString Value="" />
</Structure>
</Data>
</Result>
</GetResponseNormal>
</GetResponse>
</PDU>
</HDLC>
I also noticed a note states, "//Protocol version must be 100001". Is the error regarding to the version again? Although I have changed the version number,
settings->base.dlmsVersionNumber = 6;
Also, by mistake I mentioned class ID-1 in my very first question, but its actually a Class ID-15.
Regards,
Girija
Hi, You need to ask the…
Hi,
You need to ask the questions from the stack (library) vendor. There are multiple arguments in DLMS and it's hard to say what might be the reason because I don't have the source code.
BR,
Mikko