This is code to read data from your ulility (Electricity, Water, Gas etc) meter using the optical infrared two-way port.
You need an IR LED, a IR photodiode and some kind of amplifying circuit to connect this to your serial port.
iec1107.py contains old code to talk the simple IEC1107 protocol which a lot of meters fortunately understand.
example.py and the rest of it is a minimal DLMS implementation which manages to pull data out of my L&G E450 meter.
Please do not email me if this doesn't work for you, unless you include a patch or pull-request that improves it.
Be warned that the DLMS protocol stack is created by a succession of morons, doing one stupid thing after another for several decades.
If you need more DLMS than this code offers, consider what GuruX has to offer.
Poul-Henning