Page 31 of 37

ELV Max! Heating control system

Posted: Saturday 25 November 2017 19:31
by mvzut
oasisnl wrote:

Code: Select all

*/5 * * * * /usr/bin/lua /home/pi/domoticz/sripts/lua/maxscript.lua 
There's a typo in this line: sripts instead of scripts.

If you're still having problems, try running the maxscript.lua script from the command line and look at potential error messages.

Re: ELV Max! Heating control system

Posted: Saturday 25 November 2017 21:02
by oasisnl
mvzut wrote: Saturday 25 November 2017 19:31
oasisnl wrote:

Code: Select all

*/5 * * * * /usr/bin/lua /home/pi/domoticz/sripts/lua/maxscript.lua 
There's a typo in this line: sripts instead of scripts.

If you're still having problems, try running the maxscript.lua script from the command line and look at potential error messages.
Well I realy need to get my glasses fixed. checked the line several times.

corrected it and now it's, but still not getting the valves and thermostats updated in domoticz.


# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command

*/5 * * * * /usr/bin/lua /home/pi/domoticz/scripts/lua/maxscript.lua

ELV Max! Heating control system

Posted: Sunday 26 November 2017 0:35
by mvzut
Have you tried running it directly from the command line?
Did you use the crontab of the standard user "pi" (by using crontab -e) or did you use the system's crontab (by using sudo crontab -e). You should use the latter, otherwise it is only run when user "pi" is logged on.

Re: ELV Max! Heating control system

Posted: Sunday 26 November 2017 1:04
by oasisnl
I used the sude crontab -e

Not quit sure how to run from command line.

did ( from the scripts folder ) lua maxscript.lua ( same command as for maxtest). But there was no output shown, just returned to the prompt.

what command should I use to run from command line?

Re: ELV Max! Heating control system

Posted: Sunday 26 November 2017 2:12
by mvzut
You used the correct method to run the script from the command line. If it returned nothing, that is in principle good, it means that the script didn't encounter any errors. Check your Domoticz devices, they should have been updated now. Otherwise check your setup>devices screen if no new devices were created accidentally (which should not be possible, but it doesn't hurt to check).

ELV Max! Heating control system

Posted: Sunday 26 November 2017 2:12
by mvzut
You used the correct method to run the script from the command line. If it returned nothing, that is in principle good, it means that the script didn't encounter any errors. Check your Domoticz devices, they should have been updated now. Otherwise check your setup>devices screen if no new devices were created accidentally (which should really not be possible, but it doesn't hurt to check).

If your devices are updated, add the line you already used using "sudo crontab -e". I expect that it should work then...

Re: ELV Max! Heating control system

Posted: Sunday 26 November 2017 2:18
by oasisnl
Unfortunataly the devices aren't updated, there also no new devices created.

Below what I have within domoticz on the devices tab:
As you can see the devices aren't updated in the last 2 days.. Any other suggestions would be great.
Spoiler: show
388 MAX! 0017BA61 1 Slaapkamer D Re Klep General Percentage 0.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-25 14:15:03
434 MAX! 018E0CA 1 Slaapkamer D Gewenst Thermostat SetPoint 20.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:36:02
391 MAX! 018F17C 1 Slaapkamer J R Gewenst Thermostat SetPoint 20.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:59
432 MAX! 018EA70 1 Woonkamer Gewenst Thermostat SetPoint 21.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:57
418 MAX! 017ABB4 1 Hal Beneden Gewenst Thermostat SetPoint 19.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:54
417 MAX! 0011 1 Hal Beneden Temp Temp LaCrosse TX3 18.3 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
433 MAX! 0012 1 Slaapkamer D Temp Temp LaCrosse TX3 20.7 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
306 MAX! 0012 1 Slaapkamer J R Temp Temp LaCrosse TX3 20.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
416 MAX! 0017ABB4 1 Hal Beneden Klep General Percentage 80.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
393 MAX! 0011 1 Woonkamer Temp - Rad Temp LaCrosse TX3 21.4 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-21 23:45:07
431 MAX! 0012 1 Woonkamer Temp Temp LaCrosse TX3 21.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
392 MAX! 0017AC45 1 Woonkamer A Klep General Percentage 32.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
308 MAX! 0017AC40 1 Slaapkamer J R Klep General Percentage 0.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
389 MAX! 0011 1 Slaapkamer D Temp - Rad R Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 21:20:02
395 MAX! 0011 1 Slaapkamer J R Temp - Rad Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 20:55:03
387 MAX! 017AC40 1 Slaapkamer J R Gewenste Temp - Rad Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:50:02
390 MAX! 017BA61 1 Slaapkamer D Gewenst - Rad R Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:40:02

