fuzzysb Thanks, this script works great
Sorry for the long delay was a bit busy
I use a script to correct the tado thermostat when overshooting, this happens a lot with floorheating due to a bug in the tado system.
Announcement
Collapse
No announcement yet.
Error when setting tado overide mode
Collapse
X
-
Red64
that's normal behaviour, this is the detail for the SetDeviceByRef command
SetDeviceValueByRef
Purpose
This function sets a value that is associated with this device. Values are used to hold the dim level of a device. You can also use them as user variables in your scripts. Note that HomeSeer will overwrite this value if a command was received for this device. If you are going to use this as storage for your own information, pick a device that does not exist in your home.
Parameters
Parameter: dvRef
Type: Integer
Description: This is the device reference ID number.
Parameter: value
Type: double integer
Description: This is a numeric value, such as "50".
Parameter: trigger
Type: Boolean
Description: When set to FALSE, the value will be changed without triggering events that are set to trigger when the device changes. Set this to True normally so that events can trigger when the device's value is updated.
Returns
None.
Example
Code:Sub Main(ByVal Parms As Object) ' set the value of device whose reference ID is 1234 to 60.54 hs.SetDeviceValueByRef(1234, 60.54, True) end sub
To Successfully set the value from a script so my plugin is notified, you will need to use Capi Control, something like the following should work and emulate setting the temp via a script
so for example i created HeatSetPoint.vb in my scripts dir with the following script
Code:Public Sub Main(ByVal Parms As Object) Dim arrParm() As String arrParm = Split(Parms, ";", -1, 1) Dim myDev as Integer = Integer.Parse(arrParm(0)) Dim myValue as double = Double.Parse(arrParm(1)) Dim objCAPIControl As CAPIControl hs.WriteLog("SetHeatPoint", "Dev ID is : " & myDev) hs.WriteLog("SetHeatPoint", "temp is is : " & myValue) objCAPIControl = hs.CAPIGetSingleControlByUse(myDev,ePairControlUse._HeatSetPoint) If objCAPIControl IsNot Nothing Then objCAPIControl.ControlValue = myValue hs.CAPIControlHandler(objCAPIControl) End If End Sub
if i set the device and temp seperated by a ; then it will set succesfully.
Leave a comment:
-
fuzzysb as promised i did my test run
All problems with "set themostat"seem to be resolved, decimal / heat / off
small observation "Tado overide mode" "Tado mode" should be "Unitil next automatic change"; tado mode = full controle by program in tado
one problem left, it is no longer posible to set the heat setpoint via a script, this is overwritten by the value of the tado thermostat after the 5 min refresh time
see example code:
Sub Main(params as Object)
Dim devSetHeatPoint as Integer = 1882
hs.SetDeviceValueByRef(devSetHeatPoint, 19.4, True)
End Sub
once again thanks for your efforts
Henk
Leave a comment:
-
Red64 I have just pushed v1.0.0.186 Beta, please update to that version and check your last remaining issues, this version should fix these points, however i am working remotely on a VPN and debugging over that connection, so testing fully from my end is slow and laborious so i may have missed something, so again if you see any further issues please raise them.
the temp values in the event now respect the minimum Step value from the settings, with the exception if your device only support a step value by 1 degrees and no less, such as my Air Conditioner
Leave a comment:
-
fuzzysb , from my point of view, you may prioritise all other issues first. Currently if have a workaround for all issues (via the plugin or outside Homeseer via IFTTT)
Regarding off setting: i use set heat to 12c and have effectively a off situation
I have the latest version of the app (yes i also paid money) and work in Celsius, my step setting is 0,1C
If you want me to test something for you just give a shout.
Henk
- Likes 1
Leave a comment:
-
Red64 ok don't worry about the off command. i think you mean using the off command from an event action? i've just seen that if you select Off for the zone it doesn't close the event action as complete. but if you set to heat first and select a temperature, then select off you can then press the arrow that completes the event then if you run that action it then works succesfully to turn the device off. its just evaluation rule for the event being completed that is an issue. I will get that fixed v soon
Leave a comment:
-
Red64 i'm trying to get a handle on your issues. my apologies for the delay, however i am time poor at the moment and have had the perfect storm of all of my plugins having bugs ive needed to squash and i have had to prioritise accordingly. but i suspect your main issues prescribe from the event usage does not trigger a refresh of the status immediately (this was by design just to keep the number of requests to a minimum and to prevent overlapping refresh requests, my reasoning was that these are automated actions so a timely refresh wouldn't be necessary), but since this is causing you issues i will trigger a refresh as soon as the events actions have finished.
The last point is that the events don't support decimal places, you are correct and i will get onto this point so it does take note of the minimum step setting within the settings page.
I will again check the off command, however with the latest version v1.0.0.268 this definitely works turning off both my Tado TRV and Tado Thermostats, so if it does not for you, please confirm the Version of the Beta version you are testing. also what devices you are testing against, and what Tado Version of the App you are using, is it v3 or v3+ ? and is your temp unit in C or F?
also could you provide the debug log from when you turn off the device, is there any errors or output?
Leave a comment:
-
fuzzysb A small update
For point 1 and point 4; after a periode of minimum of 5 min 30 sec (the refresh time) both set decimal and change heatpoint do work if you wait that long; before that time they are overwritten by the value of the theromastat itself (set with the "set thermostat heat" command)
I hope this info helps
Henk
Leave a comment:
-
I will hopefully be able to work on your points over the next few days, and release a new beta.
Leave a comment:
-
fuzzysb Hi,
Just some background info.
I have a tado thermostat, a nefit gas heating and a Techneco Elga heat pump.
Below 4c the elga no longer works properly and it will pass the heating commands to the Nefit, becouse of this the room temp jump from 1c to high to 1c to low. I intercept this by changing the tado setting via homeseer. The temp i want in the livingroom is 20.4c.
One problem witrh the elga is that if you change the heat setpoint it will shut down for 10 min and start again, so using + or - to go from 20 to 20.4 over several minutes is not realy a option, and becouse the elga send the command to the Nefit this also shuts down for 10 minutes after every set heatpoint command
Henk
Leave a comment:
-
fuzzysb I did my test script:
the issues i found where:
1) (Severe problem for me) it is no longer posible to set heatpoint via script to value with decimals for instance 20.4C
2) Set thermostat heat now working (both timer and manual), but with timer the set amount of minutes is not always send to the thermostat. It then uses the default of 60 min. (This might be issue with the new tado app and not the plugin; no big deal, my script would kick in again after 62 min)
3) Set thermostat off not working, workaround set thermostat heat 16c does work
4) when using set thermostat heat it is no longer posible to change the heat setpoint after 30 sec (it changes in HS, but not on thermostat. HS is overwritten with Thermostat value)
Changing heatpoint still works when outside set thermostat, with the execption off decimal vaues. Yes + and - do work but not if used more then once every few minutes. This is the reason why i used a script to set the decimal value)
Thank for all the effort you put into it to make this even better.
Henk
Leave a comment:
-
Red64 New Beta v1.0.0.268 is live in the Beta section, please update and try again using the Heat Action, be warned though that the action was missing prompting for the temperature, so you will most likely have to recreate your Heating actiosn and ensure you specify the temperature
Leave a comment:
-
Ok thanks for the feedback I will troubleshoot this evening and provide a new beta
Leave a comment:
Leave a comment: