Emoncms app module v2.9.x (database upgrade required)

Version 2.9.5 of the emoncms app module is available currently on the master branch, will merge to stable in a week or so time.

This is a big update, with some exciting Heat pump app developments and also some less exciting but important database changes.

  • The app_config table which stored all app configuration as a single json has now been replaced with a new app table. Each app now has a unique id (rather than being identified by it’s name and user only). This makes it easier to link apps to wider datasets such as per-processed daily heatpump app data. It also makes it a lot easier to change the menu name entry.

  • When you update the app module, make sure to run Admin > Update > Update Database to create the new database. The module will automatically migrate your existing apps and settings to the new format.

The app name and public status can then be changed from each app’s configuration page, e.g:

image

  • The second more interesting part of this update is that the My Heatpump app now supports the option to show daily hot water, space heating, when running and combined stats all from the daily view. The SCOP’s also match up with those on HeatpumpMonitor.org as it can now use the more advanced data processing pipeline that were using on HeatpumpMonitor.org.

E.g, Combined:

Space heating only:

Hot water heating only:

See my dashboard here for an example: https://emoncms.org/midterrace/app/view?name=EcodanASHP

This option has to be enabled in the My Heatpump app config. Once enabled you may have to wait a few minutes for the daily data to be processed. Keep the browser window open while it does this.

image

This is an initial release of this feature, I will be refining it over the next week or so, including adding:

  • Nice icons to toggle between hot water and space heating modes
  • CSV export options
  • More detailed stats section relating to the daily data.
  • Option to show average indoor temperature, % carnot and other stats on the daily view
  • Use of the pre-processed daily stats for the power view when you zoom out to keep the figures on that page accurate as you zoom out.
  • Option to select particular years for full year stats
4 Likes

When enable daily pre-processor is first enabled and you click ‘Launch App’ the app will show the following message as it does the pre-processing. I will be automatically processing the data of accounts linked to HeatpumpMonitor.org over the next few days so you may or may not see this message depending on when you load the dashboard or try to use this feature…

This feature requires redis support, right? (I found when debugging the error I got)

the redis part is only used to lock the process, I can disable that lock if redis is not present if you like? would just need an if redis check here app/apps/OpenEnergyMonitor/myheatpump/myheatpump_model.php at master · emoncms/app · GitHub

I’ve just added these checks in to make redis optional and also pushed up some other fixes and improvements (v2.9.6).

1 Like

Working without redis now, thanks.

image

1 Like

This is great! Only partially related - what is the best practice for the space heating active flag? Should this be 1 when the compressor is on or also when only the pump is running. The distinction is relevant when the heat pump is cycling, which unfortunately is pretty much always for me. Whichever it is, it would be also useful to be able to further distinguish between the two space heating COPs. Compressor-on space heating COP would probably be closest to the manufacturer specs, whereas the full-cycle COP indicates the overall system efficiency.

1 Like

Thanks for the app’s module pull request @Timbones, merged in!

1 Like

Thanks @Andre_K, at the moment the heatpump_ch (space heating flag) is not actually used for any of the calculations. It is purely used for changing the background during these periods on the graph.

The space heating stats are all generated based on: if the heat pump is running with electric consumption above the standby level (updated to 150W recently) AND that the heatpump_dhw flag is zero. In that sense if your central heating pump and heatpump standby consumption is above 150W it will be included in space heating electric demand, if not it will just count towards standby consumption. Which is included in the combined stats.

I do want to make the standby power level a user configurable option. That should be quite straight forward.

1 Like

Having it user configurable would definitely be great. During standby (no pumps on and in sleep mode), my Vaillant uses around 12 W. This increases to around 20 W if there was any recent activity like a heating or DHW cycle. When only the circulation pump is on, I’m looking at around 60 W.

Does standby threshold need to be configurable, or just higher for all systems? Even the smallest heat pump is unlikely to be able to modulate below, say, 200W?

1 Like

I’ve added a bit of an experimental option, if you enable % carnot on the power graph and then navigate back to the bar graph it shows the % carnot as points on the bargraph. Im interested in understanding why this varies from system to system and over time.

E.g Damon’s Viessmann Vitocal, why was there a dip in apparent heat pump effectiveness in March even though outside temperatures where higher than mid Jan… Why did the % carnot increase gradually at the start? The simulated carnot heat is dependent on the quality of the algorithm that I’ve written and this is also something I want to investigate in more detail.

1 Like

Is the goal to include the periods where only the circulation pump is on into the CH COP or not? If my heat pump has its compressor active for 30 minutes at 1 kW electrical generating 5 kW of heat and then has the circulation pump circulating the warm water for another 60 minutes at 100 W, would you say I have a COP of 5 or 4.55?

Edit: Or in other words, is standby supposed to be compressor standby or complete standby?

I find that when I’m looking at carnot heat estimates, setting the standby threshold too low results in it simulating heat that doesn’t exist when only the pumps are running…

…so I set the threshold high enough for the carnot heat to better match measured heat:
(150W for my system)

Remember, it’s not the warmth of the flowing water that counts as “heat” but the difference between flow and return. So personally I would only count periods when the compressor is running as heating COP.

I don’t know if others follow this same approach; it’s the one that makes sense to me.
At the end of the day, it’s the annual SCOP that really matters.

1 Like

Can this be added as a popup prompt on update?

Equally, why can it not be triggered automatically?

It is highlighted in the menu bar… Yes probably could be automatic!

1 Like

App module version 2.9.8 is now available

Changes:

image

Where are these svg icons defined? I’m not getting them to load on my system:

image

Apologies they are in emoncms core, I forgot to mention that needs updating too

Okay, got that now thanks.

Next: why is the “overlay” visible with no text, making the bar chart appear faded?
It’s as if it’s recalculating the daily stats yet it’s not.