Re: ELV Max! Heating control system

Posted: Sunday 26 November 2017 15:00
by mvzut
Peggy wrote:I'm getting crazy with the Max! software. I just hard reset it and made pairing again. I don't know why, but whenever I change the temp on one valve, three other valves automatically change to the same temp. You can see hereunder the 4 valves that react together ( 16.5°C), though it is absolutely not what I want.

Image
I had this once too. I ended up setting everything up from scratch again (using the hard reset button at the bottom of the cube)

Re: ELV Max! Heating control system

Posted: Sunday 26 November 2017 21:16
by Peggy
Hello, I appreciate your feedback, I was getting furious against the Max! devices.

By the way, I dirty tweaked your code to retrieve and set auto, manual, boost, holiday info. I think I won't sync it with domoticz but with my python diy system, and create a diy html interface for a dedicated display on the wall.

There is a limitation with the holiday mode, the end date is set to 1947, but i'ts not a real problem.

I'll use the manual or holiday feature because I have 4 children that each come at different periods, so I have to switch some of their room from "confort" to "eco" several times a week.

ELV Max! Heating control system

Posted: Monday 27 November 2017 22:18
by mvzut
oasisnl wrote:Unfortunataly the devices aren't updated, there also no new devices created.

Below what I have within domoticz on the devices tab:
As you can see the devices aren't updated in the last 2 days.. Any other suggestions would be great.
Spoiler: show
388 MAX! 0017BA61 1 Slaapkamer D Re Klep General Percentage 0.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-25 14:15:03
434 MAX! 018E0CA 1 Slaapkamer D Gewenst Thermostat SetPoint 20.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:36:02
391 MAX! 018F17C 1 Slaapkamer J R Gewenst Thermostat SetPoint 20.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:59
432 MAX! 018EA70 1 Woonkamer Gewenst Thermostat SetPoint 21.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:57
418 MAX! 017ABB4 1 Hal Beneden Gewenst Thermostat SetPoint 19.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:54
417 MAX! 0011 1 Hal Beneden Temp Temp LaCrosse TX3 18.3 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
433 MAX! 0012 1 Slaapkamer D Temp Temp LaCrosse TX3 20.7 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
306 MAX! 0012 1 Slaapkamer J R Temp Temp LaCrosse TX3 20.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
416 MAX! 0017ABB4 1 Hal Beneden Klep General Percentage 80.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
393 MAX! 0011 1 Woonkamer Temp - Rad Temp LaCrosse TX3 21.4 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-21 23:45:07
431 MAX! 0012 1 Woonkamer Temp Temp LaCrosse TX3 21.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
392 MAX! 0017AC45 1 Woonkamer A Klep General Percentage 32.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
308 MAX! 0017AC40 1 Slaapkamer J R Klep General Percentage 0.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
389 MAX! 0011 1 Slaapkamer D Temp - Rad R Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 21:20:02
395 MAX! 0011 1 Slaapkamer J R Temp - Rad Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 20:55:03
387 MAX! 017AC40 1 Slaapkamer J R Gewenste Temp - Rad Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:50:02
390 MAX! 017BA61 1 Slaapkamer D Gewenst - Rad R Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:40:02
Can you maybe remove a few commenting prefixes ("--") before print commands, i.e. change "--print(...)" into "print(...)", and then run your script from the command line again? Especially the "print(dtype.." line is interesting. It should then report some of the data it retrieves from the Cube. Just a check to see if the script actually runs. Please post your output here.

Re: ELV Max! Heating control system

Posted: Monday 27 November 2017 22:53
by oasisnl
deleted all -- items before the print command. and ran script, still no output at all.

Below the script as it is at this moment
Spoiler: show
package.loadlib("core.so", "*")
Socket = require "socket"
Basexx = require "basexx"
json = (loadfile "/home/pi/domoticz/scripts/lua/JSON.lua")() -- for Linux
--json = (loadfile "D:\\Domoticz\\scripts\\lua\\json.lua")() -- for Windows
http = require "socket.http"

MaxIP='192.168.32.89'
MaxPort = 62910
DomoticzPort = 8080
useWMT = false --Set to true if there is a wall mounted thermostat in every room
interval = 5 --Polling interval in minutes, possible range 1-59. Cube doesn't seem to like too frequent communication, 5 minutes is a safe value

Rooms = {}
Devices = {}
Room_nums = {}

function get_MAX_ID()
result, statuscode, content = http.request('http://127.0.0.1:'..DomoticzPort..'/json.htm?type=hardware')
r,e = json:decode(result)
if r.status == "OK" then
for k,v in pairs(r.result) do
if v.Name == "MAX!" then return v.idx end
end
end
end

function Thermostat(DID)
result, statuscode, content = http.request('http://127.0.0.1:'..DomoticzPort..'/json.htm?type=devices')
r,e = json:decode(result)
if r.status == "OK" then
for k,v in pairs(r.result) do
if v.ID == DID then return v.SetPoint,v.LastUpdate end
end
end
return 0, '2016-01-01 00:00:00' -- value to return if device was not found
end

function age(timestring)
t = {}
t.year = string.sub(timestring,1,4)
t.month = string.sub(timestring,6,7)
t.day = string.sub(timestring,9,10)
t.hour = string.sub(timestring,12,13)
t.min = string.sub(timestring,15,16)
t.sec = string.sub(timestring,18,19)
return os.difftime(os.time(),os.time(t))
end

function maxCmd_H(data)
print('H='..data)
end

function maxCmd_M(data)
i = 0
j = 0
while true do -- find next comma
i = string.find(data, ",", i+1)
if not i then break end
j = i
end
s = data:sub(j+1)
dec = Basexx.from_base64(s)
num_rooms = string.byte(dec,3)
if num_rooms == 0 or num_rooms == nil then table.insert(commandArray, {['SendNotification'] = 'MAX! problem#Configuration lost?#1'}) end
pos=4

for i=1, num_rooms do
room_num = string.byte(dec, pos)
name_len = string.byte(dec, pos+1)
pos = pos+2
name = dec:sub(pos, pos+name_len-1)
pos = pos+name_len
adr = Basexx.to_hex(dec:sub(pos, pos+2))
Rooms[room_num] = name
pos = pos+3
end

num_devs = string.byte(dec, pos)
for i=1, num_devs do
dtype = string.byte(dec, pos+1)
adr = Basexx.to_hex(dec:sub(pos+2, pos+4))
snum = dec:sub(pos+5, pos+14)
name_len = string.byte(dec, pos+15)
pos = pos+16
name = dec:sub(pos, pos+name_len-1)
pos = pos+name_len
room_num = string.byte(dec, pos)
Room_nums[adr] = room_num
Devices[adr] = name
end
end

function maxCmd_C(data)
print('C='..data)
end

function maxCmd_L(data)
pos = 1
dec = Basexx.from_base64(data)
L_hex = Basexx.to_hex(dec)
L_len = string.len(L_hex)

while (pos < L_len) do

s = L_hex:sub(pos,(pos+1))
data_len = tonumber(s,16) + 1
hex = L_hex:sub(pos,pos+(data_len*2))
adr = hex:sub(3,8)
room_num = string.format("%02X", Room_nums[adr])
room = Rooms[Room_nums[adr]]
name = Devices[adr]
if not name then name=adr end
valve_info = tonumber(hex:sub(13,14),16)
batt = bit32.extract(valve_info,7,1)
bst = bit32.extract(valve_info,3,1)
mode = bit32.extract(valve_info,0,2)

if (batt==0) then sbat="OK" else sbat="Low" end
if (mode==0) then smode="Auto" elseif (mode==1) then smode="Manual"
elseif (mode==2) then smode="Holiday" elseif (mode==3) then smode="Boost" end

