Addressing

10 posts / 0 new
Last post
hassin Ayaz
hassin Ayaz's picture
Addressing

Hello ,

I have a problem regarding server(meter) addressing

in the raw HDLC frame
the destination address should be 0x00 0x02 0x00 0x03 &
the source address should be 0x03

in order to do the the above what should be the ServerAddress in the Gurux.DLMS.METER.Listener.Net example code ? here is the code snippet

GXDLMSClient client = new GXDLMSClient();

client.UseLogicalNameReferencing = true;
client.Authentication = Enums.Authentication.None;
client.Password = null;
client.InterfaceType = Enums.InterfaceType.HDLC;

client.ClientAddress = 0x01; //this is okay
client.ServerAddress = 0x0001; //I am stuck here

Thank you

Kurumi
Kurumi's picture

Hi,

client.ServerAddress = 0x4001;

BR,

Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

hassin Ayaz
hassin Ayaz's picture

Hi ,

Thanks a Lot
it has worked

BR
Hassin Ayaz

hassin Ayaz
hassin Ayaz's picture

Dear Mr Kurumi

I want to understand how gurux calculates logical address of the server address
For example if i put the following values at GXDLMSDirector Software

client address = 1= 0x01
logical server = 1= 0x01
physical server = 10 = 0x10

Then According to DLMS address theory , for 2 byte address size
in the HDLC frame

client address should be 0x03
locical address should be 0x02
physical address should be 0x21

the generated hdlc snrm frame by GXDLMSDirector software is
0x7E 0xA0 0x08 0x02 0x21 0x03 0x93 0x86 0xC1 0x7E

this is okay ,it matches with the theory
but in the C# client code the output frame does not match

here is my code snippet
------------------------------------------------
client.ServerAddressSize = 2;
client.ClientAddress = 0x01;
client.ServerAddress = 0x0110;
-----------------------------------------------
and here is the output hdlc snrm frame
----------------------------------------------
Send SNRM request.0x7E 0xA0 0x08 0x04 0x21 0x03 0x93 0x1C 0x8A 0x7E
----------------------------------------------

So does the client code calculated address differenlty than the GX software ?

It would be great if you reply
Thanks A Lot & Best regards
Hassin AYaz

hassin Ayaz
hassin Ayaz's picture

Dear Mr Kurumi

i have an update . using server.address = 0x4010 , 4 byte server address was generated and meter accepted that too

Thank you & best regards
hassin ayaz

Kurumi
Kurumi's picture

Hi,
I have described how counting address here:

http://www.gurux.fi/index.php?q=dlmsAddress

You can count server address

GXLMDSClient.GetServerAddress(logical, physical);

BR,
Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

hassin Ayaz
hassin Ayaz's picture

Dear Mr Kurumi ,
thanks a lot for the explanation .

hassin Ayaz
hassin Ayaz's picture

Hello Mr Kurumi

i am trying to connect to a DCU using GXDLMSDirector Desktop Software

The DCU communicates with its own software and the SNRM packet sent by its software is

7E A0 21 00 02 22 23 03 93 ....

what should be the "Physical Server" Value in the GxDirector software
to generate the same Physical address raw packet 0x22 0x23 ?

thanks in advance

Kurumi
Kurumi's picture

Hi,

Client address: 1
Logical Server address: 1
Physical server address: 2193 (0x891)

BR,

Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

hassin Ayaz
hassin Ayaz's picture

Thanks A Lot Mr Kurumi .

server address has matched