iobroker.openknx 0.1.9 → 0.1.13
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 +230 -81
- package/admin/i18n/de/translations.json +11 -2
- package/admin/i18n/en/translations.json +11 -2
- package/admin/i18n/es/translations.json +7 -1
- package/admin/i18n/fr/translations.json +7 -1
- package/admin/i18n/it/translations.json +7 -1
- package/admin/i18n/nl/translations.json +7 -1
- package/admin/i18n/pl/translations.json +7 -1
- package/admin/i18n/pt/translations.json +7 -1
- package/admin/i18n/ru/translations.json +7 -1
- package/admin/i18n/zh-cn/translations.json +7 -1
- package/admin/index_m.html +439 -366
- package/admin/words.js +83 -206
- package/io-package.json +9 -4
- package/lib/doubleKeyedMap.js +56 -0
- package/lib/knx/package-lock.json +675 -0
- package/lib/knx/src/dptlib/dpt11.js +1 -1
- package/lib/knx/src/dptlib/dpt14.js +1 -1
- package/lib/knx/src/dptlib/dpt18.js +1 -1
- package/lib/knx/src/dptlib/dpt2.js +5 -3
- package/lib/knx/src/dptlib/dpt21.js +4 -2
- package/lib/knx/src/dptlib/dpt232.js +1 -1
- package/lib/knx/src/dptlib/dpt237.js +1 -1
- package/lib/knx/src/dptlib/dpt3.js +1 -1
- package/lib/knx/src/dptlib/dpt4.js +1 -1
- package/lib/knx/src/dptlib/dpt7.js +8 -1
- package/lib/projectImport.js +146 -48
- package/lib/projectImport.test.js +14 -7
- package/lib/tools.js +47 -26
- package/main.js +103 -104
- package/package.json +8 -20
- package/admin/exportGA.png +0 -0
package/README.md
CHANGED
|
@@ -10,26 +10,74 @@
|
|
|
10
10
|
|
|
11
11
|
**Tests:** 
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
# Deutsch
|
|
14
|
+
Dieser Adapter dient als Kommunikationsschnittstelle zwischen ioBroker und einem KNX IP Gateway.
|
|
15
|
+
Der Adapter ermöglicht die automatische Generierung der ioBroker Datenobjekte durch den Import eines ETS-Gruppenadressen-XML-Exports.
|
|
16
|
+
Alle generierten Kommunikationsobjekte sind zunächst lesbar und schreibbar konfiguriert, Werte werden beim Neustart des Adapters vom knx-Bus geholt.
|
|
17
17
|
|
|
18
18
|
# Installation
|
|
19
|
-
|
|
19
|
+
Der Adapter ist im latest/beta Repository verfügbar. Wenn dieses in den ioBroker Systemeinstellung ausgewählt ist kann der Adapter in der Adapterliste unter "openknx" gesucht und installiert werden. Eine Alternative ist im Expertenmodus das installieren über das Github Symbol möglich in dem man "von Github" auswählt und nach openknx sucht.
|
|
20
|
+
|
|
21
|
+
# Adapterkonfiguration
|
|
22
|
+
In den Instanzeinstellung muss mindestens die Gateway IP eingetragen werden. Dann kann man ein ETS-Export XML Datei importiert werden. Die XML kann über ETS dem Fenster Gruppenadressen mit Rechtsklick auf den oberen Ebene der Gruppenadresse exportiert werden. GA die keinem DPT zugeordnet sind werden nicht importiert. Es handelt sich dabei um GA die keinem Kommunikationsobjekt in ETS zugeordnet sind.
|
|
23
|
+
|
|
24
|
+
# Nutzung
|
|
25
|
+
ioBroker Datenpunkte können einfach mit ACK false/Nicht Bestätigt gesetzt werden. Komplexe Datenpunkt müssen im korrekt format wie zb: {"priority":0,"data":1} gesetzt werden
|
|
26
|
+
|
|
27
|
+
# Fragen und Diskussion
|
|
28
|
+
https://forum.iobroker.net/topic/50352/test-adapter-openknx-0-1-x
|
|
29
|
+
|
|
30
|
+
# Adaptermigration
|
|
20
31
|
|
|
21
|
-
|
|
32
|
+
## Node Red migrieren
|
|
33
|
+
- Wählen Sie im Menü auf der rechten Seite Exportieren
|
|
34
|
+
- Alle Flows auswählen, herunterladen
|
|
35
|
+
- im Texteditor knx.0 ersetzen mit openknx.0
|
|
36
|
+
- Menü auf der rechten Seite, Import auswählen
|
|
37
|
+
- Geänderte Datei auswählen
|
|
38
|
+
- im Dialog Flows auswählen (Subflows, Configuration-Nodes nur wenn sie betroffen sind) -> neue Tabs werden hinzugefügt
|
|
39
|
+
- alte Flows manuell löschen
|
|
22
40
|
|
|
23
|
-
cd /opt/iobroker/
|
|
24
|
-
npm i iobroker.openknx
|
|
25
|
-
iobroker add openknx
|
|
26
41
|
|
|
27
|
-
|
|
42
|
+
## VIS migrieren
|
|
28
43
|
|
|
29
|
-
|
|
30
|
-
|
|
44
|
+
- Vis-Editor öffnen
|
|
45
|
+
- Setup -> Projekt-Export/Import -> Normal exportieren
|
|
46
|
+
- Entpacken der Zip-Datei und vis-views.json in einem Editor öffnen
|
|
47
|
+
- Suche Ersetzen knx.0 mit openknx.0
|
|
48
|
+
- Komprimieren Sie vis-views.json und vis-user.css in einer Zip-Datei
|
|
49
|
+
- Setup -> Projekt-Export/Import -> Import
|
|
50
|
+
- Zip-Datei in Drop-Bereich verschieben
|
|
51
|
+
- Projektname = main
|
|
52
|
+
- Projekt importieren
|
|
53
|
+
|
|
54
|
+
## Skripte migrieren
|
|
55
|
+
|
|
56
|
+
- Skripte öffnen
|
|
57
|
+
- 3 Punkte -> Alle Skripte exportieren
|
|
58
|
+
- Zip-Datei öffnen und den Ordner in einem Editor öffnen
|
|
59
|
+
- Suche knx.0 durch openknx.0 ersetzen
|
|
60
|
+
- alle geänderten Dateien in eine Zip-Datei komprimieren
|
|
61
|
+
- 3 Punkte -> Skripte importieren
|
|
62
|
+
- Zip-Datei in Drop-Bereich verschieben
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
## Grafana migrieren
|
|
66
|
+
|
|
67
|
+
- Alle Dashboards durchgehen und Share/Teilen -> Exportieren -> In Datei speichern
|
|
68
|
+
- im Texteditor knx.0 ersetzen. mit openknx.0
|
|
69
|
+
- Um ein Dashboard zu importieren, klicken Sie im Seitenmenü auf das Symbol + und dann auf Importieren.
|
|
70
|
+
- Von hier aus können Sie eine Dashboard-JSON-Datei hochladen
|
|
71
|
+
- Wählen Sie Importieren (Überschreiben)
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
# English
|
|
75
|
+
This adapter serves as communication interface between Iobroker and your KNX IP Gateway.
|
|
76
|
+
The adapter allows to generate the iobroker communication objects automatically by importing an ETS group address xml export.
|
|
77
|
+
All generated communication objects are initially configured readable and writeable, values are fetched from the knx bus on adapter restart.
|
|
31
78
|
|
|
32
|
-
|
|
79
|
+
# Installation
|
|
80
|
+
The adapter is available in the latest / beta repository. If this is selected in the ioBroker system settings, the adapter can be searched in the adapter list under "openknx" and installed by clicking the + Symbol. An alternative is to install in expert mode via the Github symbol by selecting "from Github" and searching for openknx.
|
|
33
81
|
|
|
34
82
|
# Adapter configuration
|
|
35
83
|

