Skip to main content
Home
for DLMS smart meters

Main navigation

  • Home
  • Products
  • About us
  • Open Source
  • Community
  • Forum
  • Downloads
User account menu
  • Log in

Breadcrumb

  1. Home
  2. Simulator - Objects ProfileGeneric From The Template Are Not Read

Simulator - objects ProfileGeneric from the template are not read

By JavierDiaz, 20 November, 2023
Forums
Gurux.DLMS

Hi,
Tell me, please, I launched the simulator with a template, in which there is object ProfileGeneric with data. I'm trying to read data from this object - it returns an empty array.
And second, is it possible to make object 1 dynamically filled with data every day that can be read?

Thank you!

Object with data from the template:
<GXDLMSProfileGeneric>
<LN>1.0.99.1.0.255</LN>
<Version>1</Version>
<Description>Ch. 0 Load profile with recording period 1 #1</Description>
<Access>11311111</Access>
<MethodAccess>10</MethodAccess>
<Buffer>
<Row>
<Cell Type="10">20.11.2023 0:00:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 23:30:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 23:00:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 22:30:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 22:00:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 21:30:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 21:00:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 20:30:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 20:00:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
<Row>
<Cell Type="10">19.11.2023 19:30:00</Cell>
<Cell Type="17">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
</Row>
</Buffer>
<CaptureObjects>
<Item>
<ObjectType>8</ObjectType>
<LN>0.0.1.0.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>1</ObjectType>
<LN>0.0.96.10.5.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.1.29.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.2.29.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.3.29.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.4.29.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
</CaptureObjects>
<CapturePeriod>1800</CapturePeriod>
<SortMethod>2</SortMethod>
<SortObject>
<ObjectType>8</ObjectType>
<LN>0.0.1.0.0.255</LN>
</SortObject>
<EntriesInUse>6144</EntriesInUse>
<ProfileEntries>6144</ProfileEntries>
</GXDLMSProfileGeneric>

JavierDiaz

1 year 5 months ago

An error occurs when reading…

An error occurs when reading another object ProfileGeneric:
"Insufficient memory to continue the execution of the program" when calling the "client.UpdateValue" function.

Profile picture for user Kurumi

Kurumi

1 year 5 months ago

Hi, Insufficient memory…

Hi,

Insufficient memory error means that all the data is not available. I can't help you with that because you didn't tell me what attribute you read.

You can fill the profile generic buffer as you want to. It's not read from the meter, because it's old data and there is no use after a while. It's quite common that client applications want to read the last day.

BR,
Mikko

JavierDiaz

1 year 5 months ago

Thank you for your reply. I…

Thank you for your reply.
I found the cause of the problem, but I don't know how to fix it.
Template xml contains data, I read it from a real device and saved it in Director to file xml using function "Save Values As".
The error occurs in file GxCommon when trying to parse date type DateTime.
If the timestamp in file xml is changed to hexadecimal representation of type DateTime, then the data is successfully read.

<Row>
<Cell Type="10">07 E7 0B 0A FF 00 00 00 00 80 00 FF</Cell>
<Cell Type="6">61464998</Cell>
<Cell Type="24" UIType="24">23578.78</Cell>
<Cell Type="24" UIType="24">11821.1</Cell>
<Cell Type="24" UIType="24">5220.07</Cell>
<Cell Type="24" UIType="24">3246.76</Cell>
<Cell Type="24" UIType="24">11821.1</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">112353.37</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">3290.85</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">0</Cell>
<Cell Type="24" UIType="24">49969.22</Cell>
<Cell Type="24" UIType="24">31276.36</Cell>
<Cell Type="24" UIType="24">12695.97</Cell>
<Cell Type="24" UIType="24">18411.82</Cell>
<Cell Type="18">0</Cell>
</Row>

How can this problem be solved?

Image

JavierDiaz

1 year 5 months ago

The problem occurs when…

