Presenting and controlling variables in domoticz
-
Hello,
having trouble controling multiple actuators in domoticz.
I have made arduino sketch with preloaded setpoints for outside light controlling, in case domoticz is offline or unreachable after power outage etc.
I have switch on/off setpoints and time delay for switch offWhen i activate present(RGB_RGBChild, S_RGB_LIGHT, "Ees RGB valik") then also time-delay is automatically adjusted by it.
MyMessage msgTe1(CHILD_ID_Te1, V_TEMP); MyMessage msgSp21(CHILD_ID_Sp21, V_HVAC_SETPOINT_HEAT); //seadearvu muutmine kaugelt MyMessage msgSp22(CHILD_ID_Sp22, V_HVAC_SETPOINT_COOL); MyMessage msgvalgus(CHILD_ID_valgus, V_LEVEL); MyMessage msgaeg2(CHILD_ID_aeg2, V_PERCENTAGE); void presentation() { sendSketchInfo("Valgus", "1.0"); // seadme nimi, versioon domoticzile present(CHILD_ID_Te1, S_TEMP, "Pooningul"); //anname anduri id, liigi, nime domoticzile present(CHILD_ID_valgus, S_LIGHT_LEVEL, "Valgustugevus"); //current level lux present(CHILD_ID_Sp21, S_LIGHT_LEVEL, "Valgus sisse"); // light on present(CHILD_ID_Sp22, S_LIGHT_LEVEL, "Valgus valja"); // light off present(CHILD_ID_aeg2, S_DIMMER, "Valguse viide valja"); // time delay offWhen i added ws2812 RGB switch everything got mixed up, especially time delay feature, but also switching in domoticz activated CHILD_ID_Sp21 and CHILD_ID_Sp22(no values were changed)
MyMessage msgTe1(CHILD_ID_Te1, V_TEMP); MyMessage msgSp21(CHILD_ID_Sp21, V_HVAC_SETPOINT_HEAT); //seadearvu muutmine kaugelt MyMessage msgSp22(CHILD_ID_Sp22, V_HVAC_SETPOINT_COOL); MyMessage msgvalgus(CHILD_ID_valgus, V_LEVEL); MyMessage msgaeg2(CHILD_ID_aeg2, V_PERCENTAGE); MyMessage lightRGBMsg(RGB_LightChild, V_RGB); // standard messages, light MyMessage lightdimmerMsG(RGB_LightChild ,V_DIMMER); MyMessage lightOnOffMessage(RGB_LightChild, V_STATUS); void presentation() { sendSketchInfo("Valgus", "1.0"); // seadme nimi, versioon domoticzile present(CHILD_ID_Te1, S_TEMP, "Pooningul"); //anname anduri id, liigi, nime domoticzile present(CHILD_ID_valgus, S_LIGHT_LEVEL, "Valgustugevus"); //current level lux present(CHILD_ID_Sp21, S_LIGHT_LEVEL, "Valgus sisse"); // light on present(CHILD_ID_Sp22, S_LIGHT_LEVEL, "Valgus valja"); // light off present(CHILD_ID_aeg2, S_DIMMER, "Valguse viide valja"); // time delay off present(RGB_RGBChild, S_RGB_LIGHT, "Ees RGB valik");// present to controller present(RGB_LightChild, S_LIGHT, "Ees on/off/dim "); present(RGB_SolidColorChild, S_LIGHT, "Ees on/off värv" ); present(RGB_TextColorChild, S_INFO, "Ees värvi tekst" ); present(RGB_AlarmPatternChild, S_BINARY, "Ees vilkuv pu/va" ); present(RGB_NextPatternChild, S_DIMMER, "Ees RGB muster" );Each child is presented in domoticz correctly with correct name.
Is there even a way to use multiple same type actuators in a sketch?To update preloaded setpoints from arduino to domoticz, i have this added (which might be the problem?)
void receive(const MyMessage &message) { if (message.type == V_HVAC_SETPOINT_HEAT) { Sp21 = message.getFloat(); } if (message.type == V_HVAC_SETPOINT_COOL) { Sp22 = message.getFloat(); } if (message.type == V_PERCENTAGE) { aeg2 = message.getFloat(); } sendNewStateToGateway();and
void sendNewStateToGateway() { send(msgSp21.set(Sp21)); send(msgSp22.set(Sp22)); send(msgaeg2.set(aeg2)); }Have googled and searched mysensors/domoticz forums but no results. I'm more like hobby programmer if that's the word and self somewhat learned by google for a few years now.
-
Cannot get the point what you exactly mean but I think you should check for what child the message is for:
if(message.sensor == CHILD_ID_aeg2 && message.type == ...) { ..do suff.. }@pjr said in Presenting and controlling variables in domoticz:
Cannot get the point what you exactly mean but I think you should check for what child the message is for:
if(message.sensor == CHILD_ID_aeg2** && message.type == ...) { ..do suff.. }Thank you, message.sensor was the thing i needed. Browsed cpp and h files in mysensors library and googled, but couldn't find variables to use with message.*.
:smiley:
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login