Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Update Mysensor TempHum Error #276
Domoticz create 6 sensor (Model:Temp + Humidity, subtype:WTGR800).
Each update temperature (T0 to T5) correctly updates the sensor device in the table.
While each update of humidity (H0 to H5) always updates the first sensor for the node.
I think that the problem is that Domoticz use "IDCHILD" temperature as the sensor address for Model "Temp + Humidity" and uses the default 0 to update the humidity.
So, if I have more sensors, any humidity variation on one of them, generates an incorrect update of the first sensor and a missing update of another sensor.
What do you think?
Now I just tried this:
And yet I can see the same behavior:
Unfortunately, this solution does not seem to solve the problem :(
I can see that domoticz always assigns the "child id temp" to sensor "temp
And what if
MySensorsBase::_tMySensorChild* MySensorsBase::FindChildWithValueType(const int nodeID, const _eSetType valType, const std::string childName)
second : if first failed : increment an internal counter for each temp CHILD_ID, an merge HUM, BARO ... with the current internal temp CHILD_ID
My SENSOR :
you can not go out from a textual description, as this is not implemented in most sketch examples
So i quess we should support this combination?
My SENSOR :
If you agree, could you make a pull request ? (maybe create a mysensors test branch?)
The goal is to add a group ID for each node's child (we can discuss for a good method, I'll explain mine below).
To do this, my method will be :
The complex part is to identify groups.
For now, when reading childs from database (LoadDevicesFromDatabase), we only have to increment groupID when an sensor type already exists in current groupID.
For example :
Note : Childs 9 and 10 are presenting HUM before TEMP, but they are in the same group.
Another example :
Note : Childs 3 and 4 are presenting HUM before TEMP, HUM is named "SENSOR1", but they are in the same group.
Last example, with other sensors :
Note : RAIN, WIND and other sensors are treated exactly like TEMP, HUM...
With this method, we have to determine groupID once when loading database. Then we don't have to repeat this work.
What do you think about this ?
What you've done is just amazing as I was looking for the way how groupID works in mysensors with hum and temp.
May I do a suggestion : as you are proposing to add an interface to change groupID, but not for now, could you just add a global option that unactivate grouping child_id for a MySensor Gateway (Serial or LAN)?
So, the result could be something like:
Answer to my question:
I tried with v_var1 and v_voltage but they all ended up in the same groups.
I can see some solutions:
these are just suggestions, I have too little knowledge myself to make them real..
thanks for a super plattform! I feel som happy to get rid of vera and its stupid UI!