if (data_len == 13) then -- WallMountedThermostat (dev_type 3)
valve_pos = -1
s = hex:sub(17,18)
setpoint = tonumber(s,16) / 2
s = hex:sub(23,26)
temp = tonumber(s,16) / 10
dtype = "Thermostat"
elseif (data_len == 12) then -- HeatingThermostat (dev_type 1 or 2)
s = hex:sub(15,16)
valve_pos = tonumber(s,16)
s = hex:sub(17,18)
setpoint = tonumber(s,16) / 2
if (mode ~= 2) then
s = hex:sub(19,22)
temp = tonumber(s,16) / 10
else
temp = 0
end
dtype = "Valve"
end

--Following two lines correct temperatures over 25.5 degrees, since e.g. 26 degrees is reported as 0.5 degrees
--This is due to the fact that temperatures seem to be stored as two Hex characters only (= max 255 in decimal)
--Pending better solution
if temp < 5 then temp = temp + 25.5 end
if setpoint > 50 then setpoint = setpoint - 64 end

-- Update virtual devices in Domoticz and update MAX! setpoints if necessary
print(dtype.." "..name.." Setpoint="..setpoint.." Temp="..temp.." Valve pos="..valve_pos)
if dtype == "Valve" then
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=udevice&hid='..MAX_ID..'&did='..adr..'&dunit=1&dtype=243&dsubtype=6&nvalue=0&svalue='..valve_pos})
if not useWMT then --Use valve to check setpoint mismatch
if temp ~=25.5 then
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=udevice&hid='..MAX_ID..'&did='..adr..'&dunit=1&dtype=80&dsubtype=5&nvalue=0&svalue='..temp})
end
setpoint_Domoticz, LastUpdate = Thermostat('0'..adr)
if tonumber(setpoint_Domoticz) ~= setpoint then
if age(LastUpdate) > interval * 60 then --Domoticz thermostat value must be updated
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=udevice&hid='..MAX_ID..'&did=0'..adr..'&dunit=1&dtype=242&dsubtype=1&nvalue=0&svalue='..setpoint})
print('Domoticz setpoint ' .. name .. ' updated')
else --Max! setpoint must be updated
MaxCmdSend(adr, room_num, "manual", setpoint_Domoticz)
print('MAX! setpoint ' .. name .. ' updated')
end
end
end

elseif dtype == "Thermostat" and smode ~= 'Auto' then
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=udevice&hid='..MAX_ID..'&did='..adr..'&dunit=1&dtype=80&dsubtype=5&nvalue=0&svalue='..temp})
setpoint_Domoticz, LastUpdate = Thermostat('0'..adr)
if tonumber(setpoint_Domoticz) ~= setpoint then
if age(LastUpdate) > interval * 60 then --Domoticz thermostat value must be updated
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=udevice&hid='..MAX_ID..'&did=0'..adr..'&dunit=1&dtype=242&dsubtype=1&nvalue=0&svalue='..setpoint})
print('Domoticz setpoint ' .. name .. ' updated')
else --Max! setpoint must be updated
MaxCmdSend(adr, room_num, "manual", setpoint_Domoticz)
print('MAX! setpoint ' .. name .. ' updated')
end
end
end

pos = pos + (data_len*2)
end
end

function MaxCmdSend(id, room, mode, setpoint)
bits = setpoint * 2
smode = string.upper(mode)
if smode == 'MANUAL' then
bits = 64 + bits
elseif smode == 'BOOST' then
bits = 192 + bits
elseif smode == 'VACATION' then
bits = 128 + bits
end
hex = "000440000000"..id..room..string.format("%x",bits)
sendStr = Basexx.to_base64(Basexx.from_hex(hex))
i, status = tcp:send("s:"..sendStr.."\r\n")
if not i then
print("MAX TCP send failed - "..status)
return
end
end


commandArray = {}

m = tonumber(os.date('%M'))
if (m % interval == 0) and (m ~= 0) and (m ~= 30) then

--Get ID of MAX hardware in Domoticz, create if it doesn't exist
MAX_ID = get_MAX_ID()
if MAX_ID == nil then -- "MAX!" dummy hardware not yet created, create it
table.insert(commandArray, {['OpenURL'] = 'http://127.0.0.1:'..DomoticzPort..'/json.htm?type=command&param=addhardware&htype=15&port=1&name=MAX!&enabled=true'})
return commandArray
end

tcp = Socket.connect(MaxIP, MaxPort)
if not tcp then
print("Socket connect failed for "..MaxIP..':'..MaxPort)
return
end
tcp:settimeout(2)

while true do
s, status, partial = tcp:receive()
if (status) then
print("TCP receive - "..status)
break
end

local line = (s or partial)
local cmd = line:sub(1,1)
local data = line:sub(3)

if (cmd == 'H') then
status = maxCmd_H(data)
if status == 'Error' then break end
elseif (cmd == 'M') then
maxCmd_M(data)
elseif (cmd == 'C') then
maxCmd_C(data)
elseif (cmd == 'L') then
maxCmd_L(data)
break
end
end

tcp:close()

end

return commandArray

Also the command to run script i've used (including path to directory ) ;

pi@raspberrypi:~/domoticz/scripts/lua $ lua maxscript.lua

ELV Max! Heating control system

Posted: Tuesday 28 November 2017 0:01
by mvzut
Oops, I see what goes wrong. The script still contains code to only run every 5 minutes, which is not necessary since it is run from crontab. You should remove these lines:

Code: Select all

m = tonumber(os.date('%M'))
if (m % interval == 0) and (m ~= 0) and (m ~= 30) then
And the last "end" before "return commanArray"
See if that helps!

P.S. I just noticed that you are using a pretty old version of the script. As mentioned a few posts back, I suggest to start using the one described here: http://www.domoticz.com/forum/viewtopi ... 05#p104705
That one should work out of the box (after you set up the IP adress of your Cube etc. in the top section).

Re: ELV Max! Heating control system

Posted: Tuesday 28 November 2017 0:22
by oasisnl
well that did something,

now I get an output when I run the script
Spoiler: show
pi@raspberrypi:~/domoticz/scripts/lua $ lua maxscript.lua
Valve SlaapkamerD_R-Rad Setpoint=22.5 Temp=25.5 Valve pos=100
Domoticz setpoint SlaapkamerD_R-Rad updated
Thermostat SlaapkamerJR-Stat Setpoint=20 Temp=20 Valve pos=-1
Domoticz setpoint SlaapkamerJR-Stat updated
Thermostat SlaapkamerD-Stat Setpoint=22.5 Temp=18.7 Valve pos=-1
Domoticz setpoint SlaapkamerD-Stat updated
Valve HalBeneden-Rad Setpoint=21.5 Temp=21.1 Valve pos=78
Domoticz setpoint HalBeneden-Rad updated
Thermostat Woonkamer-Stat Setpoint=21.5 Temp=21 Valve pos=-1
Valve SlaapkamerJR-Rad Setpoint=20 Temp=25.5 Valve pos=22
Valve Woonkamer A-Rad Setpoint=21.5 Temp=25.5 Valve pos=100
pi@raspberrypi:~/domoticz/scripts/lua $
But in domoticz nothing gets updated?

this is still what domoticz displays. As you can see by the dates its still last seen several days ago.

Spoiler: show
388 MAX! 0017BA61 1 Slaapkamer D Re Klep General Percentage 100.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-27 23:10:03
434 MAX! 018E0CA 1 Slaapkamer D Gewenst Thermostat SetPoint 20.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:36:02
391 MAX! 018F17C 1 Slaapkamer J R Gewenst Thermostat SetPoint 20.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:59
432 MAX! 018EA70 1 Woonkamer Gewenst Thermostat SetPoint 21.5 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:57
418 MAX! 017ABB4 1 Hal Beneden Gewenst Thermostat SetPoint 19.0 - - Zet als ongebruiktNaam wijzigen Log 2017-11-24 19:35:54
417 MAX! 0011 1 Hal Beneden Temp Temp LaCrosse TX3 18.3 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
433 MAX! 0012 1 Slaapkamer D Temp Temp LaCrosse TX3 20.7 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
306 MAX! 0012 1 Slaapkamer J R Temp Temp LaCrosse TX3 20.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
416 MAX! 0017ABB4 1 Hal Beneden Klep General Percentage 80.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-22 15:50:03
393 MAX! 0011 1 Woonkamer Temp - Rad Temp LaCrosse TX3 21.4 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-21 23:45:07
431 MAX! 0012 1 Woonkamer Temp Temp LaCrosse TX3 21.4 C - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
392 MAX! 0017AC45 1 Woonkamer A Klep General Percentage 32.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
308 MAX! 0017AC40 1 Slaapkamer J R Klep General Percentage 0.00% - - Zet als ongebruiktNaam wijzigen Log 2017-11-21 23:45:07
389 MAX! 0011 1 Slaapkamer D Temp - Rad R Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 21:20:02
395 MAX! 0011 1 Slaapkamer J R Temp - Rad Temp LaCrosse TX3 20.0 C - - Apparaat toevoegenNaam wijzigen Log 2017-11-19 20:55:03
387 MAX! 017AC40 1 Slaapkamer J R Gewenste Temp - Rad Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:50:02
390 MAX! 017BA61 1 Slaapkamer D Gewenst - Rad R Thermostat SetPoint 20.0 - - Apparaat toevoegenNaam wijzigen Log 2017-11-17 16:40:02
394 MAX! 017AC45 1 Woonkamer A Gewenst - Rad Thermostat SetPoint 21.5 - - Apparaat toevoegenNaam wijzigen Log 2017-11-08 15:45:02

