Domoticz: BeNext door sensor no longer working since commit https://github.com/domoticz/domoticz/commit/68ee7a9b1

Created on 22 Dec 2020  路  6Comments  路  Source: domoticz/domoticz

Hi,

Extensive information can be found here: https://www.domoticz.com/forum/viewtopic.php?f=24&t=33505&p=264243#p264243

I've verified the bug by buying new components and only building a ZW network from with the Aeotec Gen5 Stick and a BeNext door sensor.

Sensor info:
BeNext Door Sensor | BeNext | 0x0101 | 0x0004

Commit # https://github.com/domoticz/domoticz/commit/68ee7a9b1 makes Domoticz no longer "process" updates from the sensor which the sensor still transmits over the air to the ZWave Controller correctly.

It last WORKED in "11033 | 8faa48dc9 | 20190727 | Bugfix: Resolved problem with HTTP Protocol Listen broken by previous fix.".
It does NO LONGER WORK since "11034 | 68ee7a9b1 | 20190727 | OZW, better battery support"
It does NO LONGER WORK in current domoticz releases.

Source of commit info: https://www.domoticz.com/wiki/Domoticz_version_table_V4
I've built on Debian 10.7 using libboost 1.72.0 and the current OpenZWave master (1.6+). OZW version is: Version: 1.6-1570-ga9d57fcc

===

I did a "git revert 68ee7a9b1" on top of "git checkout 2020.2" and it did NOT work. Looking through "hardware/OpenZWave.cpp" ( https://github.com/domoticz/domoticz/blob/development/hardware/OpenZWave.cpp ) , I've found this is also required to make it work again:

Patch: https://github.com/Catfriend1/domoticz/commit/8912f35408cfcd141d0a22409bff5b6875a849c2

Original spot of the 2nd problem: https://github.com/domoticz/domoticz/blob/28537b5bbc0e4d88e99ca3540e354f7964687f7c/hardware/OpenZWave.cpp#L2503

I don't know Domoticz code in deep so please patch it properly.

To sum up: Two commits are required to be reverted/corrected to make the BeNext door sensor work again.
commit 1: https://github.com/domoticz/domoticz/commit/68ee7a9b1
commit 2: https://github.com/domoticz/domoticz/commit/130020b3689cdfcad23c1f8e81762d3df77dabe8

Thank you.

Kind regards,
Catfriend1

Most helpful comment

Excellent, many of my devices that were listed as timed out are now showing updated values again. This fixes all the 'device was updated once after inclusion but never updated after that' issues. THANK YOU!

All 6 comments

Cc @kiddigital

I've put a line

_log.Log(LOG_ERROR, "OpenZWave: TEST: %d %d %d", EventID, index, instance);

in "OpenZWave.cpp" at "COpenZWave::UpdateNodeEvent".

The BeNext sensor triggering leads to the following output:

2020-12-22 21:43:03.037  Error: OpenZWave: TEST: 255 0 0
2020-12-22 21:43:05.143  Error: OpenZWave: TEST: 0 0 0

where 255 means "on / open" and
0 means "off /closed".

See https://github.com/domoticz/domoticz/compare/development...Catfriend1:fixBeNext

Now I need a dev to make the "dirty fix" a proper one.

I'd suggest instead of "if (commandclass == COMMAND_CLASS_NO_OPERATION) return"

    if (commandclass != COMMAND_CLASS_NO_OPERATION && !m_pManager->IsValueValid(vID))
            return;

at https://github.com/domoticz/domoticz/blob/28537b5bbc0e4d88e99ca3540e354f7964687f7c/hardware/OpenZWave.cpp#L2522

I've tested this applied on top of 2020.2 stable and it works fine.

Thank you for your research and time. Patch looks perfect! I will merge it right away!

Excellent, many of my devices that were listed as timed out are now showing updated values again. This fixes all the 'device was updated once after inclusion but never updated after that' issues. THANK YOU!

I personally think this fix should result in a new official 2020.3 release.

@rrozema , yes there are plans for a new release soon... Any addition or fix is worth a new stable

Was this page helpful?
0 / 5 - 0 ratings

Related issues

JurikRistjouw picture JurikRistjouw  路  7Comments

Hydci picture Hydci  路  7Comments

PierreLevres picture PierreLevres  路  21Comments

bxlouis picture bxlouis  路  20Comments

empierre picture empierre  路  17Comments