Giter Club home page Giter Club logo

nodered_heishamon_control's Introduction

Latest version: 24.03 Stable release

ko-fi


About v24 Stable
This flow version works best with heishamon firmware 3.1 (or higher).
In fw3.1+ there are new additional topics available of which two are used in the flow. I have been using fw3.1 for a month now without any issues.
Note: There is a manual override available for the two new topics. But This flow will work with fw2.0, fw3.0 as well after these two topics have been set.

Here is a list of up-to-date firmware's for heishamon. https://github.com/Egyras/HeishaMon/tree/master/binaries


There are also some breaking changes with external sensors. They need to be reconnected to the right [WP Input] tab AND configured in the dashboard (SYSTEM > SENSORS).

Table of Content


Introduction

Heishamon hardware is created by Egyras. AWESOME job!
https://www.tindie.com/stores/thehognl/
It is able to communicate directly with a range of Panasonic heat pumps.

  • The heishamon board can receive information from the Panasonic heat pump and forwards it to a MQTT-broker.
  • The heishamon board can receive commands from the MQTT-broker and sends it to the Panasonic heat pump.

There are multiple options to connect to the heishamon and control your heat pump. As long as it is able to read and send MQTT information.

  • 1: MQTT > Home Assistant
  • 2: MQTT > OpenHab
  • 3: MQTT > Domoticz
  • 4: MQTT > Node Red
  • 5: MQTT > ... any other automation platform

All of the above options are ways to interact with the heat pump. (And all are good if your happy with it)
I have chosen Node Red (=NR). I already use a lot of NR functionality/automations combined with HomeAssistant. In many cases NR is the controller and HomeAssistant (=HA) is just the graphical front. This CAN be different if you want, as HA is also able to send/receive MQTT messages.

(Just to emphasize; because of the awesome design choice of the heishamon board, it presents everything in the MQTT standard, and that’s why it is able to interact with ANY software that can handle it.)
BUT...again, I choose the NR option because if I update or restart HA, the controller and automation's just continue.
I have chosen option 4 in the list above. In this GIT-page you can read about the NR functions and dashboard I built to control the Panasonic.
Back to top

Changes in v24.00 compared to v23.00 stable

  • Breaking change: New flow-tab "WP Input". All external sensors and triggers are now managed from this tab.
  • Breaking change: External sensors used with functions are now handled partly though the dashboard. (DASHBOARD > SYSTEM > SENSORS)
  • A lot of stability issues and bugs have been resolved. Thanks to all issue reporters and the Dutch www.tweakers.net users
  • First boot of new installations has been improved a lot.
  • The flow works correct using "Compensation Curve" or "Direct" mode.
  • The flow works correct using zone control "Water Temperature", "Thermostat (External)", "Thermostat (Internal)" or "Room sensor".
  • Resource improvement; CPU usage has been decreased by ~30%.

As always, enjoy your heat pump!

/Ed ter bak
Back to top

What can this Node Red flow do for you?

Only using the default room controller does not let you see historical data easily. This controller is not extremely user friendly as well. This Node Red dashboard offers a lot of ease for that with charts and bar-charts.

Additionally, I have built in a lot of extra functions to do specific tasks or automation's. More about that below...
Back to top


What do I need to make use of this flow?

  1. The heishamon module working with your heat pump.
  2. A functional MQTT broker. (Mosquitto/HiveMQ/EMQX/etc.)
  3. A functional Node Red instance.

1. Obviously, you need the heishamon pcb module connected to your heat pump and have it functional. Without this module, you can stop reading. 😄 See this site to get one: https://www.tindie.com/stores/thehognl/

2. You can use any broker that is 24/7 available. You can install it on any system, as long as heishamon and the broker can communicate with each other and the Node Red can communicate with the broker.
3. You can install node red on a lot of devices. It can be directly on Linux or a device like Raspberry Pi. You can also run it in a container (self hosted) or within Home Assistant (add-on). For all options see: https://nodered.org/
All of these options are good, as long as the Node Red application can communicate with the broker and the Node Red instance has persistent storage enabled.
The Node Red flow is stand-alone so: You do not require a database. You do not require HomeAssistant. If you have HomeAssistant also connected to heishamon >> Disable all related automation's!! 2 captains on 1 ship does not go well....

Back to top


Requirements on the Node Red install:

A - Persistent data folder.

B - Adjust settings.js.

C - TimeZone setup

D - Required Node Red libraries/pallets

But first; Why?
I found that after reboot of node red, the logic did not have all variables populated yet. This caused the system not to start automatically where it left off before reboot.
To be honest, this does not present a major problem to me, but it will reduce the overall WAF significantly when I don’t notice something like this in time. So, I had to look for a solution to make the programmed setpoints, and all other variables, stick. This is how I achieved that. (Maybe there are better options, feel free to help me on this 😊 )
Please also note that this flow writes to disk every 5 minutes. Storage on sd-card is not advised because of possible high wear levels.

