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. HDLC Protocol

HDLC Protocol

Profile picture for user alfathaff
By alfathaff , 28 May, 2024
Forums
Gurux.DLMS

Hello, I'm using a Python client and an Arduino Server via an ESP32 serial connection.

Index: 1 Value: 0.0.42.0.0.255
TX: 12:50:49 7E A0 19 03 25 7E 67 37 E6 E6 00 C0 01 C1 00 01 00 00 2A 00 00 FF 02 00 12 80 7E
RX: 12:50:49 7E A0 23 25 03 16 74 EA E6 E7 00 C4 01 C1 00 09 11 41 50 31 30 30 30 30 30 30 30 30 30 30 33 30 33 00 36 67 7E
Index: 2 Value: AP10000000000303
TX: 12:50:49 7E A0 19 03 25 90 17 39 E6 E6 00 C0 01 C1 00 03 01 00 20 07 00 FF 01 00 ED A9 7E
RX: 12:50:49 7E A0 18 25 03 38 EF AE E6 E7 00 C4 01 C1 00 09 06 01 00 20 07 00 FF 40 03 7E

I want to add opening and closing bytes for each data sent and received by the server and client so that they can follow the protocol according to the required format.

For example, for TX: 68 AA BB CC 7E A0 19 03 25 7E 67 37 E6 E6 00 C0 01 C1 00 01 00 00 2A 00 00 FF 02 00 12 80 7E 11 22 33

And for RX: 7D AA BB CC 7E A0 18 25 03 38 EF AE E6 E7 00 C4 01 C1 00 09 06 01 00 20 07 00 FF 40 03 7E 44 55 66

Is it possible? And if yes, which source code needs to be modified for the client and server?

Profile picture for user Kurumi

Kurumi

2 years ago

Hi, Yes, this is basically…

Hi,

Yes, this is basically possible. HDLC framing will remove extra bytes before and after HDLC frames automatically so you need only add header and footer bytes before you send the data in readDLMSPacket2.
You can send it like this:

self.media.send(YOUR_HEADER_BYTES)
self.media.send(data)
self.media.send(YOUR_FOOTER_BYTES)

BR,
Mikko

Profile picture for user alfathaff

alfathaff

2 years ago

Hi, thank you for your…

Hi, thank you for your answer. I've already changed the code to:
self.writeTrace("TX: " + self.now() + "\t" + GXByteBuffer.hex(bytearray([0x6B, 0xAA, 0xBB, 0xCC]) + data + bytearray([0x11, 0x22, 0x33, 0x44])), TraceLevel.VERBOSE)
self.media.send(bytearray([0x6B, 0xAA, 0xBB, 0xCC]))
self.media.send(data)
self.media.send(bytearray([0x11, 0x22, 0x33, 0x44]))

However, for the output, it is as follows:
TX: 15:26:37 6B AA BB CC 7E A0 07 03 25 93 6F 66 7E 11 22 33 44
Data send failed. Try to resend 1/3
RX: 15:26:42 7E A0 07 25 03 97 4A 82 7E
Access Error : Unknown error.
DisconnectRequest
Ended. Press any key to continue.

Do I need to make any changes on the Arduino server source code as well? If so, which part of the source code should be modified?

Profile picture for user Kurumi

Kurumi

2 years ago

Hi, At first, check that you…

Hi,

At first, check that you can connect without extra bytes. Check that you are using the same client and server addresses on the server and client sides.

BR,
Mikko

Profile picture for user alfathaff

alfathaff

2 years ago

Hi, there is no problem if I…

