Commit Graph
9 Commits
Author SHA1 Message Date
Martin HerbstandGitHub adecb53042 [homematic] Improve (re)connect handling to Homematic gateways (#11429)
* Use globally unique id for registration of callback to allow ...

the connection of multiple OH installations with one CCU.

The bridge id is not sufficient for this purpose because it is same in
all OH installations.


Signed-off-by: Martin Herbst <develop@mherbst.de>

* Retry callback re-registration after connection is resumed

Some services on the CCU need longer to start and are not available
immediately after the connection to the CCU has been resumed.

Improves the solution for #8808

Fixes #10439

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Description was missing.

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Changed setting name and description to avoid confusion


Signed-off-by: Martin Herbst <develop@mherbst.de>

* Added a troubleshooting tip to solve a communication problem


Signed-off-by: Martin Herbst <develop@mherbst.de>

* Shortened the label name to follow the guide lines

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Print more information about the reason for the failure

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Using scheduler thread pool and simplified configuration

Instead of configuring separate values for retry delays and number of
retries only the maximum time for retries can be configured.
The init method uses fixed delays.

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Don't retry to send if gateway does not answer at all

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Improved reconnect handling

- unregister callback not necessary if connection is lost
- wait 30s until clients and servers are restarted to give the gateway
some time to recover

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Spotless

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Cancel an active future if the binding is stopped

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-12-11 18:34:22 +01:00
Martin HerbstandGitHub b043d8f4bc [homematic] Provide additional null pointer checks (#10965)
* Fixed a rare NPE introduced while replacing commons-lang
* Provide additional null pointer checks

It is possible that the meta data returned for some device does not
contain a default or maximum value.

Fixes #10945
Fixes #10961

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-07-15 19:46:29 +02:00
Martin HerbstandGitHub 82dba8d400 [deconz] Set "ontime" option only if thing has got an ONTIME channel (#10829)
* Set "ontime" option only if thing has got an ONTIME channel

Fixes #10774

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-06-14 16:01:30 +02:00
Martin HerbstandGitHub 5533643a3a [homematic] Smaller fixes and conversion of properties files to UTF-8 (#10813)
* Prevent possible NPE

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Spotless

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Fixes missing unit information (especially for HmIP devices)

For some HmIP devices the "valueunit" attribute is empty and thus no
default unit type could be derived. Using the data point name solves
this problem (at least for the relevant data points).

Fixes #10533

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Condition result was wrong because of missing brackets

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Regenerated and reorganized descriptions


Signed-off-by: Martin Herbst <develop@mherbst.de>

* Encoding changed to UTF-8 and some smaller text corrections

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Use default value as maximum if is greater than received max value

For some devices the data point definition retrieved from the CCU
contains default values that are higher than the maximum value. In order
to allow the configuration of these config options the allowed maximum
value needs to be set to the default value.

Fixes #10552

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-06-06 18:53:51 +02:00
Martin HerbstandGitHub 45ec538a40 [homematic] Some fixes and support for new device versions (#10438)
* Removed method that was already marked as deprecated

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Handle HM-ES-TX-WM with firmware version >= 2.0 as different device

The device provides different data points (channels) depending on the
firmware version. Therefore devices with a firmware version >= 2.0 are
handled as a different device.

Fixes #9793

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Don't change uninitialized thing state automatically to online

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Listen to all network interfaces instead of limiting it to only one

This also makes the specification of a separate bind address
superfluous.

Fixes #9855

Fixes #10075

Signed-off-by: Martin Herbst <develop@mherbst.de>

* Add support for HmIP-eTRV-C-2 device

The event messages received for this device are not correctly formatted
and thus some special treatment for at least one data point is required.


Signed-off-by: Martin Herbst <develop@mherbst.de>

* Spotless formatting applied

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-04-04 19:04:37 +02:00
Martin HerbstandGitHub ac02141d0b [Homematic] Removed Apache Commons (#10035)
Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-02-08 23:26:56 +01:00
Martin HerbstandGitHub 706af08fb6 [homematic] Fix for two (re)connection problems (#9692)
* Replace deprecated constructors
* Removed no longer existing settings from the documentation. They were already marked as deprecated since several versions.
* Refactored communication with the HM gateway
- simplified coding for the communication with the gateway
- buffer size for communication is now configurable to avoid problems
with too small buffers
- Previous solution for #6963 was not sufficient. Should be finally done
with these changes
* Retrieving the duty cycle is sufficient to check connection
- ping requests could therefore be safely removed problems with the automatic reconnection were solved.
* Changed to explicit list of Exception

Fixes #8808

Signed-off-by: Martin Herbst <develop@mherbst.de>
2021-01-12 22:11:52 +01:00
Martin HerbstandGitHub 9cc0ff436f [homematic] For non HmIP dimmers stateDescription values must be corrected too (#9434)
Older HM dimmers are using a maximum values of 1.0. But also for these
devices the values must be corrected.

Signed-off-by: Martin Herbst <develop@mherbst.de>
2020-12-25 21:30:43 +01:00
Martin HerbstandGitHub 38876647ad [homematic] Better OH3 compatibility (#9102)
* Max value and format pattern were not correct for dimmers (Fixes #8799)
* Fixed calls to deprecates methods/constructors
* Make sure channelLinked is executed at restart (see also: https://github.com/openhab/openhab-core/issues/1707)

Signed-off-by: Martin Herbst <develop@mherbst.de>
2020-11-23 11:10:08 +01:00