BeNext / iHome tag reader

Discussions about existing Z-Wave device and their usage with Z-Way/Z-Cloud/Z-Box
Post Reply
gertjuhh
Posts: 10
Joined: 25 Sep 2013 15:07

BeNext / iHome tag reader

Post by gertjuhh »

Has anyone tried the BeNext tag reader?
http://www.ihome.eu/static/manual/tagreader.pdf

Does it play nice with Z-Way?
How is your experience with this device and in what scenario have you used it?
droll
Posts: 48
Joined: 20 Dec 2013 01:37

Re: BeNext / iHome tag reader

Post by droll »

The Z-Way server revision 1.5.0 RC1 solves a problem with the user code (0x63 - COMMAND_CLASS_USER_CODE) that is needed to report to the z-way server the incorrectly entered codes, or the code of your badges you are using together with the tag reader.

If you want to have your tag reader sending an audible acknowledge after having entered a valid code (or having presented a known badge), you need to bind the alarm command (0x71 - COMMAND_CLASS_ALARM_V2) to a function that sends a binary switch command to the tag reader (for both the "home" and "away" events). Example:

zway.devices[<TagReaderId>].Alarm.data[6][5].status.bind(function() { zway.devices[22].SwitchBinary.Set(true); });
zway.devices[<TagReaderId>].Alarm.data[6][6].status.bind(function() { zway.devices[22].SwitchBinary.Set(true); });

Add these commands into a custom JS script. Starting with revision 1.5.0 RC1 the custom scripts cannot be declared anymore inside the config.json file. You need to modify the main JS script (main.js) to execute your custom script:

executeFile(<YourCustomScript>);

The Z-Wave.me team promised a UI to configure custom code in the future.
alibab
Posts: 11
Joined: 26 Mar 2014 15:01

Re: BeNext / iHome tag reader

Post by alibab »

Hi,
We have the same benext tag reader, and have some pb to configure it.
The device is correctly include in zwave network.
We have set some code with no pb, but we can't add rfid tag, when I send the rfid Iobtain this error :

zwave error
[2014-04-05 17:49:07.134] SETDATA devices.11.data.lastReceived = 0 (0x00000000)
[2014-04-05 17:49:07.135] SETDATA devices.11.instances.0.commandClasses.99.data.0.status = 0 (0x00000000)
[2014-04-05 17:49:07.135] SETDATA devices.11.instances.0.commandClasses.99.data.0.code = "ϑ+м"
[2014-04-05 17:49:07.135] SETDATA devices.11.instances.0.commandClasses.99.data.0.hasCode = True
[2014-04-05 17:49:07.136] SETDATA devices.11.instances.0.commandClasses.99.data.0 = Empty
[2014-04-05 17:49:07.143] Custom: bind usercode2 clavier.js : ��+�|
[2014-04-05 17:49:07.154] Node 11:0 CC UserCode: user code should be 4...10 characters, "��+�|" rejected!

The commandClass UserCode seem to reject the code greater than 10 characters. what must we do? where i'm wrong ? must we convert the tag code?

Another question for this module management :
I use openremote to manage it, but how can I memorise the current status of the alarm?, open remote can only make a http request and if I understand, the alarm report is only a bind, not a status.

Thk in advance for your response.
pofs
Posts: 688
Joined: 25 Mar 2011 19:03

Re: BeNext / iHome tag reader

Post by pofs »

The restriction on code length is declared in UserCode CC specification. More than that, it must contain only ASCII characters.
droll
Posts: 48
Joined: 20 Dec 2013 01:37

Re: BeNext / iHome tag reader

Post by droll »

Hello,
The BeNEXT/iHome Tag Reader does not work anymore well since I have migrated to Z-Way version 3 (v3.0.1). Or more precisely, the optional notification does not work anymore reliably. The reason is that the Z-Way controller has to issue the notification to the Tag Reader very quickly after receiving an alarm report. If this notification is not issued sufficiently quickly, the Tag Reader falls back to sleep and will not receive the notification from the controller.
The quick reaction to the alarm event has been ensured by binding the notification (binary switch) command to the alarm event. This was working well with the different version 2 releases:

Code: Select all

zway.devices[TagReaderIndex].Alarm.data[6].event.bind(function() {
   zway.devices[TagReaderIndex].SwitchBinary.Set(true);
});
It seems that Z-Way version 3 does not react sufficiently quickly anymore. The Tag Reader falls back to sleep and plays the notification sound only the next time it wakes up.
The protocol between the Tag Reader and Controller will be attached as reference.
I hope the Z-Way controller reaction speed can be increased to make this Tag Reader working again in the expected manner.
BeNEXT Tag Reader Protocol.PNG
BeNEXT Tag Reader Protocol.PNG (31.05 KiB) Viewed 17880 times
User avatar
PoltoS
Posts: 7562
Joined: 26 Jan 2011 19:36

Re: BeNext / iHome tag reader

Post by PoltoS »

You should check logs to see what is happening in between. Z-Way has not became slower since v2.3.8
droll
Posts: 48
Joined: 20 Dec 2013 01:37

Re: BeNext / iHome tag reader

Post by droll »

Hi PoltoS,
I have checked the logs and found the Tag Reader event is received pretty much immediately (saying in less than 0.2 seconds). The job to respond with the SwitchBinary.Set command is then also added immediately, but the completion of this job is then delayed by 4-7 seconds. This was the summary, the details are here:

Tag reader event is received:

Code: Select all

[2020-03-08 18:39:07.544] [D] [zway] RECEIVED: ( 01 14 00 04 00 16 0A 71 05 00 00 00 FF 06 06 01 02 BB 00 01 07 C6 )
...
[2020-03-08 18:39:07.545] [D] [zway] SETDATA devices.22.instances.0.commandClasses.113.data.6.event = 6 (0x00000006)
[2020-03-08 18:39:07.547] [D] [zway] SETDATA devices.22.instances.0.commandClasses.113.data.6.eventString = "Keypad Lock Open Operation"
...
Acknowledge is initiated (SwitchBinary.Set command is added):

Code: Select all

...
[2020-03-08 18:39:07.548] [I] [core] Send acknowledge to Tag Reader 22 (SwitchBinary.Set)
[2020-03-08 18:39:07.549] [I] [zway] Adding job: SwitchBinary Set
...
Acknowledge (SwitchBinary.Set) is delivered:

Code: Select all

...
[2020-03-08 18:39:11.449] [I] [zway] Job 0x13 (SwitchBinary.Set): Delivered
...
So it takes 4 seconds in this example to deliver the SwitchBinary.Set command to the Tag Reader, after receiving the alert. But since the Tag Reader goes quickly again into sleep mode after sending the alert, it will not be ready anymore to receive the SwitchBinary.Set command. This command should be executed with a higher priority.
The log file that contains 3 sequence for 3 Tag Reader events has been attached. It contains further details about the stack activities (log level 0 has been used).
I hope you can give me an advice how the SwitchBinary.Set command can be returned quicker after getting the alert from the Tag Reader.
Thanks!
Attachments
z-way.7z
Z-Way log file for 3 BeNext/iHome Tag Reader events
(2.08 KiB) Downloaded 472 times
User avatar
PoltoS
Posts: 7562
Joined: 26 Jan 2011 19:36

Re: BeNext / iHome tag reader

Post by PoltoS »

The clue is here:

Code: Select all

[2020-03-08 18:39:07.548] [I] [core] Send acknowledge to Tag Reader 22 (SwitchBinary.Set)
[2020-03-08 18:39:07.549] [I] [zway] Adding job: SwitchBinary Set
[2020-03-08 18:39:07.549] [I] [zway] Adding job: SwitchBinary Get
[2020-03-08 18:39:11.180] [D] [zway] RECEIVED: ( 01 0C 00 04 00 16 02 84 07 BB 00 01 07 DD ) <--------------------
..
[2020-03-08 18:39:11.181] [I] [zway] Node 22:0 CC Wakeup: Wakeup notification
It is not allowed to send packets to sleeping devices unless they tell us to do that by sending a NIF or Wakeup notification. Because most of sensors are sending alarm notifications and goes into sleep ASAP. So to be able to send the SwitchBinary Set we have to wait for a Wakeup notification. Note that it comes 4!!! seconds after the actual Alarm. This is a device problem and should be fixed by BeNext.
Post Reply