Comments (2)
I've been having a look through the code in domoticz_accessory.js and pardon my ignorance, but it seems that the code is always retrieving the SetPoint no matter what.
Editing the local file on my system and adding a getTargetTemperature function right beneath the getTemperature function like so:
getTargetTemperature: function(callback) {
Domoticz.deviceStatus(this, function(json) {
var value;
var sArray = Helper.sortByKey(json.result, "Name");
sArray.map(function(s) {
var heat = (this.subType == "Zone") ? true : false;
var therm = (this.subType == "SetPoint") ? true : false;
value = ((heat) || (therm)) ? Helper.oneDP(Helper.cleanFloat(s.SetPoint)) : Helper.oneDP(Helper.cleanFloat(s.Temp));
}.bind(this));
this.platform.log("Data Received for " + this.name + ": " + value);
callback(null, value);
}.bind(this));
}
and altering line 1203 to the following:
HeatingDeviceService.getCharacteristic(Characteristic.TargetTemperature).on('get', this.getTargetTemperature.bind(this)).on('set', this.setPoint.bind(this));
seems to now mean the Home and Eve apps show the right setpoint, and the right actual temperature. I should probably be ashamed of the code, but it is difficult to know exactly what's happening in the function sArray.map is using.
This works for me and EvoHome although I don't know if it would work in other scenarios.
from homebridge-edomoticz.
It ONLY works for you and EvoHome is the issue. For everyone else, who likely has an independent upper setpoint, independent lower setpoint, independent heating on/off switch, and independent standalone temperature per room, all as separate devices within domoticz, it doesn’t work.
This is fairly well documented and discussed both in previous issues here, and in the eDomoticz thread on the Domoticz forums.
We either have to write specific code for every variant of thermostat out there, or generic code that can be applied to multiple hardware combinations, and I’m afraid since no-one out there is going to buy myself our Ramon one of every thermostat, the generic code has to remain for now. But feel free to implement the fix locally to suit your particular device. Just remember to put it back in place whenever you update.
Note: the device status is also never really accurately reflected, as for the regular “setpoint” device in Domoticz, it provides no status and no current temperature - only a setpoint temperature value.
See various prev issues on this topic: https://github.com/PatchworkBoy/homebridge-edomoticz/issues?utf8=✓&q=is%3Aissue%20is%3Aclosed%20thermostat
Sorry!
from homebridge-edomoticz.
Related Issues (20)
- Not working with domoticz v2023.1 HOT 1
- Domoticz 2023.1 - Problem with the plugin HOT 4
- Devices not showing in home bridge HOT 1
- Status: [WebServer] Depricated RType (devices) for API request. Please use correct API Command!
- API Calls to Domoticz depricated HOT 35
- Could not connect to Mqtt broker HOT 1
- Unable to connect to Domoticz 2023.2 HOT 1
- [WebServer] Deprecated RType HOT 3
- [Domoticz] missing accessories after upgrades HOT 17
- Error update 2.1.47 HOT 2
- Domoticz Motion Sensor not working in Homebridge HOT 8
- Homebridge and plugin eDomoticz working - but no accessories anymore HOT 4
- Add Setpoint root type to current heating / thermostat handler HOT 7
- Homebridge not updating status of switches HOT 11
- Impact of domoticz change on thermostats HOT 1
- Force name update HOT 2
- Devices names don't update
- Thermostat are not visible any more with Domoticz 2024.x HOT 5
- Support for Domoticz V2023.2 and newer HOT 2
- Domoticz devices not showing in Homebridge/Homekit HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from homebridge-edomoticz.