Skip to main content
Home
for DLMS smart meters
Open source solutions for DLMS smart metering

Main navigation

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

Breadcrumb

  1. Home
  2. Forums
  3. In C How To Read The Profile Generic.

In C how to read the profile Generic.

Forum Rules

Before commenting read Forum rules

Don't comment the topic if you have a new question.

You can create a new topic selecting correct category from Gurux Forum and then create a new topic selecting "New Topic" from the top left.

By rakeshpatil1983 , 15 December, 2021
Forums
Gurux.DLMS

Hi,

I'm currently reading the profile generic
cosem_init(BASE(pg), DLMS_OBJECT_TYPE_PROFILE_GENERIC, obis);
com_read(BASE(pg), 3);
com_read(BASE(pg), 2);
com_readRowsByEntry(&pg, 1, 6);
obj_toString(BASE(pg), &data);
GXTRACE(PSTR("Load profile"), data);

which is giving me the data in Hex format
Index 2: 07 E4 0C 01 FF 00 00 FF FF 01 4A 00 | 0 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 7 | 7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0 | 00 00 00 00 FF 00 00 FF FF 01 4A 00 | 0

in the Index 3, I'm able to get OBIS codes and the data types like register extended register, etc.

The issue is I'm not able to decode this Index 2 in a readable format. Is there a method to decode this hex data buffer in terms of voltage, current, kwh, date, etc?

Profile picture for user Kurumi

Kurumi

4 years 7 months ago

Hi,

Hi,

After you have read Capture objects you will know what kind of data is saved.
https://www.gurux.fi/Gurux.DLMS.Objects.GXDLMSProfileGeneric

The first column looks like the date-time value. It is converted automatically if a target is a clock object and the logical name is 0.0.1.0.0.255. What logical name your meter is using?

For other columns, you need to know the data type and then you can convert it to the wanted format using cl_changeType method.

If you check how this is done from cosem_setProfileGeneric.
https://github.com/Gurux/GuruxDLMS.c/blob/f39c6b11763ad9a434f7b0c0f80a7…

BR,
Mikko

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Mon, 07/27/2026 - 12:37
    gurux.dlms.cpp 9.0.2607.2701
  • Thu, 07/23/2026 - 16:19
    gurux.dlms.java 4.0.96
  • Thu, 07/09/2026 - 14:34
    Gurux.DLMS.Python 1.0.201
  • Fri, 06/26/2026 - 16:32
    Gurux.Service 3.0.2606.2601
  • Wed, 06/24/2026 - 08:36
    Gurux.DLMS.Python 1.0.200

New forum topics

  • Service not known error on gprs communication
  • Help Needed: Interfacing Saral 100 Energy Meter with Microcontroller via RS232
  • Connecting Meter to Agent via serial
  • Reading block profile with Compact array
  • DLMS server - serving multiple similar datasets gathered from multiple meters across distinct logical addresses
More

Who's new

  • CorwXGlcWwyuiJawypxb
  • Vegazone-Casin…
  • VegaZone-lBit
  • Vegazone-Sverige-Fug
  • UIRlLOZQoyTZHC…
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin