Hi all,
Is the Remotec ZRC90 supported in the meantime? I've found this topic: viewtopic.php?t=12539 , but there are no recent updates to be found. If it does not work yet, is there an ETA? In case the ZRC90 is not supported yet, alternatives are welcome. I'm just looking for some wallmountable hardware to control my zwave devices.
Edit:
Realised that this is actually the wrong place to ask for this, because its actually an OpenZWave thing.
ZRC90 support
Moderators: leecollings, remb0
-
- Posts: 14
- Joined: Friday 30 December 2016 17:51
- Target OS: Windows
- Domoticz version: latest
- Location: Florida
- Contact:
Re: ZRC90 support
I have this remote also and am very interested in getting it working. Any updates or news on this? I am trying other remotes and attempting to get it working. I would love to bounce it off of others.
Re: ZRC90 support
I recently bought a ZRC-90 remote. I want to use it with my Domoticz software. So far I didn't succeed in using the remote.
Including the device was successfull but then.
I tried several blocky scripts with a dummy toggle switch to switch a light. The light swiched ON but instantly switched OFF. What I tried it stayed the same.
I am using Domoticz version 4.9700 with Aeotec ZW090 Z-Stick Gen5 EU. Can somebdy give me a clue or an example.
Including the device was successfull but then.
I tried several blocky scripts with a dummy toggle switch to switch a light. The light swiched ON but instantly switched OFF. What I tried it stayed the same.
I am using Domoticz version 4.9700 with Aeotec ZW090 Z-Stick Gen5 EU. Can somebdy give me a clue or an example.
-
- Posts: 543
- Joined: Saturday 02 July 2016 5:17
- Target OS: Linux
- Domoticz version: Beta
- Contact:
Re: ZRC90 support
I can confirm that this remote is working perfectly with Domoticz.
Also with some scripting I was able to get up to 24 (yes you read that correctly) different functions from the 8 buttons.
Eg I've got a "Radio button"
Single press = start playing radio, press it again = change to another track
Hold for more than 2 but less than 6 seconds = Stop playing
Hold for more than 6 seconds = add playing track to my like list
Can also do cool stuff with this remote using Lua scripting such as allocating one button as "Combo", eg press combo then light button = do x so you could make the light button do x if pressed individually or do something else if combo then light button pressed within 3 seconds.
PeterB1 start with this as a template Lua device script
My ZRC90 Lua config
Note that to I tell Lua to execute a bash script to achieve the functionality mentioned for the radio button.
Also with some scripting I was able to get up to 24 (yes you read that correctly) different functions from the 8 buttons.
Eg I've got a "Radio button"
Single press = start playing radio, press it again = change to another track
Hold for more than 2 but less than 6 seconds = Stop playing
Hold for more than 6 seconds = add playing track to my like list
Can also do cool stuff with this remote using Lua scripting such as allocating one button as "Combo", eg press combo then light button = do x so you could make the light button do x if pressed individually or do something else if combo then light button pressed within 3 seconds.
PeterB1 start with this as a template Lua device script
Code: Select all
-- Device Last Updates
t1 = os.time()
devices = {
"Bedroom ZRC90 Curtain Button"
}
for i = 1, #devices do
s = otherdevices_lastupdate[devices[i]]
year = string.sub(s, 1, 4)
month = string.sub(s, 6, 7)
day = string.sub(s, 9, 10)
hour = string.sub(s, 12, 13)
minutes = string.sub(s, 15, 16)
seconds = string.sub(s, 18, 19)
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
str = (devices[i] .. "LastUpdate")
str = str:gsub("%s+", "")
str = string.gsub(str, "%s+", "")
_G[str] = (os.difftime (t1, t2))
end
commandArray = {}
-- Curtain button
if (devicechanged['Bedroom ZRC90 Curtain Button'] == 'On' and otherdevices['Main Bedroom Curtains'] == 'Closed' and BedroomZRC90CurtainButtonLastUpdate > 2) then
commandArray['Main Bedroom Curtains'] = 'On'
end
return commandArray
Code: Select all
-- Device Last Updates
t1 = os.time()
devices = {
"Bedroom ZRC90 Curtain Button",
"Bedroom ZRC90 Blind Button",
"Bedroom ZRC90 Cat Button",
"Bedroom ZRC90 Radio Button",
"Main Bedroom Blinds",
"Main Bedroom Curtains"
}
for i = 1, #devices do
s = otherdevices_lastupdate[devices[i]]
year = string.sub(s, 1, 4)
month = string.sub(s, 6, 7)
day = string.sub(s, 9, 10)
hour = string.sub(s, 12, 13)
minutes = string.sub(s, 15, 16)
seconds = string.sub(s, 18, 19)
t2 = os.time{year=year, month=month, day=day, hour=hour, min=minutes, sec=seconds}
str = (devices[i] .. "LastUpdate")
str = str:gsub("%s+", "")
str = string.gsub(str, "%s+", "")
_G[str] = (os.difftime (t1, t2))
end
commandArray = {}
-- Curtain button
if (devicechanged['Bedroom ZRC90 Curtain Button'] == 'On' and otherdevices['Main Bedroom Curtains'] == 'Closed' and BedroomZRC90CurtainButtonLastUpdate > 2) then
commandArray['Main Bedroom Curtains'] = 'On'
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Opening curtain." "40" &')
elseif (devicechanged['Bedroom ZRC90 Curtain Button'] == 'On' and otherdevices['Main Bedroom Curtains'] == 'Open' and BedroomZRC90CurtainButtonLastUpdate > 2) then
commandArray['Main Bedroom Curtains'] = 'Off'
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Closing curtain." "40" &')
end
-- Blind Button (order is important, blind stop must be at top)
if (devicechanged["Bedroom ZRC90 Blind Button"] == 'On' and otherdevices['Main Bedroom Blinds'] ~= 'Stopped' and otherdevices['Main Bedroom Blinds'] ~= 'Open' and MainBedroomBlindsLastUpdate < 30 and MainBedroomBlindsLastUpdate > 2) then
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Blind stopped." "40" &')
commandArray['Main Bedroom Blinds'] = 'Stop'
elseif (devicechanged['Bedroom ZRC90 Blind Button'] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Closed' and BedroomZRC90BlindButtonLastUpdate > 2) or
(devicechanged["Bedroom ZRC90 Blind Button"] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Stopped' and MainBedroomBlindsLastUpdate > 2) then
commandArray['Main Bedroom Blinds'] = 'Off'
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Raising the blind." "40" &')
elseif (devicechanged['Bedroom ZRC90 Blind Button'] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Open' and BedroomZRC90BlindButtonLastUpdate > 2) then
commandArray['Main Bedroom Blinds'] = 'On'
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Lowering the blind." "40" &')
end
-- Bedroom Cat Mode (Note to self: time taken for blinds to fully open or close is 29 seconds)
if (devicechanged['Bedroom ZRC90 Cat Button'] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Open' and BedroomZRC90CatButtonLastUpdate > 2) then
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Cat mode engaged." "40" &')
commandArray['Main Bedroom Curtains'] = 'Off'
commandArray['Main Bedroom Blinds'] = 'On FOR 19 SECONDS AFTER 1'
elseif (devicechanged['Bedroom ZRC90 Cat Button'] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Closed' and BedroomZRC90CatButtonLastUpdate > 2) then
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Cat mode engaged." "40" &')
commandArray['Main Bedroom Curtains'] = 'Off'
commandArray['Main Bedroom Blinds'] = 'Off FOR 10 SECONDS AFTER 1'
elseif (devicechanged['Bedroom ZRC90 Cat Button'] == 'On' and otherdevices['Main Bedroom Blinds'] == 'Stopped' and BedroomZRC90CatButtonLastUpdate > 2) then
os.execute ('/root/scripts/tts/speak.sh "Main Bedroom R" "Lowering the blind." "40" &')
commandArray['Main Bedroom Blinds'] = 'On'
commandArray['Main Bedroom Curtains'] = 'Off AFTER 1'
end
-- Radio Button
if (devicechanged['Bedroom ZRC90 Radio Button'] == 'On' and BedroomZRC90RadioButtonLastUpdate > 4) then
os.execute ('/root/scripts/zrc90/bedroom/radio.sh &')
end
return commandArray
Unless otherwise stated, all my code is released under GPL 3 license: https://www.gnu.org/licenses/gpl-3.0.en.html
-
- Posts: 18
- Joined: Sunday 03 December 2017 10:17
- Target OS: Raspberry Pi / ODroid
- Domoticz version: Beta
- Contact:
Re: ZRC90 support
I've got a working Remotec ZRC-90 using the scene's in Domoticz because I lack the experience of scripting.
Not fully happy with it but hey, it works. Only backdraft is that you can only use 8 scene's because Domoticz only accepts the 'on' mode and doesn't recognize the toggle mode like on/off. This can be achieved by using 2 buttons/scene's, one for activating devices and the other for de-activating.
First include the remote in Domoticz:
- set your ZWave controller in the include mode
- press the W+L buttons inside the rear cover of the remote simultaiously until the led lights up
this will inclde the remote as "Remotec ZRC-90+" into your hardware list
Then add some scene's for every button one:
- Add a scene
- Under 'Activation Devices' select add device
- Press a button at the remote
- A device shows up: 'Unknown' and the state is on
- Under 'Devices' you then can select a device or multiple device's from the list that you want to switch on or off
Save the scene as button1 and so on for every button one scene.
Any suggestions on this method or using each button in an on/off mode setup are welcome!
Not fully happy with it but hey, it works. Only backdraft is that you can only use 8 scene's because Domoticz only accepts the 'on' mode and doesn't recognize the toggle mode like on/off. This can be achieved by using 2 buttons/scene's, one for activating devices and the other for de-activating.
First include the remote in Domoticz:
- set your ZWave controller in the include mode
- press the W+L buttons inside the rear cover of the remote simultaiously until the led lights up
this will inclde the remote as "Remotec ZRC-90+" into your hardware list
Then add some scene's for every button one:
- Add a scene
- Under 'Activation Devices' select add device
- Press a button at the remote
- A device shows up: 'Unknown' and the state is on
- Under 'Devices' you then can select a device or multiple device's from the list that you want to switch on or off
Save the scene as button1 and so on for every button one scene.
Any suggestions on this method or using each button in an on/off mode setup are welcome!
Re: ZRC90 support
The tip ben53252642 gave works. Thanks.
With this framework I can extand my srcipts. The only thing I don't understand is how the last update calculation works. Is it an system variable or a database field?
With this framework I can extand my srcipts. The only thing I don't understand is how the last update calculation works. Is it an system variable or a database field?
-
- Posts: 543
- Joined: Saturday 02 July 2016 5:17
- Target OS: Linux
- Domoticz version: Beta
- Contact:
Re: ZRC90 support
PeterB1,
The Last Update is used to prevent double launching (eg some remotes such as Aeotec Wallmote) can send multiple "on" signals very fast. If not controlled with the last update code, it can result in a device being turned on / off many times which isn't ideal.
A device name entered at the top of the Last Update section, in the above example I used "Bedroom ZRC90 Curtain Button".
To access the Last Update part in the commandArray section, you just remove the spaces and add lastupdate at the end, eg:
BedroomZRC90CurtainButtonLastUpdate > 2
All this means is to only execute the action if it has been more than 2 seconds since the button was last pressed (removing the problem of receiving multiple "on" signals very fast from some remotes).
Hope this explains it.
The Last Update is used to prevent double launching (eg some remotes such as Aeotec Wallmote) can send multiple "on" signals very fast. If not controlled with the last update code, it can result in a device being turned on / off many times which isn't ideal.
A device name entered at the top of the Last Update section, in the above example I used "Bedroom ZRC90 Curtain Button".
To access the Last Update part in the commandArray section, you just remove the spaces and add lastupdate at the end, eg:
BedroomZRC90CurtainButtonLastUpdate > 2
All this means is to only execute the action if it has been more than 2 seconds since the button was last pressed (removing the problem of receiving multiple "on" signals very fast from some remotes).
Hope this explains it.
Unless otherwise stated, all my code is released under GPL 3 license: https://www.gnu.org/licenses/gpl-3.0.en.html
Who is online
Users browsing this forum: No registered users and 1 guest