GXDLMSTranslator 'NoneType' object has no attribute 'moreData'

8 posts / 0 new
Last post
mrphoenix
GXDLMSTranslator 'NoneType' object has no attribute 'moreData'

Hi there,
May somebody help me with the error I get when trying to decode a message from my meter?
I'm using a Siemens IM350 SmartMeter that is pushing messages once a second without sending anything to it, so no initialization happening.
The data I get is encrypted with a block cypher key.
When useing Gurux DLMS Transfer and the correct cypher key I get a perfectly fine decoded XML with all the data I need.
When trying the same with GXDLMSTranslator in Python I get the error message:
"'NoneType' object has no attribute 'moreData'"

I'm using:
python 3.7.3
gurux-common 1.0.13
gurux-dlms 1.0.58

The code I'm using is:
----------------------------------------------------------------------------------------
# import modules needed
from gurux_dlms import *

# reading from serial interface
data = "7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014d81a188d82989644c709df1f1e596d4c26a2ffd254d2e8ac5fdbfbb3e3c9f6f5b13ca752720feb366ba57086a153442f8c8fbc56cdb46fc0b92b1e9e2b9c5433bdffaffe1b037d65624b2fa1c6178caee285ac2e2507877c47b0a6e6c2e27e"

xml = ""

# decrypting received data
decrypt = GXDLMSTranslator(TranslatorOutputType.SIMPLE_XML)
decrypt.comments = True
decrypt.blockCipherKey =GXByteBuffer.hexToBytes("My Cypher Key")

try:
xml = decrypt.messageToXml(GXByteBuffer.hexToBytes(data))
except ValueError:
print("Value-Error occured")
# output
print(xml)
----------------------------------------------------------------------------------------

some examples are:
7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014d823276045d54aa189b6cff959acde7909846ac7d6cdeff082cb1232d8d62976b24e91aa8d06eeca29c87a4de23dff2b4ffc0483399f1814e3456f26af70e36c74e0cf4c679f90c95c990965937993d65f8b21ba6b3c0137268b14ea2c8d7e

7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014d8243d1afa007c684fa90c248a686d30fdaa2cfd491036de86abcf4e37d323b839b7879c1b98bdb135a4bffac28e2c475b65dc3be82626aaeef58bf73abf98c4f9084b8f4dc9b45adbde391fe6c29614ee785707378755e90291e426f9ee7e

7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014d825dd1edd579d1a4705d643bcd13602da62d49358b4c1b96b4bd3eaf3db5574c44d7331d1ab348cf993f83a0f1f3e221f24cebac723c31e3c2e0c6bab451e3c1fc5c51f5e3a319e3e1d6ea99d947b3523d454c79fd44beaf66ce7b4b1c97e

7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014c50b9217f54a1e99bc246bc7edcfcde6c5b6704b9af0cc2ea6bcd0ac8177b39738c500af3e9ece8c1f3146edb292af11225915fa93331bc3437ade0f789e915968a0d17cd940ed19e7561092cd44facac099940b4906ce806ad53a34fae37e

7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014c50cba18d236b0a1eca2625d77934a2cfbe62497ff9aeb6bc5e83a4dded4b83cef08c9830a234e80f3c008c1d5afed9102a6ed750ee31f65ec36769386be17a430fc85a544deadc38cb94dc7c0e3cd8094b296fc3307c1e395fa2f3487987e

7ea079cf0002002313d986e6e700db08534d53677004b5f75f200014c50dc41320c69386418c9148920b18b2bd3f73053ffd66d8baa1cdcf75897832a6fac845f0363bd12111b623ecba50a0c65260f28acaa3cdc953c9f73bfba0cf9f69ac2570f4bb38d309182dc4aa58fb33015a190e5c8ee0d16750ac63f07e

All of them are decoded fine by Gurux DLMS Transfer, but not with GXDLMSTranslator.

Cheers,
Philipp

Kurumi
Kurumi's picture

Hi Philipp,
Thank you fro thin info. This is fixed and new version is released later today.

BR,
Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

Kurumi
Kurumi's picture

Hi,

This is fixed. Get the latest version.

BR,
Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

mrphoenix

Hi Mikko,

Thx for coming back to me that quick.
I've updated all Gurux-Libraries with "git pull ..." and pip install.

I'm now running:
gurux_dlms version: 1.0.58
gurux_net version: 1.0.17
gurux_serial version: 1.0.14

Nonetheless I do get the same error-message "'NoneType' object has no attribute 'moreData'"

May you assist further please?

Thx,
Philipp

Kurumi
Kurumi's picture

Hi,

Update gurux.dlms. run

pip install --upgrade gurux_dlms. Your version should be 1.0.64.

BR,

Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

mrphoenix

Hi!
Did that but still no luck.
Why does your Python Push Example report back a different version of the library?
Cheers,
Philipp

Kurumi
Kurumi's picture

Hi,

You have not installed the latest version. Try with this:

pip3 install --upgrade gurux_dlms. Your version should be 1.0.64.

You can get list from outdated version running:
pip list --outdated
or
pip3 list --outdated

BR,
Mikko

________________________________________
Mikko Kurunsaari
Gurux Ltd
http://www.gurux.fi

mrphoenix

Good Morning Mikko,

Somehow the versions of the gurux-modules got mixed up. Probably because I installed them by running pip and in addition to that cloning them from git.
Anyway I'm now able to decode my data! :-)
That's a huge step of integrating my smartmeter towards the integration in my volkszaehler-application!

Thank you very much!