# Power Meter with SML Read data from a power meter (eHZ = Elektronischer Haushaltszähler) using Smart Message Language (SML). First of all you need is a eHZ (Elektronischer Haushaltszähler) and an IrDA USB dongle like described [here](https://wiki.volkszaehler.org/hardware/controllers/ir-schreib-lesekopf). I got mine from Udo ([Volkszaehler](http://volkszaehler.org)) some time ago but it looks like he is not directly selling these anymore. What I found is [this link](https://s.sebald.com/flmui) to a shop selling the same dongles on Amazon. If your eHZ is not next to your openHAB device you might want to extend the USB cable using a [USB over LAN extender](https://s.sebald.com/dzsc7), which works pretty good for me. I used several information from the openHAB community, mainly from [this topic](https://community.openhab.org/t/using-a-power-meter-sml-with-openhab/21923/1). You need to get, modify and compile [libsml](https://github.com/volkszaehler/libsml) (the [old libsml](https://github.com/dailab/libsml) is dead!) from Github liked described [here](https://community.openhab.org/t/using-a-power-meter-sml-with-openhab/21923/1) and in my comment about the new repository [further down in the thread](https://community.openhab.org/t/using-a-power-meter-sml-with-openhab/21923/12). But I included my version of sml_server.c (pulled and edited 2018/01/19) here as it differs a bit. If you like to have a fixed device name (e.g. */dev/sml0* instead of */dev/ttyUSB0*) which cannot change (it may if you plug in another USB device), please use the *50-sml.rules* file and modify it. To find our the serial and maybe also different manufacturer of our device use `lsusb -v` to display USB device properties. * **50-sml.rules**: Put this file into your */etc/udev/rules.d* directory and modify it for your specific setup. * **sml.items**: Put this file into your */etc/openhab2/items* directory. * **sml.rules**: Put this file into your */etc/openhab2/rules* directory and modify it for your specific setup. In my case the compiled sml_server is in */home/openhabian/src/libsml/examples*. You also might need to adjust the device name, in my case it is: */dev/ttyUSB0* * **sml_server.c**: Put this file into the *libsml* subdirectory *src/libsml/examples* and compile *libsml* with this file, not the original one.