Hi, there is no problem if I use default bytes:
Gurux.DLMS.Python-master\Gurux.DLMS.Client.Example.python>python main.py -S COM7:9600:8None1 -c 18 -a High -i HDLC -P xxxx -w 1 -f 128 -g "0.0.42.0.0.255:1; 0.0.42.0.0.255:2" -g "1.0.32.7.0.255:1; 1.0.32.7.0.255:2" -g "1.0.29.7.0.255:1; 1.0.29.7.0.255:2" -g "1.0.31.7.0.255:1; 1.0.31.7.0.255:2" -g "1.0.1.7.0.255:1; 1.0.1.7.0.255:2" -g "1.0.13.7.0.255:1; 1.0.13.7.0.255:2" -g "1.0.1.8.0.255:1; 1.0.1.8.0.255:2" -t Verbose
gurux_dlms version: 1.0.150
gurux_net version: 1.0.19
gurux_serial version: 1.0.20
Authentication: 2
ClientAddress: 0x12
ServerAddress: 0x1
Standard: 0
TX: 17:38:53 7E A0 07 03 25 93 6F 66 7E
RX: 17:38:53 7E A0 1E 25 03 73 A2 19 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
TX: 17:38:53 7E A0 4C 03 25 10 5E 06 E6 E6 00 60 3E A1 09 06 07 60 85 74 05 08 01 01 8A 02 07 80 8B 07 60 85 74 05 08 02 02 AC 12 80 10 D4 A1 AF A1 1A 96 3A 9F 44 4C BC CC 38 EE 4C BA BE 10 04 0E 01 00 00 00 06 5F 1F 04 00 00 1E 5D FF FF 08 93 7E
RX: 17:38:54 7E A0 58 25 03 30 10 34 E6 E7 00 61 4A A1 09 06 07 60 85 74 05 08 01 01 A2 03 02 01 00 A3 05 A1 03 02 01 0E 88 02 07 80 89 07 60 85 74 05 08 02 02 AA 12 80 10 1B 0D 86 43 21 10 88 C4 E2 71 B8 DC EE 77 3B 9D BE 10 04 0E 08 00 06 5F 1F 04 00 00 1E 1D 02 00 00 07 B3 2D 7E
TX: 17:38:54 7E A0 2B 03 25 32 8B CA E6 E6 00 C3 01 C1 00 0F 00 00 28 00 00 FF 01 01 09 10 F7 1D 2A 7B 6A 53 0C 6B E1 1F 73 9D EB 6A E9 A5 22 47 7E
RX: 17:38:54 7E A0 25 25 03 52 CE A5 E6 E7 00 C7 01 C1 00 01 00 09 10 11 E8 AC 39 AF F9 A8 5B 2A E1 5F B1 5F D9 24 8B 2A 25 3A 7E
TX: 17:38:54 7E A0 19 03 25 54 3F B9 E6 E6 00 C0 01 C1 00 0F 00 00 28 00 00 FF 02 00 91 53 7E
RX: 17:38:54 7E A8 86 25 03 74 2A 3C E6 E7 00 C4 02 C1 00 00 00 00 01 00 82 01 DC 01 1D 02 04 12 00 0F 11 02 09 06 00 00 28 00 00 FF 02 02 01 0B 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 02 03 0F 09 16 03 00 02 03 0F 0A 16 03 00 02 03 0F 0B 16 03 00 01 06 02 02 0F 01 16 01 02 02 0F 02 3E 1C 7E
TX: 17:38:54 7E A0 07 03 25 71 73 A2 7E
RX: 17:38:54 7E A8 86 25 03 76 38 1F 16 01 02 02 0F 03 16 01 02 02 0F 04 16 01 02 02 0F 05 16 01 02 02 0F 06 16 01 02 04 12 00 0F 11 02 09 06 00 00 28 00 03 FF 02 02 01 0B 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 02 03 0F 09 16 03 00 02 03 0F 0A 16 03 00 02 03 0F 0B 16 03 00 01 06 02 97 B6 7E
TX: 17:38:54 7E A0 07 03 25 91 7D 45 7E
RX: 17:38:54 7E A8 86 25 03 78 46 F6 02 0F 01 16 01 02 02 0F 02 16 01 02 02 0F 03 16 01 02 02 0F 04 16 01 02 02 0F 05 16 01 02 02 0F 06 16 01 02 04 12 00 40 11 00 09 06 00 00 2B 00 01 FF 02 02 01 05 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 01 02 02 02 0F 01 16 01 02 02 0F 02 16 01 02 04 12 00 40 11 00 09 06 00 00 2B 00 02 FF 02 02 01 05 02 03 0F 9E 75 7E
TX: 17:38:54 7E A0 07 03 25 B1 7F 64 7E
RX: 17:38:55 7E A0 7D 25 03 7A 4A 38 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 01 02 02 02 0F 01 16 01 02 02 0F 02 16 01 02 04 12 00 01 11 00 09 06 00 00 2A 00 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 00 02 04 12 00 01 11 00 09 06 00 80 00 00 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 00 D6 98 7E
TX: 17:38:55 7E A0 13 03 25 D6 8B C2 E6 E6 00 C0 02 C1 00 00 00 01 51 BE 7E
RX: 17:38:55 7E A8 86 25 03 9C 6C 57 E6 E7 00 C4 02 C1 00 00 00 00 02 00 82 01 BB 02 04 12 00 01 11 00 09 06 00 00 60 0B 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 00 02 04 12 00 08 11 00 09 06 00 00 01 00 00 FF 02 02 01 09 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 9F 86 7E
TX: 17:38:55 7E A0 07 03 25 F1 7B 26 7E
RX: 17:38:55 7E A8 86 25 03 9E 7E 74 02 03 0F 09 16 03 00 01 06 02 02 0F 01 16 01 02 02 0F 02 16 01 02 02 0F 03 16 01 02 02 0F 04 16 01 02 02 0F 05 16 01 02 02 0F 06 16 01 02 04 12 00 03 11 00 09 06 01 01 15 19 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 28 11 00 09 06 00 00 19 09 00 FF 02 02 01 07 02 03 0F 01 16 03 00 02 03 0F 02 16 03 28 6E 7E
TX: 17:38:55 7E A0 07 03 25 11 75 C1 7E
RX: 17:38:55 7E A8 86 25 03 90 00 9D 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 09 11 00 09 06 00 00 0A 00 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 09 11 00 09 06 00 00 0A 00 6A FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 01 02 02 0F 01 16 5D 5B 7E
TX: 17:38:55 7E A0 07 03 25 31 77 E0 7E
RX: 17:38:55 7E A0 5C 25 03 92 E4 C0 01 02 04 12 00 09 11 00 09 06 00 00 0A 00 65 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 09 11 00 09 06 00 00 0A 00 66 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 01 02 02 0F 01 16 01 A1 96 7E
TX: 17:38:55 7E A0 13 03 25 58 FD AF E6 E6 00 C0 02 C1 00 00 00 02 CA 8C 7E
RX: 17:38:56 7E A8 86 25 03 B4 26 FA E6 E7 00 C4 02 C1 00 00 00 00 03 00 82 01 EB 02 04 12 00 07 11 00 09 06 01 00 63 01 00 FF 02 02 01 08 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 01 02 02 02 0F 01 16 01 02 02 0F 02 16 01 02 04 12 00 07 11 00 09 06 01 00 63 62 00 FF 02 02 01 08 02 03 75 60 7E
TX: 17:38:56 7E A0 07 03 25 71 73 A2 7E
RX: 17:38:56 7E A8 86 25 03 B6 34 D9 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 01 02 02 02 0F 01 16 01 02 02 0F 02 16 01 02 04 12 00 17 11 01 09 06 00 00 16 00 00 FF 02 02 01 09 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 02 03 0F 05 16 03 00 02 03 0F 4D FD 7E
TX: 17:38:56 7E A0 07 03 25 91 7D 45 7E
RX: 17:38:56 7E A8 86 25 03 B8 4A 30 06 16 03 00 02 03 0F 07 16 03 00 02 03 0F 08 16 03 00 02 03 0F 09 16 03 00 01 00 02 04 12 00 46 11 00 09 06 00 00 60 03 0A FF 02 02 01 04 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 01 02 02 02 0F 01 16 01 02 02 0F 02 16 01 02 04 12 00 16 11 00 09 06 00 00 0F 00 03 FF 02 02 01 04 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 88 44 7E
TX: 17:38:56 7E A0 07 03 25 B1 7F 64 7E
RX: 17:38:56 7E A8 86 25 03 BA 58 13 16 03 00 02 03 0F 04 16 03 00 01 00 02 04 12 00 16 11 00 09 06 00 00 0F 00 01 FF 02 02 01 04 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 02 03 0F 04 16 03 00 01 00 02 04 12 00 01 11 00 09 06 00 00 01 01 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 00 02 04 12 00 01 11 00 09 06 00 00 2B 01 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 19 90 7E
TX: 17:38:56 7E A0 07 03 25 D1 79 07 7E
RX: 17:38:56 7E A0 0F 25 03 BC 43 F8 02 16 03 00 01 00 E8 38 7E
TX: 17:38:56 7E A0 13 03 25 FA E5 29 E6 E6 00 C0 02 C1 00 00 00 03 43 9D 7E
RX: 17:38:57 7E A8 86 25 03 DE 7A 36 E6 E7 00 C4 02 C1 01 00 00 00 04 00 82 01 43 02 04 12 00 03 11 00 09 06 01 00 1D 07 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 03 11 00 09 06 01 00 1F 07 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 03 11 00 09 06 01 00 20 07 00 A4 98 7E
TX: 17:38:57 7E A0 07 03 25 11 75 C1 7E
RX: 17:38:57 7E A8 86 25 03 D0 04 DF FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 03 11 00 09 06 01 00 01 07 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 03 11 00 09 06 01 00 0D 07 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 25 1F 7E
TX: 17:38:57 7E A0 07 03 25 31 77 E0 7E
RX: 17:38:57 7E A0 61 25 03 D2 9D 45 02 0F 01 16 01 02 04 12 00 03 11 00 09 06 01 00 01 08 00 FF 02 02 01 03 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 02 03 0F 03 16 03 00 01 01 02 02 0F 01 16 01 02 04 12 00 01 11 00 09 06 00 00 60 01 00 FF 02 02 01 02 02 03 0F 01 16 03 00 02 03 0F 02 16 03 00 01 00 9B 8F 7E
TX: 17:38:57 7E A0 19 03 25 5C 77 35 E6 E6 00 C0 01 C1 00 01 00 00 2A 00 00 FF 01 00 7A AA 7E
RX: 17:38:57 7E A0 18 25 03 F4 8F A2 E6 E7 00 C4 01 C1 00 09 06 00 00 2A 00 00 FF C0 57 7E
Index: 1 Value: 0.0.42.0.0.255
TX: 17:38:57 7E A0 19 03 25 7E 67 37 E6 E6 00 C0 01 C1 00 01 00 00 2A 00 00 FF 02 00 12 80 7E
RX: 17:38:57 7E A0 23 25 03 16 74 EA E6 E7 00 C4 01 C1 00 09 11 41 50 31 30 30 30 30 30 30 30 30 30 30 33 30 33 00 36 67 7E
Index: 2 Value: AP10000000000303
TX: 17:38:57 7E A0 19 03 25 90 17 39 E6 E6 00 C0 01 C1 00 03 01 00 20 07 00 FF 01 00 ED A9 7E
RX: 17:38:57 7E A0 18 25 03 38 EF AE E6 E7 00 C4 01 C1 00 09 06 01 00 20 07 00 FF 40 03 7E
Index: 1 Value: 1.0.32.7.0.255
TX: 17:38:57 7E A0 19 03 25 B2 07 3B E6 E6 00 C0 01 C1 00 03 01 00 20 07 00 FF 02 00 85 83 7E
RX: 17:38:57 7E A0 15 25 03 5A 74 65 E6 E7 00 C4 01 C1 00 17 00 00 00 00 79 A7 7E
Index: 2 Value: 0.0
TX: 17:38:57 7E A0 19 03 25 D4 37 3D E6 E6 00 C0 01 C1 00 03 01 00 1D 07 00 FF 01 00 E2 5B 7E
RX: 17:38:58 7E A0 18 25 03 7C CF AA E6 E7 00 C4 01 C1 00 09 06 01 00 1D 07 00 FF 3D C4 7E
Index: 1 Value: 1.0.29.7.0.255
TX: 17:38:58 7E A0 19 03 25 F6 27 3F E6 E6 00 C0 01 C1 00 03 01 00 1D 07 00 FF 02 00 8A 71 7E
RX: 17:38:58 7E A0 13 25 03 9E C6 AE E6 E7 00 C4 01 C1 00 12 00 00 03 B1 7E
Index: 2 Value: 0
TX: 17:38:58 7E A0 19 03 25 18 57 31 E6 E6 00 C0 01 C1 00 03 01 00 1F 07 00 FF 01 00 B4 53 7E
RX: 17:38:58 7E A0 18 25 03 B0 AF A6 E6 E7 00 C4 01 C1 00 09 06 01 00 1F 07 00 FF 4B FD 7E
Index: 1 Value: 1.0.31.7.0.255
TX: 17:38:58 7E A0 19 03 25 3A 47 33 E6 E6 00 C0 01 C1 00 03 01 00 1F 07 00 FF 02 00 DC 79 7E
RX: 17:38:58 7E A0 15 25 03 D2 34 6D E6 E7 00 C4 01 C1 00 17 00 00 00 00 79 A7 7E
Index: 2 Value: 0.0
TX: 17:38:58 7E A0 19 03 25 5C 77 35 E6 E6 00 C0 01 C1 00 03 01 00 01 07 00 FF 01 00 A6 28 7E
RX: 17:38:58 7E A0 18 25 03 F4 8F A2 E6 E7 00 C4 01 C1 00 09 06 01 00 01 07 00 FF A8 90 7E
Index: 1 Value: 1.0.1.7.0.255
TX: 17:38:58 7E A0 19 03 25 7E 67 37 E6 E6 00 C0 01 C1 00 03 01 00 01 07 00 FF 02 00 CE 02 7E
RX: 17:38:58 7E A0 13 25 03 16 86 A6 E6 E7 00 C4 01 C1 00 12 00 00 03 B1 7E
Index: 2 Value: 0
TX: 17:38:58 7E A0 19 03 25 90 17 39 E6 E6 00 C0 01 C1 00 03 01 00 0D 07 00 FF 01 00 52 19 7E
RX: 17:38:58 7E A0 18 25 03 38 EF AE E6 E7 00 C4 01 C1 00 09 06 01 00 0D 07 00 FF 9C 07 7E
Index: 1 Value: 1.0.13.7.0.255
TX: 17:38:58 7E A0 19 03 25 B2 07 3B E6 E6 00 C0 01 C1 00 03 01 00 0D 07 00 FF 02 00 3A 33 7E
RX: 17:38:58 7E A0 15 25 03 5A 74 65 E6 E7 00 C4 01 C1 00 17 00 00 00 00 79 A7 7E
Index: 2 Value: 0.0
TX: 17:38:58 7E A0 19 03 25 D4 37 3D E6 E6 00 C0 01 C1 00 03 01 00 01 08 00 FF 01 00 5A 42 7E
RX: 17:38:58 7E A0 18 25 03 7C CF AA E6 E7 00 C4 01 C1 00 09 06 01 00 01 08 00 FF 6F DA 7E
Index: 1 Value: 1.0.1.8.0.255
TX: 17:38:58 7E A0 19 03 25 F6 27 3F E6 E6 00 C0 01 C1 00 03 01 00 01 08 00 FF 02 00 32 68 7E
RX: 17:38:58 7E A0 13 25 03 9E C6 AE E6 E7 00 C4 01 C1 00 12 00 00 03 B1 7E
Index: 2 Value: 0
DisconnectRequest
TX: 17:38:58 7E A0 07 03 25 53 63 A0 7E
RX: 17:38:59 7E A0 1E 25 03 73 A2 19 81 80 12 05 01 80 06 01 80 07 04 00 00 00 01 08 04 00 00 00 01 53 3B 7E
Ended. Press any key to continue.