A - Data folder

Make sure Node Red is installed with persistent local volume available.
If you have Node Red running directly inside Linux (not using docker) or on a RPI, this is already okay and you don't need to create a data folder. If you have Node Red running in a docker container, make sure you install with this parameter:

-v FOLDER:/data

Here you can choose the name "FOLDER" yourself which will be the local storage folder of NR.

If you are node red withing Home Assistant, which is a HA controlled container, follow these instructions: https://github.com/edterbak/NodeRed_Heishamon_control/tree/main/HomeAssistant

B - Adjust settings.js

You need to change some settings in settings.js
Why? If you reboot node red, you will notice some of the variables are not populated yet. Setpoints we have programmed earlier are gone. To make them persistent after reboots, you have to enable the local storage option. Below I have set the flush interval (write to disk) to 300s.

In a (proxmox) docker install, you can find this settings.js file in:

/var/lib/docker/volumes/FOLDER/_data

where 'FOLDER' is your own folder name chosen in part A.

On a Raspberry Pi, you can find this settings.js file here:

/home/pi/.node-red/settings.js".

Search for contextStorage: Put in the text as below:

contextStorage: {
	default: "memoryOnly",
	memoryOnly: { module: 'memory' },
	file: { module: 'localfilesystem', config: {flushInterval: '300'}, }
},

Reboot Node Red for the changes to load.

ATTENTION:
After you have done this, and you seem to have it operational, be sure to test if all settings stick after a reboot of Node Red. Things that should stick are: Virtual SP (Ta), Function toggles on the main page, Setpoints in WAR function/graph. Setpoints for RTC function/graph, Heat Pump power toggle on/off If this is not the case for you, you either need to correct this in settings (like given above), or choose not to use this NR flow, or even accept manual action needed after power loss situations.

C - Timezone setup

If you use a linux version, make sure you set your correct timezone. You can do this by running this command from CLI root and go through the setup process.

dpkg-reconfigure tzdata

You can check if it was successful by executing this command

timedatectl 

If you are running Node Red from within HomeAssistant, follow the instructions from HomeAssistant on how to do that.

D - Required Node Red libraries/pallets

To make use of the dashboard functionality, you need to install the dashboard library.
https://flows.nodered.org/node/node-red-dashboard
The scheduler makes use of the moment lib.
https://flows.nodered.org/node/node-red-contrib-moment
node-red-contrib-noop is used as well
https://flows.nodered.org/node/node-red-contrib-noop
node-red-contrib-dashboard-bar-chart-data (from v13+)
https://flows.nodered.org/node/node-red-contrib-dashboard-bar-chart-data
node-red-node-smooth (from 20+)
https://flows.nodered.org/node/node-red-node-smooth

Back to top

Flow installation:

Dashboard: http://IP:1880/ui (For HomeAssistant: http://IP:1880/endpoint/ui) Flows: http://IP:1880/#flow
  • In NR, click on the hamburger icon (three horizontal stripes) in the top right corner
  • Select Import
  • Copy/past the content of the .JSON file from this GIT. (or select a file to upload and select the flow.json file offered here)
  • Click on Import

Once imported, you need to adjust the settings of the MQTT server.

  1. Add the correct information of your broker
  2. Use QOS: 0 or 1 (maximum for heishamon).
  3. Use MQTT v3.1.1 (maximum for heishamon). Click on the hamburger icon and then configuration nodes. Find the MQTT broker part, double click it and change to your settings.

Important >> After import and correcting the MQTT settings, and you might want to connect custom external sensors.
By default the native Panasonic sensors will be used. But you can connect your custom sensor. For this go to the flow page to the tab [WP Input], the section indicated below in purple section.
You can also connect external signals to the flow in this tab.

** Note 1: The Panasonic Room Thermostat is not very accurate which might cause bad temperature control.
** Note 2: The Outside temperature sensor on the Panasonic might be subject to heating up due to direct sunlight. This can also have a negative impact on the functions. Personally I use OpenWeatherMap source for outside temperature, but anything is possible.

Back to top

Opening the dashboard

You can find the link to the dashboard like this:

Back to top

How to personalize or customize

It is advised to create a separate tab for your external sources. Any source available in Node Red can be conditioned and used as a sensor in the functions. If you do this in an 'personal tab', then it is likely easier to update later to newer versions. (no guarantees of course)

Back to top


How to create a backup of your current flow

There is no easy solution currently know by me to update only changed nodes or flows.
First: Create a backup of current version. Select all tabs by holding CTRL. Then in the right menu select Export > Download.


