Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ISKRA Am550, P1 port encrypted set-up for supported? #787

Closed
andrwie opened this issue May 3, 2024 · 23 comments
Closed

ISKRA Am550, P1 port encrypted set-up for supported? #787

andrwie opened this issue May 3, 2024 · 23 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@andrwie
Copy link

andrwie commented May 3, 2024

Describe your problem

I would like to use amsreader for for my Smartmeter
Want to check if my SmartMeter configuration is supported by amsreader.

The SmartMeter has the following P1 port description (information I got form my energy provider):
Protocol: DLMS
Security: Cosem Suite 0; High Level Security (HLS); AES 128

image

My first trials with the latest firmware failed (decryption key used, no authentication key available)

Hardware information:

  • Country: Austria
  • Meter: ISKRA Am550
  • Encryption enabled: yes
  • AMS reader: ESP8266
  • M-bus adapter (if applicable):

Relevant firmware information:

  • Version: [e.g. 2.1.0]
  • MQTT: [yes/no]
  • MQTT payload type: [e.g. JSON]
  • HAN GPIO: [e.g. GPIO5]
  • HAN baud and parity: [e.g. 2400 8E1]
  • Temperature sensors [e.g. 3xDS18B20]
  • ENTSO-E API enabled: [yes/no]
@Noschvie
Copy link

Noschvie commented May 3, 2024

What's the name of your province / energy provider ?

@andrwie
Copy link
Author

andrwie commented May 3, 2024

the province is Carinthia (Kärnten)
and the energy provider is KELAG

@ArnieO
Copy link
Contributor

ArnieO commented May 3, 2024

You wrote "ISKRA Am550", but that is maybe the same as "Iskraemeco AM550"?
If so, we have adapted the firmware to run on Iskraemeco AM550 in Switzerland, see this thread: #785

To understand why you have not succeeded, please run a Telnet debug as described here and post the result.

Also, to have some more detailed information on you meter: Can you help me navigate the website https://www.kelag.at to find more technical information on the meter? (I can read quite a bit of German, so reading documentation is fine. Navigating the website to find documentation is a bit more tricky.)

@andrwie
Copy link
Author

andrwie commented May 4, 2024

Thanks for your suggestions.

I am quite sure, that the smartmeter you are referring to thread #785 is the same type. However the configuration of the P1 port can differ. e.g.: mine delivers encrypted date whereas the other one does not encrypt. I do not know it there is additional differences.

I checked the homepage of my provider - there is no specific data about the smartmeter P1 interface. But I can forward a document they sent me when I asked for the activation of the P1 interface:
Technische Anleitung Kundenschnittstelle Smart Meter V3.2.pdf
Juat found one link to an operating manual for the ISKRAAM550: https://kaerntennetz.at//dokumente/Smart%20Meter/Zaehlerbeschreibung_Iskraemeco.pdf

I also die the telnet "exercise" you suggested - unfortunately just the same message - no matter what config of AMSreader I try:
"(W) No HAN data received last 30s, single blink"
Does this poit to a hardware problem? Cna I try something else?

@ArnieO
Copy link
Contributor

ArnieO commented May 5, 2024

I can forward a document they sent me when I asked for the activation of the P1 interface:
Technische Anleitung Kundenschnittstelle Smart Meter V3.2.pdf

Thank you, this is useful.

  1. It confirms that the interface is indeed following the Dutch P1 companion standard.
  2. It describes which parameters are sent. (the table "Welche Daten werden ausgegeben")

So our hardware and firmware should be able to decrypt and decode this meter.

However, your Telnet debug shows that the reader does not get any data - so we need to find out why.

Some questions:

  1. Which hardware are you running? You wrote "ESP8266", so it cannot be our Pow-P1 (it is ESP32). Specifically, if this is a Wemos, you need to be careful regarding which input you use (search in other threads here).
  2. The data signal on this meter is an Open Collector output:
    image
    This means that you WILL SEE NO DATA if you just connect the data output to a GPIO: You need a pullup resistor to 3,3V, and it should be order-of-magnitude 3 kohm.

If this is what you have on your hardware:

  • Add "/vendor" to the URL and configure the device as "Generic ESP8266" - and select the GPIO you are using.
  • Make sure the bitrate is set to 115 200 baud and parity set to 8N1.

If you still have issues (no data Telnet debug), please post screendump of your config page.

@andrwie
Copy link
Author

andrwie commented May 6, 2024

Thankx for the heads up. I will go on with debugging as you suggested.

The Board I am using is a Wemos D1 clone with an E12-F chip mounted.
The pin I have used to read P1 data is GPIO13
You mentioned I need to be careful about choosing the right GPIO for Wemos boards - is GPIO13 ok?

Next I will do a hardware check (DC test) on my interface circuitry - pulling RJ12 connector pin5 to gnd or let it float - to see if the signal arrives at GPIO13

@ArnieO
Copy link
Contributor

ArnieO commented May 6, 2024

Thank you for information regarding your setup.
GPIO13/D7 should be fine. Some try to use the Rx input on Wemos, but that will not work.

Inserting a 3k pullup to 3,3V on the data line is mandatory; you will not see any data without it.
You will also need to invert the incoming signal.

Try this setting:
image

@andrwie
Copy link
Author

andrwie commented May 7, 2024

I finally found the problem in my hardware set-up.
To send data, the smart meter needs to get the 5V supplied by the user on pin1, which I did not do (was just pulling the data pin and the request pin to my local 5V supply - this is not sufficient for my smart meter)

Now, I am getting data in the telnet terminal window.
However amsreader does not decrypt or convert it to power numbers - no data dispalyed in the main window
Decryption is activated and my key is inserted...
image

below is a Telnet dump - could you please have a look at it and advice on what to try next?

  • Commands:
    ? or help -> display these help of commands
    q -> quit (close this connection)
    m -> display memory available
    v -> set debug level to verbose
    d -> set debug level to debug
    i -> set debug level to info
    w -> set debug level to warning
    e -> set debug level to errors
    s -> set debug silence on/off
    l -> show debug level
    t -> show time (millis)
    profiler:
    p -> show time between actual and last message (in millis)
    p min -> show only if time is this minimal
    P time -> set debug level to profiler
    c -> show colors
    filter:
    filter -> show only debugs with this
    nofilter -> disable the filter
    cpu80 -> ESP8266 CPU a 80MHz
    cpu160 -> ESP8266 CPU a 160MHz

  • Please type the command and press enter to execute.(? or h for this help)