Is there an issue or something wrong with the code I made before?

Profile picture for user alfathaff

alfathaff

2 years ago

Or do I have to change the…

Or do I have to change the code from server side?

Profile picture for user Kurumi

Kurumi

2 years ago

Hi, We tested this by adding…

Hi,

We tested this by adding your header and footer, which worked as expected.
Are you using an Arduino example? Check that the meter is receiving the correct data.

BR,
Mikko

Profile picture for user alfathaff

alfathaff

2 years ago

Yes, I am using the Arduino…

Yes, I am using the Arduino example, but I do not know why, when it is read by the Python client, the result is always "data send failed" and "Access Error: Unknown error."

But when I use a header starting with 7E, like this example:
self.media.send(bytes([0x7E, 0x7F, 0x7D, 0x7D]))
self.media.send(data)
self.media.send(bytes([0x7F, 0x7F, 0x7A, 0x7D]))

There are no issues as long as it starts with 7E.

So, my goal is to add the HDLC footer and header from the Python Client, which will later be received by the Server and replied to with additional header and footer as well.

To modify it from the Client side, it is done through readDLMSPacket2. As for modifying it from the server side, which source code should be changed? Is it through dlms.c?

Profile picture for user Kurumi

Kurumi

2 years ago

Hi, I don't see any reason…

Hi,

I don't see any reason why your server is not working. Check that you are receiving the correct data in ESP32. Check that there is no filter in your serial port reading that might remove the data.

Also note that when you are adding extra bytes to the HDLC framing, you are breaking compatibility with other than Gurux DLMS clients.

BR,
Mikko

  • Create new account
  • Reset your password

Hire Us!

Latest Releases

  • Tue, 06/09/2026 - 11:16
    gurux.dlms.java 4.0.95
  • Tue, 06/09/2026 - 10:03
    Gurux.DLMS.Python 1.0.199
  • Mon, 06/08/2026 - 13:39
    gurux.dlms.cpp 9.0.2606.0801
  • Mon, 06/01/2026 - 10:15
    gurux.dlms.cpp 9.0.2606.0101
  • Thu, 05/28/2026 - 16:06
    gurux.dlms.java 4.0.94

New forum topics

  • Error reading L&G Meter
  • Pass a TCP Client to GXNet
  • Australian EDMI Mk10D (Essential Energy area)
  • Strange mix of data notificiation vs get response
  • DLMS Connection
More
RSS feed
Privacy FAQ GXDN Issues Contact
Follow Gurux on Twitter Follow Gurux on Linkedin