RightMouseClick on the GIF and select open in a new tab to see it full screen.
Back to top

How to update to a newer version

Update to newer version:
I found it is easiest to:
1, remove the tabs, WP MQTT, WP Dash, WP Control, WP Solar, WP Scheduler completely
2, remove all ui_base, ui_group and ui_tab references from the flows.
*Keep the MQTT (x.x.x.x) and Home Assistant references.
3, import new version
4, correct setup, eg. MQTT server.
5, re-connect your personalization’s.
*Not nessesary if you used a WP_Personal tab (see FAQ.md).
If there are better ideas about this, please inform me.


RightMouseClick on the GIF and select open in a new tab to see it full screen.
Back to top


The Dashboard

Home

This is the home page of the dashboard.

Visible is a short overview of the current status of the heat pump.
You can enable / disable, see the status and the result of each custom function.

In the column "HEAT" there are a number of custom functions. These functions build on top of each other and you should read them from top to bottom.

  1. Starting point is "Shift curve" or "Water temp." value. The [setpoint] for Compensation curve or Direct mode.
  2. When the WAR function is enabled, it replaces the [setpoint] from 1.
  3. When the RTC function is enabled, it corrects the [setpoint] from 2.
  4. When the SoftStart function is enabled, it corrects the [setpoint] from 3.
  5. When the Nightreduction function is enabled, it corrects the [setpoint] from 4. (Note: night reduction will be deprecated soon!)

More details and screenshots of each of the dashboard tabs are present in the collapsed section below.
Back to top

Settings


Here are some basic controls of the heat pump. (Not all, because the flow is designed for 1 zone config. )

Custom functions

Back to top

Pumpspeed


This function allows you to set dynamic pump speeds, depending on the current operation.
Set a different maximum water flow during DHW operation.
Set a different maximum water flow during HEAT operation.
You can set a default (low) maximum water flow. This is active when both operations are inactive (with active compressor).

Note: Do not set the maximum flow too low. It causes irratic behavior and a LOT of stop/starts.

Back to top

WAR

weather dependent temperature control.

! This function is only available when the heat pump is set to "Direct" mode. When the heat pump is set to "Compensation Curve" mode, the WAR function is automatically greyed out and disabled.

Question: Why have you created the same custom function while Panasonic provided the same function as "Compensation Curve"?
Answer: The native Panasonic implementation is limited to the in-built thermocouple or connected external temperature sensor. Both are affected by direct sunlight and show incorrect values then. The custom function is able to use any sensor which is able to produce values into Node Red. Personally I use "OpenWeatherMap" as a source. But any local sensor can be used.

You can import / export settings to the panasonic heat pump.

Back to top

RTC: (Room Temperature Correction)

This function adjusts the setpoint of the water depending on the room temperature.
When the temperature in a room gets too high, it will add "-1" to the current setpoint of the water temperature or shift.
You can set the room target temperature, the temperature limits and you can set the correction to be performed.

Additionally it is possibility to use automation's. To have the pump shut down when above a trigger temperature and turn back ON again below a revert temperature.

Back to top

SoftStart:

Default behavior of the heat pump is when it starts up the compressor will go to high Hz for a period. Only when the returning water temperature approaches the setpoint, it ramps down the Hz and get more economic.

If the SoftStart function is enabled and the compressor starts, the water setpoint will be lowered. This should cause the compressor to ramp the compressor down quicker, within minutes. When ramp down of the compressor frequency has occurred, the HEAT setpoint restrictions will gradually be lifted.

There's an add-on to the SoftStart called SoftStart-Quietmode

SoftStart Quietmode

This is an extra (add-on) function to reduce the compressor frequency at startup even more.
Some heat pump models will start a run and always go up to 45 Hz in de first minute(s) regardless of the target temperature.
This Quietmode (when switched on) will put the heat pump in the Quietmode (level 3) at rest and waits till the run starts.
When the compressor turns on, the Quietmode will remain active for an amount of time and after this time switches back to the previous Quietmode (if set).
You can specify this fallback time in the Setup - Quietmode time (default 5 min).

Back to top

Solar²DHW:

The aim of this function is to increase efficiency (and save cost) by utilizing solar energy as much as possible. When there is solar energy in abundance, you can tell the heat pump to use that energy to heat up your DHW water tank. To determine if there is enough solar energy, you need any form of power measurement. This can be a P1 power meter, or a meter directly behind your panels.

Back to top

Scheduler

You can enable/disable a schedule, multiselect a day of the week, specify the time (hour + minute) and give the schedule a name.

I have added an option to create 10x schedules for the following actions:

  • Toggle heat pump power on / off
  • Set water setpoint (heat shift / heat direct)
  • Set room setpoint (RTC function)
  • Start Force DHW runs
  • Start Sterilization runs
  • Set Quiet modes
  • Set operating modes
  • Toggle a custom function on / off

