Smart Message Language
Smart Message Language ( SML ) is a communication protocol for electricity meters that was developed, among other things, for the exchange of measurement data, but also for firmware upgrades .
This protocol is used in the following meters:
- SyM 2 isochronous load profile counter
- eHZ, electronic household meter in draft version 2.01 from November 10, 2008
- EDL21 counter, based on the hardware of the eHZ.
- EMH-ED300L
Planned use in
- Basic meter in the measuring system 2020
The development takes place parallel to the SyM 2 development in the same consortium. The current version is version 1.04 from March 18, 2013, published by the Federal Office for Information Security .
Basic structure
Each unit of information is referred to as an SML file. It can contain an SML order, an SML response, or a combination of both. An SML file is composed of SML messages and has a start and end sequence. An SML message is either an order or a response.
Escape sequence | 1B 1B 1B 1B |
Beginning of the SML file (version 1) |
01 01 01 01 |
Open message | SML_PublicOpen.Req |
News) | message (s) to be transported |
Close message | SML_PublicClose.Req |
Padding bytes (to get a file length divisible by 4) |
00 (<xx> times) |
Escape sequence | 1B 1B 1B 1B |
End of the SML file <xx>: Number of filler bytes <yy> <zz>: Check sum over the file |
1A <xx> <yy> <zz> |
The checksum is calculated over all bytes of the data stream in the SML transport protocol with the exception of the last two bytes (and therefore without the bytes of the checksum themselves).
There is a text form and a compressed binary format that can be converted into one another. The transmission medium is not specified. With the SyM 2 meter, Ethernet is used, with the eHZ an infrared interface according to DIN EN 62056-21.
Measurement data such as current or total power consumption can be transmitted in the messages. OBIS key figures are used to categorize the data .
Web links
- vde.com/… - Official website of the FNN for Sym 2
- vde.com/… - SML specification version 1.03 from the SyM 2 consortium
- bsi.bund.de / ... - SML specification version 1.04 from the Federal Office for Information Security
- jSML , Java library for SML (LGPL)
- libsml , C library for SML, official, actively maintained repository as the successor to the Dailab repository
- sml-easy.pl , Perl script for easy reading of SML based counters
- MyHomePower.py , Python example script for reading out an SML based counter
- ED300L.pdf , example of a complete SML parameter description
- smartmeter-obis , NodeJs based parser library
- vzlogger , data logger with SML support
- Electricity meter with SML interface