Good day all,
I searched Google and the forum for this but unfortunately could not end up with a working solution.
I would like to display the valve opening percentage of my HMIP valves in HomeAssistant.
I can see the values in the Raspberry Matic interface as “valve opening” and as far as I understand the appropriate variable in Homematic is called LEVEL.
I tried to get this number as a system variable with this script which I found on the forum:
var target = dom.GetObject("livingroom_valve");
var source = dom.GetObject("HmIP-RF.MY_SERIAL_NUMBER:3.LEVEL").Value() * 100;
target.State(source);
but this did not do anything.
Is this the right way? How would I know on which channel this is transmitted?
Hi Johan,
thanks for the reply but unfortunately this seems to be slightly different for different types of valves.
For the MmIP-eTRV-2 the information that is available by standard is:
Hmm, that’s strange. I am only familiar with the HmIP-eTRV-C-2. Is the TRV part of a group in Raspberrymatic WebUI? My groups are available in Home Assistant too. For this a group config is added as well under the Homeassistant config in configuration.yaml, via port: 9292. My groups have a seperate climate entity, with level being part of it.
As an alternative, there is Redmatic (Node Red) available for Raspberrymatic. I have recently succesfully tested out this addon for MQTT communication. LEVEL was also available for my TRVs in the Node Red UI. Valve level is maybe available via mqtt for your TRVs
Which integration are you using in Home Assistant for communication with Rasberrymatic?
Yes, some of them are parts of groups with wall thermostats but that does not change the displayed and available values significantly. Especially, there is no LEVEL there either.
Everything else works the way it should and the interaction between HA and HmIP is perfect.
I have RaspberryMatic installed alongside Daniel’s amazing Homematic)IP) local.
@SukramJ,
thanks. What does the (deactivated) mean and how can I activate it?
In the meantime I managed to get a system variable with the following script:
var ipvalve = (datapoints.Get("HmIP-RF.000A1D89A65307:1.LEVEL")).Value();
var ipvalve1 = ipvalve*100;
var ipvalve2 = ipvalve1.ToInteger();
dom.GetObject(ID_SYSTEM_VARIABLES).Get('livingroom_valve').State(ipvalve2);
Hi Johan,
yes it did but as Sukram mentioned, it is not even necessary anymore.
Many more properties are available now but are all deactivated and bit of a pain in the ass to find and activate but it works, which is great.