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. Got OctetString - How To Convert Data To C String or Std::string?

Got OctetString - how to convert data to C string or std::string?

By latonita , 18 September, 2024
Forums
Gurux.DLMS

Hi.
I'm getting data from the meter, it is the manufacturer name.

7E.A0.22.41.03.74.F7.D0.E6.E7.00.C4.01.C1.00.09.10.45.6E.65.72.67.6F.6D.65.72.61.00.00.00.00.00.00.19.92.7E

So it has OctetString
<Data>
<OctetString Value="456E6572676F6D657261000000000000" />
</Data>

This is a hex view of a string "Energomera".

I used cl_updateValue(), then I did var_toString() and what I got is same hex string but separated by spaces.

So I had to do stupid thing and manually convert hex view to null terminated C string

I believe there is a proper way to get proper bytes out of this hex-octet-string.
How do I properly get this octet string converted to bytes?

Thank you.

Profile picture for user Kurumi

Kurumi

1 year 10 months ago

HI, The easiest way to show…

HI,

The easiest way to show this as a string is cast it to the char*.

dlmsVARIANT* value = //Get Value.
//Add '\0'
bb_setInt8(value->byteArr, 0);
const char* str = value->byteArr->data;
//Remove '\0'
--value->byteArr->size

BR,
Mikko

latonita

1 year 10 months ago

Thank you! This works…

Thank you! This works perfect. I didn't notice there is raw-bytes array available.

  • 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

  • gurux_dlms.GXDateTime.GXDateTime object Error in Python
  • T_APPL_DATA_LN_N1 subtest 3 fails on an LN-only server regardless of the response to a non-existing-object GET
  • Version mismatch between Gurux.DLMS 9.x and Gurux.Common/Gurux.Serial 8.x
  • Service not known error on gprs communication
  • Help Needed: Interfacing Saral 100 Energy Meter with Microcontroller via RS232
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin