I am using MySensors 1.5
I am working on a HVAC Thermostat sensor. I noticed the Setpoint Heat and Cool work fine, but it does not seem Domoticz currently support V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE types. To me it looks like it is something required in order to make a full HVAC Thermostat solution.
Here's what the log says (so I'm reporting it !)
2015-10-03 15:07:23.955 MySensors: Node: 9, Sketch Name: HVAC Thermostat
2015-10-03 15:07:23.963 MySensors: Node: 9, Sketch Version: 1.0
2015-10-03 15:07:23.979 (MySensors Gateway) Thermostat (Setpoint Heat)
2015-10-03 15:07:23.986 (MySensors Gateway) Thermostat (Setpoint Cool)
2015-10-03 15:07:23.994 Error: MySensors: Unhandled sensor (sub-type=21), please report with log!
2015-10-03 15:07:24.003 Error: MySensors: Unknown/Invalid sensor type (46)
2015-10-03 15:07:43.986 (MySensors Gateway) Temp (Thermostat Temp)
In fact, it would be cool if Domoticz also had a widget already for HVAC Thermostat, with temperature control, flow mode and state, current temperature (and humidity?) all in one widget, instead of individual widget for Set Points, etc.
V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
Moderator: leecollings
-
- Posts: 4
- Joined: Wednesday 08 April 2015 3:23
- Target OS: Linux
- Domoticz version: 2.3226
- Contact:
V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
Last edited by Reydri on Saturday 03 October 2015 22:44, edited 1 time in total.
-
- Posts: 140
- Joined: Wednesday 17 December 2014 17:30
- Target OS: Linux
- Domoticz version: V3.8650
- Location: Jyväskylä, Finland
- Contact:
Re: V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
Can you post your sketch? Someone could make the implementation based on that. I have my house renovating project going on an it will take month or two. I could try to make needed changes after that. I have similar project coming. Im going to "interface" my ventilatin and air-to-water heat pump wiht mysensors and modbus.
LXC(x64 Ubuntu Xenial), RFXtrx433E, MySensors
-
- Posts: 4
- Joined: Wednesday 08 April 2015 3:23
- Target OS: Linux
- Domoticz version: 2.3226
- Contact:
Re: V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
Thanks for the quick reply.
My sketch is not completed yet, I was just testing what wasn't working a while ago, and noticed MySensors now have HVAC types, and saw some commits to Domoticz a while ago and thought everything was working now, so I made a small sketch to confirm if everything works before I go too far...
Basically I only do stuff in the setup function at this point, presenting my sensor and sending dummy values so that Domoticz can register the sensors.
It only works fine for SETPOINT_HEAT and SETPOINT_COOL.
I also would have reported eventually V_HUM since I am using a DHT sensor and it has humidity... but for now I am testing without this. I would have presented it under a different child ID since it does not seem to be part of MySensors HVAC standard (only V_TEMP is it seems).
Another thing I am doing here is that I am setting values as float, even thought MySensors seems to have defined setpoint values to be integer (which does not make sense for celcius), but as I saw in another thread floats seem to work for Domoticz (I hope Domoticz contributors don't make the same mistake as Vera did where they defined everything as integer and were not able to change that at the time because of backward complexities... believe it or not, this is one of the reasons I had to get rid of my Vera)
My sketch is not completed yet, I was just testing what wasn't working a while ago, and noticed MySensors now have HVAC types, and saw some commits to Domoticz a while ago and thought everything was working now, so I made a small sketch to confirm if everything works before I go too far...
Basically I only do stuff in the setup function at this point, presenting my sensor and sending dummy values so that Domoticz can register the sensors.
It only works fine for SETPOINT_HEAT and SETPOINT_COOL.
I also would have reported eventually V_HUM since I am using a DHT sensor and it has humidity... but for now I am testing without this. I would have presented it under a different child ID since it does not seem to be part of MySensors HVAC standard (only V_TEMP is it seems).
Another thing I am doing here is that I am setting values as float, even thought MySensors seems to have defined setpoint values to be integer (which does not make sense for celcius), but as I saw in another thread floats seem to work for Domoticz (I hope Domoticz contributors don't make the same mistake as Vera did where they defined everything as integer and were not able to change that at the time because of backward complexities... believe it or not, this is one of the reasons I had to get rid of my Vera)
Code: Select all
#include <SPI.h>
#include <MySensor.h>
#define CHILD_ID_HVAC 0
MySensor gw;
MyMessage msgTemp(CHILD_ID_HVAC, V_TEMP);
MyMessage msgSetpointHeat(CHILD_ID_HVAC, V_HVAC_SETPOINT_HEAT);
MyMessage msgSetpointCool(CHILD_ID_HVAC, V_HVAC_SETPOINT_COOL);
MyMessage msgSetpointFlowState(CHILD_ID_HVAC, V_HVAC_FLOW_STATE);
MyMessage msgSetpointFlowMode(CHILD_ID_HVAC, V_HVAC_FLOW_MODE);
void setup()
{
gw.begin(incomingMessage, AUTO, true);
gw.sendSketchInfo("HVAC Thermostat", "1.0");
gw.present(CHILD_ID_HVAC, S_HVAC);
gw.send(msgSetpointHeat.set(21.0, 1));
gw.send(msgSetpointCool.set(21.0, 1));
gw.send(msgSetpointFlowState.set("HeatOn"));
gw.send(msgSetpointFlowMode.set("ContinuousOn"));
}
void loop()
{
gw.process();
}
void incomingMessage(const MyMessage &message)
{
if(message.sensor == CHILD_ID_HVAC)
{
if (message.type == V_HVAC_SETPOINT_HEAT) {
Serial.println( "V_HVAC_SETPOINT_HEAT command received..." );
Serial.println( message.data );
}
if (message.type == V_HVAC_SETPOINT_COOL) {
Serial.println( "V_HVAC_SETPOINT_COOL command received..." );
Serial.println( message.data );
}
if (message.type == V_HVAC_FLOW_STATE ) {
Serial.println( "V_HVAC_FLOW_STATE command received..." );
Serial.println( message.data );
}
if (message.type == V_HVAC_FLOW_MODE) {
Serial.println( "V_HVAC_FLOW_MODE command received..." );
Serial.println( message.data );
}
}
}
-
- Posts: 4
- Joined: Wednesday 08 April 2015 3:23
- Target OS: Linux
- Domoticz version: 2.3226
- Contact:
Re: V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
In my final project, I am also hoping to interface with my other sensors in the network.
I will augment the temperature network sensors with other sensors I have in each room, to provide a better temperature control and comfort (different temp in different rooms at different time of day). Also reading the outside temperature sensor to potentially set different heating stage level depending on temperature, while keeping a low fan speed (for noise comfort) in the furnace but setting water loop temperature higher as I can do that in my HVAC. Outside temp may also be used for automatic change over predictability and responsiveness, as well as very hot days where AC needs to run the entire day (not following peak power usage best practices...) to keep up.
I am also keeping in mind the ability for the HVAC thermostat to work even if the entire mysensors network is down in order to have no dependency for basic heating functionality which is critical when outside temp is -40, so the HVAC Thermostat will remain hard wired to the furnace controller. This controller is also another custom made mysensors device controlling the ECM motor, heat demand and AC. I did this one about 10 months ago and it works well so far.
I will augment the temperature network sensors with other sensors I have in each room, to provide a better temperature control and comfort (different temp in different rooms at different time of day). Also reading the outside temperature sensor to potentially set different heating stage level depending on temperature, while keeping a low fan speed (for noise comfort) in the furnace but setting water loop temperature higher as I can do that in my HVAC. Outside temp may also be used for automatic change over predictability and responsiveness, as well as very hot days where AC needs to run the entire day (not following peak power usage best practices...) to keep up.
I am also keeping in mind the ability for the HVAC thermostat to work even if the entire mysensors network is down in order to have no dependency for basic heating functionality which is critical when outside temp is -40, so the HVAC Thermostat will remain hard wired to the furnace controller. This controller is also another custom made mysensors device controlling the ECM motor, heat demand and AC. I did this one about 10 months ago and it works well so far.
-
- Posts: 140
- Joined: Wednesday 17 December 2014 17:30
- Target OS: Linux
- Domoticz version: V3.8650
- Location: Jyväskylä, Finland
- Contact:
Re: V_HVAC_FLOW_STATE and V_HVAC_FLOW_MODE not supported
Question to gizmocuz:
Would this kinda funcitonality help domoticz to build up V_HVAC_FLOW_STATE & MODE switches as selector? Or would it be hard to make selector usable with mysensors?
https://github.com/mysensors/Arduino/issues/356
I forgot to add it needs the message type on presentation also. Otherwise domoticz wont know to what actuator send message since one child can contain more than one type.
So the arduino sketch could begin something like this:
This would give the user possibility to put anything there and domoticz could build up the selectors dynamically in code. Values would be used for communication and user could change names later on to what he/she ever wants.
For MySensors I think this would be a new message type? Do you think this would be a usefull idea?
Why I'm presenting this now... just got my heat pump(modbus) integrated to mysensors but domoticz didnt support these switch types:
Would this kinda funcitonality help domoticz to build up V_HVAC_FLOW_STATE & MODE switches as selector? Or would it be hard to make selector usable with mysensors?
https://github.com/mysensors/Arduino/issues/356
I forgot to add it needs the message type on presentation also. Otherwise domoticz wont know to what actuator send message since one child can contain more than one type.
So the arduino sketch could begin something like this:
Code: Select all
#define childHVAC 0;
...
char flowStateNames[][]={ "Off", "CoolOn", "HeatOn", "AutoChangeover",};
int flowStateValues[]={ 0, 10, 20, 30, };
char flowModeNames[][]={ "Auto", "ContinuousOn", "PeriodicOn",};
int flowModeValues[]={ 0, 10, 20, };
...
void setup() {
...
gw.presentcaps(childHVAC, V_HVAC_FLOW_STATE, flowStateValues, flowStateNames);
gw.presentcaps(childHVAC, V_HVAC_FLOW_MODE, flowModeValues, flowModeNames);
}
...
For MySensors I think this would be a new message type? Do you think this would be a usefull idea?
Why I'm presenting this now... just got my heat pump(modbus) integrated to mysensors but domoticz didnt support these switch types:
I'm using mysensors version 1.5 currently.MySensors: Unhandled sensor (sub-type=21), please report with log!
LXC(x64 Ubuntu Xenial), RFXtrx433E, MySensors
Who is online
Users browsing this forum: No registered users and 1 guest