Skip to content

Commit

Permalink
Merge pull request #103 from Luligu/dev
Browse files Browse the repository at this point in the history
Release 1.1.0
  • Loading branch information
Luligu authored Dec 14, 2024
2 parents b525329 + 4aea567 commit e8acf39
Show file tree
Hide file tree
Showing 10 changed files with 641 additions and 588 deletions.
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,32 @@ If you like this project and find it useful, please consider giving it a star on

You can also sponsor Tamer here https://buymeacoffee.com/6sjde6vkzl for his invaluable contribution to this project.

## [1.1.0] - 2024-12-14

### Added

- [package]: Verified to work with matterbridge edge (matter.js new API).
- [package]: Requires matterbridge 1.6.6.
- [shelly]: Remove from discovered devices the device with mongoose firmware. We ignore them.
- [shelly]: Add shellyIdentifyCommandHandler.
- [BLU]: Add validate against white and black list for BLU devices. If you put a shelly BLU in the white list, you need to put also his BLU gateway on the white list.
- [BLU]: Add global and single device component black list. You can now exclude a shelly component globally or on a device base (available also for BLU devices).
- [matter]: Add tagList to the descriptor cluster.

### Changed

- [shelly]: Refactor shellySwitchCommandHandler.
- [shelly]: Refactor shellyLightCommandHandler.
- [shelly]: Refactor shellyCoverCommandHandler.
- [colorControl]: Refactor configuration of the cluster.
- [electricalSensor]: Refactor electrical measurements initial configuration.
- [matter]: Update all device types.
- [package]: Updated dependencies.

<a href="https://www.buymeacoffee.com/luligugithub">
<img src="./yellow-button.png" alt="Buy me a coffee" width="120">
</a>

## [1.0.11] - 2024-12-04

### Added
Expand Down
28 changes: 22 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,9 @@ matterbridge

## How to use it

You may need to set some config values in the frontend (wait that the plugin has been configured before changing the config):
You may need to set some config values in the frontend.
Changing configuration after the controller is already paired may cause the controller to see the device as new devices and reset their configuration.
Wait that the plugin has been configured before changing the config.

### username

Expand Down Expand Up @@ -181,23 +183,35 @@ The devices in the list will expose the Input event component as a momentary swi

### exposePowerMeter

Choose how to expose the shelly power meters: disabled, matter13 (it uses Matter 1.3 electricalSensor device type that is supported by only by Home Assistant so far).
Choose how to expose the shelly power meters: disabled, matter13 (it uses Matter 1.3 electricalSensor device type that is supported only by Home Assistant so far).

### blackList

If the blackList is defined the devices included in the list will not be exposed to Matter. Use the device id (e.g. shellyplus2pm-5443B23D81F8)
If the blackList is defined the devices included in the list will not be exposed to Matter. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or the BLU addr (i.e. 7c:c6:b6:65:2d:87).

### whiteList

If the whiteList is defined only the devices included in the list are exposed to Matter. Use the device id (e.g. shellyplus2pm-5443B23D81F8).
If the whiteList is defined only the devices included in the list are exposed to Matter. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or the BLU addr (i.e. 7c:c6:b6:65:2d:87).
If you add a BLU device in the white list, you need to put also its BLU gateway on the list.

### entityBlackList

The components in the list will not be exposed for all devices. Use the component name (i.e. Temperature).

### deviceEntityBlackList

List of components not to be exposed for a single device. Enter in the first field the name of the device id (e.g. shellyplus2pm-5443B23D81F8 for wifi shelly devices or 7c:c6:b6:65:2d:87 for BLU shelly devices) and in the second field add all the component names (i.e. Temperature) or component ids (i.e. temperature:0) you want to exclude for that device.
Exammples:

- if you want the BLU motion to only have the motion component, add its device addr and in the list Illuminance and Button;

### nocacheList

The devices in the list will not be loaded from the cache. Use the device id (e.g. shellyplus2pm-5443B23D81F8). This is usefull and necessary if you change the the device configuration from the device web ui of from the Shelly app (e.g. changing from color to white or from switch to cover or adding other BLU devices to a ble gateway). In this case put the device id in the list and restart.

### deviceIp

You can put there one of more of your devices if they have problem with mdns (don't use it unless is needed).
You can put there one of more of your devices if they have problem with mdns (don't use it unless is needed cause the IP address is fixed).
E.g. "shelly1minig3-543204547478": "192.168.1.221"

### enableMdnsDiscover
Expand All @@ -223,7 +237,7 @@ Should be enabled to discover the shelly BLU devices (it will register the BLU d

### failsafeCount

Enable the failsafe count of the devices registered. If the plugin registers less devices then the configured number, the plugin will go in error mode. This is to avoid to loose the controller configuration in case of network issues (default 0 = disabled).
Enable the failsafe count of the devices registered. If the plugin registers less devices then the configured number, the plugin will go in error mode. This is to avoid to lose the controller configuration in case of network issues (default 0 = disabled).

### postfix

Expand Down Expand Up @@ -272,6 +286,8 @@ These are the config values:
"exposePowerMeter": "disabled" | "matter13"
"blackList": [],
"whiteList": [],
"entityBlackList": [],
"deviceEntityBlackList": {},
"nocacheList": [],
"deviceIp": {
"<DEVICEID1>": "x.x.x.x",
Expand Down
21 changes: 19 additions & 2 deletions matterbridge-shelly.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -95,19 +95,36 @@
"default": "disabled"
},
"blackList": {
"description": "The devices in the list will not be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8)",
"description": "The devices in the list will not be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or BLU addr (i.e. 7c:c6:b6:65:2d:87)",
"type": "array",
"items": {
"type": "string"
}
},
"whiteList": {
"description": "Only the devices in the list will be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8)",
"description": "Only the devices in the list will be exposed. Use the device id (e.g. shellyplus2pm-5443B23D81F8) or BLU addr (i.e. 7c:c6:b6:65:2d:87). If you add a BLU device in the white list, you need to put also its BLU gateway on the list.",
"type": "array",
"items": {
"type": "string"
}
},
"entityBlackList": {
"description": "The components in the list will not be exposed for all devices. Use the component name (i.e. Temperature)",
"type": "array",
"items": {
"type": "string"
}
},
"deviceEntityBlackList": {
"description": "List of components not to be exposed for a single device. Enter in the first field the name of the device id (e.g. shellyplus2pm-5443B23D81F8) and in the second field add all the component names (i.e. Temperature) or component ids (i.e. temperature:0) you want to exclude for that device.",
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"nocacheList": {
"description": "The devices in the list will not be loaded from the cache. Use the device id (e.g. shellyplus2pm-5443B23D81F8)",
"type": "array",
Expand Down
Loading

0 comments on commit e8acf39

Please sign in to comment.