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.
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.
I have this when talking to my meter, I was told simple security, password 12345, using serial port.
I think the problem is parsing the addressing, see the DLMS translation below.
According to docs I received, addressing seems to be 7-bit per byte, and LSB = 0 for long address, 1 for short address. You ALWAYS uses the physical server and long addresses.
As I see it, you send target 2001 = long way to write 0x21 aka 0x10 << 1 + 1.
For source you use 29 in SNRM request, that is 0x14 << 1 + 1 - So that is fine
The received package starts with 7E A0 21 20 01 29 - XML shows you interpret that at 800 as target. Not sure how you get to that ? And why it is received ? It is like my meter does not like the long addressing form.
Any way I can get it to use short addressing for testing ? i.e. 7E A0 21 21 29 .... Seems like the 2 byte target could be one reason for the confusion, and why you do not accept the SNRM response frame.
Not sure where your 800 aka 0x0320 target is coming from if target is 0x20 0x01
So I would have to remove the physical server part
Using version 8.2.2006.1201 - Through a Pi Zero W with USB CH340. My ESP-Link will never return anything - Maybe voltage levels ? Looking at the meter, I have ground top right. Top left does nothing for me as GND. But bottom left is 4.2V. So not 100% sure if my interface is working right.
Response is just echo back of transmitted data. Maybe because meter does not understand target address != 0x21?
06:49:57 06:49:57.277 Info Opening
06:49:57 06:49:57.278 Info Client Settings: Protocol Tcp Host: 192.168.1.146 Port: 2323
06:49:57 06:49:57.287 Info Open
06:49:57 Send SNRM request.
TX: 7E A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01 BC 61 7E
06:49:57 06:49:57.787 Sent 7E A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01 BC 61 7E
06:49:57 06:49:57.799 Received 7E
06:49:57 06:49:57.815 Received A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7
06:49:57 06:49:57.830 Received 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01
06:49:57 06:49:57.846 Received BC 61 7E
06:50:07 Failed to receive reply from the device in given time. 7E A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01 BC 61 7E
06:50:07
RX: 7E A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01 BC 61 7E
06:50:07 Send Disconnect request.
TX: 7E A0 08 20 01 29 53 D7 6C 7E
06:50:07 06:50:07.846 Sent 7E A0 08 20 01 29 53 D7 6C 7E
06:50:07 06:50:07.867 Received 7E A0 08 20 01 29 53 D7 6C 7E
06:50:17 Failed to receive reply from the device in given time. 7E A0 08 20 01 29 53 D7 6C 7E
06:50:17
RX: 7E A0 08 20 01 29 53 D7 6C 7E
06:50:17 06:50:17.868 Info Closing
06:50:17 06:50:17.868 Info Closed
1: 7E A0 21 20 01 29 93 2E 9B 81 80 14 05 02 03 E7 06 02 03 E6 07 04 00 00 00 01 08 04 00 00 00 01 BC 61 7E
<HDLC len="20" >
<TargetAddress Value="800" />
<SourceAddress Value="14" />
<!-- SNRM frame. -->
<FrameType Value="93" />
<PDU>
<Snrm>
<MaxInfoTX Value="999" />
<MaxInfoRX Value="998" />
<WindowSizeTX Value="1" />
<WindowSizeRX Value="1" />
</Snrm>
</PDU>
</HDLC>
Hi,
Hi,
Can you use default Kamstrup settings or is there a reason why you want to use those values?
Voltage levels are causing a lot of problems. Try to read this using default values first.
https://www.gurux.fi/GXDLMSDirectorExample
BR,
Mikko