Newbie - hardware question

Forgive me for being new! I’ve had my small set up monitoring solar/consumption etc happily for several months now. Next step is having my heat pump installed (hopefully January).

I’d like to add monitoring to it and seems sensible (!) to fit all the parts at install rather than having to drain the system down to fit flow meters etc. I’m thinking it’s easiest to fit temp probes in pockets in a T piece for flow and return, but I’ve no idea how on earth to choose a flow rate meter…!

Is there anything else I’ve not thought of? I don’t want to produce a massive box of parts to the installer with ‘by the way can you plumb all this lot in too please’ :slight_smile:

Thank you

1 Like

Hello @richardsmith99 and welcome! Good idea to get this arranged before installing the heat pump it makes it much easier!

Have you read the heat pump monitoring guide here?
Heat Pump Monitoring - Guide | OpenEnergyMonitor

John has some useful notes on mounting the temperature sensors here:
https://heatpumps.co.uk/2015/06/08/temperature-sensing-with-openenergymonitor/

Do you want to install a heat meter? I would definitely recommend one but its a costly bit of kit unfortunately… I’ve got a sontex superstatic 440 with the 531 integrator, it comes with its own pockets for mounting the temperature sensors which is useful Sontex Superstatic 440

It looks like there is now a cheaper version, i can see at least one integrated pocket in the picture: (I havent tried this one yet)
Sontex Superstatic 749

There’s a bit here about choosing the right heat meter, thanks again to @johncantor HeatpumpMonitor/selectingheatmeter.md at master · openenergymonitor/HeatpumpMonitor · GitHub

If you go down the heat meter route, you can read from the sontex meters using MBUS, it gives you flow and return temperatures, flow rate, heat in watts and cumulative heat energy in kWh. We’ve got a little board, available in the shop, that can plug into a emonBase/emonPi or just a standard raspberrypi that can read from these MBUS meters making it relatively straightforward to read in the data https://shop.openenergymonitor.com/mbus-to-uart

I’ve also put a SDM120 Modbus single phase meter on the electricity supply to my heat pump it’s a MID standard meter and gives a useful independent meter reading that’s separate from all the web stuff, the standard software running on an emonBase/emonPi can read from this meter you just need to add the configuration described in this guide: EmonHub Interfacers - Guide | OpenEnergyMonitor

Thank you very much for such a detailed reply

I’ve spent ages reading all the guides trying to figure out the best solution!

You think a heat meter will be better than two probes and a flow meter? I’d like to be able to read out the flow temperatures etc. I’m pretty happy at building stuff but I’m rusty on programming so don’t want a solution that needs too much complex coding and stuff.

The installer is setting the unit (6kW ecodan) with the MEL cloud but I’d like to be able to log it all onto Emoncms

Thanks @richardsmith99 The nice thing about the heat meters are that they do all the heat calculation for you and store a cumulative kWh reading since installation that is independent of the rest of the monitoring. The accuracy is likely to be higher and they usually meet a given accuracy class. That said it is more expensive. I guess it depends on what you are after really. An MBUS heat meter connected to a Pi as I mentioned above is probably the solution with the least requirement for programming.

Thank you so much

I think I’ll try a heat meter reading directly into the emonpi with the converter.

Hopefully installing next month (the unit has been delivered now at last!) so no doubt I’ll be back for more help then!

1 Like

OK - I’m stuck!

I can’t get the SDM120 to read - I’ve posted in another thread about that as someone else was having same issues.

Heat meter - stockshed were adamant I didn’t want the Sontex and sold me a Sharky 775 with MBUS board.

I’ve got the heat meter connected up to the MBUS - UART board, with the USB programmer connected and wired up to emonpi. I’ve added the code as per instructions, adjusting the baud to 2400 and pages = 0 but emoncms doesn’t seem to even register it exists. There’s no error message (like there is for the SDM120) . I’ve tried address = 0 or 254… I’m a bit at a loss as to where to start troubleshooting next!

Any ideas?

Hmm - some progress.

I’ve got this appearing in the log now

DEBUG MBUS Decoded MBUS data: None

At least it’s acknowledging it exists. Is it likely the address causing issue?

Just spotted this whizzing by in the log… I’m none the wiser!

