iobroker.openknx 0.0.11 → 0.0.12
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 +25 -17
- package/io-package.json +1 -1
- package/main.js +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,29 +8,37 @@
|
|
|
8
8
|
[](https://nodei.co/npm/iobroker.openknx/)
|
|
9
9
|
|
|
10
10
|
# Installation of early versions
|
|
11
|
-
This is an early untested version
|
|
12
|
-
Please make a good backup of all your data!
|
|
11
|
+
This is an early untested version
|
|
12
|
+
Please make a good backup of all your data!
|
|
13
13
|
Please do not test in critical environments
|
|
14
14
|
|
|
15
15
|
in shell
|
|
16
|
+
'''
|
|
16
17
|
cd /opt/iobroker/node_modules
|
|
17
18
|
npm i iobroker.openknx@version
|
|
18
19
|
iobroker add openknx
|
|
20
|
+
'''
|
|
21
|
+
'''
|
|
19
22
|
after updates:
|
|
20
23
|
iobroker upload openknx
|
|
24
|
+
'''
|
|
21
25
|
|
|
22
|
-
This adapter serves as a communication interface between Iobroker Object tree and a IP Gateway on the KNX bus.
|
|
26
|
+
This adapter serves as a communication interface between Iobroker Object tree and a IP Gateway on the KNX bus.
|
|
23
27
|
This adapter allows to generate the communication objects by importing of knxproj Files from ETS.
|
|
24
28
|
|
|
25
29
|
# Compatibility
|
|
26
|
-
this adapter has is own namespace openknx
|
|
30
|
+
this adapter has is own namespace openknx.
|
|
27
31
|
for existing installation that are connected to knx signals of another namspace you can use the setting:
|
|
28
32
|
Override object path
|
|
29
33
|
to e.g. knx.0, a new project import will then store the data in this object tree region.
|
|
30
34
|
Objects are not compatible, remove them before and disable all other knx adapters.
|
|
31
35
|
Leave setting empty to use own namespace.
|
|
32
36
|
|
|
37
|
+
# log level
|
|
38
|
+
|
|
39
|
+
|
|
33
40
|
# Adapter setting Interface Description
|
|
41
|
+
'''
|
|
34
42
|
{
|
|
35
43
|
"_id": "path.and.name.to.object",
|
|
36
44
|
"type": "state",
|
|
@@ -63,26 +71,26 @@ Leave setting empty to use own namespace.
|
|
|
63
71
|
"user": "system.user.admin",
|
|
64
72
|
"ts": 1638913951639
|
|
65
73
|
}
|
|
66
|
-
|
|
74
|
+
'''
|
|
67
75
|
|
|
68
76
|
# Adapter communication Interface Description
|
|
69
|
-
Supported DPTs 1-21,232,237,238
|
|
70
|
-
Only time and date information is exchanged with KNX time based datatypes, e.g. DPT-19 has unsupported fields for signal quality
|
|
77
|
+
Supported DPTs 1-21,232,237,238
|
|
78
|
+
Only time and date information is exchanged with KNX time based datatypes, e.g. DPT-19 has unsupported fields for signal quality
|
|
71
79
|
|
|
72
|
-
Object send and receive values are of type boolean (eg DPT1), number (scaled, or unscaled), string.
|
|
73
|
-
DPT 2 'expects a object {"priority":0,"data":1}' receive provides a strinified object of same type.
|
|
74
|
-
Other joint DPTs have similar object notation.
|
|
80
|
+
Object send and receive values are of type boolean (eg DPT1), number (scaled, or unscaled), string.
|
|
81
|
+
DPT 2 'expects a object {"priority":0,"data":1}' receive provides a strinified object of same type.
|
|
82
|
+
Other joint DPTs have similar object notation.
|
|
75
83
|
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
|
|
76
84
|
|
|
77
|
-
Date and time DPTs (DPT10, DPT11)
|
|
85
|
+
Date and time DPTs (DPT10, DPT11)
|
|
78
86
|
Please have in mind that Javascript and KNX have very different base type for time and date.
|
|
79
87
|
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!
|
|
80
88
|
DPT11 is date (dd/mm/yyyy): the same applies for DPT11, you'll need to ignore the time part.
|
|
81
89
|
|
|
82
90
|
|
|
83
91
|
# Features
|
|
84
|
-
|
|
85
|
-
|
|
92
|
+
* import groupaddresses in XML format
|
|
93
|
+
* import knxprj (only tested with ets 5.7.4 file format)
|
|
86
94
|
|
|
87
95
|
# Adapterconfiguration
|
|
88
96
|
After installing this adapter, open the adapter configuration. Fill in:
|
|
@@ -112,7 +120,7 @@ When starting, the adapter tries to read all GroupAdresses with have the autorea
|
|
|
112
120
|
## Objects
|
|
113
121
|
In Objects the group adress tree like in your ETS project.
|
|
114
122
|
|
|
115
|
-
#Usage
|
|
123
|
+
# Usage
|
|
116
124
|
If the adapter startet successfully your datapoints will be available for communication interaction.
|
|
117
125
|
|
|
118
126
|
## Datapoint Types
|
|
@@ -124,12 +132,12 @@ Wide DPT (datapoint type) support (DPT1 - DPT21, DPT232, DPT237, DPT238 supporte
|
|
|
124
132
|
# Known Problems
|
|
125
133
|
- raw value write where missing DPTs not implemented
|
|
126
134
|
- sends write instead of response on GroupValue_Read
|
|
127
|
-
|
|
128
|
-
|
|
135
|
+
- onlyAddNewObjects not working
|
|
136
|
+
- knxprj file only tested from ETS 5.7.4
|
|
129
137
|
|
|
130
138
|
|
|
131
139
|
## Changelog
|
|
132
|
-
### 0.0.
|
|
140
|
+
### 0.0.12 (8.12.2021)
|
|
133
141
|
* initial version
|
|
134
142
|
|
|
135
143
|
|
package/io-package.json
CHANGED
package/main.js
CHANGED
|
@@ -380,9 +380,9 @@ class openknx extends utils.Adapter {
|
|
|
380
380
|
if (err) {
|
|
381
381
|
this.log.error('Cannot get objects: ' + err);
|
|
382
382
|
} else {
|
|
383
|
-
//const contacts = new Map(); //todo
|
|
384
|
-
//contacts.set('key11',
|
|
385
|
-
//contacts.set('key21',
|
|
383
|
+
//const contacts = new Map(); //todo create joint structure
|
|
384
|
+
//contacts.set('key11', {phone: "617-555-4321", address: "321 S 2nd St"});
|
|
385
|
+
//contacts.set('key21', {phone: "617-555-4321", address: "321 S 2nd St"});
|
|
386
386
|
|
|
387
387
|
this.states = {};
|
|
388
388
|
for (var i = res.rows.length - 1; i >= 0; i--) {
|