(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 84 16 5F 78 9E
(V) 00 9F 85 8B 18 0E 95 3A 40 42 33 85 0F C5 97 31
(V) 99 A0 48 3A 05 91 1C 11 9D ED 0F D1 7D 9A 3B CF
(V) 06 2C C3 B1 2F 70 85 7A D3 20 CE 90 69 BE 88 50
(V) 52 7B 15 90 95 0D B2 90 0F 1B AA 67 81 D4 C5 20
(V) F0 76 FA 57 2C C3 24 1E A6 FD 8F E7 20 9B 85 B2
(V) 8B 90 E3 87 80 1D 4A 08 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 84 16 5F 78 9E 00 9F 85 8B 18 0E 95 3A 40
(V) 42 33 85 0F C5 97 31 99 A0 48 3A 05 91 1C 11 9D
(V) ED 0F D1 7D 9A 3B CF 06 2C C3 B1 2F 70 85 7A D3
(V) 20 CE 90 69 BE 88 50 52 7B 15 90 95 0D B2 90 0F
(V) 1B AA 67 81 D4 C5 20 F0 76 FA 57 2C C3 24 1E A6
(V) FD 8F E7 20 9B 85 B2 8B 90 E3 87 80 1D
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 84
(V) 0F 00 03 D7 85 0C 07 E8 05 07 02 15 0B 11 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 11
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 09 06 00 00 00 00 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 85 0C 07 E8 05 07 02 15 0B 11 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 11
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 09 06 00 00 00 00 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 11 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 09 06
(V) 00 00 00 00 09 00 09 00
(V) DLMS
(W) No HAN data received last 30s, single blink
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 85 94 7B DF 87
(V) 07 6C 85 73 98 CB 9F B9 D8 56 C3 8C ED 2E 1A 72
(V) A5 FB 91 8A 43 32 92 6E 6D 66 65 C0 91 C4 49 8F
(V) 72 8E 34 D4 1E F1 2D 14 D8 97 AC 89 58 28 05 CA
(V) 01 A7 F5 C5 A4 2A 61 0F 8B 8F 9C 68 47 A6 E7 04
(V) B6 96 86 76 35 27 54 6F A8 E5 F2 DF FF 27 3C 5D
(V) 44 D9 65 7C 6C C8 63 0B 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 85 94 7B DF 87 07 6C 85 73 98 CB 9F B9 D8
(V) 56 C3 8C ED 2E 1A 72 A5 FB 91 8A 43 32 92 6E 6D
(V) 66 65 C0 91 C4 49 8F 72 8E 34 D4 1E F1 2D 14 D8
(V) 97 AC 89 58 28 05 CA 01 A7 F5 C5 A4 2A 61 0F 8B
(V) 8F 9C 68 47 A6 E7 04 B6 96 86 76 35 27 54 6F A8
(V) E5 F2 DF FF 27 3C 5D 44 D9 65 7C 6C C8
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 85
(V) 0F 00 03 D7 86 0C 07 E8 05 07 02 15 0B 12 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 12
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 18 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 86 0C 07 E8 05 07 02 15 0B 12 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 12
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 18 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 12 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 18 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 86 9B 3C 83 DB
(V) 6E AF C0 81 18 D1 75 9D 7C F0 ED 45 C7 99 73 61
(V) 17 31 3B 7F 0C 98 A3 9B 9C DB 34 EE 88 BB 6E 80
(V) 4C 09 29 0E 39 05 CB 85 D3 D8 B4 D4 7A 0F 63 63
(V) 84 9C 09 CC D8 83 F4 38 DF 39 3E C4 E0 92 B9 53
(V) 83 72 72 F2 EC D2 CA 0D 80 64 EC BA 77 43 BC 7F
(V) 3C 76 4C F6 9B 1E EE 8D 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 86 9B 3C 83 DB 6E AF C0 81 18 D1 75 9D 7C
(V) F0 ED 45 C7 99 73 61 17 31 3B 7F 0C 98 A3 9B 9C
(V) DB 34 EE 88 BB 6E 80 4C 09 29 0E 39 05 CB 85 D3
(V) D8 B4 D4 7A 0F 63 63 84 9C 09 CC D8 83 F4 38 DF
(V) 39 3E C4 E0 92 B9 53 83 72 72 F2 EC D2 CA 0D 80
(V) 64 EC BA 77 43 BC 7F 3C 76 4C F6 9B 1E
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 86
(V) 0F 00 03 D7 87 0C 07 E8 05 07 02 15 0B 13 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 13
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 2F 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 87 0C 07 E8 05 07 02 15 0B 13 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 13
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 2F 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 13 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 2F 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 87 93 44 6C A2
(V) FB ED E9 34 28 07 40 FF 4E 54 FD A6 A4 11 6B F6
(V) E2 E7 86 67 A2 A0 FB FE C3 82 4D EB BC 14 00 15
(V) C3 47 30 24 8D 15 1A 83 1A 00 AA E5 D5 1B 58 DD
(V) F9 57 65 A4 E5 1E FD D2 A4 60 59 75 65 40 DB 91
(V) 74 9D B1 B8 30 A4 D8 C5 6E 0B 62 4E C1 64 58 E4
(V) 44 D5 A6 0F CF 4A 37 90 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 87 93 44 6C A2 FB ED E9 34 28 07 40 FF 4E
(V) 54 FD A6 A4 11 6B F6 E2 E7 86 67 A2 A0 FB FE C3
(V) 82 4D EB BC 14 00 15 C3 47 30 24 8D 15 1A 83 1A
(V) 00 AA E5 D5 1B 58 DD F9 57 65 A4 E5 1E FD D2 A4
(V) 60 59 75 65 40 DB 91 74 9D B1 B8 30 A4 D8 C5 6E
(V) 0B 62 4E C1 64 58 E4 44 D5 A6 0F CF 4A
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 87
(V) 0F 00 03 D7 88 0C 07 E8 05 07 02 15 0B 14 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 14
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 0A 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 88 0C 07 E8 05 07 02 15 0B 14 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 14
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 0A 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 14 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 0A 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 88 52 F1 56 88
(V) F3 E2 69 ED 3B C1 2D 59 B4 CB 30 B7 C2 C1 C9 2E
(V) 76 F5 ED 88 AD A1 49 3A 87 FC 99 36 19 16 B7 D7
(V) B3 62 56 28 04 FE 78 F5 20 AC 07 C5 88 1D 36 AF
(V) 8C 77 DD DF B2 06 C7 30 CC 65 8F 22 E2 FB BC 9A
(V) CF DB 73 6B A0 3A 69 47 63 33 30 A0 E0 72 22 5F
(V) A5 29 47 CC 83 2B 11 19 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 88 52 F1 56 88 F3 E2 69 ED 3B C1 2D 59 B4
(V) CB 30 B7 C2 C1 C9 2E 76 F5 ED 88 AD A1 49 3A 87
(V) FC 99 36 19 16 B7 D7 B3 62 56 28 04 FE 78 F5 20
(V) AC 07 C5 88 1D 36 AF 8C 77 DD DF B2 06 C7 30 CC
(V) 65 8F 22 E2 FB BC 9A CF DB 73 6B A0 3A 69 47 63
(V) 33 30 A0 E0 72 22 5F A5 29 47 CC 83 2B
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 88
(V) 0F 00 03 D7 89 0C 07 E8 05 07 02 15 0B 15 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 15
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 14 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 89 0C 07 E8 05 07 02 15 0B 15 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 15
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 14 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 15 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 14 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 89 01 83 16 ED
(V) 97 7F 7D 79 7F FB 17 24 26 EB D7 CB 2A 07 E5 16
(V) E6 93 F2 A2 73 52 99 44 14 CE 7D 81 7D 53 7B BD
(V) 88 B6 F9 43 75 BF 66 8A 0A A9 BA 3E 74 DE 47 6D
(V) AD 55 37 4D 20 4F 61 95 AC E4 3A 8F 48 EA 54 D0
(V) 79 4F DA 64 54 AD ED CC F4 84 98 61 F8 C8 13 69
(V) F9 07 5F 8C A8 6B 76 1D 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 89 01 83 16 ED 97 7F 7D 79 7F FB 17 24 26
(V) EB D7 CB 2A 07 E5 16 E6 93 F2 A2 73 52 99 44 14
(V) CE 7D 81 7D 53 7B BD 88 B6 F9 43 75 BF 66 8A 0A
(V) A9 BA 3E 74 DE 47 6D AD 55 37 4D 20 4F 61 95 AC
(V) E4 3A 8F 48 EA 54 D0 79 4F DA 64 54 AD ED CC F4
(V) 84 98 61 F8 C8 13 69 F9 07 5F 8C A8 6B
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 89
(V) 0F 00 03 D7 8A 0C 07 E8 05 07 02 15 0B 16 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 16
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 22 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 8A 0C 07 E8 05 07 02 15 0B 16 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 16
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 22 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 16 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 22 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 03 D7 8A FE C9 F8 25
(V) CA 26 E3 62 04 A8 1C D2 F9 92 72 BA 49 9B 80 DA
(V) 13 54 1A 2D 1C 30 2B C7 7D C9 9E AD 57 A7 40 19
(V) CC 77 1F 00 82 4F 02 C1 FA 4C F5 9D A8 51 01 BC
(V) 40 C4 B5 1E 49 F0 E9 06 10 47 5B 4E C5 3F 54 AB
(V) DF 42 38 05 08 1D 83 93 54 67 64 32 CC 85 70 E8
(V) C6 C2 13 E9 67 D2 A2 E1 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 03 D7 8A FE C9 F8 25 CA 26 E3 62 04 A8 1C D2 F9
(V) 92 72 BA 49 9B 80 DA 13 54 1A 2D 1C 30 2B C7 7D
(V) C9 9E AD 57 A7 40 19 CC 77 1F 00 82 4F 02 C1 FA
(V) 4C F5 9D A8 51 01 BC 40 C4 B5 1E 49 F0 E9 06 10
(V) 47 5B 4E C5 3F 54 AB DF 42 38 05 08 1D 83 93 54
(V) 67 64 32 CC 85 70 E8 C6 C2 13 E9 67 D2
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 03 D7 8A
(V) 0F 00 03 D7 8B 0C 07 E8 05 07 02 15 0B 17 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 17
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 33 09 00 09 00
(V) DLMS frame:
(V) 0F 00 03 D7 8B 0C 07 E8 05 07 02 15 0B 17 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 0B 17
(V) 00 09 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06
(V) 6B E5 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00
(V) 00 06 00 00 00 33 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 0B 17 00 09
(V) 05 07 E8 05 07 02 06 00 DB 45 00 06 00 06 6B E5
(V) 06 00 16 36 F8 06 00 23 00 B0 06 00 00 00 00 06
(V) 00 00 00 33 09 00 09 00
(V) DLMS
(W) No HAN data received last 30s, single blink

@ArnieO
Copy link
Contributor

ArnieO commented May 7, 2024

Great - and this seems to be valid data!

You can translate it to something readable by doing this:

  • Copy out the six lines of hexadecimal numbers below "DLMS frame:"
  • Go to this page: https://www.gurux.fi/GuruxDLMSTranslator
  • Paste the hex values in the upper frame
  • Delete all the "(V)" in the start of the lines
  • Press the "To XML" button

This gives:
image

This seems to fit with the payload format in the document from your provider:
image

  • The second line is the time ("Uhrzeit"), and OBIS code 0.9.1 shall be in the format hh:mm:ss
    The four bytes are 15 / 0B / 16 / 00, which i assume is 21:11:22 , and I don't know what the last byte is.
  • The third line is the date, OBIS code 0.9.2 shall be in the format YY.MM.DD or DD.MM.YY.
    The bytes are 07E8 / 05 / 07 / 02, which gives: 2024.05.07, and I don't know what the last byte is.

And so on.

I think the problem here is that we have not encountered this payload format before, so it has to be implemented in the code. So you'll have to wait until @gskjold finds time to do that. He's on vacation right now so please have some patience.

@andrwie
Copy link
Author

andrwie commented May 8, 2024

that's really good news - thankx.

I would appreciate if you would include my smart meter's payload config in your code.

@gskjold gskjold self-assigned this May 23, 2024
@gskjold gskjold added the enhancement New feature or request label May 23, 2024
@gskjold gskjold added this to the v2.3.6 milestone May 23, 2024
@gskjold
Copy link
Member

gskjold commented May 23, 2024

Please try the attached firmware:
esp32s3.zip
esp32.zip
esp32s2.zip
esp8266.zip
esp32c3.zip
esp32solo.zip

@andrwie
Copy link
Author

andrwie commented May 24, 2024

thankx for the update - I tried it. But it still doe not show the decoded Values in the main window
image

@andrwie
Copy link
Author

andrwie commented May 24, 2024

the telnet screen loks loike this:
*** Remote debug - over telnet - for ESP8266 (NodeMCU) - version 3.0.5

  • Host name: amsreader IP:192.168.4.247 Mac address:C8:C9:A3:17:42:16
  • Free Heap RAM: 20704
  • ESP SDK version: 2.2.2-dev(38a443e)

  • Commands:
    ? or help -> display these help of commands
    q -> quit (close this connection)
    m -> display memory available
    v -> set debug level to verbose
    d -> set debug level to debug
    i -> set debug level to info
    w -> set debug level to warning
    e -> set debug level to errors
    s -> set debug silence on/off
    l -> show debug level
    t -> show time (millis)
    profiler:
    p -> show time between actual and last message (in millis)
    p min -> show only if time is this minimal
    P time -> set debug level to profiler
    c -> show colors
    filter:
    filter -> show only debugs with this
    nofilter -> disable the filter
    cpu80 -> ESP8266 CPU a 80MHz
    cpu160 -> ESP8266 CPU a 160MHz

  • Please type the command and press enter to execute.(? or h for this help)


(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 06 E1 69 B4 FF FF EB
(V) 5B 95 57 A8 89 F4 0D F9 25 C6 87 52 E9 09 0F 4A
(V) C9 D1 68 7A 54 13 09 93 7B 25 19 0D 06 D7 9D 83
(V) 9D 3B 97 D1 20 6C A2 C3 49 52 A0 C3 A9 D1 87 AF
(V) F0 35 13 0E 47 16 62 0C 7D 48 8D 56 2F 16 17 12
(V) F4 7F AF A4 D4 4D 85 0D 38 1B 0D 65 9B A9 65 6B
(V) 80 A8 E5 B6 02 45 10 38 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 06 E1 69 B4 FF FF EB 5B 95 57 A8 89 F4 0D F9 25
(V) C6 87 52 E9 09 0F 4A C9 D1 68 7A 54 13 09 93 7B
(V) 25 19 0D 06 D7 9D 83 9D 3B 97 D1 20 6C A2 C3 49
(V) 52 A0 C3 A9 D1 87 AF F0 35 13 0E 47 16 62 0C 7D
(V) 48 8D 56 2F 16 17 12 F4 7F AF A4 D4 4D 85 0D 38
(V) 1B 0D 65 9B A9 65 6B 80 A8 E5 B6 02 45
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 06 E1 69
(V) 0F 00 06 E1 6A 0C 07 E8 05 18 05 15 32 0C 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 32 0C
(V) 00 09 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07
(V) 26 1D 06 00 16 91 89 06 00 23 F9 BD 06 00 00 00
(V) 00 06 00 00 00 00 09 00 09 00
(V) DLMS frame:
(V) 0F 00 06 E1 6A 0C 07 E8 05 18 05 15 32 0C 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 32 0C
(V) 00 09 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07
(V) 26 1D 06 00 16 91 89 06 00 23 F9 BD 06 00 00 00
(V) 00 06 00 00 00 00 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 32 0C 00 09
(V) 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07 26 1D
(V) 06 00 16 91 89 06 00 23 F9 BD 06 00 00 00 00 06
(V) 00 00 00 00 09 00 09 00
(V) DLMS
(V) HDLC frame:
(V) 7E A0 77 CF 02 23 13 BB 45 E6 E7 00 DB 08 49 53
(V) 4B 69 74 AC 00 8F 5F 20 00 06 E1 6A CD 6C F7 6B
(V) F1 BC 5C 8B CB 87 04 2D 68 24 A2 B5 A0 3E 49 B4
(V) 44 DC 92 DF D0 1F A1 5E 95 FF 82 A1 2F 03 B3 5F
(V) 1F D1 1D FF 72 F1 AD 8C C7 50 FF EE AE A4 94 B9
(V) 9D 98 AE 6B CF 22 69 60 C6 80 6A 47 39 1D 17 6B
(V) AB 57 5C 67 1D 57 6F E6 FA 70 6E 0C 26 C5 5F FB
(V) 30 3F 88 A4 23 E7 36 D3 7E
(V) LLC frame:
(V) E6 E7 00 DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00
(V) 06 E1 6A CD 6C F7 6B F1 BC 5C 8B CB 87 04 2D 68
(V) 24 A2 B5 A0 3E 49 B4 44 DC 92 DF D0 1F A1 5E 95
(V) FF 82 A1 2F 03 B3 5F 1F D1 1D FF 72 F1 AD 8C C7
(V) 50 FF EE AE A4 94 B9 9D 98 AE 6B CF 22 69 60 C6
(V) 80 6A 47 39 1D 17 6B AB 57 5C 67 1D 57 6F E6 FA
(V) 70 6E 0C 26 C5 5F FB 30 3F 88 A4 23 E7
(V) GCM frame:
(V) DB 08 49 53 4B 69 74 AC 00 8F 5F 20 00 06 E1 6A
(V) 0F 00 06 E1 6B 0C 07 E8 05 18 05 15 32 0D 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 32 0D
(V) 00 09 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07
(V) 26 1D 06 00 16 91 89 06 00 23 F9 BE 06 00 00 00
(V) 00 06 00 00 00 05 09 00 09 00
(V) DLMS frame:
(V) 0F 00 06 E1 6B 0C 07 E8 05 18 05 15 32 0D 00 FF
(V) 88 80 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31
(V) 32 31 33 37 38 33 38 31 31 39 39 09 04 15 32 0D
(V) 00 09 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07
(V) 26 1D 06 00 16 91 89 06 00 23 F9 BE 06 00 00 00
(V) 00 06 00 00 00 05 09 00 09 00
(D) Received valid DLMS at 46
(V) Using application data:
(V) 02 0C 09 06 00 06 19 09 00 FF 09 0D 31 31 32 31
(V) 33 37 38 33 38 31 31 39 39 09 04 15 32 0D 00 09
(V) 05 07 E8 05 18 05 06 00 DB B5 A6 06 00 07 26 1D
(V) 06 00 16 91 89 06 00 23 F9 BE 06 00 00 00 00 06
(V) 00 00 00 05 09 00 09 00
(V) DLMS
(W) No HAN data received last 30s, single blink

@andrwie
Copy link
Author

andrwie commented May 24, 2024

any other test I shall try?

@ArnieO
Copy link
Contributor

ArnieO commented May 25, 2024

any other test I shall try?

No thanks - just wait until @gskjold finds time to make a new attempt. 😉

Decoding the data is not the issue here, so Telnet output is no longer needed. That part was already confirmed earlier.

@gskjold
Copy link
Member

gskjold commented May 30, 2024

EDIT: First file was not working, try this one:
esp8266.zip

@andrwie
Copy link
Author

andrwie commented May 30, 2024

Thank you so much for your time and effort. I tried the new version. Unfortunately it is not showing data in the main screen.
image

Anything I can try?

@ArnieO
Copy link
Contributor

ArnieO commented May 31, 2024

Anything I can try?

Are you still seeing data as before when you do a Telnet debug?

@gskjold
Copy link
Member

gskjold commented Jun 1, 2024

I have a hard time testing this locally. Right now I can't see what would prevent it from parsing your data. If you feel comfortable sharing your decryption key, you can send that to gunnar@amsleser.no , maybe I have more luck putting your full payload in my emulator

@andrwie
Copy link
Author

andrwie commented Jun 1, 2024

@ ArnieO: I do see data in telnet terminal - seems to be tha same format us before - nothing on the main window though.

@ gskjold: Just sent my decryption key to gunnar@amsleser.no - hope this helps

@gskjold
Copy link
Member

gskjold commented Jun 4, 2024

Thank you @andrwie , just what I needed!
Here is a new test build:
esp32s3.zip
esp32solo.zip
esp32.zip
esp32c3.zip
esp32s2.zip
esp8266.zip

@andrwie
Copy link
Author

andrwie commented Jun 5, 2024

I tried the new version - IT IS WORKING - thankx
image

@gskjold
Copy link
Member

gskjold commented Jun 6, 2024

Good to hear!

@gskjold gskjold closed this as completed Jun 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants