TRB143 Wrong M-Bus data encoding

Hi,

i have problems with the enocding of the data of my mbus devices. I have Zenner WMZ Zelsius C5-ISF (Heat Meter).

When I let it enocde in JSON the values will be negativ and date values are in future.

          {
            "id": "1",
            "frame": "0",
            "Function": "Instantaneous value",
            "StorageNumber": "50",
            "Tariff": "0",
            "Device": "0",
            "Unit": "Time Point (date)",
            "Value": "2127-15-31",
            "Timestamp": "2024-09-28T09:08:32Z"
          },
          {
            "id": "2",
            "frame": "0",
            "Function": "Instantaneous value",
            "StorageNumber": "50",
            "Tariff": "0",
            "Device": "0",
            "Unit": "Energy (kWh)",
            "Value": "-2147483648",
            "Timestamp": "2024-09-28T09:08:32Z"
          },

Here is the Mbus Data in HEX

6899996808017280713611496A8804130000000C78807136118289016CFFFF84890106000000808489011300000080C289016CFFFFC489010600000080C489011300000080828A016CFFFF848A010600000080848A011300000080C28A016CFFFFC48A010600000080C48A011300000080828B016CFFFF848B010600000080848B011300000080C28B01
6CFFFFC48B010600000080C48B0113000000801516
6899996808027282713611496A8804120000000C78827136118289016CFFFF84890106000000808489011300000080C289016CFFFFC489010600000080C489011300000080828A016CFFFF848A010600000080848A011300000080C28A016CFFFFC48A010600000080C48A011300000080828B016CFFFF848B010600000080848B011300000080C28B01
6CFFFFC48B010600000080C48B0113000000801916
6899996808037286713611496A8804170000000C78867136118289016CFFFF84890106000000808489011300000080C289016CFFFFC489010600000080C489011300000080828A016CFFFF848A010600000080848A011300000080C28A016CFFFFC48A010600000080C48A011300000080828B016CFFFF848B010600000080848B011300000080C28B01
6CFFFFC48B010600000080C48B0113000000802716

Best Regards
Sven

I now use libmbus with a linux host, and set the trb143 to open an mbus port:

I can dump it to xml.

mbus-tcp-request-data-multi-reply 192.168.1.39 8099 1 >mbus-1.xml

This is the correct value:


    <DataRecord id="1" frame="0">
        <Function>Instantaneous value</Function>
        <StorageNumber>0</StorageNumber>
        <Unit>Energy (kWh)</Unit>
        <Value>0</Value>
        <Timestamp>2024-08-28T12:59:29Z</Timestamp>
    </DataRecord>

....

    <DataRecord id="14" frame="0">
        <Function>Instantaneous value</Function>
        <StorageNumber>0</StorageNumber>
        <Unit>Time Point (time &amp; date)</Unit>
        <Value>2024-09-28T13:55:00</Value>
        <Timestamp>2024-08-28T12:59:29Z</Timestamp>
    </DataRecord>

And i suspect this to be a StorageSlot which is not writen until now.

    <DataRecord id="80" frame="4">
        <Function>Instantaneous value</Function>
        <StorageNumber>50</StorageNumber>
        <Tariff>0</Tariff>
        <Device>0</Device>
        <Unit>Energy (kWh)</Unit>
        <Value>-2147483648</Value>
        <Timestamp>2024-08-28T12:59:49Z</Timestamp>
    </DataRecord>


I can see in the dump that there are a lot of Value for history, the StorageNumber 50 is not yet filled in, so this are wrong values. I can dealt with it with libmbus, but it would be nice if the trb143 would support the mbus decoding.

This topic was automatically closed after 15 days. New replies are no longer allowed.