On each line of the scheduler, you can indicate if the heat pump should be powered on for the task or not.

A recent addition to the scheduler is the possibility to add conditions for each of the scheduled tasks.
Note: Make sure the native panasonic scheduler (in the controller) is disabled to prevent unexpected behavior of the flow.

Conditions


Each line in the condition section is a blocking condition. If the condition is met, the scheduled task will be blocked.

Back to top

Charts

Temperature

Back to top

Energy

Back to top

Degree Days

Back to top

System

In this tab you have multiple sub-sections.

  1. LOG: See 1000 lines back of all logged events.
  2. HARDWARE: Basic readings of the hardware configuration.
  3. SENSOR: Select the external or 1wire sensors for custom functions.
  4. MQTT: Enable / disable general MQTT block. Basic reading of MQTT messages.
  5. MENU CONFIG: Enable / disable parts of the dashboard menu.
  6. SYSTEM HEALTH: Extended logging and system information.

Back to top


FAQ

Q - Can I forward the information coming mqtt messages from the heat pump towards my InfluxDB database?

Yes. There is a separate flow available to download. You can find it in the folder "heishamon2influxdb". It requires an additional contrib (node-red-contrib-influxdb). Install the contrib, download the flow, import it, configure the influxdb and your set. You do not need Domoticz or Home Assistant fot that now.

Q - I use the Node Red Addon in Home Assistant, how to go to the Node Red Gui for editing?

Most users should visit via a browser: 'http://Your_NodeRed_IP:1880/ui'
In my case this wasn't working, perhaps due to the use of the DuckDNS addon.
Use something like 'https://your.duckdns.org:1880/endpoint/ui/' instead.

Q - Can I use both WAR and RTC at the same time?

Yes. If you have both enabled, the WAR function first calculates the SP (Setpoint) depending on outside temperature. Next the RTC function will correct that SP(war) depending on the room temperature. The only SP going to the heat pump will be SP at the end of all the calculations/corrections.

Q - If I switch off the heatpomp via the Remote Controller will it disable the automation from the Node Red flow also?

No, both will work separately. If you turn the heat pump on via the Remote Controller, the pump will switch on.
Keep in mind however that if the Node Red flow decides it time to adjust some settings it will act accordingly and overwrite settings.

Q - I know the function SOFTSTART is experimental, but can you explain what this function does?

The idea behind this function is that when the compressor is just started, the frequency of the compressor goes up to 45+Hz. Well out of the efficient range. This is caused by the inner controller of the heat pump. When turned on, it 'wants' to see the impact of the compressor. It looks at the returning water temperature for this. Only when the water temperature returning towards the heat pump is nearing the target temperature, it will start to lower the compressor frequency and get in a stable/efficient mode. Throttling...
This late throttling behavior can be quiet energy consuming, it can cause the heat pump to generate too much heat at the start and turn off again.

This SOFTSTART function, when enabled, looks at the moment when the compressor is on, and lower the setpoint to just above the temperature of the returning water. This will in theory cause the heat pump to start throttling down a lot quicker.
This function can be useful directly after defrost cycles when the pump starts again, or when the temperature difference between outside/inside is getting smaller.

Q - How do I add my Entities from Home Assistant like living room temperature?

