iobroker.zigbee 1.7.3 → 1.7.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -4
- package/admin/admin.js +3 -2
- package/admin/img/MLI-404011-MLI-404049.png +0 -0
- package/admin/words.js +20 -21
- package/io-package.json +18 -2
- package/lib/devices.js +2 -2
- package/lib/statescontroller.js +17 -13
- package/lib/zbDeviceConfigure.js +11 -4
- package/lib/zigbeecontroller.js +11 -6
- package/package.json +3 -3
- package/admin/img/zbt_remote.png +0 -0
- package/docs/de/img/CC2531.png +0 -0
- package/docs/de/img/CC2538_CC2592_PA.PNG +0 -0
- package/docs/de/img/CC2591.png +0 -0
- package/docs/de/img/boards.jpg +0 -0
- package/docs/de/img/cc26x2r.PNG +0 -0
- package/docs/de/img/results.jpg +0 -0
- package/docs/de/img/sku_429478_2.png +0 -0
- package/docs/de/img/sku_429601_2.png +0 -0
- package/docs/de/readme.md +0 -27
- package/docs/en/img/CC2531.png +0 -0
- package/docs/en/img/CC2591.png +0 -0
- package/docs/en/img/deconz.png +0 -0
- package/docs/en/img/sku_429478_2.png +0 -0
- package/docs/en/img/sku_429601_2.png +0 -0
- package/docs/en/readme.md +0 -30
- package/docs/flashing_via_arduino_(en).md +0 -110
- package/docs/ru/img/CC2531.png +0 -0
- package/docs/ru/img/CC2591.png +0 -0
- package/docs/ru/img/sku_429478_2.png +0 -0
- package/docs/ru/img/sku_429601_2.png +0 -0
- package/docs/ru/readme.md +0 -28
- package/docs/tutorial/CC2530_20190425.zip +0 -0
- package/docs/tutorial/CC2530_CC2591_20190515.zip +0 -0
- package/docs/tutorial/CC2530_CC2592_20190515.zip +0 -0
- package/docs/tutorial/CC2531_20190425.zip +0 -0
- package/docs/tutorial/adm5_1.PNG +0 -0
- package/docs/tutorial/adm5_2.PNG +0 -0
- package/docs/tutorial/cat.PNG +0 -0
- package/docs/tutorial/groups-1.png +0 -0
- package/docs/tutorial/groups-2.png +0 -0
- package/docs/tutorial/inst.PNG +0 -0
- package/docs/tutorial/reflash-finish.PNG +0 -0
- package/docs/tutorial/reflash-step0.png +0 -0
- package/docs/tutorial/reflash-step1.PNG +0 -0
- package/docs/tutorial/reflash-step2.PNG +0 -0
- package/docs/tutorial/settings.png +0 -0
- package/docs/tutorial/tab-dev-1.png +0 -0
- package/docs/tutorial/zigbee.png +0 -0
- package/docs/tutorial/zigbee15.png +0 -0
package/README.md
CHANGED
|
@@ -50,12 +50,14 @@ While Conbee/RaspBee Support is no longer considered experimental in the zigbee-
|
|
|
50
50
|
- device map metrics may be incorrect
|
|
51
51
|
- NVRam Backup is not supported.
|
|
52
52
|
|
|
53
|
-
### Silicon Labs
|
|
53
|
+
### Silicon Labs SoC
|
|
54
54
|
|
|
55
|
-
Support for
|
|
55
|
+
Support for [Silicon Lab Zigbee](https://www.silabs.com/wireless/zigbee) based adapters is experimental. The initial support for EZSP v8 is still not yet considered stable and the project is in need of more developers volenteering to help with this integration. Please refer to the respective documentation on [this page](https://www.zigbee2mqtt.io/guide/adapters/) and [ongoing development discussion](https://github.com/Koenkk/zigbee-herdsman/issues/319) with regards to the state of Silabs EmberZNet Serial Protocol (EZSP) adapter implementation integration into the zigbee-herdsman and zigbee-herdsman-converters libraries which it depends on.
|
|
56
56
|
|
|
57
57
|
|
|
58
|
+
### ZiGate SoC
|
|
58
59
|
|
|
60
|
+
Support for [ZiGate](https://zigate.fr) based adapters is experimental. The initial support for ZiGate is still not yet considered stable and the project is in need of more developers volenteering to help with this integration. Please refer to the respective documentation on [this page](https://www.zigbee2mqtt.io/guide/adapters/) and [ongoing development discussion](https://github.com/Koenkk/zigbee-herdsman/issues/242) with regards to the state of ZiGate adapter implementation into the zigbee-herdsman and zigbee-herdsman-converters libraries which it depends on.
|
|
59
61
|
|
|
60
62
|
|
|
61
63
|
## Work with adapter
|
|
@@ -131,8 +133,15 @@ You can thank the authors by these links:
|
|
|
131
133
|
|
|
132
134
|
|
|
133
135
|
## Changelog
|
|
134
|
-
### 1.7.
|
|
135
|
-
|
|
136
|
+
### 1.7.6 (2022-07-23)
|
|
137
|
+
* (kirovilya) fix selecting nodes in admin
|
|
138
|
+
* (arteck) ikea fix
|
|
139
|
+
|
|
140
|
+
### 1.7.5 (2022-06-01)
|
|
141
|
+
* (arteck) error message for undefined devices or icons
|
|
142
|
+
|
|
143
|
+
### 1.7.4 (2022-05-30)
|
|
144
|
+
* (arteck) missing icons with multiple description
|
|
136
145
|
|
|
137
146
|
### 1.7.2 (2022-05-28)
|
|
138
147
|
* (arteck) download missing icons corr
|
package/admin/admin.js
CHANGED
|
@@ -1271,13 +1271,14 @@ function showNetworkMap(devices, map){
|
|
|
1271
1271
|
// may be moved to edge.chosen.label if fixed
|
|
1272
1272
|
function doSelection(select, edges, data) {
|
|
1273
1273
|
edges.forEach((edgeId => {
|
|
1274
|
-
const
|
|
1274
|
+
const id = (typeof edgeId === 'string') ? edgeId : edgeId.id;
|
|
1275
|
+
const options = data.edges._data.get(id);
|
|
1275
1276
|
if (select) {
|
|
1276
1277
|
options.font.size = 15;
|
|
1277
1278
|
} else {
|
|
1278
1279
|
options.font.size = 0;
|
|
1279
1280
|
}
|
|
1280
|
-
network.clustering.updateEdge(
|
|
1281
|
+
network.clustering.updateEdge(id, options);
|
|
1281
1282
|
}));
|
|
1282
1283
|
}
|
|
1283
1284
|
|
|
Binary file
|
package/admin/words.js
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
systemDictionary = {
|
|
5
|
-
"Add binding": { "en": "Add binding", "de": "
|
|
5
|
+
"Add binding": { "en": "Add binding", "de": "Binding hinzufügen", "ru": "Добавить привязку", "pt": "Adicionar ligação", "nl": "Voeg binding toe", "fr": "Ajouter une liaison", "it": "Aggiungi associazione", "es": "Agregar enlace", "pl": "Dodaj wiązanie", "zh-cn": "绑定"},
|
|
6
6
|
"Add group": { "en": "Add group", "de": "Füge Gruppe hinzu", "ru": "Добавить группу", "pt": "Adicionar grupo", "nl": "Groep toevoegen", "fr": "Ajouter un groupe", "it": "Aggiungere gruppo", "es": "Añadir grupo", "pl": "Dodaj grupę", "zh-cn": "新增群组"},
|
|
7
7
|
"Attribute ID": { "en": "Attribute ID", "de": "Attribut-ID", "ru": "ID атрибута", "pt": "ID do atributo", "nl": "Kenmerk-ID", "fr": "ID d'attribut", "it": "ID attributo", "es": "ID de atributo", "pl": "Identyfikator atrybutu", "zh-cn": "属性ID"},
|
|
8
|
-
"Binding": { "en": "Binding", "de": "
|
|
9
|
-
"Binding configuration": { "en": "Binding configuration", "de": "
|
|
8
|
+
"Binding": { "en": "Binding", "de": "Binding", "ru": "Привязка", "pt": "Ligação", "nl": "Verbindend", "fr": "Contraignant", "it": "Rilegatura", "es": "Unión", "pl": "połączenie", "zh-cn": "捆绑"},
|
|
9
|
+
"Binding configuration": { "en": "Binding configuration", "de": "Binding konfiguration", "ru": "Конфигурация привязки", "pt": "Configuração de ligação", "nl": "Bindende configuratie", "fr": "Configuration de la liaison", "it": "Configurazione vincolante", "es": "Configuración de enlace", "pl": "Konfiguracja wiązania", "zh-cn": "绑定配置"},
|
|
10
10
|
"COM port name": { "en": "COM port name", "de": "COM-Anschlussname", "ru": "Имя или адрес порта", "pt": "Nome da porta COM", "nl": "COM-poortnaam", "fr": "Nom du port COM", "it": "Nome della porta COM", "es": "Nombre del puerto COM", "pl": "Nazwa portu COM", "zh-cn": "设备端口"},
|
|
11
11
|
"Cancel": { "en": "Cancel", "de": "Abbrechen", "ru": "Отмена", "pt": "Cancelar", "nl": "Annuleren", "fr": "Annuler", "it": "Annulla", "es": "Cancelar", "pl": "Anuluj", "zh-cn": "取消"},
|
|
12
12
|
"Channel": { "en": "Channel", "de": "Kanal", "ru": "Канал", "pt": "Canal", "nl": "Kanaal", "fr": "Canal", "it": "Canale", "es": "Canal", "pl": "Kanał", "zh-cn": "信道"},
|
|
@@ -19,7 +19,7 @@ systemDictionary = {
|
|
|
19
19
|
"Command": { "en": "Command", "de": "Befehl", "ru": "Команда", "pt": "Comando", "nl": "Commando", "fr": "Commande", "it": "Comando", "es": "Mando", "pl": "Komenda", "zh-cn": "命令"},
|
|
20
20
|
"Command Type": { "en": "Command type", "de": "Befehlstyp", "ru": "Тип команды", "pt": "Tipo de Comando", "nl": "Commando type", "fr": "Type de commande", "it": "Tipo di comando", "es": "Tipo de comando", "pl": "Typ polecenia", "zh-cn": "命令类型"},
|
|
21
21
|
"Configure reporting": { "en": "Configure reporting", "de": "Konfigurieren Sie die Berichterstellung", "ru": "Настроить отчеты", "pt": "Configurar relatórios", "nl": "Configureer rapportage", "fr": "Configurer les rapports", "it": "Configura i rapporti", "es": "Configurar informes", "pl": "Skonfiguruj raportowanie", "zh-cn": "配置报告"},
|
|
22
|
-
"Countdown": { "en": "Countdown between 0 and 255 sec",
|
|
22
|
+
"Countdown": { "en": "Countdown between 0 and 255 sec during the pairing of new Zigbee components with the coordinator.", "de": "Countdown zwischen 0 und 255 Sek während der Kopplung neuer Zigbeekomponenten mit dem Koordinator", "ru": "Обратный отсчет от 0 до 255 секунд во время сопряжения новых компонентов Zigbee с координатором.", "pt": "Contagem regressiva entre 0 e 255 seg", "nl": "Aftellen tussen 0 en 255 sec tijdens het pairen van nieuwe Zigbee componenten met de coördinator.", "fr": "Compte à rebours entre 0 et 255 sec pendant l'assemblage de nouveaux composants Zigbee avec le coordinateur.", "it": "Conto alla rovescia tra 0 e 255 sec", "es": "Cuenta atrás entre 0 y 255 seg.", "pl": "Countdown między 0 a 255 sekundem podczas parowania nowych komponentów Zigbee z koordynatorem", "zh-cn": "倒计时(0-255秒)"},
|
|
23
23
|
"Delete confirmation": { "en": "Delete confirmation", "de": "Löschen bestätigen", "ru": "Подтвердите удаление", "pt": "Excluir confirmação", "nl": "Bevestig verwijderen", "fr": "Confirmer la suppression", "it": "Cancella conferma", "es": "Eliminar confirmación", "pl": "Usuń potwierdzenie", "zh-cn": "确认删除?"},
|
|
24
24
|
"Developer": { "en": "Developer", "de": "Entwickler", "ru": "Разработчику", "pt": "Developer", "nl": "Ontwikkelaar", "fr": "Développeur", "it": "Developer", "es": "Developer", "pl": "Developer", "zh-cn": "开发者页面"},
|
|
25
25
|
"Device": { "en": "Device", "de": "Gerät", "ru": "Устройство", "pt": "Dispositivo", "nl": "Apparaat", "fr": "Dispositif", "it": "Dispositivo", "es": "Dispositivo", "pl": "Urządzenie", "zh-cn": "设备"},
|
|
@@ -32,7 +32,7 @@ systemDictionary = {
|
|
|
32
32
|
"Do you really want to delete device": { "en": "Do you really want to delete the device?", "de": "Möchtest du das Gerät wirklich löschen?", "ru": "Вы действительно хотите удалить устройство?", "pt": "Você realmente quer deletar o dispositivo", "nl": "Weet je zeker dat je het apparaat wilt verwijderen?", "fr": "Voulez-vous vraiment supprimer le dispositif ?", "it": "Vuoi davvero eliminare il dispositivo", "es": "¿Realmente quieres borrar dispositivo?", "pl": "Czy naprawdę chcesz usunąć urządzenie?", "zh-cn": "确定要删除设备?"},
|
|
33
33
|
"Endpoint": { "en": "Endpoint", "de": "Endpunkt", "ru": "Конечная точка", "pt": "Endpoint", "nl": "Eindpunt", "fr": "Extrémité", "it": "Endpoint", "es": "Punto final", "pl": "Punkt końcowy", "zh-cn": "终点"},
|
|
34
34
|
"Enter new name": { "en": "Enter new name", "de": "Neuen Namen eingeben", "ru": "Введите новое имя", "pt": "Digite um novo nome", "nl": "Voer een nieuwe naam in", "fr": "Entrez un nouveau nom", "it": "Inserisci un nuovo nome", "es": "Ingresa un nuevo nombre", "pl": "Wprowadź nową nazwę", "zh-cn": "输入新设备名"},
|
|
35
|
-
"Examples:": { "en": "Examples:", "de": "Beispiele:", "ru": "Примеры:", "pt": "Exemplos:", "nl": "Voorbeelden:", "fr": "Exemples
|
|
35
|
+
"Examples:": { "en": "Examples:", "de": "Beispiele:", "ru": "Примеры:", "pt": "Exemplos:", "nl": "Voorbeelden:", "fr": "Exemples", "it": "Esempi:", "es": "Ejemplos:", "pl": "Przykłady:", "zh-cn": "例子:"},
|
|
36
36
|
"Expert Mode": { "en": "Expert Mode", "de": "Expertenmodus", "ru": "Экспертный режим", "pt": "Modo especialista", "nl": "Expert modus", "fr": "Mode Expert", "it": "Modalità esperto", "es": "Modo experto", "pl": "Expert Mode", "zh-cn": "专家模式"},
|
|
37
37
|
"ExtPanID": { "en": "Extended Pan ID", "de": "Erweiterte Pan ID", "ru": "Расширенный идентификатор ExtPanID", "pt": "ID de panela estendida", "nl": "Uitgebreide pan-ID", "fr": "ID Pan étendue", "it": "ID Pan esteso", "es": "ID de bandeja extendida", "pl": "Extended Pan ID", "zh-cn": "扩展Pan ID"},
|
|
38
38
|
"ExtPanIDText": { "en": "Extended PAN ID is the main network id, comparable to SSID of wifi networks. This id must never change for existing networks, else you have to reset and repair your devices. If you use multiple Zigbee adapters, you <b>must make sure</b> that they use unique Extended PAN IDs. Just enter 16 random hex character (a-f and 0-9).", "de": "Die erweiterte PAN-ID ist die Hauptnetzwerk-ID, vergleichbar mit der SSID von WLAN-Netzwerken. Diese ID darf sich für vorhandene Netzwerke niemals ändern, da Sie sonst deine Geräte zurücksetzen und Sie neu koppeln müssen. Wenn Sie mehrere ZigBee-Adapter verwenden, <b>müssen Sie sicherstellen,</b> dass diese eindeutige ExtPanIDs verwenden. Geben Sie einfach 16 zufällige Hex-Zeichen ein (a-f und 0-9).", "ru": "Расширенный PAN ID - это основной идентификатор сети, сравнимый с SSID сетей Wi-Fi. Этот идентификатор никогда не должен изменяться для существующих сетей, иначе вам придется перезагрузить и восстановить свои устройства. Если вы используете несколько адаптеров Zigbee, вы <b>должны убедиться,</b> что они используют уникальные ExtPanID. Просто введите 16 случайных шестнадцатеричных символов (af и 0-9).", "pt": "PAN ID estendido é o ID de rede principal, comparável ao SSID de redes wi-fi. Esta identificação nunca deve ser alterada para redes existentes, caso contrário, você terá que redefinir e reparar seus dispositivos. Se você usar vários adaptadores Zigbee, <b>certifique-se de</b> que eles usam ExtPanIDs exclusivos. Basta inserir 16 caracteres hexadecimais aleatórios (af e 0-9).", "nl": "Uitgebreide PAN-ID is het hoofdnetwerk-ID, vergelijkbaar met de SSID van wifi-netwerken. Dit ID mag nooit veranderen voor bestaande netwerken, anders moet je alle apparaten resetten en opnieuw aanleren. Als je meerdere Zigbee-adapters gebruikt, <b>moet je ervoor zorgen</b> dat ze unieke ExtPanID's gebruiken. Voer gewoon 16 willekeurige hexadecimale tekens in (a-f en 0-9).", "fr": "ID PAN étendue est l'identifiant principal du réseau, comparable au SSID des réseaux wifi. Cet identifiant ne doit jamais changer pour les réseaux existants, sinon vous devez réinitialiser et re-coupler vos appareils. Si vous utilisez plusieurs adaptateurs Zigbee, vous <b>devez vous assurer</b> qu'ils utilisent des ExtPanID uniques. Entrez simplement 16 caractères hexadécimaux aléatoires (a-f et 0-9).", "it": "Il PAN ID esteso è l'id della rete principale, paragonabile all'SSID delle reti wifi. Questo ID non deve mai cambiare per le reti esistenti, altrimenti devi ripristinare e riparare i tuoi dispositivi. Se si utilizzano più adattatori Zigbee, è <b>necessario assicurarsi</b> che utilizzino ExtPanID univoci. Basta inserire 16 caratteri esadecimali casuali (af e 0-9).", "es": "El ID de PAN extendido es el ID de red principal, comparable al SSID de las redes wifi. Esta identificación nunca debe cambiar para las redes existentes, de lo contrario, debe restablecer y reparar sus dispositivos. Si utiliza varios adaptadores Zigbee, <b>debe asegurarse de</b> que utilicen ExtPanID únicos. Simplemente ingrese 16 caracteres hexadecimales aleatorios (af y 0-9).", "pl": "Rozszerzony identyfikator PAN jest głównym identyfikatorem sieci, porównywalnym z identyfikatorem SSID sieci Wi-Fi. Ten identyfikator nigdy nie może się zmieniać w istniejących sieciach, w przeciwnym razie musisz zresetować i naprawić swoje urządzenia. Jeśli używasz wielu adapterów Zigbee, musisz <b>upewnić się</b> , że używają one unikalnych identyfikatorów ExtPanID. Wystarczy wpisać 16 losowych znaków szesnastkowych (af i 0-9).", "zh-cn": "扩展PAN ID是主要网络ID,与wifi网络的SSID相当。对于现有网络,此ID绝不能更改,否则您必须重置和修复设备。如果使用多个Zigbee适配器,则<b>必须确保</b>它们使用唯一的ExtPanID。只需输入16个随机十六进制字符(af和0-9)。"},
|
|
@@ -40,21 +40,21 @@ systemDictionary = {
|
|
|
40
40
|
"Groups": { "en": "Groups", "de": "Gruppen", "ru": "Группы", "pt": "Grupos", "nl": "Groepen", "fr": "Groupes", "it": "Groups", "es": "Groups", "pl": "Grupy", "zh-cn": "分组信息"},
|
|
41
41
|
"Hard-Reset": { "en": "Hard reset", "de": "Hard-Reset", "ru": "Аппаратный сброс", "pt": "Hard-Reset", "nl": "Harde reset", "fr": "Réinitialisation matérielle", "it": "Hard-Reset", "es": "Restablecimiento completo", "pl": "Hard reset", "zh-cn": "硬重置"},
|
|
42
42
|
"Hide": { "en": "Hide", "de": "Ausblenden", "ru": "Скрыть", "pt": "ocultar", "nl": "Verbergen", "fr": "Cacher", "it": "Nascondere", "es": "Esconder", "pl": "Ukryj", "zh-cn": "隐藏"},
|
|
43
|
-
"Let's pairing!": { "en": "Let's start pairing!", "de": "Kopplung jetzt starten!", "ru": "Запуск сопряжения устройств!", "pt": "Vamos emparelhar!", "nl": "Laten we verbinding maken!", "fr": "Apparions!",
|
|
43
|
+
"Let's pairing!": { "en": "Let's start pairing!", "de": "Kopplung jetzt starten!", "ru": "Запуск сопряжения устройств!", "pt": "Vamos emparelhar!", "nl": "Laten we verbinding maken!", "fr": "Apparions !", "it": "Facciamo coppia!", "es": "Vamos a emparejar!", "pl": "Wystartuj łączenie!", "zh-cn": "开始配对!"},
|
|
44
44
|
"Map view config": { "en": "Map view config", "de": "Kartenansicht konfigurieren", "ru": "Настройки представления", "pt": "Map view config", "nl": "Map weergave configuratie", "fr": "Map view config", "it": "Map view config", "es": "Map view config", "pl": "Konfiguracja mapy", "zh-cn": "配置组网页面"},
|
|
45
45
|
"Name": { "en": "Name", "de": "Name", "ru": "Имя", "pt": "Nome", "nl": "Naam", "fr": "Nom", "it": "Nome", "es": "Nombre", "pl": "Imię", "zh-cn": "名称"},
|
|
46
46
|
"Needs value": { "en": "Needs value", "de": "Ein Wert wird benötigt", "ru": "Требуется значение", "pt": "Precisa de valor", "nl": "Heeft waarde nodig", "fr": "Besoin de valeur", "it": "Ha bisogno di valore", "es": "Necesita valor", "pl": "Potrzebuje wartości", "zh-cn": "需要价值"},
|
|
47
47
|
"Network map": { "en": "Network map", "de": "Netzwerkkarte", "ru": "Карта сети", "pt": "Mapa de rede", "nl": "Netwerkkaart", "fr": "Carte du réseau", "it": "Mappa di rete", "es": "Mapa de red", "pl": "Mapa sieci", "zh-cn": "组网状态"},
|
|
48
48
|
"Pairing process": { "en": "Pairing process", "de": "Kopplungsfortschritt", "ru": "Процесс спаривания", "pt": "Processo de emparelhamento", "nl": "Koppelingsproces", "fr": "Processus d'appariement", "it": "Processo di accoppiamento", "es": "Proceso de emparejamiento", "pl": "parowanie", "zh-cn": "配对进度"},
|
|
49
49
|
"PanID": { "en": "Pan ID", "de": "Pan ID", "ru": "PAN ID", "pt": "Pan ID", "nl": "Pan-ID", "fr": "ID de casserole", "it": "Pan ID", "es": "Pan ID", "pl": "Pan ID", "zh-cn": "潘ID"},
|
|
50
|
-
"PanIDText": { "en": "Pan ID is some simplified id (is used by Zigbee instead of ExtPanID wherever possible). This should be unique too. Note: the Zigbee network may choose a different Pan ID than you specified here in case it detects id conflicts.", "de": "Pan ID ist eine vereinfachte ID (wird von Zigbee anstelle von ExtPanID verwendet, wo immer dies möglich ist). Dies sollte auch einzigartig sein. Hinweis: Das ZigBee-Netzwerk wählt möglicherweise eine andere Pan-ID als die hier angegebene, falls ID-Konflikte erkannt werden.", "ru": "PAN ID - это некоторый упрощенный идентификатор (используется Zigbee вместо ExtPanID, где это возможно). Это тоже должно быть уникальным. Примечание: сеть Zigbee может выбрать другой Pan ID, чем вы указали здесь, в случае обнаружения конфликтов идентификаторов.", "pt": "Pan ID é um id simplificado (é usado pelo Zigbee em vez do ExtPanID sempre que possível). Isso também deve ser único. Nota: a rede Zigbee pode escolher um Pan ID diferente do que você especificou aqui, caso detecte conflitos de id.", "nl": "Pan ID is een vereenvoudigde ID (wordt waar mogelijk gebruikt door Zigbee in plaats van ExtPanID). Dit moet ook uniek zijn. Opmerking: het Zigbee-netwerk kan een andere Pan-ID kiezen dan je hier hebt opgegeven voor het geval het ID-conflicten detecteert.", "fr": "Pan ID est un identifiant simplifié (utilisé par Zigbee au lieu d'ExtPanID dans la mesure du possible). Cela devrait également être unique. Remarque: le réseau Zigbee peut choisir un ID de panoramique différent de celui que vous avez spécifié ici au cas où il détecte des conflits d'ID.", "it": "Pan ID è un id semplificato (è usato da Zigbee invece di ExtPanID ove possibile). Anche questo dovrebbe essere unico. Nota: la rete Zigbee può scegliere un ID Pan diverso da quello specificato qui nel caso in cui rilevi conflitti di ID.", "es": "Pan ID es una identificación simplificada (es utilizada por Zigbee en lugar de ExtPanID siempre que sea posible). Esto también debería ser único. Nota: La red Zigbee puede elegir un ID de Pan diferente al que especificó aquí en caso de que detecte conflictos de ID.", "pl": "Pan ID to uproszczony identyfikator (jest używany przez Zigbee zamiast ExtPanID, gdy tylko jest to możliwe). To też powinno być wyjątkowe. Uwaga: sieć Zigbee może wybrać inny identyfikator Pan ID niż podany tutaj, na wypadek wykrycia konfliktów identyfikatorów.", "zh-cn": "Pan ID是一些简化的ID(在可能的情况下,Zigbee使用它而不是ExtPanID)。这也应该是唯一的。注意:如果Zigbee网络检测到ID冲突,则可能会选择与此处指定的Pan ID不同的Pan ID。"},
|
|
51
|
-
"Parent/Child/Unknown": { "en": "Parent/Child/Unknown", "de": "Parent/Child/Unbekannt", "ru": "Родитель/Ребенок", "pt": "Parent/Child/Unknown", "nl": "Parent/Child/Unknown", "fr": "Parent/
|
|
50
|
+
"PanIDText": { "en": "Pan ID is some simplified id (is used by Zigbee instead of ExtPanID wherever possible). This should be unique too. Note: the Zigbee network may choose a different Pan ID than you specified here in case it detects id conflicts.", "de": "Pan ID ist eine vereinfachte ID (wird von Zigbee anstelle von ExtPanID verwendet, wo immer dies möglich ist). Dies sollte auch einzigartig sein. Hinweis: Das ZigBee-Netzwerk wählt möglicherweise eine andere Pan-ID als die hier angegebene, falls ID-Konflikte erkannt werden.", "ru": "PAN ID - это некоторый упрощенный идентификатор (используется Zigbee вместо ExtPanID, где это возможно). Это тоже должно быть уникальным. Примечание: сеть Zigbee может выбрать другой Pan ID, чем вы указали здесь, в случае обнаружения конфликтов идентификаторов.", "pt": "Pan ID é um id simplificado (é usado pelo Zigbee em vez do ExtPanID sempre que possível). Isso também deve ser único. Nota: a rede Zigbee pode escolher um Pan ID diferente do que você especificou aqui, caso detecte conflitos de id.", "nl": "Pan ID is een vereenvoudigde ID (wordt waar mogelijk gebruikt door Zigbee in plaats van ExtPanID). Dit moet ook uniek zijn. Opmerking: het Zigbee-netwerk kan een andere Pan-ID kiezen dan je hier hebt opgegeven voor het geval het ID-conflicten detecteert.", "fr": "Pan ID est un identifiant simplifié (utilisé par Zigbee au lieu d'ExtPanID dans la mesure du possible). Cela devrait également être unique. Remarque : le réseau Zigbee peut choisir un ID de panoramique différent de celui que vous avez spécifié ici au cas où il détecte des conflits d'ID.", "it": "Pan ID è un id semplificato (è usato da Zigbee invece di ExtPanID ove possibile). Anche questo dovrebbe essere unico. Nota: la rete Zigbee può scegliere un ID Pan diverso da quello specificato qui nel caso in cui rilevi conflitti di ID.", "es": "Pan ID es una identificación simplificada (es utilizada por Zigbee en lugar de ExtPanID siempre que sea posible). Esto también debería ser único. Nota: La red Zigbee puede elegir un ID de Pan diferente al que especificó aquí en caso de que detecte conflictos de ID.", "pl": "Pan ID to uproszczony identyfikator (jest używany przez Zigbee zamiast ExtPanID, gdy tylko jest to możliwe). To też powinno być wyjątkowe. Uwaga: sieć Zigbee może wybrać inny identyfikator Pan ID niż podany tutaj, na wypadek wykrycia konfliktów identyfikatorów.", "zh-cn": "Pan ID是一些简化的ID(在可能的情况下,Zigbee使用它而不是ExtPanID)。这也应该是唯一的。注意:如果Zigbee网络检测到ID冲突,则可能会选择与此处指定的Pan ID不同的Pan ID。"},
|
|
51
|
+
"Parent/Child/Unknown": { "en": "Parent/Child/Unknown", "de": "Parent/Child/Unbekannt", "ru": "Родитель/Ребенок", "pt": "Parent/Child/Unknown", "nl": "Parent/Child/Unknown", "fr": "Parent/Enfant/Inconnu", "it": "Parent/Child/Unknown", "es": "Parent/Child/Unknown", "pl": "Parent/Child/Unknown", "zh-cn": "父设备/子设备/未知设备"},
|
|
52
52
|
"Please contribute your discoveries": { "en": "Please contribute your discoveries", "de": "Bitte geben Sie uns Ihre Vorschläge", "ru": "Пожалуйста, поделитесь своими открытиями", "pt": "Por favor, contribua com suas descobertas", "nl": "Draag alstublieft uw ontdekkingen bij", "fr": "Merci de contribuer vos découvertes", "it": "Per favore contribuisci con le tue scoperte", "es": "Contribuya con sus descubrimientos", "pl": "Prosimy o wkład w swoje odkrycia", "zh-cn": "请贡献你的发现"},
|
|
53
|
-
"Previous Parents": { "en": "Previous Parents", "de": "Letzte Parents", "ru": "Предыдущие родители", "pt": "Previous Parents", "nl": "Previous Parents", "fr": "
|
|
53
|
+
"Previous Parents": { "en": "Previous Parents", "de": "Letzte Parents", "ru": "Предыдущие родители", "pt": "Previous Parents", "nl": "Previous Parents", "fr": "Parents précédents", "it": "Previous Parents", "es": "Previous Parents", "pl": "ostatnie połączenie", "zh-cn": "前父设备"},
|
|
54
54
|
"Read Firmware": { "en": "Read Firmware", "de": "Firmware lesen", "ru": "Прочитать прошивку", "pt": "Ler Firmware", "nl": "Lees Firmware", "fr": "Lire le micrologiciel", "it": "Leggi il firmware", "es": "Leer firmware", "pl": "Przeczytaj oprogramowanie sprzętowe", "zh-cn": "读取固件"},
|
|
55
55
|
"Refresh": { "en": "Refresh", "de": "Aktualisieren", "ru": "Обновить", "pt": "Atualizar", "nl": "Vernieuwen", "fr": "Rafraîchir", "it": "ricaricare", "es": "Actualizar", "pl": "Refresh", "zh-cn": "刷新"},
|
|
56
56
|
"Rename device": { "en": "Rename device", "de": "Gerät umbenennen", "ru": "Переименовать устройство", "pt": "Renomear dispositivo", "nl": "Apparaat hernoemen", "fr": "Renommer le dispositif", "it": "Rinomina dispositivo", "es": "Renombrar dispositivo", "pl": "Zmień nazwę urządzenia", "zh-cn": "设备重命名"},
|
|
57
|
-
"Reset Info": { "en": "A soft reset will just restart routines and the CC253x. A hard reset will clear paired devices data and reset CC253x settings too. You will have to repair ALL of your devices!", "de": "Ein Soft-Reset startet nur den CC253x Adapter und die zugehörige Software neu. Ein Hard-Reset setzt die Liste ALLER gekoppelten Geräte und die CC253x Einstellungen zurück! Alle Geräte müssen anschließend neu gekoppelt werden!", "ru": "Soft reset - просто перезапускает процессы в CC253x. Hard-Reset - очищает данные по всем связанным устройствам и сбрасывает настройки CC253x тоже. Вам нужно будет заново выполнить сопряжение всех устройств!", "pt": "A Soft reset will just restart routines and CC253x. Hard-Reset will clear paired devices data and it resets CC253x settings too. You will have to repair ALL of your devices!", "nl": "Een zachte reset herstart de routines en CC253x. Met een harde reset worden gegevens van gekoppelde apparaten gewist en ook de CC253x-instellingen gereset. U moet AL uw apparaten opnieuw aanleren!", "fr": "Un redémarrage en douceur redémarrera uniquement les routines et le
|
|
57
|
+
"Reset Info": { "en": "A soft reset will just restart routines and the CC253x. A hard reset will clear paired devices data and reset CC253x settings too. You will have to repair ALL of your devices!", "de": "Ein Soft-Reset startet nur den CC253x Adapter und die zugehörige Software neu. Ein Hard-Reset setzt die Liste ALLER gekoppelten Geräte und die CC253x Einstellungen zurück! Alle Geräte müssen anschließend neu gekoppelt werden!", "ru": "Soft reset - просто перезапускает процессы в CC253x. Hard-Reset - очищает данные по всем связанным устройствам и сбрасывает настройки CC253x тоже. Вам нужно будет заново выполнить сопряжение всех устройств!", "pt": "A Soft reset will just restart routines and CC253x. Hard-Reset will clear paired devices data and it resets CC253x settings too. You will have to repair ALL of your devices!", "nl": "Een zachte reset herstart de routines en CC253x. Met een harde reset worden gegevens van gekoppelde apparaten gewist en ook de CC253x-instellingen gereset. U moet AL uw apparaten opnieuw aanleren!", "fr": "Un redémarrage en douceur redémarrera uniquement les routines et le CC253x. Une réinitialisation matérielle efface les données de dispositifs couplés et réinitialise aussi la configuration du CC253x. Vous devez re-coupler TOUS vos dispositifs !", "it": "A Soft reset will just restart routines and CC253x. Hard-Reset will clear paired devices data and it resets CC253x settings too. You will have to repair ALL of your devices!", "es": "A Soft reset will just restart routines and CC253x. Hard-Reset will clear paired devices data and it resets CC253x settings too. You will have to repair ALL of your devices!", "pl": "Soft reset zrestartuje tylko procedury i CC253x. Hard-Reset wyczyści dane połączonychurządzeń i zresetuje również ustawienia CC253x. Będziesz musiał naprawić WSZYSTKIE swoje urządzenia!", "zh-cn": "设备重置"},
|
|
58
58
|
"Reset confirmation": { "en": "Reset confirmation", "de": "Reset bestätigen", "ru": "Подтверждение сброса", "pt": "Reset confirmação", "nl": "Reset bevestiging", "fr": "Confirmation de réinitialisation", "it": "Reset conferma", "es": "Reset confirmación", "pl": "Reset potwierdzenie", "zh-cn": "确认重置?"},
|
|
59
59
|
"Reset...": { "en": "Reset…", "de": "Zurücksetzen…", "ru": "Сброс…", "pt": "Redefinir...", "nl": "Reset …", "fr": "Réinitialiser…", "it": "Ripristina...", "es": "Reiniciar...", "pl": "Resetowanie…", "zh-cn": "重启..."},
|
|
60
60
|
"Results": { "en": "Results", "de": "Ergebnisse", "ru": "Полученные результаты", "pt": "Resultados", "nl": "Resultaten", "fr": "Résultats", "it": "Risultati", "es": "Resultados", "pl": "Wyniki", "zh-cn": "结果"},
|
|
@@ -82,9 +82,9 @@ systemDictionary = {
|
|
|
82
82
|
"Target device": { "en": "Target device", "de": "Zielgerät", "ru": "Целевое устройство", "pt": "Dispositivo alvo", "nl": "Doelapparaat", "fr": "Dispositif cible", "it": "Dispositivo di destinazione", "es": "Dispositivo de destino", "pl": "Urządzenie docelowe", "zh-cn": "目标设备"},
|
|
83
83
|
"Target endpoint": { "en": "Target endpoint", "de": "Ziel-Endpunkt", "ru": "Целевая конечная точка", "pt": "Endpoint alvo", "nl": "Doel eindpunt", "fr": "Point de terminaison cible", "it": "Endpoint di destinazione", "es": "Punto final de destino", "pl": "Docelowy punkt końcowy", "zh-cn": "目标终点"},
|
|
84
84
|
"The value to send to your device (use douple-quotes if a number is a string).": {"en": "The value to send to your device (use double-quotes if a number is a string).", "de": "Der Wert der an Ihr Gerät gesendet werden soll (verwenden Sie doppelte Anführungszeichen wenn eine Zahl als Zeichenfolge gesendet werden soll).", "ru": "Значение для отправки на ваше устройство (используйте двойные кавычки, если число является строкой).", "pt": "O valor a ser enviado ao seu dispositivo (use aspas duplas se um número for uma string).", "nl": "De waarde die naar uw apparaat moet worden verzonden (gebruik dubbele aanhalingstekens als een getal een tekenreeks is).", "fr": "La valeur à envoyer à votre appareil (utilisez des guillemets doubles si un nombre est une chaîne).", "it": "Il valore da inviare al tuo dispositivo (usa virgolette doppie se un numero è una stringa).", "es": "El valor para enviar a su dispositivo (use comillas dobles si un número es una cadena).", "pl": "Wartość do wysłania do urządzenia (użyj podwójnych cudzysłowów, jeśli liczba jest łańcuchem).", "zh-cn": "要发送到设备的值(如果数字是字符串,请使用双引号)。"},
|
|
85
|
-
"This page is needed only for advanced users that like to extend adapter functionalities!": {"en": "This page is needed only for advanced users that like to extend adapter functionalities!", "de": "Diese Seite ist nur für fortgeschrittene Benutzer gedacht, die den Adapter erweitern möchten!", "ru": "Эта страница нужна только опытным пользователям, которые хотят расширить функциональные возможности адаптера!", "pt": "Esta página é necessária apenas para usuários avançados que gostam de estender as funcionalidades do adaptador!", "nl": "Deze pagina is alleen bedoeld voor gevorderden welke de adapter functionaliteit uit willen breiden!", "fr": "Cette page n'est nécessaire que pour les utilisateurs avancés souhaitant étendre les fonctionnalités de l'adaptateur!", "it": "Questa pagina è necessaria solo per utenti avanzati che desiderano estendere le funzionalità dell'adattatore!", "es": "Esta página es necesaria solo para usuarios avanzados que deseen ampliar las funcionalidades del adaptador.", "pl": "Ta strona jest potrzebna tylko zaawansowanym użytkownikom, którzy lubią rozszerzać funkcje adaptera!", "zh-cn": "只有喜欢扩展适配器功能的高级用户才需要此页面!"},
|
|
85
|
+
"This page is needed only for advanced users that like to extend adapter functionalities!": {"en": "This page is needed only for advanced users that like to extend adapter functionalities!", "de": "Diese Seite ist nur für fortgeschrittene Benutzer gedacht, die den Adapter erweitern möchten!", "ru": "Эта страница нужна только опытным пользователям, которые хотят расширить функциональные возможности адаптера!", "pt": "Esta página é necessária apenas para usuários avançados que gostam de estender as funcionalidades do adaptador!", "nl": "Deze pagina is alleen bedoeld voor gevorderden welke de adapter functionaliteit uit willen breiden!", "fr": "Cette page n'est nécessaire que pour les utilisateurs avancés souhaitant étendre les fonctionnalités de l'adaptateur !", "it": "Questa pagina è necessaria solo per utenti avanzati che desiderano estendere le funzionalità dell'adattatore!", "es": "Esta página es necesaria solo para usuarios avanzados que deseen ampliar las funcionalidades del adaptador.", "pl": "Ta strona jest potrzebna tylko zaawansowanym użytkownikom, którzy lubią rozszerzać funkcje adaptera!", "zh-cn": "只有喜欢扩展适配器功能的高级用户才需要此页面!"},
|
|
86
86
|
"Touchlink reset and pairing": { "en": "Touchlink reset and pairing", "de": "Touchlink zurücksetzen und koppeln", "ru": "Сброс Touchlink и сопряжение", "pt": "Redefinição e pareamento do touchlink", "nl": "Touchlink resetten en koppelen", "fr": "Réinitialisation et couplage de Touchlink", "it": "Reimpostazione e associazione del touchlink", "es": "Restablecimiento y emparejamiento de Touchlink", "pl": "Resetowanie i parowanie za pomocą Touchlink", "zh-cn": "触摸链接重置和配对"},
|
|
87
|
-
"Transport Key Text": { "en": "Transport Key is the network encryption key. Please choose a random key sequence
|
|
87
|
+
"Transport Key Text": { "en": "Transport Key is the network encryption key. Please choose a random key sequence before you pair your devices. Just enter 32 random hex character (a-f and 0-9). If you change the key later, you will have to repair your devices.", "de": "Transportschlüssel ist der Netzwerkverschlüsselungsschlüssel. Bitte wähle eine zufällige Schlüsselsequenz <b>bevor</b> du Geräte koppelst. Gib einfach 32 zufällige Hex-Zeichen ein (a-f und 0-9). Wenn du den Schlüssel später änderst, musst du alle Geräte neu koppeln.", "ru": "Транспортный ключ - это сетевой ключ шифрования. Пожалуйста, выберите случайную последовательность <b>перед</b> подключением устройств. Просто введите 32 случайных шестнадцатеричных символа (a-f и 0-9). Если вы поменяете ключ позже, вам придется снова спаривать свои устройства.", "pt": "Chave de transporte é a chave de criptografia da rede. ", "nl": "Transportsleutel is de netwerkversleutelingssleutel. Kies een willekeurige toetsenreeks <b> voordat </b> u uw apparaten koppelt. Voer gewoon 32 willekeurige hexadecimale tekens in (a-f en 0-9). Als u de sleutel later wijzigt, moet u alle apparaten opnieuw aanleren.", "fr": "La clé de transport est la clé de chiffrement du réseau. Choisissez s.v.p. une chaîne <b>avant</b> de coupler vos dispositifs. Entrez simplement 32 caractères hexadécimaux aléatoires (a-f et 0-9). Si vous changez la clé plus tard, vous devez re-coupler vos dispositifs.", "it": "La chiave di trasporto è la chiave di crittografia della rete. ", "es": "Transport Key es la clave de cifrado de red. ", "pl": "Klucz transportowy to sieciowy klucz szyfrowania.", "zh-cn": "传输密钥是网络加密密钥。"},
|
|
88
88
|
"Transport Key": { "en": "Transport Key", "de": "Transportschlüssel", "ru": "Транспортный ключ", "pt": "Chave de transporte", "nl": "Transport sleutel", "fr": "Clé de transport", "it": "Chiave di trasporto", "es": "Transporte clave", "pl": "Klucz transportowy", "zh-cn": "运输钥匙"},
|
|
89
89
|
"Type": { "en": "Type", "de": "Typ", "ru": "Тип", "pt": "Tipo", "nl": "Type", "fr": "Type", "it": "genere", "es": "Tipo", "pl": "Rodzaj", "zh-cn": "类型"},
|
|
90
90
|
"Unbind remote from Coordinator (necessary for some remotes like HUE Dimmer Switch)": {"en": "Unbind remote from coordinator (necessary for some remotes like HUE Dimmer Switch)", "de": "Entkoppele die Fernbedienung vom Koordinator (erforderlich für einige Fernbedienungen wie HUE Dimmer Switch)", "ru": "Отсоедините пульт от координатора (необходим для некоторых пультов, таких как HUE Dimmer Switch)", "pt": "Desconecte o controle remoto do Coordinator (necessário para alguns controles remotos, como o HUE Dimmer Switch)", "nl": "Ontkoppel afstandsbediening van Coordinator (noodzakelijk voor sommige afstandsbedieningen zoals HUE Dimmer Switch)", "fr": "Dissocier la télécommande de coordination (nécessaire pour certaines télécommandes comme HUE Dimmer Switch)", "it": "Sblocca il telecomando da Coordinator (necessario per alcuni telecomandi come HUE Dimmer Switch)", "es": "Desvincule el control remoto del Coordinador (necesario para algunos controles remotos como HUE Dimmer Switch)", "pl": "Odłącz pilota od Coordinatora (niezbędny do niektórych pilotów, takich jak HUE Dimmer Switch)", "zh-cn": "从Coordinator取消绑定遥控器(对于某些遥控器,例如HUE Dimmer Switch,这是必需的)"},
|
|
@@ -100,13 +100,12 @@ systemDictionary = {
|
|
|
100
100
|
"notImplementedText": { "en": "Here you may send your own commands to your devices that are not yet implemented as objects. It may also be used to find undocumented settings of your devices. Or to test the effects of settings to decide if it is worth to implement as object. And so on...", "de": "Sie können hier eigene Befehle an Ihre Geräte senden, die noch nicht als Objekte implementiert sind. Es kann auch verwendet werden, um undokumentierte Einstellungen Ihrer Geräte zu finden. Oder um die Auswirkungen von Einstellungen zu testen und zu entscheiden, ob es sich lohnt, sie als Objekt zu implementieren. Und so weiter...", "ru": "Вы можете отправлять сюда собственные команды на свои устройства, которые еще не реализованы как объекты. Его также можно использовать для поиска недокументированных настроек ваших устройств. Или чтобы проверить влияние настроек, чтобы решить, стоит ли реализовывать его как Object. И так далее...", "pt": "Você pode enviar aqui seus próprios comandos para seus dispositivos que ainda não foram implementados como Objetos. Ele também pode ser usado para encontrar configurações não documentadas de seus dispositivos. Ou para testar os efeitos das configurações para decidir se vale a pena implementar como Objeto. E assim por diante...", "nl": "U kunt hier eigen commando's naar uw apparaten sturen die nog niet als objecten zijn geïmplementeerd. Het kan ook worden gebruikt om ongedocumenteerde instellingen van uw apparaten te vinden. Of om de effecten van instellingen te testen om te beslissen of het de moeite waard is om als object te implementeren. Enzovoort...", "fr": "Vous pouvez envoyer ici vos propres commandes à vos appareils qui ne sont pas encore implémentées en tant qu'objets. Il peut également être utilisé pour rechercher des paramètres non documentés de vos appareils. Ou pour tester les effets des paramètres pour décider s'il vaut la peine de les implémenter en tant qu'objet. Etc...", "it": "Puoi inviare qui i tuoi comandi ai tuoi dispositivi che non sono ancora implementati come Oggetti. Può anche essere utilizzato per trovare impostazioni non documentate dei tuoi dispositivi. Oppure per testare gli effetti delle impostazioni per decidere se vale la pena implementare come Object. E così via...", "es": "Puede enviar aquí sus propios comandos a sus dispositivos que aún no están implementados como Objetos. También se puede usar para encontrar configuraciones no documentadas de sus dispositivos. O para probar los efectos de la configuración para decidir si vale la pena implementarla como Objeto. Y así...", "pl": "Możesz tutaj wysyłać własne polecenia do swoich urządzeń, które nie zostały jeszcze zaimplementowane jako obiekty. Może być również używany do znajdowania nieudokumentowanych ustawień Twoich urządzeń. Lub przetestować efekty ustawień, aby zdecydować, czy warto je zaimplementować jako obiekt. I tak dalej...", "zh-cn": "您可以在此处将自己的命令发送到尚未实现为对象的设备。它也可用于查找设备的未记录的设置。或者测试设置的效果,以决定是否值得将其实现为Object。等等..."},
|
|
101
101
|
"to make it available for other user too": { "en": "to make it available for other user too", "de": "um es auch für andere Benutzer verfügbar zu machen", "ru": "сделать его доступным и для других пользователей", "pt": "para torná-lo disponível para outro usuário também", "nl": "om het ook beschikbaar te maken voor andere gebruikers", "fr": "pour le rendre disponible pour d'autres utilisateurs aussi", "it": "per renderlo disponibile anche per altri utenti", "es": "para que también esté disponible para otros usuarios", "pl": "aby udostępnić go także innemu użytkownikowi", "zh-cn": "也可以让其他用户使用"},
|
|
102
102
|
"transmitPower": { "en": "CC1352P and CC26X2R1 transmit Power", "de": "CC1352P and CC26X2R1 Sendeleistung", "ru": "CC1352P and CC26X2R1 Мощность передачи", "pt": "CC1352P and CC26X2R1 Potência de transmissão", "nl": "CC1352P and CC26X2R1 zendvermogen", "fr": "CC1352P and CC26X2R1 Puissance de transmission", "it": "CC1352P and CC26X2R1 trasmettere potenza", "es": "CC1352P and CC26X2R1 transmitir potencia", "pl": "CC1352P and CC26X2R1 Moc nadawania", "zh-cn": "CC1352P ,CC26X2R1 发射功率"},
|
|
103
|
-
"zigbee-shepherd": { "en": "You may edit the raw data to send here. Do not use this if you are not sure of what you are doing! Use JSON format (attribute names in double quotes!). Additional properties may be added too. See examples above. (Format as used by zigbee-shepherd)", "de": "Sie können die zu sendenden Rohdaten hier bearbeiten. Verwenden Sie diese nicht, wenn Sie sich nicht sicher sind, was Sie tun! Verwenden Sie das JSON-Format (Attributnamen in doppelten Anführungszeichen!). Es können auch zusätzliche Eigenschaften hinzugefügt werden. Siehe Beispiele oben. (Format wie von zigbee-shepherd verwendet)", "ru": "Вы можете редактировать необработанные данные для отправки сюда. Не используйте это, если не уверены в том, что делаете! Используйте формат JSON (имена атрибутов в двойных кавычках!). Также могут быть добавлены дополнительные свойства. См. Примеры выше. (Формат, используемый zigbee-shepherd)", "pt": "Você pode editar os dados brutos para enviar aqui. Não use isso se não tiver certeza do que está fazendo! Use o formato JSON (nomes de atributos entre aspas duplas!). Propriedades adicionais também podem ser adicionadas. Veja os exemplos acima. (Formato usado pelo pastor zigbee)", "nl": "U kunt de onbewerkte gegevens bewerken om hier naartoe te sturen. Gebruik dit niet als u niet zeker weet wat u doet! Gebruik het JSON-formaat (attribuutnamen tussen dubbele aanhalingstekens!). Er kunnen ook aanvullende eigenschappen worden toegevoegd. Zie voorbeelden hierboven. (Formaat zoals gebruikt door zigbee-shepherd)", "fr": "Vous pouvez modifier les données brutes à envoyer ici. Ne l'utilisez pas si vous n'êtes pas sûr de ce que vous faites! Utilisez le format JSON (noms d'attributs entre guillemets!). Des propriétés supplémentaires peuvent également être ajoutées. Voir les exemples ci-dessus. (Format utilisé par zigbee-shepherd)", "it": "Puoi modificare i dati grezzi da inviare qui. Non usarlo se non sei sicuro di quello che stai facendo! Usa il formato JSON (nomi di attributi tra virgolette doppie!). Possono essere aggiunte anche proprietà aggiuntive. Vedi esempi sopra. (Formato usato da zigbee-shepherd)", "es": "Puede editar los datos sin procesar para enviar aquí. ¡No use esto si no está seguro de lo que está haciendo! Utilice el formato JSON (nombres de atributos entre comillas dobles). También se pueden agregar propiedades adicionales. Vea los ejemplos anteriores. (Formato utilizado por zigbee-shepherd)", "pl": "Tutaj możesz edytować nieprzetworzone dane do wysłania. Nie używaj tego, jeśli nie jesteś pewien, co robisz! Użyj formatu JSON (nazwy atrybutów w podwójnych cudzysłowach!). Można również dodać dodatkowe właściwości. Zobacz przykłady powyżej. (Format używany przez zigbee-shepherd)", "zh-cn": "您可以编辑原始数据以发送到此处。如果不确定自己在做什么,请不要使用它!使用JSON格式(属性名称用双引号引起来!)。也可以添加其他属性。请参阅上面的示例。 (格式由zigbee-shepherd使用)"},
|
|
103
|
+
"zigbee-shepherd": { "en": "You may edit the raw data to send here. Do not use this if you are not sure of what you are doing! Use JSON format (attribute names in double quotes!). Additional properties may be added too. See examples above. (Format as used by zigbee-shepherd)", "de": "Sie können die zu sendenden Rohdaten hier bearbeiten. Verwenden Sie diese nicht, wenn Sie sich nicht sicher sind, was Sie tun! Verwenden Sie das JSON-Format (Attributnamen in doppelten Anführungszeichen!). Es können auch zusätzliche Eigenschaften hinzugefügt werden. Siehe Beispiele oben. (Format wie von zigbee-shepherd verwendet)", "ru": "Вы можете редактировать необработанные данные для отправки сюда. Не используйте это, если не уверены в том, что делаете! Используйте формат JSON (имена атрибутов в двойных кавычках!). Также могут быть добавлены дополнительные свойства. См. Примеры выше. (Формат, используемый zigbee-shepherd)", "pt": "Você pode editar os dados brutos para enviar aqui. Não use isso se não tiver certeza do que está fazendo! Use o formato JSON (nomes de atributos entre aspas duplas!). Propriedades adicionais também podem ser adicionadas. Veja os exemplos acima. (Formato usado pelo pastor zigbee)", "nl": "U kunt de onbewerkte gegevens bewerken om hier naartoe te sturen. Gebruik dit niet als u niet zeker weet wat u doet! Gebruik het JSON-formaat (attribuutnamen tussen dubbele aanhalingstekens!). Er kunnen ook aanvullende eigenschappen worden toegevoegd. Zie voorbeelden hierboven. (Formaat zoals gebruikt door zigbee-shepherd)", "fr": "Vous pouvez modifier les données brutes à envoyer ici. Ne l'utilisez pas si vous n'êtes pas sûr de ce que vous faites ! Utilisez le format JSON (noms d'attributs entre guillemets !). Des propriétés supplémentaires peuvent également être ajoutées. Voir les exemples ci-dessus. (Format utilisé par zigbee-shepherd)", "it": "Puoi modificare i dati grezzi da inviare qui. Non usarlo se non sei sicuro di quello che stai facendo! Usa il formato JSON (nomi di attributi tra virgolette doppie!). Possono essere aggiunte anche proprietà aggiuntive. Vedi esempi sopra. (Formato usato da zigbee-shepherd)", "es": "Puede editar los datos sin procesar para enviar aquí. ¡No use esto si no está seguro de lo que está haciendo! Utilice el formato JSON (nombres de atributos entre comillas dobles). También se pueden agregar propiedades adicionales. Vea los ejemplos anteriores. (Formato utilizado por zigbee-shepherd)", "pl": "Tutaj możesz edytować nieprzetworzone dane do wysłania. Nie używaj tego, jeśli nie jesteś pewien, co robisz! Użyj formatu JSON (nazwy atrybutów w podwójnych cudzysłowach!). Można również dodać dodatkowe właściwości. Zobacz przykłady powyżej. (Format używany przez zigbee-shepherd)", "zh-cn": "您可以编辑原始数据以发送到此处。如果不确定自己在做什么,请不要使用它!使用JSON格式(属性名称用双引号引起来!)。也可以添加其他属性。请参阅上面的示例。 (格式由zigbee-shepherd使用)"},
|
|
104
104
|
"№": { "en": "№", "de": "Nr.", "ru": "№", "pt": "№", "nl": "№", "fr": "№", "it": "№", "es": "№", "pl": "Nr", "zh-cn": "№"},
|
|
105
|
-
"Excludes": { "en": "to exclude", "de": "ausschließen", "ru": "Исключить", "pl": "wyklucz"},
|
|
106
|
-
"ExcludeTextTranslation": { "en": "Here you can add some devices that should be excluded from our description. They only use \"exposes\" from zigbee-herdsman-converter. After adding, please restart the adapter.", "de": "Sie können hier einige Geräte hinzufügen, die von unserer Verarbeitungausgeschlossen werden sollten. Sie verwenden dann nur exposes vom ZigBee-Herdsman-Converter. Nach dem Hinzufügen starten Sie bitte den Adapter neu.", "ru": "Здесь вы можете добавить устройства, для которых надо исключить представление заданное адаптером (iobroker.zigbee). В этом случае они будут использовать \"exposes\" из zigbee-herdsman-converter. После добавления перезапустите адаптер.", "pl": "Możesz dodać tutaj kilka urządzeń, które powinny zostać wyłączone z naszego opisu. Używasz tylko ekspozycji z zigbee-herdsman-converter. Po dodaniu zrestartuj adapter"},
|
|
107
|
-
"SettingsExclude": { "en": "Force start adapter with inconsistent configuration (not recommended). Please update the adapter to compatible firmware and recreate your network as soon as possible.", "de": "Erzwingen Sie den Start des Adapters mit inkonsistenter Konfiguration (nicht empfohlen). Bitte aktualisieren Sie den Adapter auf kompatible Firmware und erstellen Sie Ihr Netzwerk so schnell wie möglich neu.", "pl": "Wystaruj Adapter bez zgodnej konfiguracji (uwaga). Zaktualizuj adapter i jak najszybciej odtwórz sieć."},
|
|
108
|
-
"Others": {"en": "other settings",
|
|
109
|
-
"disable internal Backup": {"en": "disable internal Backup",
|
|
110
|
-
"Disable active availability check": {"en": "Disable active availability check",
|
|
111
|
-
};
|
|
112
|
-
|
|
105
|
+
"Excludes": { "en": "to exclude", "de": "ausschließen", "ru": "Исключить", "nl": "uitsluiten", "fr": "d'exclure", "pl": "wyklucz"},
|
|
106
|
+
"ExcludeTextTranslation": { "en": "Here you can add some devices that should be excluded from our description. They only use \"exposes\" from zigbee-herdsman-converter. After adding, please restart the adapter.", "de": "Sie können hier einige Geräte hinzufügen, die von unserer Verarbeitungausgeschlossen werden sollten. Sie verwenden dann nur exposes vom ZigBee-Herdsman-Converter. Nach dem Hinzufügen starten Sie bitte den Adapter neu.", "ru": "Здесь вы можете добавить устройства, для которых надо исключить представление заданное адаптером (iobroker.zigbee). В этом случае они будут использовать \"exposes\" из zigbee-herdsman-converter. После добавления перезапустите адаптер.", "nl": "Hier kunt u enkele apparaten toevoegen die moeten worden uitgesloten van onze beschrijving. Ze gebruiken alleen \"exposes\" van zigbee-herdsman-converter. Na het toevoegen moet u de adapter opnieuw opstarten.", "fr": "Ici, vous pouvez ajouter certains dispositifs qui doivent être exclus de notre description. Ils utilisent uniquement les \"exposes\" de zigbee-herdsman-converter. Après l'ajout, veuillez redémarrer l'adaptateur.", "pl": "Możesz dodać tutaj kilka urządzeń, które powinny zostać wyłączone z naszego opisu. Używasz tylko ekspozycji z zigbee-herdsman-converter. Po dodaniu zrestartuj adapter"},
|
|
107
|
+
"SettingsExclude": { "en": "Force start adapter with inconsistent configuration (not recommended). Please update the adapter to compatible firmware and recreate your network as soon as possible.", "de": "Erzwingen Sie den Start des Adapters mit inkonsistenter Konfiguration (nicht empfohlen). Bitte aktualisieren Sie den Adapter auf kompatible Firmware und erstellen Sie Ihr Netzwerk so schnell wie möglich neu.", "ru": "Принудительный запуск адаптера с несовместимой конфигурацией (не рекомендуется). Пожалуйста, обновите адаптер до совместимой прошивки и воссоздайте сеть как можно скорее.", "nl": "Forceer de adapter met een inconsistente configuratie (niet aanbevolen). Update de adapter naar compatibele firmware en maak uw netwerk zo snel mogelijk opnieuw aan.", "fr": "Démarrage forcé de l'adaptateur avec une configuration incohérente (non recommandé). Veuillez mettre à jour l'adaptateur avec un micrologiciel compatible et recréer votre réseau dès que possible.", "pl": "Wystaruj Adapter bez zgodnej konfiguracji (uwaga). Zaktualizuj adapter i jak najszybciej odtwórz sieć."},
|
|
108
|
+
"Others": { "en": "other settings", "de": "andere Einstellungen", "ru": "другие настройки", "nl": "andere instellingen", "fr": "autres réglages", "pl": "inne ustawienia"},
|
|
109
|
+
"disable internal Backup": { "en": "disable internal Backup", "de": "Deaktiviere die interne Sicherung", "ru": "отключить внутреннее резервное копирование", "nl": "interne back-up uitschakelen", "fr": "désactiver la sauvegarde interne", "pl": "wyłącz wewnętrzną kopię"},
|
|
110
|
+
"Disable active availability check": { "en": "Disable active availability check", "de": "Aktive Verfügbarkeitsprüfung deaktivieren", "ru": "Отключить активную проверку доступности", "nl": "Actieve beschikbaarheidscontrole uitschakelen", "fr": "Désactiver le contrôle de disponibilité actif", "pl": "Wyłącz aktywne sprawdzanie dostępności"},
|
|
111
|
+
};
|
package/io-package.json
CHANGED
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "zigbee",
|
|
4
|
-
"version": "1.7.
|
|
4
|
+
"version": "1.7.6",
|
|
5
5
|
"news": {
|
|
6
|
-
|
|
6
|
+
"1.7.6": {
|
|
7
|
+
"en": "ikea fix ",
|
|
8
|
+
"de": "ikea fix "
|
|
9
|
+
},
|
|
10
|
+
"1.7.5": {
|
|
11
|
+
"en": "error message for undefined devices or icons ",
|
|
12
|
+
"de": "Fehlermeldung für undefinierte Geräte oder Symbole",
|
|
13
|
+
"ru": "сообщение об ошибке для неопределенных устройств или значков",
|
|
14
|
+
"pt": "mensagem de erro para dispositivos ou ícones indefinidos",
|
|
15
|
+
"nl": "foutmelding voor ongedefinieerde apparaten of pictogrammen",
|
|
16
|
+
"fr": "message d'erreur pour les périphériques ou les icônes non définis",
|
|
17
|
+
"it": "messaggio di errore per dispositivi o icone non definiti",
|
|
18
|
+
"es": "mensaje de error para dispositivos o iconos no definidos",
|
|
19
|
+
"pl": "komunikat o błędzie dla niezdefiniowanych urządzeń lub ikon",
|
|
20
|
+
"zh-cn": "未定义设备或图标的错误消息"
|
|
21
|
+
},
|
|
22
|
+
"1.7.4": {
|
|
7
23
|
"en": "missing icons with multiple description",
|
|
8
24
|
"de": "fehlende Symbole mit mehrfacher Beschreibung",
|
|
9
25
|
"ru": "отсутствующие значки с несколькими описаниями",
|
package/lib/devices.js
CHANGED
|
@@ -2095,8 +2095,8 @@ const devices = [
|
|
|
2095
2095
|
linkedStates: [comb.brightnessAndState],
|
|
2096
2096
|
},
|
|
2097
2097
|
{
|
|
2098
|
-
models: ['MLI-404011'],
|
|
2099
|
-
icon: 'img/
|
|
2098
|
+
models: ['MLI-404011','MLI-404049','MLI-404011/MLI-404049'],
|
|
2099
|
+
icon: 'img/MLI-404011-MLI-404049.png',
|
|
2100
2100
|
states: [
|
|
2101
2101
|
states.tint404011_scene_sunset, states.tint404011_scene_party,
|
|
2102
2102
|
states.tint404011_scene_nightlight, states.tint404011_scene_working,
|
package/lib/statescontroller.js
CHANGED
|
@@ -487,24 +487,28 @@ class StatesController extends EventEmitter {
|
|
|
487
487
|
}
|
|
488
488
|
|
|
489
489
|
updateDev(dev_id, dev_name, model, callback) {
|
|
490
|
-
|
|
490
|
+
const __dev_name = this.verifyDeviceName(dev_id, dev_name);
|
|
491
491
|
const id = '' + dev_id;
|
|
492
492
|
const modelDesc = statesMapping.findModel(model);
|
|
493
493
|
let icon = (modelDesc && modelDesc.icon) ? modelDesc.icon : 'img/unknown.png';
|
|
494
|
-
// clear icon if it external
|
|
495
|
-
const model_modif = model.replace(/\//g, '-');
|
|
496
494
|
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
495
|
+
// download icon if it external and not undef
|
|
496
|
+
if (model === undefined) {
|
|
497
|
+
this.warn(`download icon ${__dev_name} for undefined Device not available. Check your devices.`);
|
|
498
|
+
} else {
|
|
499
|
+
const model_modif = model.replace(/\//g, '-');
|
|
500
|
+
const pathToIcon = this.adapter.adapterDir + '/admin/img/' + model_modif + '.png';
|
|
501
|
+
|
|
502
|
+
if (icon.startsWith('http')) {
|
|
503
|
+
try {
|
|
504
|
+
if (!fs.existsSync(pathToIcon)) {
|
|
505
|
+
this.warn(`download icon from ${icon} saved into ${pathToIcon}`);
|
|
506
|
+
this.downloadIcon(icon, pathToIcon);
|
|
507
|
+
}
|
|
508
|
+
icon = 'img/' + model_modif + '.png';
|
|
509
|
+
} catch (e) {
|
|
510
|
+
this.debug(`ERROR : icon not found from ${icon} saved into ${pathToIcon}`);
|
|
504
511
|
}
|
|
505
|
-
icon = 'img/' + model_modif + '.png';
|
|
506
|
-
} catch (e) {
|
|
507
|
-
this.debug(`ERROR : icon not found from ${icon} saved into ${pathToIcon}`);
|
|
508
512
|
}
|
|
509
513
|
}
|
|
510
514
|
|
package/lib/zbDeviceConfigure.js
CHANGED
|
@@ -142,10 +142,17 @@ class DeviceConfigure extends BaseExtension {
|
|
|
142
142
|
async doConfigure(device, mappedDevice) {
|
|
143
143
|
this.info(`Configuring ${device.ieeeAddr} ${device.modelID}`);
|
|
144
144
|
const coordinatorEndpoint = await this.zigbee.getDevicesByType('Coordinator')[0].endpoints[0];
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
145
|
+
try {
|
|
146
|
+
await mappedDevice.configure(device, coordinatorEndpoint);
|
|
147
|
+
device.meta.configured = zigbeeHerdsmanConverters.getConfigureKey(mappedDevice);
|
|
148
|
+
device.save();
|
|
149
|
+
this.info(`DeviceConfigure successful ${device.ieeeAddr} ${device.modelID}`);
|
|
150
|
+
} catch (error) {
|
|
151
|
+
this.sendError(error);
|
|
152
|
+
this.error(
|
|
153
|
+
`Failed to DeviceConfigure.configure ${device.ieeeAddr} ${device.modelID} (${error.stack})`,
|
|
154
|
+
);
|
|
155
|
+
}
|
|
149
156
|
}
|
|
150
157
|
}
|
|
151
158
|
|
package/lib/zigbeecontroller.js
CHANGED
|
@@ -19,7 +19,7 @@ const groupConverters = [
|
|
|
19
19
|
zigbeeHerdsmanConverters.toZigbeeConverters.light_brightness_step,
|
|
20
20
|
zigbeeHerdsmanConverters.toZigbeeConverters.light_colortemp_move,
|
|
21
21
|
zigbeeHerdsmanConverters.toZigbeeConverters.light_colortemp_step,
|
|
22
|
-
zigbeeHerdsmanConverters.toZigbeeConverters.
|
|
22
|
+
zigbeeHerdsmanConverters.toZigbeeConverters.light_colortemp_startup
|
|
23
23
|
];
|
|
24
24
|
|
|
25
25
|
function isFunction(functionToCheck) {
|
|
@@ -556,12 +556,17 @@ class ZigbeeController extends EventEmitter {
|
|
|
556
556
|
const friendlyName = entity.name;
|
|
557
557
|
this.warn(`Device '${friendlyName}' announced itself`);
|
|
558
558
|
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
559
|
+
try {
|
|
560
|
+
if (entity && entity.mapped) {
|
|
561
|
+
this.callExtensionMethod(
|
|
562
|
+
'onZigbeeEvent',
|
|
563
|
+
[ {'device': message.device, 'type': 'deviceAnnounce'}, (entity ? entity.mapped : null)]);
|
|
564
|
+
}
|
|
565
|
+
} catch (error) {
|
|
566
|
+
this.sendError(error);
|
|
567
|
+
this.error(`Failed to handleDeviceLeave ${error.stack}`);
|
|
563
568
|
}
|
|
564
|
-
|
|
569
|
+
|
|
565
570
|
this.emit('pairing', `Device '${friendlyName}' announced itself`);
|
|
566
571
|
if (!this.herdsman.getPermitJoin()) this.callExtensionMethod('registerDevicePing', [message.device, entity]);
|
|
567
572
|
// if has modelID so can create device
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.zigbee",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.6",
|
|
4
4
|
"author": {
|
|
5
5
|
"name": "Kirov Ilya",
|
|
6
6
|
"email": "kirovilya@gmail.com"
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"node": ">=10"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"zigbee-herdsman": "0.14.
|
|
22
|
-
"zigbee-herdsman-converters": "14.0.
|
|
21
|
+
"zigbee-herdsman": "0.14.46",
|
|
22
|
+
"zigbee-herdsman-converters": "14.0.575",
|
|
23
23
|
"@iobroker/adapter-core": "^2.4.0",
|
|
24
24
|
"tar": "^6.0.5",
|
|
25
25
|
"typescript": "^4.0.5"
|
package/admin/img/zbt_remote.png
DELETED
|
Binary file
|
package/docs/de/img/CC2531.png
DELETED
|
Binary file
|
|
Binary file
|
package/docs/de/img/CC2591.png
DELETED
|
Binary file
|
package/docs/de/img/boards.jpg
DELETED
|
Binary file
|
package/docs/de/img/cc26x2r.PNG
DELETED
|
Binary file
|
package/docs/de/img/results.jpg
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/de/readme.md
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# ioBroker Adapter für Zigbee-Geräte
|
|
2
|
-
Mit Hilfe eines Koordinators für Zigbee-Netz, basierend auf Texas Instruments SoC cc253x (und anderen), wird ein eigenes Netz erschaffen, welchem sich andere Zigbee Geräte beitreten können. Dank der direkten Interaktion mit dem Koordinator, erlaubt der Zigbee Adapter die Steuerung der Geräte ohne jegliche Gateways/Bridges der Hersteller (Xiaomi/Tradfri/Hue). Über Funktionsweise der Zigbee-Netze kann man [hier nachlesen (Englisch)](https://github.com/Koenkk/zigbee2mqtt/wiki/ZigBee-network).
|
|
3
|
-
|
|
4
|
-
## Die Hardware
|
|
5
|
-
Für die Umsetzung wird einer der aufgezählten Geräte/Sticks verwendet, welche mit spezieller ZNP-Firmware geflasht sind: [cc2530, cc2530, cc2530+RF.](https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-sniffer-devices#zigbee-coordinator)
|
|
6
|
-
|
|
7
|
-

|
|
8
|
-

|
|
9
|
-

|
|
10
|
-

|
|
11
|
-
|
|
12
|
-
Der benötigte Flasher/Programmer und der Prozess der Vorbereitung werden [hier (Englisch)](https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started) oder [hier (Russisch)](https://github.com/kirovilya/ioBroker.zigbee/wiki/%D0%9F%D1%80%D0%BE%D1%88%D0%B8%D0%B2%D0%BA%D0%B0) beschrieben.
|
|
13
|
-
|
|
14
|
-
Die mit dem Zigbee-Netz verbundenen Geräte übermitteln dem Koordinator ihren Zustand und benachrichtigen über Ereignisse (Knopfdruck, Bewegungserkennung, Temperaturänderung). Diese Infos werden im Adapter unter den jeweiligen Objekten angezeigt. Außerdem ist es möglich manche Ereignisse/Status zurück zum Zigbee-Gerät zusenden (Zustandsänderung Steckdosen und Lampen, Farb- und Helligkeitseinstellungen).
|
|
15
|
-
|
|
16
|
-
## Einstellungen und Pairing
|
|
17
|
-

|
|
18
|
-
|
|
19
|
-
Zu Beginn muss der USB-Port angegeben werden, an welchem der cc253x angeschlossen ist. Wie man diesen Erkennt ist [hier beschrieben (Russisch)](https://github.com/kirovilya/ioBroker.zigbee/wiki#%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-%D0%B0%D0%B4%D0%B0%D0%BF%D1%82%D0%B5%D1%80%D0%B0)
|
|
20
|
-
|
|
21
|
-
Zum Verbinden der Geräte muss der Koordinator für Zigbee-Netz in den Pairingmodus versetzt werden, dazu auf den grünen Knopf im Adapter klicken. Pairingmodus ist ab jetzt für 60 Sekunden aktiv. Um die Geräte zu verbinden, reicht im Normallfall ein Betätigen des Knopfes auf dem zu verbindendem Gerät. Es gibt aber auch „besondere“ Geräte. Wie man diese verbindet ist [hier Englisch](https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices) [oder Russisch](https://github.com/kirovilya/ioBroker.zigbee/wiki#%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0) beschrieben.
|
|
22
|
-
|
|
23
|
-
Nach erfolgreichem Pairing, wird das Gerät im Adapter angezeigt. Sollte ein Gerät (aus der Liste) den Namen „undefined“ haben, dann versucht es zu löschen und nochmal zu pairen. Sollte es trotzdem nicht funktionieren, schreibt bitte ein Issue.
|
|
24
|
-
Zigbee-Geräte die nicht in der Liste aufgeführt sind, können zwar gepairt werden, aber der Adapter kann mit diesen nicht kommunizieren.
|
|
25
|
-
|
|
26
|
-
## Zusätzliche Informationen
|
|
27
|
-
Es gibt noch ein [Freundschaftprojekt](https://github.com/koenkk/zigbee2mqtt) mit gleichen Funktionen und gleicher Technologie, welcher mit denselben Geräten über ein MQTT Protokoll kommuniziert. Wenn irgendwelche Verbesserungen oder neu unterstütze Geräte im Projekt Zigbee2MQTT eingefügt werden, können jene auch in dieses Projekt hinzugefügt werden. Solltet Ihr unterschiede merken, schreibt bitte ein Issue, wir kümmern uns darum
|
package/docs/en/img/CC2531.png
DELETED
|
Binary file
|
package/docs/en/img/CC2591.png
DELETED
|
Binary file
|
package/docs/en/img/deconz.png
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/en/readme.md
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# ioBroker adapter for working with Zigbee-devices
|
|
2
|
-
With the Zigbee-coordinator based on Texas Instruments SoC cc253x (and others), it creates its own zigbee-network, into which zigbee-devices are connected. By work directly with the coordinator, the driver allows you to manage devices without additional gateways / bridge from device manufacturers (Xiaomi / TRADFRI / Hue). About the device Zigbee-network can be read [here (in English)](https://github.com/Koenkk/zigbee2mqtt/wiki/ZigBee-network).
|
|
3
|
-
|
|
4
|
-
## Hardware
|
|
5
|
-
For work, you need one of the following devices, flashed with a special ZNP firmware: [cc2531, cc2530, cc2530 + RF](https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-sniffer-devices#zigbee-coordinator)
|
|
6
|
-
|
|
7
|
-

|
|
8
|
-

|
|
9
|
-

|
|
10
|
-

|
|
11
|
-
|
|
12
|
-
The necessary equipment for the firmware and the device preparation process is described [here (in English)](https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started) or [here (in Russian)](https://github.com/kirovilya/ioBroker.zigbee/wiki/%D0%9F%D1%80%D0%BE%D1%88%D0%B8%D0%B2%D0%BA%D0%B0)
|
|
13
|
-
|
|
14
|
-
The devices connected to the Zigbee-network inform the coordinator of their status and events (button presses, motion detection, temperature change). This information is reflected in the ioBroker object-states. Some ioBroker states have feedback and send commands to the zigbee-device when the value changes (switching the state of the outlet or lamp, changing the scene or the brightness of the lamp).
|
|
15
|
-
|
|
16
|
-
## Work with adapter
|
|
17
|
-
To start the driver, you must specify the name of the port on which the cc253x device is connected.
|
|
18
|
-
|
|
19
|
-
To connect devices, you need to switch the Zigbee-coordinator to pairing mode by pressing the green button. The countdown will begin (60 seconds) until the device connectivity is available.
|
|
20
|
-
To connect Zigbee devices in most cases, just press the pairing button on the device itself. But there are features for some devices. More information about pairing with devices can be found [here (in English)](https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices) or [here (in Russian)](https://github.com/kirovilya/ioBroker.zigbee/wiki#%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0)
|
|
21
|
-
|
|
22
|
-
After successful pairing, the device appears in the configuration panel. If the device appears in the configuration panel but has the type "undefined", then this is an unknown device and can not be work with it. If the device is in the list of available devices, but added as "undefined", then try to remove the device and add it again.
|
|
23
|
-
|
|
24
|
-
## Additional info
|
|
25
|
-
There is a [friendly project](https://github.com/koenkk/zigbee2mqtt) with similar functionality on the same technologies, where you can work with the same devices using the MQTT protocol. Therefore, if any improvements or support for new zigbee-devices occur in the Zigbee2MQTT project, we can transfer and add the same functionality to this adapter. If you notice this, then write the issue - we'll postpone it.
|
|
26
|
-
|
|
27
|
-
There are knowledge bases that can be useful for working with Zigbee-devices and equipment:
|
|
28
|
-
* in English https://github.com/koenkk/zigbee2mqtt/wiki
|
|
29
|
-
* in Russian https://github.com/kirovilya/ioBroker.zigbee/wiki
|
|
30
|
-
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
Flashing firmware via Arduino is implemented using the project https://github.com/wavesoft/CCLib
|
|
2
|
-
**But with minor improvements!!!**
|
|
3
|
-
|
|
4
|
-
[AndrewLinden](https://github.com/AndrewLinden) described that he was able to flash CC2531 using CCLib [with comments](https://github.com/wavesoft/CCLib/issues/19).
|
|
5
|
-
|
|
6
|
-
As described [I made a fork of the CCLib library with minor changes](https://github.com/kirovilya/CCLib) for flashing firmware via Arduino:
|
|
7
|
-
* Timeouts of operations
|
|
8
|
-
* After opening the port (I have in Windows 7) Arduino reboots and, accordingly, does not respond to requests - made a 3 seconds pause (found somewhere in internet).
|
|
9
|
-
* The port speed is reduced to 9600, because at another speed leaving communication errors:
|
|
10
|
-
`ERROR: Could not read from the serial port!`
|
|
11
|
-
|
|
12
|
-
## Checked on Arduino UNO on CC2531-stick
|
|
13
|
-
|
|
14
|
-
0. Download and unpack the archive with the library https://github.com/kirovilya/CCLib.
|
|
15
|
-
|
|
16
|
-
1. Flashing Arduino sketch via Arduino IDE
|
|
17
|
-
CCLib\Arduino\CCLib\Examples\CCLib_proxy\CCLib_proxy.ino
|
|
18
|
-
|
|
19
|
-
2. Install Python 2.7 or later (tested with python 2.7.13), if not installed
|
|
20
|
-
|
|
21
|
-
3. Install pyserial 3.0.1, if not installed
|
|
22
|
-
`pip install -r CCLib\Python\requirements.txt`
|
|
23
|
-
or
|
|
24
|
-
`pip install pyserial==3.0.1`
|
|
25
|
-
|
|
26
|
-
4. Connect the contacts as described https://github.com/kirovilya/CCLib#1-prepare-your-arduino-board
|
|
27
|
-
**But in my case, I connected completely without resistors, combined the contacts CC_DD_I and CC_DD_O together and connected to the DD pin of the DEBUG connector!**
|
|
28
|
-
|
|
29
|
-

|
|
30
|
-
|
|
31
|
-
I connected only 3 specified contacts and GND. During the firmware, the stick and Arduino must be connected to the USB.
|
|
32
|
-
|
|
33
|
-

|
|
34
|
-

|
|
35
|
-

|
|
36
|
-
|
|
37
|
-
5. After that, try to get information about the chip - if it works, then the connection is correct (example for COM9 port - Arduino port):
|
|
38
|
-
|
|
39
|
-
```
|
|
40
|
-
C:\Projects\CCLib\Python>python cc_info.py -p COM9
|
|
41
|
-
INFO: Found a CC2531 chip on COM9
|
|
42
|
-
|
|
43
|
-
Chip information:
|
|
44
|
-
Chip ID : 0xb524
|
|
45
|
-
Flash size : 256 Kb
|
|
46
|
-
Page size : 2 Kb
|
|
47
|
-
SRAM size : 8 Kb
|
|
48
|
-
USB : Yes
|
|
49
|
-
|
|
50
|
-
Device information:
|
|
51
|
-
IEEE Address : 00124b0014aa
|
|
52
|
-
PC : 0000
|
|
53
|
-
|
|
54
|
-
Debug status:
|
|
55
|
-
[ ] CHIP_ERASE_BUSY
|
|
56
|
-
[ ] PCON_IDLE
|
|
57
|
-
[X] CPU_HALTED
|
|
58
|
-
[ ] PM_ACTIVE
|
|
59
|
-
[ ] HALT_STATUS
|
|
60
|
-
[ ] DEBUG_LOCKED
|
|
61
|
-
[X] OSCILLATOR_STABLE
|
|
62
|
-
[ ] STACK_OVERFLOW
|
|
63
|
-
|
|
64
|
-
Debug config:
|
|
65
|
-
[ ] SOFT_POWER_MODE
|
|
66
|
-
[ ] TIMERS_OFF
|
|
67
|
-
[X] DMA_PAUSE
|
|
68
|
-
[X] TIMER_SUSPEND
|
|
69
|
-
```
|
|
70
|
-
[Another example of connection on MacOS](https://github.com/wavesoft/CCLib/issues/22#issuecomment-384452424)
|
|
71
|
-
|
|
72
|
-
6. If everything is successful, then download [modified firmware for flashing via Arduino](https://github.com/kirovilya/files/blob/master/CC2531ZNP-Pro-Secure_LinkKeyJoin_mod.hex)
|
|
73
|
-
|
|
74
|
-
7. Start the flashing firmware (it takes a long time, about 2-3 hours):
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
C:\Projects\ZigBee>python cc_write_flash.py -e -p COM9 --in=CC2531ZNP-Pro-Secure_LinkKeyJoin_mod.hex
|
|
78
|
-
INFO: Found a CC2531 chip on COM9
|
|
79
|
-
|
|
80
|
-
Chip information:
|
|
81
|
-
Chip ID : 0xb524
|
|
82
|
-
Flash size : 256 Kb
|
|
83
|
-
Page size : 2 Kb
|
|
84
|
-
SRAM size : 8 Kb
|
|
85
|
-
USB : Yes
|
|
86
|
-
Sections in CC2531ZNP-Pro-Secure_LinkKeyJoin_mod.hex:
|
|
87
|
-
|
|
88
|
-
Addr. Size
|
|
89
|
-
-------- -------------
|
|
90
|
-
0x0000 8176 B
|
|
91
|
-
0x1ff6 10 B
|
|
92
|
-
0x3fff0 1 B
|
|
93
|
-
0x2000 239616 B
|
|
94
|
-
|
|
95
|
-
This is going to ERASE and REPROGRAM the chip. Are you sure? <y/N>: y
|
|
96
|
-
|
|
97
|
-
Flashing:
|
|
98
|
-
- Chip erase...
|
|
99
|
-
- Flashing 4 memory blocks...
|
|
100
|
-
-> 0x0000 : 8176 bytes
|
|
101
|
-
Progress 100%... OK
|
|
102
|
-
-> 0x1ff6 : 10 bytes
|
|
103
|
-
Progress 100%... OK
|
|
104
|
-
-> 0x3fff0 : 1 bytes
|
|
105
|
-
Progress 100%... OK
|
|
106
|
-
-> 0x2000 : 239616 bytes
|
|
107
|
-
Progress 100%... OK
|
|
108
|
-
|
|
109
|
-
Completed
|
|
110
|
-
```
|
package/docs/ru/img/CC2531.png
DELETED
|
Binary file
|
package/docs/ru/img/CC2591.png
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/ru/readme.md
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
# Драйвер ioBroker для работы с Zigbee-устройствами
|
|
2
|
-
При помощи координатора Zigbee-сети на базе Texas Instruments SoC cc253x (и другими) создается собственная сеть, в которую подключаются zigbee-устройства. Взаимодействуя напрямую с координатором сети, драйвер позволяет управлять устройствами без дополнительных шлюзов/бриджей от производителей устройств (Xiaomi/TRADFRI/Hue). Про устройство Zigbee-сети можно прочитать [тут (на английском языке)](https://github.com/Koenkk/zigbee2mqtt/wiki/ZigBee-network).
|
|
3
|
-
|
|
4
|
-
## Оборудование
|
|
5
|
-
Для работы необходимо одно из перечисленных устройств, прошитое специальной ZNP-прошивкой: [cc2531, cc2530, cc2530+RF](https://github.com/Koenkk/zigbee2mqtt/wiki/Supported-sniffer-devices#zigbee-coordinator)
|
|
6
|
-
|
|
7
|
-

|
|
8
|
-

|
|
9
|
-

|
|
10
|
-

|
|
11
|
-
Необходимое для прошивки оборудование и процесс подготовки устройства описан [тут (на английском языке)](https://github.com/Koenkk/zigbee2mqtt/wiki/Getting-started) или [тут (на русском языке)](https://github.com/kirovilya/ioBroker.zigbee/wiki/%D0%9F%D1%80%D0%BE%D1%88%D0%B8%D0%B2%D0%BA%D0%B0)
|
|
12
|
-
|
|
13
|
-
Подключенные к Zigbee-сети устройства сообщают координатору своё состояние и информируют о событиях (нажатия кнопки, обнаружение движения, изменение температуры). Эти сведения отражаются в виде объектов-состояний ioBroker. Некоторые состояния имеют обратную связь и могут отправлять команды zigbee-устройству при изменении состояния (переключение состояния розетки и лампы, изменение сцены или яркости лампы).
|
|
14
|
-
|
|
15
|
-
## Работа с драйвером
|
|
16
|
-
Для запуска драйвера необходимо указать имя порта, на котором подключено устройство cc253x.
|
|
17
|
-
Как узнать порт написано [тут (на русском языке)](https://github.com/kirovilya/ioBroker.zigbee/wiki#%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-%D0%B0%D0%B4%D0%B0%D0%BF%D1%82%D0%B5%D1%80%D0%B0)
|
|
18
|
-
|
|
19
|
-
Для подключения устройств необходимо перевести координатор Zigbee-сети в режим сопряжения, нажав зеленую кнопку. Начнется обратный отсчет времени (60 сек) пока будет доступна возможность подключения устройств.
|
|
20
|
-
Для подключения Zigbee-устройств в большинстве случаев достаточно нажать кнопку сопряжения на самом устройстве. Но существуют особенности для некоторых устройств. Подробнее о сопряжении с устройствами читайте [тут (на английском языке)](https://github.com/Koenkk/zigbee2mqtt/wiki/Pairing-devices) или [тут (на русском языке)](https://github.com/kirovilya/ioBroker.zigbee/wiki#%D0%9F%D0%BE%D0%B4%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%B5-%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0).
|
|
21
|
-
|
|
22
|
-
После успешного сопряжения, устройство появится в панели устройств. Если устройство появилось в панели устройств, но имеет тип undefined, то это неизвестное устройство и с ним нельзя будет взаимодействовать. Если устройство есть в списке доступных устройств, но добавилось как undefined, то попробуйте удалить устройство и добавить заново.
|
|
23
|
-
Если не получается подключить устройство, то напиши issue.
|
|
24
|
-
|
|
25
|
-
## Дополнительные сведения
|
|
26
|
-
Существует [дружественный проект](https://github.com/koenkk/zigbee2mqtt) со схожим функционалом на тех же технологиях, в котором с этими же устройствами можно работать по протоколу MQTT.
|
|
27
|
-
Поэтому, если какие-либо улучшения или поддержка новых zigbee-устройств происходит в проекте Zigbee2MQTT, то можно перенести и добавить этот же функционал в этот драйвер. Если заметили это, то напиши issue - перенесем.
|
|
28
|
-
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/tutorial/adm5_1.PNG
DELETED
|
Binary file
|
package/docs/tutorial/adm5_2.PNG
DELETED
|
Binary file
|
package/docs/tutorial/cat.PNG
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/tutorial/inst.PNG
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/tutorial/zigbee.png
DELETED
|
Binary file
|
|
Binary file
|