I created a Heater device type to control a car climate (on/off and temp), but on ALTUI it is not displaying or working correctly. Do you have any suggestions? The device is based on the D_Heater1.xml.
This is how the control tab shows on ALTUI:
It would be nice if it shows the Inside temp (CurrentTemperature) and the CurrentSetPoint temp.
Send me please the device files and all it’s variable.
Does it claim to be a thermostat and does it respect the thermostat variables ?
Does it use the official thermostat Id but a completely different set of json files ?
seems an issue with the horizontal spinner control drawing (type:spinner_horizontal). but I am not home, cannot debug this right now.
do you see any msg in chrome javascript console ?
That does not make a difference. To test I also created a dummy device with D_Heater1.xml as device file and a dummy implementation file. If you add the variables it looks like the real thing.
It indeed shows a better with the latest ALTUI release, maybe a tad more space between the Off/Heat on button and the temp up/down ones. Always need a to-do for a next release no?
I ll try but I do little effort on the device control panel page because this is where ALTUI emultates UI7 and tries to make use of the device JSON file to layout the panel, which is a mess… and if I tweak things here, I impact all devices so I risk to screw up something else
ALTUI offers 2 better mechanisms which are based on ALTUI plugins per devices : the device dashboard on the page of all devices ( custom code ) and there is ability for a given device tab , to write a custom representation of the device control panel , replacing the default UI7-like one. that gives full javascript / UI customization power to represent it. ( called ControlPanelFunc ) that could be the road we take for that one. it requires someone to write a small JS extension declared as an extension. I am happy to take code contributions here and add them in.
Yeah I know those json files are a pain in the butt. It also shows that Vera has a pretty loose interpretation (ahum) of those definitions. They sure add a lot of other displays to their GUI display.
The reason to use the standard ones is more for Vera than ALTUI. Using the standard json files, the Vera app (and others) will provide direct control. I can have a try to make some improvements for ALTUI once the core functionality of the plugin is settling.
Cheers Rene.
PS, I guess it is time for an update on the Dutch translation files of ALTUI, so I’ll have a look at that again one of these days.
Could you just try to emulate a Thermostat here, and provide the same layout? As I said, it’s just a thermostat with heat only, supporting setpoint, and Off and Heat as mode. I’m not expert in this custom Javascript files you mentioned.
Having the same issue with thermostats. I read in this thread why this is. Has there been anyone working on such javascript since May?
I do not look or need to change temp often for these (I have code&rules changing setpoints) but it looks so dumb in the UI and I would expect many people having such devices.
Another issue is the reporting of the current temperature at 2000.
for the Danfoss thermostat on the right in the pic. The Danfoss device does not report actual temp back. In Vera console there is no devicevariable CurrentTemperature but in AltUI it exists and has the value 2000. Why does it have this variable in AltUI? Anyway to hide this value?
This cosmetic problem is easily addressable: just copy a valid temperature from your nearest temperature sensor. Setting it to blank will probably work as well. Just try to edit the value directly.
The default temp comes from the S_TemperatureSensor1.xml file. I asked if it could be removed, but it seems it is required in some cases. I update CurentTemperature the value with a script that reads it from a temperature meter in the same room.
You can put some lines in the startup Lua of the Vera that has the sensor.
local temp_dev = 111 -- Temperature sensor reporting room temp
luup.variable_watch("RAO2_change","urn:upnp-org:serviceId:TemperatureSensor1" , "CurrentTemperature", temp_dev)
-- Update Danfoss on room temp change
function RA02_change(lul_device, lul_service, lul_variable, lul_value_old, lul_value_new)
luup.variable_set(lul_service, lul_variable, lul_value_new, 127)
end
-- Set at start up.
local curTemp = luup.variable_get("urn:upnp-org:serviceId:TemperatureSensor1", "CurrentTemperature", temp_dev)
luup.variable_set("urn:upnp-org:serviceId:TemperatureSensor1", "CurrentTemperature", curTemp , 127)
or if you have Reactor you can make a sensor for that of course.
Cheers Rene
1 Like
Best Home Automation shopping experience. Shop at Ezlo!