Re: ELV Max! Heating control system

Posted: Tuesday 28 November 2017 0:34
by oasisnl
mvzut wrote: Tuesday 28 November 2017 0:01

P.S. I just noticed that you are using a pretty old version of the script. As mentioned a few posts back, I suggest to start using the one described here: http://www.domoticz.com/forum/viewtopi ... 05#p104705
That one should work out of the box (after you set up the IP adress of your Cube etc. in the top section).

missed this comment before. just updated the script and domoticz gets updated but it seems that when I change the setpoints in domoticz and run the script again it doesn't update the setpoints to max cube.

Maybe I looked wrong, will test this some more and let you know.

ELV Max! Heating control system

Posted: Tuesday 28 November 2017 8:45
by mvzut
This part may not work well if you run it from the command line. This has to do with the fact that I need to check which was updated most recently, the Domoticz setpoint or the MAX setpoint, and that part of the code assumes that the script is run every x minutes (where x = 5 by default).

Just activate automatic execution of the script using crontab, and it should start to update both ways.

Re: ELV Max! Heating control system

Posted: Tuesday 28 November 2017 12:53
by oasisnl
checked updates in domoticz. All values get updated correctly .

Many thanks for the support.

ELV Max! Heating control system

Posted: Tuesday 28 November 2017 17:00
by mvzut
oasisnl wrote:checked updates in domoticz. All values get updated correctly .

Many thanks for the support.
Great to hear! Always nice to help someone (if I can), and I believe we all learned something in the process Image.

Re: ELV Max! Heating control system

Posted: Thursday 30 November 2017 13:40
by drmabuse71
Hi Mates,

does someone know, whether Max! Basic and Max! Heizungsthermostat reports temperature to Domoticz ?

Seems as if the values could be send to the cube, but the wallunit can´t report it, does it work in Domoticz ?

Kind regards,

Re: ELV Max! Heating control system

Posted: Thursday 30 November 2017 13:59
by Swifty
Anyone know if this; https://www.box.co.uk/EQ-3-Max!-Boiler- ... #DetailTop is supported within Domoticz via the scripts / some python library?

I have one, but not yet cabled it.. my plan is to use Domoticz to work the boiler actuator and manage the setpoints, so that i never have to touch the cube software directly.
It would also mean I could expose thermostat and boiler control to Alexa via Domoticz :)

Re: ELV Max! Heating control system

Posted: Friday 01 December 2017 1:36
by oasisnl
As I look at the manual with this box it responses to the max cube commands when one of the valves/thermostats has a heating request. I'm not sure if the device will be added in domoticz using the provided scripts. But since domoticz is controlling the thermostats and valves and then the cube sends an signal to the boiler contoller there may be no need to see the controller in domoticz. Downsite is that you won't be able to check the status of the boiler within domoticz. Overall I guess it will be able to control your boiler, maybe not directly from domoticz but through the values of the thermostats and valves which are controlled by domoticz.
This is just my opinion, also myself just starting with max! and actually still looking for a good boiler controller solution.