2021-01-25 18:42:00,085 WARNING  MBUS       Exception caught in MBUS thread. Traceback (most recent call last):
  File "/opt/openenergymonitor/emonhub/src/emonhub_interfacer.py", line 32, in wrapper
    return func(*args)
  File "/opt/openenergymonitor/emonhub/src/emonhub_interfacer.py", line 99, in run
    rxc = self.read()
  File "/opt/openenergymonitor/emonhub/src/interfacers/EmonHubMBUSInterfacer.py", line 270, in read
    result = self.request_data(self._settings['address'])
  File "/opt/openenergymonitor/emonhub/src/interfacers/EmonHubMBUSInterfacer.py", line 206, in request_data
    self.mbus_short_frame(address,0x5b)
  File "/opt/openenergymonitor/emonhub/src/interfacers/EmonHubMBUSInterfacer.py", line 61, in mbus_short_frame
    self.ser.write(data)
  File "/usr/lib/python3/dist-packages/serial/serialposix.py", line 532, in write
    d = to_bytes(data)
  File "/usr/lib/python3/dist-packages/serial/serialutil.py", line 66, in to_bytes
    return bytes(bytearray(seq))
ValueError: byte must be in range(0, 256)

2021-01-25 18:42:00,086 ERROR    SDM120     Could not read from SDM120
2021-01-25 18:42:00,269 WARNING  MainThread MBUS thread is dead.
2021-01-25 18:42:00,270 WARNING  MainThread Attempting to restart thread MBUS (thread has been restarted 7 times...)

Hello Richard, Interesting to hear about the Sharky 775, looks like a good unit!

Could you copy here the emonhub.conf MBUS interfacer entry ?

Can you find out the MBUS address of the unit from the LCD?

This is the current set up - I’ve just changed the address to 1 - having tried 0, 256, 80 (which the unit shows as primary address - although I’ve no idea if this relates to the MBUS address!) and I am still getting the decoded MBUS data : none

I’ve got the read time set to 180 as the max frequency for reading is 3 mins on battery power (I’m getting the battery changed for 240v supply to allow unlimited readings) - the unit isn’t showing the error for reading data too frequently.

[[MBUS]]
    Type = EmonHubMBUSInterfacer
    [[[init_settings]]]
        device = /dev/ttyUSB0
        baud = 2400
    [[[runtimesettings]]]
        pubchannels = ToEmonCMS,
        address = 1
        pages = 0
        read_interval = 180
        nodename = MBUS

I wonder if device = /dev/ttyUSB0 is correct?, If you have the SDM120 as well it might be on either ttyUSB0 or ttyUSB1.

On my system I setup static names for the USB ports so that they dont swap around when the system reboots. I followed the stackexchange answers here (sorry this gets a bit complicated!)
I now have /dev/modbus and /dev/mbus as the USB port names.
linux - How to bind USB device under a static name? - Unix & Linux Stack Exchange

It looks like you selected the same USB port for the SDM120, this means that the interfacers will be conflicting and you may either be reading from the SDM120 or MBUS meter.

You could try disconnecting both SDM120 and MBUS readers. Then connecting the SDM120 meter first and keeping the device as /dev/ttyUSB0, see if you get anything useful in emonhub. Then once that’s working, connect up the MBUS reader which should now be on /dev/ttyUSB1, set the device in the emonhub config to point to USB1 and see if you get anything useful from emonhub

I don’t currently have the SDM120 interfacer plugged in - it was a bit of a temporary lash up (thinking it was the easiest to get working!!)

Changing the MBUS to USB1 results in
2021-01-25 19:04:30,333 ERROR MainThread Unable to create ‘MBUS’ interfacer: [Errno 2] could not open port /dev/ttyUSB1: [Errno 2] No such file or directory: ‘/dev/ttyUSB1’

So USB0 must be right for that…

1 Like

Ok great, did you disable the SDM120 interfacer as well, that might conflict if the port is set the same…

I didn’t think of that. I’ve done that and I’ll try the channel numbers again and see what I get.

1 Like

No luck. :frowning:

If I set the address to 256 I get the ‘exception caught in MBUS thread’ error. Everything else still results in MBUS data : None

Going back to basics - there’s two connections on the Sharky and it says polarity doesn’t matter. There’s three terminals on the MBUS UART board - I’ve tried connecting in every permutation possible, as they’re not labelled. I think the correct terminals are the two nearest the centre of the board - is this correct?

Ah it should be labelled on the board, this picture of the design is probably the clearest:
https://github.com/openenergymonitor/HeatpumpMonitor/tree/master/Hardware/WiFi_MBUS_Reader/v1_TH

The MBUS connections are the two on the furthest right of the board at the top:

I found that image which led me to think those were the terminals. The labels are hidden by the terminal block. Worth checking!

Good evening,

I’m waving my white flag of surrender!

I can get nothing out of the Sharky 775 meter despite trying different addresses, page numbers etc. The green LED on the USB board is happily flashing but all I get is

DEBUG    MBUS       Decoded MBUS data: None

I’m also still struggling to get anything out of the SDM120 as per the other thread that I gatecrashed!

Any help would be gratefully received

Thank you