|
|
@@ -38,36 +86,92 @@ When starting, the adapter tries to read all GroupAdresses with have the autorea
|
|
|
38
86
|
This could take a while and can produce a higher load on your KNX-bus. This ensures that the adapter operates with up-to-date values from the start.
|
|
39
87
|
Autoread is done on the first connection with the knx bus after an adapter start or restart, not on every knx reconnection.
|
|
40
88
|
After adapter installation, open the adapter configuration. Fill in:
|
|
41
|
-
|
|
42
|
-
IP of your KNX
|
|
89
|
+
### KNX Gateway IP
|
|
90
|
+
IP of your KNX IP gateway.
|
|
43
91
|
|
|
44
|
-
|
|
92
|
+
### Port
|
|
45
93
|
this is normally port 3671 of the KNX IP gateway.
|
|
46
94
|
|
|
47
|
-
|
|
95
|
+
### phys. EIB Adress
|
|
48
96
|
Fill in physical address of the gateway in the format 1/1/1.
|
|
49
97
|
|
|
50
|
-
|
|
98
|
+
### Add only new Objects
|
|
51
99
|
If checked, the import will skip overwriting existing communication objects.
|
|
52
100
|
|
|
53
|
-
|
|
54
|
-
|
|
101
|
+
### GA XML import
|
|
102
|
+

|
|
103
|
+
1. In ETS go to Group Addresses, select export group address and select XML export in latest format version.
|
|
104
|
+
ETS4 Format is not supported, it does not contain DPTs information.
|
|
105
|
+
|
|
55
106
|
2. upload your ETS Export XML in the adapter via the GA XML-Import dialog
|
|
56
107
|
3. Import will immediatelly start after file selection and give a status report after completion.
|
|
57
108
|
After the successful import a message shows how much objects where recognized. More detailed information could be found in the log.
|
|
58
109
|
|
|
59
|
-
|
|
110
|
+
Hint on ETS configuration:
|
|
111
|
+
If you have different DPT Subtypes for the GA and in the communication objets that use this GA, then the ETS seems to use the DPT Type with the lowest number. In this case manually ensure that all fields are using the same datatype.
|
|
112
|
+
|
|
113
|
+
### Frames per sec
|
|
60
114
|
This settings protects the KNX bus from data flooding by limiting data frames to a certain rate. Not sent frames are put into a fifo buffer.
|
|
61
115
|
|
|
116
|
+
### Alias
|
|
117
|
+
KNX devices can have ga's for state feedback that belong to a commanding ga. Some applications like certain VIS widgets expect a combined status and actuation object. You can combine these states into one alias by using a separate alias id to write to and another to read from. The menu helps to create a matching pair according to the naming convention with the given filtering rule.
|
|
118
|
+
|
|
119
|
+
# adapter migration
|
|
120
|
+
## migrate Node Red
|
|
121
|
+
- in right side menu, select Export
|
|
122
|
+
- select All Flows, Download
|
|
123
|
+
- in text editor replace knx.0. with openknx.0.
|
|
124
|
+
- right side menu, select import
|
|
125
|
+
- select changed file
|
|
126
|
+
- in the dialog select Flows (Subflows, Configuration-Nodes only if they are affected) -> new tabs get added
|
|
127
|
+
- delete old flows manually
|
|
128
|
+
|
|
129
|
+
## migrate VIS
|
|
130
|
+
- Open Vis Editor
|
|
131
|
+
- Setup -> Projekt-Export/import -> Exportieren normal
|
|
132
|
+
- Open Zip File and vis-views.json in an editor
|
|
133
|
+
- Search Replace knx.0. with openknx.0.
|
|
134
|
+
- Compress vis-views.json and vis-user.css in a zip file
|
|
135
|
+
- Setup -> Projekt-Export/import -> Import
|
|
136
|
+
- Move zip file in Drop Area
|
|
137
|
+
- Projektname = main
|
|
138
|
+
- Import project
|
|
139
|
+
|
|
140
|
+
## migrate Scripts
|
|
141
|
+
- Open Scripts
|
|
142
|
+
- 3 dots -> Export all scripts
|
|
143
|
+
- Open Zip File and open the folder in a editor
|
|
144
|
+
- Search Replace knx.0 with openknx.0
|
|
145
|
+
- compress all changed files in a zip file
|
|
146
|
+
- 3 dots ->Import scripts
|
|
147
|
+
- Move zip file in Drop Area
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
## migrate Grafana
|
|
151
|
+
- go through all dashboards and select share - export - save to file
|
|
152
|
+
- in text editor replace knx.0. with openknx.0.
|
|
153
|
+
- To import a dashboard click the + icon in the side menu, and then click Import.
|
|
154
|
+
- From here you can upload a dashboard JSON file
|
|
155
|
+
- select Import (Overwrite)
|
|
156
|
+
|
|
62
157
|
# howto use the adapter & basic concept
|
|
63
|
-
|
|
158
|
+
|
|
159
|
+
### ACK flags
|
|
160
|
+
Application shall not set ack flag, application is notified from this adapter by the ack flag if data is updated.
|
|
161
|
+
KNX Stack sets the ack flag of the linked IoBroker object on receiption of a group address.
|
|
162
|
+
Sent frames on KNX do not result into a ack of the writing object.
|
|
163
|
+
|
|
164
|
+
### Node Red complex datatype example
|
|
165
|
+
Create a function node that connects to a ioBroker out node that connects with a KNX object of DPT2.
|
|
166
|
+
msg.payload = {"priority":1 ,"data":0};
|
|
167
|
+
return msg;
|
|
64
168
|
|
|
65
169
|
# log level
|
|
66
170
|
Enable expert mode to enable switching between different log levels. Default loglevel is info.
|
|
67
171
|

|
|
68
172
|
|
|
69
173
|
# IOBroker Communication Object description
|
|
70
|
-
|
|
174
|
+
IoBroker defines Objects to hold communication interfaces settings.
|
|
71
175
|
GA import generates a communication object folder structure following the ga main-group/middle-group scheme. Each groupaddress is an oject with following automatically generated data.
|
|
72
176
|
|
|
73
177
|
IoBroker state roles (https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md) have value 'state' by default. Some more granular values are derieved from the DPT, for example Date or Switch.
|
|
@@ -87,7 +191,7 @@ Autoread is set to false where it is clear from the DPT that this is a trigger s
|
|
|
87
191
|
"write": true //default true, if set change on object is triggering knx write, succ. write sets then ack flag to true
|
|
88
192
|
},
|
|
89
193
|
"native": { //values here can be interpreted by openknx adapter
|
|
90
|
-
"address": "0/1/2", //knx address
|
|
194
|
+
"address": "0/1/2", //knx group address
|
|
91
195
|
"answer_groupValueResponse": false, //default false, if set to true adapter responds with value on GroupValue_Read
|
|
92
196
|
"autoread": true, //default true for non trigger signals , adapter sends a GroupValue_read on start to sync its states
|
|
93
197
|
"bitlength": 1, //size ob knx data, derived from dpt
|
|
@@ -105,98 +209,144 @@ Autoread is set to false where it is clear from the DPT that this is a trigger s
|
|
|
105
209
|
"ts": 1638913951639
|
|
106
210
|
}
|
|
107
211
|
|
|
108
|
-
|
|
109
212
|
# Adapter communication Interface Description
|
|
110
213
|
Handeled DPTs are: 1-21,232,237,238
|
|
111
214
|
Unhandeled DPTs are written as raw buffers, the interface is a sequencial string of hexadecimal numbers. For example write '0102feff' to send values 0x01 0x02 0xfe 0xff on the bus.
|
|
112
215
|
Where number datatype is used please note that interface values can be scaled.
|
|
113
216
|
|
|
114
|
-
|
|
217
|
+
### API call
|
|
218
|
+
IoBroker defines States as communication interface.
|
|
115
219
|
|
|
116
220
|
setState(
|
|
117
221
|
id: string, // object path
|
|
118
222
|
state: State | StateValue | SettableState,
|
|
119
|
-
ack: false, //
|
|
223
|
+
ack: false, //has to be set to false by convention
|
|
120
224
|
c: 'GroupValue_Read' //optional comment, set this value to trigger a bus read to this object, given StateValue is ignored
|
|
121
225
|
): void;
|
|
122
226
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
|
128
|
-
|
|
|
129
|
-
| DPT-
|
|
130
|
-
| DPT-
|
|
131
|
-
| DPT-
|
|
132
|
-
| DPT-
|
|
133
|
-
| DPT-
|
|
134
|
-
| DPT-
|
|
135
|
-
| DPT-
|
|
136
|
-
| DPT-
|
|
137
|
-
| DPT-
|
|
138
|
-
| DPT-
|
|
139
|
-
| DPT-
|
|
140
|
-
| DPT-
|
|
141
|
-
| DPT-
|
|
142
|
-
| DPT-
|
|
143
|
-
| DPT-
|
|
144
|
-
| DPT-
|
|
145
|
-
| DPT-
|
|
146
|
-
| DPT-
|
|
147
|
-
| DPT-
|
|
148
|
-
| DPT-
|
|
149
|
-
| DPT-
|
|
150
|
-
| DPT-
|
|
151
|
-
| DPT-
|
|
152
|
-
| DPT-
|
|
153
|
-
| DPT-
|
|
154
|
-
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
Only time and date information is exchanged with KNX time based datatypes, e.g. DPT-19 has unsupported fields for signal quality
|
|
227
|
+
### Description of all DPTs
|
|
228
|
+
| KNX DPT | javascript datatype | special values | value range | remark |
|
|
229
|
+
| --------- | ---------------------- | ---------------------------------------------------------------------------------------------------- | ----------------------------------------- | --------------------------------------------------- |
|
|
230
|
+
| DPT-1 | boolean | | false, true ||
|
|
231
|
+
| DPT-2 | object | {"priority":1 bit,"data":1 bit} | - ||
|
|
232
|
+
| DPT-3 | object | {"decr_incr":1 bit,"data":2 bit} | - ||
|
|
233
|
+
| DPT-18 | object | {"save_recall":0,"scenenumber":0} | - |Datapoint Type DPT_SceneControl removed from autoread|
|
|
234
|
+
| DPT-21 | object | {"outofservice":0,"fault":0,"overridden":0,"inalarm":0,"alarmunack":0} | - ||
|
|
235
|
+
| DPT-232 | object | {red:0..255, green:0.255, blue:0.255} | - ||
|
|
236
|
+
| DPT-237 | object | {"address":0,"addresstype":0,"readresponse":0,"lampfailure":0,"ballastfailure":0,"convertorerror":0} | - ||
|
|
237
|
+
| DPT-4 | string | | one character sent as 8-bit character ||
|
|
238
|
+
| DPT-16 | string | | one character sent as 16-character string ||
|
|
239
|
+
| DPT-5 | number | | 8-bit unsigned value ||
|
|
240
|
+
| DPT-5.001 | number | | 0..100 [%] scaled to 1-byte ||
|
|
241
|
+
| DPT-5.003 | number | | 0..360 [°] scaled to 1-byte ||
|
|
242
|
+
| DPT-6 | number | | 8-bit signed -128..127 ||
|
|
243
|
+
| DPT-7 | number | | 16-bit unsigned value ||
|
|
244
|
+
| DPT-8 | number | | 2-byte signed value -32768..32767 ||
|
|
245
|
+
| DPT-9 | number | | 2-byte floating point value ||
|
|
246
|
+
| DPT-14 | number | | 4-byte floating point value ||
|
|
247
|
+
| DPT-12 | number | | 4-byte unsigned value ||
|
|
248
|
+
| DPT-13 | number | | 4-byte signed value ||
|
|
249
|
+
| DPT-15 | number | | 4-byte ||
|
|
250
|
+
| DPT-17 | number | | 1-byte | DPT_SceneNumber removed from autoread|
|
|
251
|
+
| DPT-20 | number | | 1-byte ||
|
|
252
|
+
| DPT-238 | number | | 1-byte ||
|
|
253
|
+
| DPT-10 | number for Date Object | | - ||
|
|
254
|
+
| DPT-11 | number for Date Object | | - ||
|
|
255
|
+
| DPT-19 | number for Date Object | | - ||
|
|
256
|
+
| DPT-26 | string | e.g. 00010203.. | - | Datapoint Type DPT_SceneInfo not read by autread|
|
|
257
|
+
| DPT-238 | string | e.g. 00010203.. | - | DPT_SceneConfig not read by autread|
|
|
258
|
+
| rest | string | e.g. 00010203.. | - ||
|
|
259
|
+
|
|
260
|
+
Only time and date information is exchanged with KNX time based datatypes, e.g. DPT-19 has unsupported fields for signal quality.
|
|
159
261
|
|
|
160
262
|
Object send and receive values are of type boolean DPT1), number (scaled, or unscaled), string.
|
|
161
263
|
DPT 2 'expects a object {"priority":0,"data":1}' receive provides a strinified object of same type.
|
|
162
264
|
Other joint DPTs have similar object notation.
|
|
163
|
-
DPT19 expects a Number from a Date Object, Iobroker can not handle objects, fields of KNX ko that cannot be derived from timestamp are not implemented eg. quality flags
|
|
265
|
+
DPT19 expects a Number from a Date Object, Iobroker can not handle objects, fields of KNX ko that cannot be derived from timestamp are not implemented eg. quality flags.
|
|
164
266
|
|
|
165
267
|
Date and time DPTs (DPT10, DPT11)
|
|
166
268
|
Please have in mind that Javascript and KNX have very different base type for time and date.
|
|
167
269
|
DPT10 is time (hh:mm:ss) plus "day of week". This concept is unavailable in JS, so you'll be getting/setting a regular Date Js object, but please remember you'll need to ignore the date, month and year. The exact same datagram that converts to "Mon, Jul 1st 12:34:56", will evaluate to a wildly different JS Date of "Mon, Jul 8th 12:34:56" one week later. Be warned!
|
|
168
270
|
DPT11 is date (dd/mm/yyyy): the same applies for DPT11, you'll need to ignore the time part.
|
|
169
271
|
|
|
170
|
-
|
|
171
|
-
|
|
272
|
+
(KNX specification of DPTs https://www.knx.org/wAssets/docs/downloads/Certification/Interworking-Datapoint-types/03_07_02-Datapoint-Types-v02.02.01-AS.pdf)
|
|
273
|
+
|
|
274
|
+
### group value write
|
|
275
|
+
Sending is triggered by writing a communication object.
|
|
172
276
|
Communication object is triggered when a write frame is received on the bus.
|
|
173
277
|
|
|
174
|
-
|
|
278
|
+
### group value read
|
|
175
279
|
Sending can be triggered by writing a communicaton object with comment.
|
|
176
|
-
Receiving, if configured will trigger a group value response (limitation: group value write at the moment) of the actual c.o. value, see below
|
|
280
|
+
Receiving, if configured will trigger a group value response (limitation: group value write at the moment) of the actual c.o. value, see below.
|
|
177
281
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
282
|
+
### group value response
|
|
283
|
+
If answer_groupValueResponse is set to true, then the adapter will reply with a GroupValue_response to a previously received GroupValue_read request.
|
|
284
|
+
|
|
285
|
+
### mapping to KNX Flags
|
|
286
|
+
The KNX object flags define the bus behavior of the object they represent.
|
|
287
|
+
6 different object flags are defined.
|
|
288
|
+
|
|
289
|
+
| Flag | Flag de | Adapter usage ||
|
|
290
|
+
| ------------------------- | ------------------------ | ------------------------------------------------- | --------------------------------------------- |
|
|
291
|
+
|C: the Communication flag | K: Kommunikations-Flag | always set ||
|
|
292
|
+
|R: the Read flag | L: Lese-Flag | object native.answer_groupValueResponse ||
|
|
293
|
+
|T: the Transmit flag | Ü: Übertragen-Flag | object common.write ||
|
|
294
|
+
|W: the Write flag | S: Schreiben-Flag | object common.read | bus can modify the object |
|
|
295
|
+
|U: the Update flag | A: Aktualisieren-Flag | object common.read | update object on incoming GroupValueResponses |
|
|
296
|
+
|I: the Initialization flag | I: Initialisierungs-Flag | object native.autoread | |
|
|
297
|
+
|
|
298
|
+
L-Flag: Objekt antwortet auf GroupValueRead mit GroupValueResponse mit dem Wert (Lesbar). Nur ein KO je GA sollte das gesetzt haben, idealerweise derjenige, der den echten Zustand am besten kennt, üblicherweise der Aktor!
|
|
181
299
|
|
|
182
300
|
# Features
|
|
183
|
-
*
|
|
184
|
-
*
|
|
185
|
-
*
|
|
186
|
-
* raw read and write of unsupported DPTs
|
|
187
|
-
* support of group value read and group value write, group value write as response to group value request
|
|
188
|
-
* Autoread
|
|
301
|
+
* stable and reliable knx stack
|
|
302
|
+
* easy interface to group adresses of many DPTs, raw read and write for other DPTs
|
|
303
|
+
* support of KNX group value read and group value write and group value response
|
|
189
304
|
* free open source
|
|
305
|
+
* no dependencies to cloud services, runs without internet access
|
|
306
|
+
* Autoread on start
|
|
307
|
+
* fast import of group addresses in XML format
|
|
308
|
+
* create joint alias objects that react on status inputs
|
|
190
309
|
|
|
191
310
|
# Known Problems
|
|
192
|
-
-
|
|
311
|
+
- none
|
|
193
312
|
|
|
194
313
|
# Limitations
|
|
195
314
|
- only three level group addresses are supported
|
|
315
|
+
- ETS 4 export file format is not supported
|
|
196
316
|
|
|
197
317
|
## Changelog
|
|
198
|
-
### 0.1.
|
|
199
|
-
*
|
|
318
|
+
### 0.1.13 (2021-12-30)
|
|
319
|
+
* bugfix: state.value of of type object must be serialized
|
|
320
|
+
* bugfix: alias algorithm error handling, takover more info to alias
|
|
321
|
+
|
|
322
|
+
### 0.1.12 (2021-12-30)
|
|
323
|
+
* feature: improve alias status search algorithm, add units
|
|
324
|
+
* feature: notify user after import if no dpt subtype is set
|
|
325
|
+
* fix: library did not allow to write possible 0 values to certain dpts
|
|
326
|
+
* fix: admin dialog ui fixes, better presentation of some warnings
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
### 0.1.11 (2021-12-28)
|
|
330
|
+
* feature: remove more scene DPTs from default autoread
|
|
331
|
+
* feature: sends GroupValue_Response on GroupValue_Read if configured
|
|
332
|
+
* feature: admin dialog with option to generate aliases (beta)
|
|
333
|
+
* feature: admin dialog reactivates after adapter reset
|
|
334
|
+
* feature: add support for DPT 7.600
|
|
335
|
+
* feature: show logs of knx library
|
|
336
|
+
* fix: filter out logs with device address bus interactions
|
|
337
|
+
* fix: filter ga names that are forbidden in IOB
|
|
338
|
+
* fix: reply with groupvalueresponse on request, not with groupvaluewrite
|
|
339
|
+
* fix: remove more scene dpts from autoread
|
|
340
|
+
|
|
341
|
+
### 0.1.10 (2021-12-24)
|
|
342
|
+
* fix: interface to write objects corrected
|
|
343
|
+
|
|
344
|
+
### 0.1.9 (2021-12-22)
|
|
345
|
+
* fix: algorith to generate the iob objects improved
|
|
346
|
+
* fix: min max removed for boolean
|
|
347
|
+
* fix: ackqnowledgement handling
|
|
348
|
+
* removed feature: override path of knx objects
|
|
349
|
+
* feature: new logo
|
|
200
350
|
|
|
201
351
|
### 0.1.8
|
|
202
352
|
* (tombox) feature: changed ui and many fixes
|
|
@@ -235,7 +385,6 @@ Receiving will update the value of the iobroker object in read is set to true.
|
|
|
235
385
|
* (boellner) feature: import ga xml
|
|
236
386
|
|
|
237
387
|
## License
|
|
238
|
-
|
|
239
388
|
GNU GENERAL PUBLIC LICENSE
|
|
240
389
|
==========================
|
|
241
390
|
Copyright (c) 2021 boellner
|
|
@@ -1,19 +1,28 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Alias-Pfad",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Klicken Sie hier für eine Anleitung zur Migration von knx.0 zu openknx.0",
|
|
2
4
|
"Extracted %s states": "Extrahierte %s-Zustände",
|
|
3
5
|
"Frames per second": "Bilder pro Sekunde",
|
|
4
|
-
"GA XML Export from ETS": "GA-XML-Export aus ETS",
|
|
5
6
|
"Gateway IP": "Gateway-IP",
|
|
6
7
|
"How to export GA XML from ETS:": "So exportieren Sie GA-XML aus der ETS:",
|
|
8
|
+
"Import XML from ETS": "Import XML aus ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj werden nicht unterstützt, bitte öffnen Sie in der ETS die Gruppenadressen und klicken Sie mit der rechten Maustaste auf Gruppenadressen und dann Gruppenadressen-Export",
|
|
10
|
+
"Minimum Similarity 0-1": "Mindest Ähnlichkeit 0-1",
|
|
8
11
|
"Port": "Hafen",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex zum Erkennen von Status-GAs (Endung mit status, rm, rückmeldung..)",
|
|
9
13
|
"Restarting adapter": "Adapter neu starten...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Um Aktor und Zustand GA in einem ioBroker-Objekt zusammenzuführen, können Sie den Adapter Aliase generieren lassen.",
|
|
10
15
|
"Unsupported file format": "Nicht unterstütztes Dateiformat",
|
|
11
16
|
"add only new Objects": "Nur neue Objekte hinzufügen",
|
|
17
|
+
"generate aliases": "Aliase generieren",
|
|
12
18
|
"invalid IP address": "ungültige IP-Adresse",
|
|
13
19
|
"invalid port number": "ungültige Portnummer",
|
|
14
20
|
"local network interface": "lokale Netzwerkschnittstelle",
|
|
15
21
|
"min 1": "Minimum ist 1",
|
|
22
|
+
"override object path": "",
|
|
16
23
|
"physical KNX address": "physikalische KNX-Adresse",
|
|
17
24
|
"physical KNX address in format a/b/c not valid": "physikalische KNX-Adresse im Format a/b/c ungültig",
|
|
18
|
-
"this is not a number": "das ist keine Zahl"
|
|
25
|
+
"this is not a number": "das ist keine Zahl",
|
|
26
|
+
"using old knx path for objects": "",
|
|
27
|
+
"using old knx path for objects (Before importing, delete old objects manually)": ""
|
|
19
28
|
}
|
|
@@ -1,19 +1,28 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Alias path",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Click here for a manual to migrate from knx.0 to openknx.0",
|
|
2
4
|
"Extracted %s states": "Extracted %s states",
|
|
3
5
|
"Frames per second": "Frames per second",
|
|
4
|
-
"GA XML Export from ETS": "GA XML Export from ETS",
|
|
5
6
|
"Gateway IP": "Gateway IP",
|
|
6
7
|
"How to export GA XML from ETS:": "How to export GA XML from ETS:",
|
|
8
|
+
"Import XML from ETS": "Import XML from ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export",
|
|
10
|
+
"Minimum Similarity 0-1": "Minimum Similarity 0-1",
|
|
8
11
|
"Port": "Port",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex to identify Status GAs (ending with status, rm, rückmeldung..)",
|
|
9
13
|
"Restarting adapter": "Restarting adapter...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "To merge Action and Status GA in one ioBroker Object you can let the Adapter generate",
|
|
10
15
|
"Unsupported file format": "Unsupported file format",
|
|
11
16
|
"add only new Objects": "Add only new Objects",
|
|
17
|
+
"generate aliases": "generate aliases",
|
|
12
18
|
"invalid IP address": "invalid IP address",
|
|
13
19
|
"invalid port number": "invalid port number",
|
|
14
20
|
"local network interface": "local network interface",
|
|
15
21
|
"min 1": "minimum is 1",
|
|
22
|
+
"override object path": "",
|
|
16
23
|
"physical KNX address": "physical KNX address",
|
|
17
24
|
"physical KNX address in format a/b/c not valid": "physical KNX address in format a/b/c not valid",
|
|
18
|
-
"this is not a number": "this is not a number"
|
|
25
|
+
"this is not a number": "this is not a number",
|
|
26
|
+
"using old knx path for objects": "",
|
|
27
|
+
"using old knx path for objects (Before importing, delete old objects manually)": ""
|
|
19
28
|
}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Ruta de alias",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Haga clic aquí para obtener un manual para migrar de knx.0 a openknx.0",
|
|
2
4
|
"Extracted %s states": "Estados% s extraídos",
|
|
3
5
|
"Frames per second": "Cuadros por segundo",
|
|
4
|
-
"GA XML Export from ETS": "Exportación GA XML desde ETS",
|
|
5
6
|
"Gateway IP": "IP de acceso",
|
|
6
7
|
"How to export GA XML from ETS:": "Cómo exportar GA XML desde ETS:",
|
|
8
|
+
"Import XML from ETS": "Exportación GA XML desde ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj no es compatible, abra en ETS las direcciones del grupo y haga clic con el botón derecho en las direcciones del grupo y luego exportar la dirección del grupo.",
|
|
10
|
+
"Minimum Similarity 0-1": "Similitud mínima 0-1",
|
|
8
11
|
"Port": "Puerto",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex para identificar estados GA (terminando con status, rm, rückmeldung ..). ",
|
|
9
13
|
"Restarting adapter": "Reiniciando el adaptador ...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Para fusionar Acción y Estado GA en un Objeto ioBroker, puede dejar que el Adaptador genere",
|
|
10
15
|
"Unsupported file format": "Formato de archivo no soportado",
|
|
11
16
|
"add only new Objects": "Agregar solo nuevos objetos",
|
|
17
|
+
"generate aliases": "generar alias",
|
|
12
18
|
"invalid IP address": "Dirección IP inválida",
|
|
13
19
|
"invalid port number": "número de puerto no válido",
|
|
14
20
|
"local network interface": "interfaz de red local",
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Chemin d'alias",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Cliquez ici pour un manuel de migration de knx.0 vers openknx.0",
|
|
2
4
|
"Extracted %s states": "États %s extraits",
|
|
3
5
|
"Frames per second": "Images par seconde",
|
|
4
|
-
"GA XML Export from ETS": "Exportation XML GA depuis ETS",
|
|
5
6
|
"Gateway IP": "IP de la passerelle",
|
|
6
7
|
"How to export GA XML from ETS:": "Comment exporter GA XML depuis ETS :",
|
|
8
|
+
"Import XML from ETS": "Exportation XML GA depuis ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj ne sont pas pris en charge, veuillez ouvrir dans ETS les adresses de groupe et faites un clic droit sur les adresses de groupe, puis exportez l'adresse de groupe",
|
|
10
|
+
"Minimum Similarity 0-1": "Similitude minimale 0-1",
|
|
8
11
|
"Port": "Port",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex pour identifier les Status GA (se terminant par status, rm, rückmeldung..). ",
|
|
9
13
|
"Restarting adapter": "Redémarrage de l'adaptateur...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Pour fusionner l'action et le statut GA dans un seul objet ioBroker, vous pouvez laisser l'adaptateur générer",
|
|
10
15
|
"Unsupported file format": "Format de fichier non pris en charge",
|
|
11
16
|
"add only new Objects": "Ajouter uniquement de nouveaux objets",
|
|
17
|
+
"generate aliases": "générer des alias",
|
|
12
18
|
"invalid IP address": "adresse IP invalide",
|
|
13
19
|
"invalid port number": "numéro de port invalide",
|
|
14
20
|
"local network interface": "interface réseau local",
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Alias percorso",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Fare clic qui per un manuale per migrare da knx.0 a openknx.0",
|
|
2
4
|
"Extracted %s states": "%s stati estratti",
|
|
3
5
|
"Frames per second": "Fotogrammi al secondo",
|
|
4
|
-
"GA XML Export from ETS": "Esportazione XML GA da ETS",
|
|
5
6
|
"Gateway IP": "IP gateway",
|
|
6
7
|
"How to export GA XML from ETS:": "Come esportare GA XML da ETS:",
|
|
8
|
+
"Import XML from ETS": "Esportazione XML GA da ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj non sono supportati, aprire in ETS gli indirizzi di gruppo e fare clic con il pulsante destro del mouse sugli indirizzi di gruppo e quindi esportare gli indirizzi di gruppo",
|
|
10
|
+
"Minimum Similarity 0-1": "Somiglianza minima 0-1",
|
|
8
11
|
"Port": "Porta",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex per identificare gli Status GA (che termina con status, rm, rückmeldung..). ",
|
|
9
13
|
"Restarting adapter": "Riavvio dell'adattatore...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Per unire Action e Status GA in un oggetto ioBroker puoi lasciare che l'adattatore generi",
|
|
10
15
|
"Unsupported file format": "Formato file non supportato",
|
|
11
16
|
"add only new Objects": "Aggiungi solo nuovi oggetti",
|
|
17
|
+
"generate aliases": "generare alias",
|
|
12
18
|
"invalid IP address": "indirizzo IP non valido",
|
|
13
19
|
"invalid port number": "numero di porta non valido",
|
|
14
20
|
"local network interface": "interfaccia di rete locale",
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Aliaspad",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Klik hier voor een handleiding om te migreren van knx.0 naar openknx.0",
|
|
2
4
|
"Extracted %s states": "Geëxtraheerde %s staten",
|
|
3
5
|
"Frames per second": "Beelden per seconde",
|
|
4
|
-
"GA XML Export from ETS": "GA XML-export vanuit ETS",
|
|
5
6
|
"Gateway IP": "Gateway IP",
|
|
6
7
|
"How to export GA XML from ETS:": "GA XML exporteren vanuit ETS:",
|
|
8
|
+
"Import XML from ETS": "GA XML-export vanuit ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj worden niet ondersteund, open in ETS de groepsadressen en klik met de rechtermuisknop op groepsadressen en exporteer groepsadressen",
|
|
10
|
+
"Minimum Similarity 0-1": "Minimale gelijkenis 0-1",
|
|
8
11
|
"Port": "Haven",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex om Status GA's te identificeren (eindigend met status, rm, rückmeldung..). ",
|
|
9
13
|
"Restarting adapter": "Adapter opnieuw opstarten...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Om Action en Status GA in één ioBroker-object samen te voegen, kunt u de Adapter laten genereren:",
|
|
10
15
|
"Unsupported file format": "Niet ondersteund bestandsformaat",
|
|
11
16
|
"add only new Objects": "Alleen nieuwe objecten toevoegen",
|
|
17
|
+
"generate aliases": "aliassen genereren",
|
|
12
18
|
"invalid IP address": "ongeldig IP-adres",
|
|
13
19
|
"invalid port number": "ongeldig poortnummer",
|
|
14
20
|
"local network interface": "lokale netwerkinterface",
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
+
"Alias path": "Ścieżka aliasu",
|
|
3
|
+
"Click here for a manual to migrate from knx.0 to openknx.0": "Kliknij tutaj, aby uzyskać instrukcję migracji z knx.0 do openknx.0",
|
|
2
4
|
"Extracted %s states": "Wyodrębnione stany %s",
|
|
3
5
|
"Frames per second": "Klatki na sekundę",
|
|
4
|
-
"GA XML Export from ETS": "Eksport XML GA z ETS",
|
|
5
6
|
"Gateway IP": "IP bramy",
|
|
6
7
|
"How to export GA XML from ETS:": "Jak wyeksportować GA XML z ETS:",
|
|
8
|
+
"Import XML from ETS": "Eksport XML GA z ETS",
|
|
7
9
|
"KNXproj are not supported, please open in ETS the Group Adresses and right click on group addresses and then group adresse export": "KNXproj nie są obsługiwane, otwórz w ETS adresy grup i kliknij prawym przyciskiem adresy grup, a następnie wyeksportuj adresy grup",
|
|
10
|
+
"Minimum Similarity 0-1": "Minimalne podobieństwo 0-1",
|
|
8
11
|
"Port": "Port",
|
|
12
|
+
"Regex to identify Status GAs (ending with status, rm, rückmeldung..).": "Regex do identyfikacji statusów GA (kończących się na status, rm, rückmeldung...). ",
|
|
9
13
|
"Restarting adapter": "Ponowne uruchamianie adaptera...",
|
|
14
|
+
"To merge Action and Status GA in one ioBroker Object you can let the Adapter generate": "Aby połączyć działanie i status GA w jednym obiekcie ioBroker, możesz pozwolić adapterowi na generowanie",
|
|
10
15
|
"Unsupported file format": "Niewspierany format pliku",
|
|
11
16
|
"add only new Objects": "Dodaj tylko nowe obiekty",
|
|
17
|
+
"generate aliases": "generować aliasy",
|
|
12
18
|
"invalid IP address": "nieprawidłowy adres IP",
|
|
13
19
|
"invalid port number": "nieprawidłowy numer portu",
|
|
14
20
|
"local network interface": "lokalny interfejs sieciowy",
|