phenotypic / homebridge-web-thermostat Goto Github PK
View Code? Open in Web Editor NEWHomebridge plugin for a web-based thermostat
License: MIT License
Homebridge plugin for a web-based thermostat
License: MIT License
Know its not an issue, more of a challenge...looking to try and modify this plugin to connect to a wifi enable hot tub. Have details of the structure, commands and api calls needed to read status and issue commands...just not sure how to achieve it!
Even if i set maxTemp and minTemp in config.json when I'm in auto mode the range is 0°-35°
My config.json
{
"accessory": "Thermostat",
"name": "Thermostat",
"apiroute": "http://192.168.1.252",
"currentRelativeHumidity": true,
"minTemp": 16,
"maxTemp": 30,
"pollInterval": 60,
"manufacturer": "Samsung",
"model": "AR07FSFPESNN",
"firmware" : "v1.0.0",
"temperatureThresholds": true
}
What about adding fan control support similar to this zoltanhosszu/homebridge-web-thermostat.
It's a fork of your project, but I think you could pull in that changes and make the fan control section optional.
I'm new to coding so not familiar with some of these things... how would I go about finding the apiroute (http://myurl.com) for the thermostat? Would this pluggin work with an Aprilaire WiFi thermostat?
Hi,
i tried to use your plugin with Domoticz to setup a thermostat temperature. Settings can be set by passing them to the url
i want to know if it is possible to send the thermostat selected temp through the url ?
url is like this : http://192.168.1.55:8080/json.htm?type=command¶m=switchlight&idx=104&switchcmd=Set%20Level&level=20
20 is the temp desired.
Hello,
Can you give some example for the config.json
I want to use with a restfull API work like this :
CONSIGN URL :
URL : http://xxx.xxx.xxx.xxx/api/object/thermostat/1638403?ApiKey=xxxxx
Method : GET
Body : { "anaCurrSetPoint": 21 }
Thx for your work
I happily made the plugin work with my thermostat, but there is one problem I discovered. The targetHeatingCoolingState and currentHeatingCoolingState are not updating after setting a HeatingCoolingState.
The default should be set to 2000 (ms), but it doesn't seem to do anything. I also tried adjusting the delay to a different number (5000) and unfortunately that makes no difference.
Is this a known issue or am I doing something wrong?
Hi, I'm getting this error in the homebridge log file:
Error setting targetHeatingCoolingState: socket hang up
But my ESP8266 successfully sets the HeatingCoolingState.
Here is my current ESP8266 request handler:
server.on("/targetHeatingCoolingState", handle_targetHeatingCoolingState);
void handle_targetHeatingCoolingState () {
String value = server.arg("value");
tarState = value.toInt();
Serial.print("\n tarState: ");
Serial.println(tarState);
}
Thanks in advance!
Line 161:
this.service.getCharacteristic(Characteristic.CurrentHeatingCoolingState).updateValue(value)
should update the Characteristic.TargetHeatingCoolingState
value like it advertises in line 160:
this.log('Set targetHeatingCoolingState to: %s', value)
Hi,
Is there any possibility your homebridge plug-in will works with an Salus It500?
The website to connect my Thermostat is https://salus-it500.com/public/login.php?lang=nl
Greets form The Netherlands
Remko Faes
Anyway that this could support one of these thermostats since it’s web based?
[homebridge-web-thermostat] This plugin generated a warning from the characteristic 'Target Temperature': characteristic was supplied illegal value: number 10 exceeded minimum of 17. See https://git.io/JtMGR for more info.
[Thermostat] Error setting targetTemperature: ESOCKETTIMEDOUT
Hi,
I'm wondering why it isn't possible to group multiple thermostats from the same room in the home app.
Isn't it possible with your plugin or am I missing anything?
Greetings
satrik
Hello!
Could it be possibile to have a delay configuration for /status endpoint?
I have 4 ble thermostats and i would like to have a same poll interval but a starting delay between each other.
So, for example
*thermostat 1 call /status at time 0 with pollinterval 20 seconds
*thermostat 2 call /status at time 5 with pollinterval 20 seconds
*thermostat 3 call /status at time 10 with pollinterval 20 seconds
*thermostat 4 call /status at time 15 with pollinterval 20 seconds
When changing TargetHeatingCooling state to AUTO home bridge returns error.
That's because updated is CurrentHeatingCoolingState (AUTO for this does not make any sens).
I think CurrentHeatingCoolingState should be changed to TargetHeatingCoolingState
Hello,
Great work on the plugin!
It would be cool if the URLs that are used for data collection could have their own custom RegEx patterns with them. This would then allow there to be more flexibility with where the data comes from so it doesn't need to conform to current constraints when /status is called.
Thanks!
Hi,
Im getting this error when connecting to my api.
Error setting targetHeatingCoolingState: ESOCKETTIMEDOUT
if I type in the url from the browser it works.
any ideas?
Hi
I tested the new minStep option with 0.2 - in the Home App the steps for the targetTemp are still 0.5.
(Homebridge log shows 0.2 steps)
Is there some Characteristics Settings missing?
The HomeKit thermostat UIs would be a lot snappier (not having to wait for the next poll for updates) if
_getStatus
was called after these API calls are finished:
/targetHeatingCoolingState /targetTemperature /coolingThresholdTemperature /heatingThresholdTemperature
Hello, I use this plugin to automate my wood stove. You allow the temperature thresholds to be changed, but once it passes 212F (100C) it errors out because there is an internal limit in the Characteristic.CurrentTemperature. I forked it awhile ago and added (below) but I don't want to keep updating my fork with your updates. Is this plausible to add the min/max for current temperature as well?
this.service
.getCharacteristic(Characteristic.CurrentTemperature)
.setProps({
minValue: -600,
maxValue: 600
});
Hello
Thanks for your plugin!
How I can fix it?
[homebridge-web-thermostat] This plugin generated a warning from the characteristic 'Target Temperature': characteristic was supplied illegal value: number 10 exceeded minimum of 17. See https://git.io/JtMGR for more info.
It's coming from here
this.service
.getCharacteristic(Characteristic.TargetTemperature)
.on('set', this.setTargetTemperature.bind(this))
.setProps({
minValue: this.minTemp,
maxValue: this.maxTemp,
minStep: this.minStep
})
Hi! I'v been working to add this plugin to my Homebridge setup, and I noticed that it had the heatOnly, but I needed the coolOnly feature instead.
Since Cooling (2) and Auto (3) are after Heat (1), maxValue would not work in this case. I investigated some on how it works, and found it could also be done with validValues instead of maxValue.
I adapted the plugin in my setup with validValues and it works well, I include the relevant piece of code below for consideration. Maybe the config could be adapted to set separate modes as true or false.
if (this.coolOnly) {
this.service.getCharacteristic(Characteristic.TargetHeatingCoolingState)
.setProps({
validValues: [0, 2, 3]
})
this.log('Set to cool only')
}
Thanks!
Hi!
Sorry if this is sort of a dumb question but: does this work with BAXI heaters? I have a BAXI heater with a wireless thermostat (RXM) but I can't figure a way to integrate with homebridge. I know it has opentherm and it uses its property bridge to communicate with the wireless thermostat (RF).
Is there anything else I can do?
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.