var profileGeneric = new GXDLMSProfileGeneric(“1.0.99.1.0.255”); GXDLMSObject obj = new GXDLMSObject(); obj=ConnexionCommunication.Settings.client.Objects.FindByLN(ObjectType.Data, "0.0.1.1.0.255");
var captureObject = new GXDLMSCaptureObject(2, 0); profileGeneric.CaptureObjects.Add(new GXKeyValuePair<GXDLMSObject, GXDLMSCaptureObject>( obj, captureObject));
First, check that 0.0.1.1.0.255 is a data object and exists in the association view.
Then, check that you have enough access rights so you can write the capture object to the meter.
Usually, the reason is one of those.
Try to read the capture object from the meter and write the same values back. Is that working?
0.0.1.1.0.255 is a data object and exists in the association view.
How can I check that I have sufficient access rights to write the capture object to the counter?
How do you read the object captured on the counter and rewrite the same values?
var profileGeneric = new…
var profileGeneric = new GXDLMSProfileGeneric(“1.0.99.1.0.255”);
GXDLMSObject obj = new GXDLMSObject();
obj=ConnexionCommunication.Settings.client.Objects.FindByLN(ObjectType.Data, "0.0.1.1.0.255");
var captureObject = new GXDLMSCaptureObject(2, 0);
profileGeneric.CaptureObjects.Add(new GXKeyValuePair<GXDLMSObject, GXDLMSCaptureObject>( obj, captureObject));
ConnexionCommunication.reader.Write(profileGeneric, 3);( obj, captureObject)); ConnexionCommunication.reader.Write(profileGeneric, 3);
Hi, You don't need to write…
Hi,
You don't need to write capture objects to the meter.
You need to read them from the meter like this:
var profileGeneric = new GXDLMSProfileGeneric(“1.0.99.1.0.255”);
Read(profileGeneric, 3);
//Read buffer with read by entry or range.
https://www.gurux.fi/Gurux.DLMS.Objects.GXDLMSProfileGeneric
https://www.gurux.fi/Gurux.DLMS.Client
BR,
Mikko
there are objects that…
there are objects that already exist in the profilegeneric but I want to add others.
here are the elements of captureobject.
<CaptureObjects>
<Item>
<ObjectType>1</ObjectType>
<LN>0.0.1.1.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>1</ObjectType>
<LN>0.0.96.10.1.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.1.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.2.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.5.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.6.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.7.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>3</ObjectType>
<LN>1.0.8.8.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
<Item>
<ObjectType>1</ObjectType>
<LN>0.0.128.1.0.255</LN>
<Attribute>2</Attribute>
<Data>0</Data>
</Item>
</CaptureObjects>
the customer wants us to add other objects in CaptureObjects such as "0.0.1.1.0.255"
when I do this code I get…
when I do this code I get the error :{ServiceError Write exception. Service Unsupported}
GXDLMSProfileGeneric profileGeneric = new GXDLMSProfileGeneric("1.0.99.1.0.255");
var captureObject = new GXDLMSCaptureObject(2, 0);
profileGeneric.CaptureObjects.Add(new GXKeyValuePair<GXDLMSObject, GXDLMSCaptureObject>(new GXDLMSData("0.0.1.1.0.255"), captureObject));
ConnexionCommunication.reader.Write(profileGeneric, 3);
Hi, First, check that 0.0.1…
Hi,
First, check that 0.0.1.1.0.255 is a data object and exists in the association view.
Then, check that you have enough access rights so you can write the capture object to the meter.
Usually, the reason is one of those.
Try to read the capture object from the meter and write the same values back. Is that working?
BR,
Mikko
Hello, thank you for your…
Hello, thank you for your reply.
0.0.1.1.0.255 is a data object and exists in the association view.
How can I check that I have sufficient access rights to write the capture object to the counter?
How do you read the object captured on the counter and rewrite the same values?
I use the HighGMAC…
I use the HighGMAC authentication level and managed access (Client Adress=1)
Hi, Download GXDLMSDirector…
Hi,
Download GXDLMSDirector and try to add a new capture object with it.
If the add button is active, you can add a new capture object.
Not all DLMS meters allow adding capture objects.
BR,
Mikko
The button is active and I…
The button is active and I manage to add capture objects.
Hi, Are you using the same…
Hi,
Are you using the same authentication level and client address in GXDLMSDirector as in your code?
Is your meter using Short Name referencing?
BR,
Mikko
Yes, I use the same…
Yes, I use the same authentication level and client address in GXDLMSDirector as in my code.
My meter use Logical Name referencing.
Hi, Can you add a write…
Hi,
Can you add a write message as hex from GXDLMSDirector and your code here? One of your settings is different from what the meter expects.
Only the write message should be enough. Don't add the whole communication trace.
BR,
Mikko
Hello, thank you for your…
Hello, thank you for your reply.
Here is the trace of GXDLMSDirector:
10:27:07 Writing object 1.0.99.1.0.255, interface ProfileGeneric
TX: 7E A8 89 03 03 54 33 7A E6 E6 00 C9 81 D4 30 00 00 00 02 0A 8E 72 49 79 31 DC C1 BC 97 E9 FE 61 8F 62 FA 52 B9 AD 21 B6 65 E9 BB BD 91 54 F8 CD 86 EC A5 28 ED E5 1F FA EE A4 DB 24 80 A0 74 23 D9 93 E9 AD 73 4E 39 5D 2A D2 79 F5 AB 28 F3 4A A0 93 10 1E F1 69 7B 45 2E B1 4A AE EB 32 65 99 27 45 C7 8D 79 98 9D 41 32 5A FE 47 4F AC 42 2A F3 2E 14 47 E6 52 2C C5 36 CB 33 1D FD 8C 0C 69 79 B8 1C 0C BF CC DC 62 66 9A 7E
10:27:12 Data send failed. Try to resend 1/3
10:27:17 Data send failed. Try to resend 2/3
10:27:22 Failed to receive reply from the device in given time.
Here is the trace of my code:
Writing
TX: 10:53:35 7E A8 8C 00 02 26 C5 03 96 EB DE E6 E6 00 C9 81 D4 30 00 00 00 03 C1 C1 AD DD 3C 71 3A 77 0A 23 37 C7 D6 61 D3 9C 94 F0 D3 3E 40 8A 47 FF 3B 99 A5 35 73 24 3F D1 B6 75 7E 21 26 8A FE 56 B2 8C 7D 3F 05 03 71 E5 9C 7A 6E E4 25 12 CB 6D D4 6D 6A A9 B4 77 EE BD 03 74 8A 21 08 16 59 DF AF 7E 53 76 A6 EE 27 96 63 CE 6D 30 0D E2 17 84 1A 5D 4C 9A 87 D5 11 D9 0F B2 D3 1F 3A 10 E7 B6 4D 9B D9 10 E9 9A E8 39 10 7D E8 78 D9 A2 57 7E
RX: 10:53:35 7E A0 0A 03 00 02 26 C5 91 CD C6 7E
TX: 10:53:35 7E A0 66 00 02 26 C5 03 98 E6 D1 BB 2C C1 20 61 4C 2F C4 65 B2 2F FA 8E CB AB 72 E3 23 CB 92 1E 4D 02 4C F8 39 3A 71 3C 00 0E B6 16 6C 4E 58 5D A4 9B 83 44 BF 85 E4 26 AC 15 2C 79 50 74 8F C0 72 F7 DA 78 58 B8 3D AD 33 89 B5 F0 4B 1B 66 54 50 22 91 05 8D 65 86 41 9D E6 DB 21 04 0F A1 E1 7C AE C0 10 3B C7 A2 7E
RX: 10:53:36 7E A0 26 03 00 02 26 C5 B8 17 A8 E6 E7 00 2E 15 30 00 02 D9 EB 5B 02 D6 E5 7F B7 79 21 56 97 C8 30 E8 32 80 1C 92 0C 7E
Hi, GXDLMSDirector write…
Hi,
GXDLMSDirector write fails. You need to ask the meter manufacturer if it's possible to modify capture objects. Not all meters support it.
BR,
Mikko