In the Node Red Gui (http://Your_NodeRed_IP:1880/ui) you will have to go to the [WP Input] tab;
In the square "REQUIRED INPUTS FOR FUNCTIONS" you will have to add a node (left pane under Home Assistant) named "Events: state".
You can drag and drop this in the square mentioned first.
It will replace the "TOP33 - panasonic_heat_pump/main/Room_Thermostat_Temp"-node eventually, which you should disable if not using.
Select the newly created node, then double click to open up the properties window;
Give is a name of your choosing like 'LivingRoom_temperature'
In the Entity box you can try to find your sensor entity (assuming you have already setup the MQTT settings earlier).
Make sure that in the 'Output properties' you have a MSG.PAYLOAD = EVENT STATE
Check the box 'output on connect' and make sure at the bottom this node is enabled.
Finally press DONE to close the properties dialog and connect your node to the function node 'set.T_woonkamer_BT'

Q - How to use a dark theme in the dashboard?

In the Node Red Gui (http://Your_NodeRed_IP:1880/ui) press the top most right arrow-down sign and select dashboard;
Now press the Theme-tab and pick your style.

Q - How to update flow to latest version and keep my inputs, MQTT and Home Assistant settings?

Create a personal tab (WP Personal) and place your inputs here (P1, Temperature sensors)
Give those inputs.sensors each an own [Link Out] node
Connect those [Link Out] nodes to the already existing [Link In] nodes by double clicking the [Link Out] node and select the corresponding one from the list.
Some images to explain this:



Follow the update procedure from the Readme as described here: https://github.com/edterbak/NodeRed_Heishamon_control#how-to-update-to-a-newer-version

Back to top


Release changelog

All changelog items from v23.00 - v24.00 are collapsed below. only the latest changes (v24.00+) will always be shown.

[2023-06-06] v23.01 Stable. Changes:

  • [FIX] Export error. A missing connection in WP Manager tab. For some reason this connection did not want to be exported, no matter what. Remove + new wire solved it. (= NR Bug)

[2023-06-12] v23.02 Stable. Changes:

  • [FIX] Cool mode in Home Dashboard. Kept showing incorrect HEAT setpoint. Now it is correct.
  • [FIX] Cool menu area. You now see [setpoint lower limit] more clearly
  • [FIX] SoftStart function + cool mode kept showing heat setpoint in the graph. This has now been fixed.

[2023-07-09] v23.03 Stable. Changes:

  • [FIX] Cool function. Complete rewrite of the cool function. I expect no more NaN for sending cool setpoints.
  • [Enhancement] Added manual lower limit for the cool function.
  • [Enhancement] Setpoint changes from cool function will not be sent when heat pump is off, or cool is not in operating mode.
  • [Enhancement] Updated HELP in cool section.

[2023-07-20] v23.04 Stable. Changes:

  • [New feature] Add conditions to the scheduler. This is a nice addition to the existing scheduler.

[2023-07-22] v23.05 Stable. Changes:

  • [New feature] Add to scheduler the option to set the DHW setpoint temperature. (#120)

[2023-08-21] v23.06 Stable. Changes:

  • [New feature] Scheduler - Conditions now allow multiselect.
  • [FIX] Scheduler - after reboot the conditions were not shown in dashboard #126
  • [FIX] COOL function - [error] [function:COOL function] is resolved #127

[2023-08-21] v23.07 Stable. Changes:

  • [FIX] Scheduler - Due to grouping the scheduler did not function anymore. This should now be improved a lot. #128
  • [FIX] Home dashboard did not show correct temperature behind 'Water temp'. Related to #123.
  • [FIX] Detection on persistent storage should now work properly.

[2023-09-01] v23.08 Stable. Changes:

  • [FIX] Scheduler - There seems to be a NodeRed bug in the JUNCTION functionality during export/import. I have now removed it from the scheduler tab. I will start replacing the junction nodes with other nodes due to this crazy issue. For now, it seems that all is working. Sorry for the possible hassle this might have caused. :( #128 Update 2023-09-02: v23.08 is stable again. Confirmed.

[2023-09-01] v23.09 Stable. Changes:

  • [FIX] Pumpspeed function not behaving nicely at times. #118 Now fixed.
  • [FIX] Removed operation mode 7 + 8 as they never have been functional at all.
  • [ENHANCEMENT] Scheduler - Item nr #121. Add Scheduler option to turn on/off different functions (WAR/RTC.. ) See image below.


Back to top

[06-12-2023] v24.01 Stable.

  • [FIX] SCHEDULER - In some situations the task "Change Operating mode" did not get executed. This is now fixed.
  • [FIX] Corrected [SYSTEM] > [about] text. It was still showing changelo of v23.xx

[06-12-2023] v24.02 Stable.

  • [Enhancement] SoftStart function. It was doing a generic round vs round-UP to calculate the corrected setpoint. This resulted in frequent compressor stops. Now this has been significantly been improved.
  • [Enhancement] Boost DHW now function. It did not revert operating mode, and did not revert the DHW setpoint. Now it does both.
  • [FIX] Increased the compatibility with new K/L Panasonic heat pump series. 6 new topics added to the flow to read.
  • [NEW] Add connection check with the broker. You will find this under [SYSTEM] > [MQTT]
    Pressing [TEST] will send a message to the broker. The flow also listens to this topic. If the message is NOT received withing 10 seconds, an error line will be added to the [SYSTEM] > [LOG] section

[14-01-2024] v24.03 Stable. Happy new year everyone!

  • [New] Added SMOOTH function to the input signals TOP14 (Outside_Temp) and TOP33 (Room_Thermostat_Temp). Average is taken over 4 measurements. On top of THAT result, there is now a rate limiter of 1 measurement per 5 minutes. For this purpose more than enough.
  • [New] Added new input signal for start-DHW. This version is without 'forceful mode'
  • [FIX] The efficiency graph now shows COP (HEAT) over a longer period.
  • [FIX] The new heatpump series K and L should now be supported. There was an error in the topic.
  • [FIX] The WAR function showed incorrect temperatures (20c). This is now fixed.

Back to top


Acknowledgments

Back to top

Donations

By multiple users of the flow, I have been asked to put up a donation on the site. I was never that fond of that idea, because it is just my hobby and I like doing it. In addition, I do not want to change the expectation of users, the open character of the communication here (moving from one enthusiast>enthusiast to a supplier>client relationship).
This is just a hobby, and I do not expect I can quit my daytime job anytime soon.. Ghhehehe.. And of course it will stay like this.
But the constant raising eyebrows of my social circle why I don't have such a button (because so many people do it), and the curiosity about how many users actually want to make a donation have won me over to try such a button. Let's see.

But most important. In no way you are obliged to make any donation!! The flow remains completely free, free to use as you want, as always at your own risk.

ko-fi

Back to top


My request to you:
When you choose to use/try this (Feel free to do so), PLEASE give feedback on any issues you encounter. You can use the [Issues] section to report to me.
When making an issue, please give as much info as you think is required to solve this. Steps to reproduce. Maybe a screenshot etc. Reporting this will help me help you :)
Thank you in advance.

Back to top

(back to top)

nodered_heishamon_control's People

Contributors

edterbak avatar maarten69 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nodered_heishamon_control's Issues

Send values to influxdb

Would be nice when values of extra sensors like 1Wire or S0-meters or the HP can be send to visualise later on in Grafana.

Which sensors could be managed in Node-Red or in the dashboard.

Force DHW from scheduler only once?

I have an ODROID N2+ running homeassistant and the Nodered integration installed. A heishamon latest issue is connected to my Panasonic 5kW J serie heatpump. In the past time I have put the heishamon on the write port. After one year last week I relocated it to the read port. Panasonic CZ-TAW was removed.

I implemented the homeassistant integration I can read and write values.

Now I have also implemented the Nodered automation for control of the aquarea. I can see MQTT command are sent every two minutes for " SetZ1HeatRequestTemperature" depending on room and outside temperature, so for now I assumes this works correctly.

I have scheduled a " Force DHW" from the Node Red dashboard set at a certain time every day.
This works the first day this schedule has to be performed. I see in the log files of the dashboard that the correct data is sent to Heishamon.
The second day , and every following day, this doesn't work, the correct data is sent but the pana doesn't react.
To get this working again I have to manually reset the " Force DHW" button in the Nodered home dashboard. So to get the scheduler to work I have to reset this button every day.
I also noticed that this Force DHW on the Nodered home display reacts differently from the home assistant force DHW button. The former stays on after it is set, and the latter button jumps back after some time, which in my opinion is corrrect.

I am not familiar enough with Nodered to debug this part of the programm, I hope you can share your thoughts on this one.

Request: Set silent mode above set temperature

Feature request. Currently, in The Netherlands, it's quite warm for a winter. When the outdoor temperature reaches a certain temperature, I'd like to activate silent mode 3 to slow down the compressor frequency and have longer runs.

Add possibility to change setpoint through scheduler

Lower setpoint during night. Also for Maarten69

[edit Edterbak]
I propose to build in the scheduler an option to set the ROOM temperature setpoint.

This is a better and more flexible option against the night_reduction_room_temperature.
It is also the same as it is in the wallmounted controller.
You can program it different on weekdays/weekends.
you can program it with as many steps as you require. 3 or 4 temperature setpoint changes in 1 day.

Drop the night-reduction-room-setpoint
replace it with this function.

Night reduction

Build in an option to reduce the temperature at night by [VAR] degrees.
Need to figure out how to build it and maybe use the scheduler with it.

2 Errors in "T_outside - Input selector" WP Control

First og all I want to say a big thank you for all the work and efforts for this flows as I personally would be never able to do this work.

And as I´m new to Heishamon and Node Red I hope the error does not sit in front of the computer.

The "T_outside - Input selector" function gives me two errors:
1: "TimeElapsed" is wavey underlined and the following error message: "Cannot find name 'TimeElapsed'.(2304)"
2. The first "msg3" is wavey underlined with following error message: "Property 'topic' is missing in type '{ payload: any; }' but required in type '{ topic: string; }'.(2741)
86(102, 17): 'topic' is declared here."

In the dashboard the outside temeperature remains empty.

[ENHANCEMENT]: Set heatshift temperature after DHW

The heat pump switches off for a long time after hot water preparation. I raised the heat shift level to +5 via HA and after a while back to 0. This means that the heat pump starts much earlier again. Is such a function also possible?

Reversed WAR temperatures

The temperatures of the WAR for high and low temperature is reversed.
My heat curve is 30 at -15 an 25 at 13 degrees. But if I look into WAR it shows me 30 at 13 an 25 at -15 degrees.
Consequently the graph is also wrong.

grafik

2nd problem is, if I switch the button WAR on it turns back into off after 3 secounds.
Maybe it isn't a bug but I don't know.

3rd thing, I don't see anything at "calculated temp" in WAR menu.

Add upper / lower limit to SP Ta (GUI)

This is a feature request from Timovd.
He would like to be able to set an upper and lower limit to calculated Setpoint Ta.

When using one of the functions, WAR / RTC / SoftStart, the calculated setpoint has no real boundry.

IN the Settings tab I have created these upper/lower limits to be set.
If they are not touched and not set, they will not be taken into account in the functions output.

This feature has been implemented in v8

WAR RTC Softstart T_outside is not defined

I'm using TOP14 (Panasonic's internal temperature sensor) to define the outside temperature (last paragraph of https://github.com/edterbak/NodeRed_Heishamon_control#how-to-install-the-nr-flows).
Currently the outdoor temperature is 10 C. This should result in an outlet water temperature of 31,9 C.
In the NodeRed container I'm getting a lot of the same error messages;
3 Jan 13:56:10 - [error] [function:WAR + RTC + Softstart function] ReferenceError: T_outside is not defined (line 179, col 23)
This error occurs when enabling softstart. HEAT SP lower and upper limit are defined.
On the home screen it show's a Ta (SP) of 35. Shouldn't this be 32 C (rounded up) here? The actual outlet temperature is around 34 C.

        if (isNaN(T_outside))               // if the variable is Not a Number, produce an error message.

Could it be that there's an issue with a lot of decimals in a number?

[BUG]: Fresh install errors

After installing a fresh system and importing the flow for the first time, there is an error in the calculation of kwh_dhw + kwh_heat + degreedays. This results in the error below, which repeats every 5/15 minutes
image

culprit was in the calculation of degree days. (stupid error)

fixed in v17.1

Request: RTC funcion + turn on/off heatpump functionality

@lampy25
This is your feature request.

Currently the RTC (room temperature control) function is able to dail up/down the setpoint of the water depending on the measured roomtemperature.
In addition to this, it is asked that an option is created that when the RT is a lot higher than target, the heatpump is turned off.

Request feature (Compressor runtime)

For the HOME dashboard it would be nice to add a indicator to show how long the compressor is running since last start.
And I don't know the function of FAN2, but if it isn't used then please remove it.

example:
2022-05-29 (8)

[BUG]: T outlet (SP) jumps to 20°C and stop the WP

Hello,
T outlet (SP) is 29°C, the WP starts. after 2-5 Minutes the T outlet (SP) jumps for a short moment to 20°C an the Maschine stops. A Moment later the T outlet (SP) jumps to 29°C back, the WP starts again.
It is possible to log, why the T outlet (SP) is changend?

Variable conversion (naming convention)

Exponential growth of variable use. To reduce resource impact, group variables.
To keep things clear, start using naming conventions. See image below.

Image

Variable changes are listed below.

MQTT	
	.active								MQTT block enabled/disabled 1,0
	.allow_rtc_onoff			
	.allow_scheduler			
	.allow_solar				
	.block_mode							BLOCK ALL (1) , CUSTOM (2), UNRESTRICTED (3)
	.block_mode_previous						Restore to this block_mode when disabling switch
	.counter				    			Total MQTT messages counter
	.messages_today			    				No. MQTT messages today
	.messages_yesterday		    				No. MQTT messages yesterday
	.message_limit			    				Maximum allowed messages in 24h allow before block will activate

NightReductionWaterTemp
	.current_value							renamed from NightReduction_current_value
	.correction							renamed from NightReduction_correction
	.state								renamed from nightreduction_on_off

NightReductionRoomSetpoint
	.state 								Night reduction room setpoint status (1,0)
	.LOW								renamed from RoomSetpointLOW
	.NORMAL								renamed from RoomSetpointNORMAL

F_ReducePumpSpeed
	.state								Reduce pump speed active 1,0
	.PumpMaxFlowSetting						
	.SavedPumpspeed							Value to restore to when disabled
	.LowSpeed							Value used as low pump speed when active

F_RTC
	.state								RTC main function on/off (1,0)
	.incremental_setpoints_state					incremental_setpoints status of switch. (Renamed from Booster), value 1,0
	.correction_value (Memory Only)					RTC correction (renamed from F_RTC_correction)
	.F1_power_state							function turn on/off heatpump (1,0)
	.F2_OM_state							function change OM heatpump
	.on_off_active							0= waiting to turn heat on. 1= waiting to turn heat off
	.on_off_status							value: 0,1,2

Defrost
	.Counter							Renamed from Defrost_Counter
	.Counter_Today							Renamed from Defrost_Counter_Today
	.Counter_Yesterday						Renamed from Defrost_Counter_Yesterday

[BUG]: SET2 SetHolidayMode not working

This is not programable in NR dashboard. It is required to fill in a date/time in the controller directly.

From 19.3 >> For the time being, I have disabled this function in next release to manage expectations of buttons which dont work :)

Later I will build a custom function which does the same.

WAR default max temp

in WAR the default temperature is a max of 40 C, perhaps for non floor heaters add the option to max 55 in the WP dash like in the standard panasonic remote

[BUG]:wrong maximum en minimum watts display on "power live meter"

the power live meter will show the max and min watts ever recorded

when adjusting the P1 power meter to the right values in the correction function node, (factor 1000) , the power live meter uses the wrong values.
the problem occures when you begin with the wrong factor and can't be changed or resetted after.
there has to be a way to reset the min and max values of the power live meter
image
the actual watts in the picture above should be 13784 watts instead of 13784000 watts (would be nice though)

BUG - incorrect DHW+HEAT kWh calculations

The kWh calculations for the heatpump was garbled and mixed up for HEAT + DHW.

Cause was the making use of flow in stead of context. should be fixed in v14 - beta 4

[ENHANCEMENT]: Heating water temp setpoint adjustment according to solar power export to grid

As mentioned in the other topic I opened a new one for this enhancement. It would be a similiar function like the RTC mode, but instead of using the room temp as basis the solar power export to the grid should be used.

The basic heating water setpoint should be set via the WAR/Compensation Curve. This setpoint should be increased by value X (e.g. 0 to 5) depending on the solar power export to the grid (e.g. >1,5kW export to the grid, adjust heating water setpoint to +1). A fallback to setpoint +/-0 when solar export is below a treshold (e.g. 0,5kW) or 0kW would be nice too.

In the end it would be a mixture from the DHW Solar mode and the RTC mode.

BUG - Solar function + RTC function do not play nice

In v14 beta 11 there is a bug.
Oscilating behaviour observed. Pump on... off... on... off... etc
RTC function turns pump off because it is hot inside.
Solar function turns pump on, because there is enough energy to start heating tank.

Cause is found.

Request Manual COP calculation (using own kWh device)

I would like a better COP calculation while the built in one is way to optimistic.
I have one kWh device that measures all consumed power from Heatpump.
This one: DDS353 https://www.elektramat.nl/emat-kwh-meter-45a-1-fase-digitaal-mid-ematkwh1f32dmid/

Example script to use I found are (from Tweakers.net):
https://github.com/Dylantje/WP/blob/main/COP%20include%20Defrost
and
https://github.com/Dylantje/WP-Heishamon-sripts/blob/master/WP%20LUA%20COP%20en%20Verbruik

Thanks in advance!

Show MQTT-source in log (where does it come from?)

All functions responisble for a Set MQTT command will put the source in the var MQTT_Source (Memory Only).
When sned to broker a node listens to the Heatpump/command# topic.
This node will label the message with the one form MQTT_Source and then deletes this var.
After putting this command + source (Ex. SetHeatpump 32 (SoftStart) ) to the log the var is empty and ready to receive the next command.

settings - DHW/HEAT. show current value

Some settings in the tab Settings - DHW/HEAT, are available as TOPxx mqtt topic to read the actual value from the HP.
These values need to be visualized in the GUI.

image

Schedule not running when power state is off

When Heatpump_State is off, the schedule is triggered, but not executed.
It would be an enhancement to have a switch (on generic level or on each line in the scheduler) to choose if the heatpump may be turned on (SET1 = 1) if TOP1 != 1.

ENHANCEMENT: Use dynamic operationmodes

Currently in a lot of places operation modes are hard coded. e.g. ForceDHW/ForceSterelization end with a set operationmode HEAT.
This can result in bad behaviour or endless loops.

Improvement is to make the operation mode first look what the current OM is, and correct it based on the wanted result, like add DHW or add HEAT, remove HEAT or remove DHW from current OM.

Big rewrite.

Heatpump direct mode

First of all, thanks for your fantastic work especially when electric price is crazy.

I have a Panasonic Aquarea T-Cap 9kw and wonder if anyone have some information about putting it in "direct" mode as stated in section 4?

Regards
Olle

Bug: in Node "Block"

Reproduce:
When block is active a SetHeatRequest was still being sent to broker.

Error on first start when no variables are available

When this flow is imported, none of the variables have been declared by user yet through the Dashboard.
This will result in functions failing.

In next release (v7) I will implement a check to prevent this error.

Selectable from Dashboard Hardware

List all sensors like custom temperature (1-wire, mqtt) and kWh-devices on the HW configuration dashboard.
In a later build we try to let the user select and connect those as desired to the flow.

To be refined.
Create a graphical mockup first.
Explain the technical solution.

When all is agreed, build.

Request: Function (Solar)

Requested (tweakers.net) was a function to set dynamically the DHW setpoint based on the solar power production.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.