The problem occurs when trying to read data, attribute 2.

Profile picture for user Kurumi

Kurumi

1 year 5 months ago

Hi, GXDLMSDirector data…

Hi,

GXDLMSDirector data format is different than the simulator and for that reason, you can't use GXDLMSDirector to save simulator data.

You can modify the simulator to generate rows for your needs.

BR,
Mikko

JavierDiaz

1 year 5 months ago

Thank you for your reply…

Thank you for your reply.

Can I read ProfileGeneric from the simulator using reading ReadRowsByRange, at the moment there is an error
"Access Error : Device reports Read-Write denied"?

Profile picture for user Kurumi

Kurumi

1 year 5 months ago

Hi, First, check that you…

Hi,

First, check that you have enough access rights to read this value.
Can you invoke "Capture" from the GXDLMSDirector? It will save a new for for the buffer. Check that you have saved the data in the correct format.

BR,
Mikko

JavierDiaz

1 year 5 months ago

thank you for your help. Let…

thank you for your help.
Let me ask you one more question. I have a template in which the association is with level high and password. I'm running an emulator

Gurux.DLMS.Simulator.Net.dll -p 1000 -x Templates/sim.xml -t Verbose -N 2 -a High -P pass1
DLMS HDLC Logical Name simulator start in ports 1000-1001.
Waiting 00:50:10 before next execution.
Server address: 1
Associations:
++++++++++++++++++++++++++++
Client address: 48 High authentication, password pass1
Conformance:
BlockTransferWithGetOrRead, BlockTransferWithSetOrWrite, Get, Set, SelectiveAccess, Action
MaxReceivePduSize: 1024 MaxSendPduSize: 1024

Security suite: Suite0
Security policy: None
Authentication key: D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
Block cipher key: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
Broadcast block cipher key: 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

I can connect to a device with port 1000, but I can’t connect to the rest, error "Device reports Read-Write denied" occurs while
"client.GetApplicationAssociationRequest".
Please tell me, I can’t use a password connection in the emulator?

Profile picture for user Kurumi

Kurumi

1 year 5 months ago

Hi, I believe that you have…

Hi,

I believe that you have read this device template with some other authentication level than high authentication. Now when you try to establish the high level authentication it's not allowed.

You can allow all access if you modify GetMethodAccess to return MethodAccessMode.Access and GetAttributeAccess to AccessMode.ReadWrite.

BR,
Mikko

JavierDiaz

1 year 5 months ago

Thank you for your help! Let…

Thank you for your help!

Let me ask you one more question.
I ran the emulator on 1000 devices using one address and 1000 ports. Started reading the serial number. I came across the fact that error 1 occurs. The same error occurs when starting 50 devices.
Tell me, please, what could be the reason?

Read package error: Message - Exception has been thrown by the target of an invocation.. InnerException - System.Exception: LLC bytes are missing from the message.

Profile picture for user Kurumi

Kurumi

1 year 5 months ago

Hi, Only one instance is…

Hi,

Only one instance is allowed at the time for the one meter.
Make also sure that no other application is using that port.

BR,
Mikko

  • Log in or register to post comments
  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Thu, 05/15/2025 - 16:26
    gurux.dlms.c 9.0.2505.1501
  • Wed, 05/14/2025 - 08:30
    gurux.dlms.c 9.0.2505.1401
  • Tue, 05/13/2025 - 10:00
    Gurux.DLMS.Android 2.0.15
  • Fri, 05/09/2025 - 13:03
    Gurux.DLMS.Python 1.0.181
  • Wed, 05/07/2025 - 16:09
    Gurux.DLMS.Android 2.0.14

New forum topics

  • Long reading ends with "Invalid frame ..." error.
  • Push listener example how it works + tcp stream issue
  • Problem with reading energymeter Star DTS27 via GXDLMSDirector
  • Receiver Ready Test Failed
  • Combining several meters' profile generic data into one
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin