Hi,
I can able to read individual Data type object. Using following methods.
Client.init(true, 32, 1, DLMS_AUTHENTICATION_LOW, "xxxx", DLMS_INTERFACE_TYPE_HDLC);
cosem_init(BASE(ldn), DLMS_OBJECT_TYPE_DATA, "0.0.42.0.0.255");
com_read(BASE(ldn), 2);
My Energy Meter has > 20 Data objects, All the objects i am able to read the values individually.
I want to read all DLMS_OBJECT_TYPE_DATA types available in a meter together instead of reading individual OBIS code.
How to read that in single read instead of multiple com_read?
Hi, You can use ReadList for…
Hi,
You can use ReadList for that. The meter's memory capacity is limited, so you may need to perform multiple reads.
BR,
Mikko
Hi Kurumi, Thanks for the…
Hi Kurumi,
Thanks for the Reply.
I am using following code to read 2 OBIS code using "com_readList"
I am getting no error. Seems like it's reading the data.
How to print the read data and clock value?
objectArray objects;
gxArray list;
gxClock clock1;
gxData ldn;
cosem_init(BASE(ldn), DLMS_OBJECT_TYPE_DATA, "0.0.0.1.0.255");
cosem_init(BASE(clock1), DLMS_OBJECT_TYPE_DATA, "0.0.1.0.0.255");
oa_init(&objects);
arr_init(&list);
arr_push(&list, key_init(&ldn, (void*)2));
arr_push(&list, key_init(&clock1, (void*)2));
com_readList(&list);
Hi, The data type and OBIS…
Hi,
The data type and OBIS code must be correct, or meter returns an error.
cosem_init(BASE(ldn), DLMS_OBJECT_TYPE_DATA, "CHANGE OBIS CODE");
cosem_init(BASE(clock1), DLMS_OBJECT_TYPE_CLOCK, "0.0.1.0.0.255");
You can convert object attributes to string like this:
obj_toString(BASE(clock1), buff);
BR,
Mikko