Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


  • 1

Zipato RFID


HomeSystem.sk

Question

Recommended Posts

  • 0
Dnia 29.11.2016 o 12:14, MaTi napisał:

BeNext will no longer sell/produce the old TAG reader, but will from now onwards only sell the TAG reader 500.

(identical looks, different chip)

 

This is currently NOT supported by the HC2 it seems (see attachment). Its added as a generic zwave device and isn't working..

When would you expect this to be fully supported? The old tag readers seem to be out of stock everywhere..

 

Hello,

 

I have no such information at the moment.

Link to comment
Share on other sites

  • 0

Thanks for the feedback.

The old Benext tag reader is end of sale.. So would be great to have the new tag reader 500 supported.

I might be able to ship you one so you can work on it with support if appreciated.. If so, please drop me a message!

Link to comment
Share on other sites

  • 0
On 2.9.2016 at 2:08 AM, fi-bar-oh said:

Specific user is the aim... Me armed alarm or wife armed etc...

All,

 

is there in the meantime a way to identify the tag id (i.e. my one or my wife's) that set "home" or "away"? Thanks!

Cheers

Alfons

Edited by awlieser
Link to comment
Share on other sites

  • 0

This script does the trick for me, with two readers, it's easy to ad one or more.

 

The variable AlmLogE has to be created, prior to executing the script, to prevent

the script from responding to the same log message more than once.

 

The frequency of log checks are defined in the bottom in the fibaro:sleep() statement.

 

The script has been put together from different sources, from this forum, so thanks

a lot for the inspiration.

 

 

--[[
%% properties
%% autostart
%% globals
--]]

function checkLog()
 local trid1 = 381
 local trid2 = 386

 local evnttable = api.get('/refreshStates?last=1')
 local evntlast = tonumber(evnttable.last)
 local msga = table.concat(evnttable.logs, "###")
 local message = "###" .. string.match( msga, "ID " .. tostring(trid1) .. ": (.+)") .. "###"

 if (message == nil) then
   message = "###" .. string.match( msga, "ID " .. tostring(trid2) .. ": (.+)") .. "###"
 end

 if (message ~= nil) then
   message = string.match( message:reverse(), "###[^###]*###")
   message = message:reverse()
   local NTstamp = string.match( message, ".*(%[%d%d%:%d%d%:%d%d%]).*")
   if fibaro:getGlobalValue("AlmLogE") ~= NTstamp then
     if string.find(message, "unlocked") then
      fibaro:startScene(305);
      fibaro:setGlobal("AlmLogE", NTstamp)
      fibaro:debug("Unlocked")
     else
      fibaro:startScene(304);
      fibaro:setGlobal("AlmLogE", NTstamp)  
      fibaro:debug("Locked")
    end  
   end  
 end
end

local DUM = "dyt"
while DUM == "dyt" do
  fibaro:sleep(300)
  checkLog()
end

 

Link to comment
Share on other sites

  • 0

Hi SDonsLund,

 

Thanks! What about the two "trids" - what do they stand for? My tagreader id is 556 ... maybe I'm just too dumb here ..

Cheers

Alfons

Link to comment
Share on other sites

  • 0

Hi awlieser!

 

The trid1 and trid2 are variables holding the tag readers device ids.

As you can see, I first try to populate the variable message using the first tag reader ID, if that doesn't provide data, I try with the next,

if you have more than two tagreaders, you simply create one more block of:

 

if (message == nil) then
   message = "###" .. string.match( msga, "ID " .. tostring(trid2) .. ": (.+)") .. "###"
 end

 

and use the next tag reader ID, like trid3 that you have set to the ID of your third tag reader.

You may have a tag reader that isn't used much and thus can't be used to populate the message variable, at all times.

Link to comment
Share on other sites

  • 0

Alfons,

 

here you wil get the message from the eventlog written as debug, it gives you the numeric ID of the tag, used to do the operation,

I haven't been able to get it to reveal the name that I wrote in when I occupies a slot in the tagreader.

 

--[[
%% properties
%% autostart
%% globals
--]]

function checkLog()
 local trid1 = 381
 local trid2 = 386

 local evnttable = api.get('/refreshStates?last=1')
 local msga = table.concat(evnttable.logs, "###")
 local message = "###" .. string.match( msga, "ID " .. tostring(trid1) .. ": (.+)") .. "###"

 if (message == nil) then
   message = "###" .. string.match( msga, "ID " .. tostring(trid2) .. ": (.+)") .. "###"
 end

 if (message ~= nil) then
   message = string.match( message:reverse(), "###[^###]*###")
   message = message:reverse()
   local NTstamp = string.match( message, ".*(%d%d%:%d%d%:%d%d).*")
   local VTstamp = fibaro:getGlobalValue("AlmLogE")
    if VTstamp ~= NTstamp then
      if string.find(message, "unlocked") then
      fibaro:startScene(305);
      fibaro:setGlobal("AlmLogE", NTstamp)
      fibaro:debug("Unlocked")
      fibaro:debug("Message = " .. message)
     else
      fibaro:startScene(304);
      fibaro:setGlobal("AlmLogE", NTstamp)  
      fibaro:debug("Locked")
      fibaro:debug("Message = " .. message)
    end  
   end  
 end
end

 

local DUM = "dyt"
while DUM == "dyt" do
  fibaro:sleep(300)
  checkLog()
end

 

Link to comment
Share on other sites

  • 0
10 hours ago, SDonslund said:

Alfons,

 

here you wil get the message from the eventlog written as debug, it gives you the numeric ID of the tag, used to do the operation,

I haven't been able to get it to reveal the name that I wrote in when I occupies a slot in the tagreader.

 

--[[
%% properties
%% autostart
%% globals
--]]

function checkLog()
 local trid1 = 381
 local trid2 = 386

 local evnttable = api.get('/refreshStates?last=1')
 local msga = table.concat(evnttable.logs, "###")
 local message = "###" .. string.match( msga, "ID " .. tostring(trid1) .. ": (.+)") .. "###"

 if (message == nil) then
   message = "###" .. string.match( msga, "ID " .. tostring(trid2) .. ": (.+)") .. "###"
 end

 if (message ~= nil) then
   message = string.match( message:reverse(), "###[^###]*###")
   message = message:reverse()
   local NTstamp = string.match( message, ".*(%d%d%:%d%d%:%d%d).*")
   local VTstamp = fibaro:getGlobalValue("AlmLogE")
    if VTstamp ~= NTstamp then
      if string.find(message, "unlocked") then
      fibaro:startScene(305);
      fibaro:setGlobal("AlmLogE", NTstamp)
      fibaro:debug("Unlocked")
      fibaro:debug("Message = " .. message)
     else
      fibaro:startScene(304);
      fibaro:setGlobal("AlmLogE", NTstamp)  
      fibaro:debug("Locked")
      fibaro:debug("Message = " .. message)
    end  
   end  
 end
end

 

local DUM = "dyt"
while DUM == "dyt" do
  fibaro:sleep(300)
  checkLog()
end

 

HI SDonslund,

 

thanks! It works and discerns between my wife's and my tag. Now I have to experiment a bit to make it useful for a scene that uses presence state.

 

Cheers

Alfons

Link to comment
Share on other sites

  • 0

Alfons,

 

I just discovered a serious flaw in the code, causing my alarm to be armed without the intension to do so,

here is the script without that flaw, I hope  :-D

 

 

--[[
%% properties
%% autostart
%% globals
--]]

function checkLog()

 local trid1 = 381
 local trid2 = 386

 local evnttable = api.get('/refreshStates?last=1')
 local msga = table.concat(evnttable.logs, "###")
 local message = "###" .. string.match( msga, "ID " .. tostring(trid1) .. ": (.+)") .. "###"

 if (message == nil) then
   message = "###" .. string.match( msga, "ID " .. tostring(trid2) .. ": (.+)") .. "###"
 end

 if (message ~= nil) then
   message = string.match( message:reverse(), "###([^###]*)")
   message = message:reverse()
   if string.find(message, trid1) or string.find(message, trid2) then
     local NTstamp = tostring(string.match( message, "%[(.*)%]"))
     local VTstamp = tostring(fibaro:getGlobalValue("AlmLogE"))
     if VTstamp ~= NTstamp then
       if string.find(message, "unlocked") then
         fibaro:startScene(305);
         fibaro:setGlobal("AlmLogE", NTstamp)
         fibaro:debug(" ==> " .. message)
       else
        if string.find(message, "locked") then
          fibaro:startScene(304);
          fibaro:setGlobal("AlmLogE", NTstamp)  
          fibaro:debug(" ==> " .. message)
        end  
       end  
     end  
    end  
 end
end

local DUM = "dyt"
while DUM == "dyt" do
  fibaro:sleep(300)
  checkLog()
end

 

Link to comment
Share on other sites

  • 0

Hi SDonslund,

 

thanks for alerting me to that. However, after a few modifications (set global var wife home/away; me home/away) the script works for me. What I don't get is "fibaro:startScene(305); ans fibaro:startScene(304);" ... what are those? Thanks!

 

Cheers

Alfons

Edited by awlieser
Link to comment
Share on other sites

  • 0

Hi SDonslund,

 

thanks for clarifying! Anyway, your code snippet has been of great help to me - thanks again!

 

Cheers

Alfons

Link to comment
Share on other sites

  • 0

this script crash when restart hc2

Does not happen to you?

 

[DEBUG] 10:37:00: line 11: attempt to concatenate a nil value

Edited by rls46
Link to comment
Share on other sites

  • 0
32 minutes ago, rls46 said:

this script crash when restart hc2

Does not happen to you?

 

[DEBUG] 10:37:00: line 11: attempt to concatenate a nil value

Did you define the global variable AlmLogE?

Cheers

Alfons

Link to comment
Share on other sites

  • 0

This little change to check null has solved my problem

line 12

if string.match( msga, "ID " .. tostring(trid1)) ~= nil then

 

 

Please login or register to see this code.

 

Quote

 

Link to comment
Share on other sites

  • 0

that's right, this is due to the fact that after reboot refreshStates might not return anything related to the RFID Tag, because it has been not yet used at that time

Link to comment
Share on other sites

  • 0

The topic has been moved from "

Please login or register to see this link.

" to "

Please login or register to see this link.

".

 

Temat został przeniesiony z "

Please login or register to see this link.

" do "

Please login or register to see this link.

".

Link to comment
Share on other sites

  • 0

Please login or register to see this link.

 I understand the move, but this thread was started for feedback on the new feature. To me it's clear the the feature needs at least one more change before it can be considered minimal viable. The whole issue with "state" is not resolved. I'm afraid that once this thread get's moved fibaro will forget about it.

 

To be honest I expected the change to be in one of the last 2 beta's :-/ 

Link to comment
Share on other sites

  • 0
7 godzin temu, sj3fk3 napisał:

Please login or register to see this link.

 I understand the move, but this thread was started for feedback on the new feature. To me it's clear the the feature needs at least one more change before it can be considered minimal viable. The whole issue with "state" is not resolved. I'm afraid that once this thread get's moved fibaro will forget about it.

 

To be honest I expected the change to be in one of the last 2 beta's :-/ 

Hello,

 

It was moved here, because the forum where it was started changed to read-only, but the thread should still be available for users.

No thread will be forgotten if users still post in it. No worries about that.

Link to comment
Share on other sites

  • 0

Hi Everyone,

 

I am new to this forum. I have a Fibaro HC Lite controller and have waited a long time for some type of keypad to arm/disarm my alarmsensors. I have a very simple question that I hope someone can give me a good answer to :)

 

 

Does the Zipato RFID keypad work with HC Lite or not?

 

Someone who actually have one included and fully functional in a HC Lite?

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...