bt-sensors-plugin-sk 1.1.0 → 1.2.0-beta.0.0.2
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/BTSensor.js +285 -107
- package/README.md +8 -10
- package/definitions.json +941 -0
- package/index.js +419 -317
- package/package.json +52 -6
- package/plugin_defaults.json +57 -0
- package/public/159.js +2 -0
- package/public/159.js.LICENSE.txt +14 -0
- package/public/30.js +8 -0
- package/public/30.js.LICENSE.txt +65 -0
- package/public/540.js +2 -0
- package/public/540.js.LICENSE.txt +8 -0
- package/public/893.js +1 -0
- package/public/main.js +1 -0
- package/public/remoteEntry.js +1 -0
- package/sensor_classes/ATC.js +31 -20
- package/sensor_classes/BlackListedDevice.js +4 -0
- package/sensor_classes/DEVELOPMENT.md +1 -6
- package/sensor_classes/GoveeH510x.js +3 -3
- package/sensor_classes/IBeacon.js +2 -3
- package/sensor_classes/Inkbird.js +4 -4
- package/sensor_classes/JBDBMS.js +3 -3
- package/sensor_classes/KilovaultHLXPlus.js +1 -1
- package/sensor_classes/MopekaTankSensor.js +13 -6
- package/sensor_classes/Renogy/RenogySensor.js +15 -6
- package/sensor_classes/UNKNOWN.js +8 -4
- package/sensor_classes/UltrasonicWindMeter.js +1 -1
- package/sensor_classes/Victron/VictronSensor.js +6 -2
- package/sensor_classes/VictronBatteryMonitor.js +9 -7
- package/sensor_classes/VictronDCEnergyMeter.js +1 -1
- package/sensor_classes/VictronInverter.js +1 -1
- package/sensor_classes/VictronInverterRS.js +1 -1
- package/sensor_classes/VictronOrionXS.js +1 -1
- package/sensor_classes/XiaomiMiBeacon.js +18 -9
- package/spec/electrical.json +688 -0
- package/spec/environment.json +401 -0
- package/spec/sensors.json +39 -0
- package/spec/tanks.json +115 -0
- package/src/components/PluginConfigurationPanel.js +368 -0
- package/src/index.js +0 -0
- package/webpack.config.js +71 -0
|
@@ -0,0 +1,688 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
3
|
+
"id": "https://signalk.org/specification/1.5.1/schemas/groups/electrical.json#",
|
|
4
|
+
"description": "Schema describing the electrical child-object of a Vessel.",
|
|
5
|
+
"title": "Electrical Properties",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"definitions": {
|
|
8
|
+
"identity": {
|
|
9
|
+
"type": "object",
|
|
10
|
+
"title": "Electrical ID",
|
|
11
|
+
"description": " Common ID items shared by electrical items",
|
|
12
|
+
"properties": {
|
|
13
|
+
"name": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"description": "Unique ID of device (houseBattery, alternator, Generator, solar1, inverter, charger, combiner, etc.)"
|
|
16
|
+
},
|
|
17
|
+
|
|
18
|
+
"location": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"description": "Installed location of device on vessel"
|
|
21
|
+
},
|
|
22
|
+
"dateInstalled": {
|
|
23
|
+
"$ref": "../definitions.json#/definitions/timestamp",
|
|
24
|
+
"description": "Date device was installed"
|
|
25
|
+
},
|
|
26
|
+
|
|
27
|
+
"manufacturer": {
|
|
28
|
+
"properties": {
|
|
29
|
+
"name": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"description": "Manufacturer's name"
|
|
32
|
+
},
|
|
33
|
+
"model": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"description": "Model or part number"
|
|
36
|
+
},
|
|
37
|
+
"URL": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"description": "Web referance / URL"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
|
|
46
|
+
"dcQualities": {
|
|
47
|
+
"type": "object",
|
|
48
|
+
"title": "DC Qualities",
|
|
49
|
+
"description": "DC common qualities",
|
|
50
|
+
"properties": {
|
|
51
|
+
"associatedBus": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"description": "Name of BUS device is associated with"
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
"voltage": {
|
|
57
|
+
"type": "object",
|
|
58
|
+
"description": "Voltage measured at or as close as possible to the device",
|
|
59
|
+
"units": "V",
|
|
60
|
+
"allOf": [{
|
|
61
|
+
"$ref": "../definitions.json#/definitions/numberValue"
|
|
62
|
+
}, {
|
|
63
|
+
"properties": {
|
|
64
|
+
"ripple": {
|
|
65
|
+
"description": "DC Ripple voltage",
|
|
66
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
67
|
+
"units": "V"
|
|
68
|
+
},
|
|
69
|
+
"meta": {
|
|
70
|
+
"type": "object",
|
|
71
|
+
"properties": {
|
|
72
|
+
"nominal": {
|
|
73
|
+
"type": "number",
|
|
74
|
+
"units": "V",
|
|
75
|
+
"description": "Designed 'voltage' of device (12v, 24v, 32v, 36v, 42v, 48v, 144v, etc.)"
|
|
76
|
+
},
|
|
77
|
+
|
|
78
|
+
"warnUpper": {
|
|
79
|
+
"type": "number",
|
|
80
|
+
"units": "V",
|
|
81
|
+
"description": "Upper operational voltage limit"
|
|
82
|
+
},
|
|
83
|
+
|
|
84
|
+
"warnLower": {
|
|
85
|
+
"type": "number",
|
|
86
|
+
"units": "V",
|
|
87
|
+
"description": "Lower operational voltage limit"
|
|
88
|
+
},
|
|
89
|
+
|
|
90
|
+
"faultUpper": {
|
|
91
|
+
"type": "number",
|
|
92
|
+
"units": "V",
|
|
93
|
+
"description": "Upper fault voltage limit - device may disable/disconnect"
|
|
94
|
+
},
|
|
95
|
+
|
|
96
|
+
"faultLower": {
|
|
97
|
+
"type": "number",
|
|
98
|
+
"units": "V",
|
|
99
|
+
"description": "Lower fault voltage limit - device may disable/disconnect"
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}]
|
|
105
|
+
},
|
|
106
|
+
|
|
107
|
+
"current": {
|
|
108
|
+
"type": "object",
|
|
109
|
+
"description": "Current flowing out (+ve) or in (-ve) to the device. Reversed for batteries (+ve = charging).",
|
|
110
|
+
"units": "A",
|
|
111
|
+
"allOf": [{
|
|
112
|
+
"$ref": "../definitions.json#/definitions/numberValue"
|
|
113
|
+
}, {
|
|
114
|
+
"properties": {
|
|
115
|
+
"meta": {
|
|
116
|
+
"type": "object",
|
|
117
|
+
"properties": {
|
|
118
|
+
"warnUpper": {
|
|
119
|
+
"type": "number",
|
|
120
|
+
"description": "Upper operational current limit",
|
|
121
|
+
"units": "A"
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
"warnLower": {
|
|
125
|
+
"type": "number",
|
|
126
|
+
"description": "Lower operational current limit",
|
|
127
|
+
"units": "A"
|
|
128
|
+
},
|
|
129
|
+
|
|
130
|
+
"faultUpper": {
|
|
131
|
+
"type": "number",
|
|
132
|
+
"description": "Upper fault current limit - device may disable/disconnect",
|
|
133
|
+
"units": "A"
|
|
134
|
+
},
|
|
135
|
+
|
|
136
|
+
"faultLower": {
|
|
137
|
+
"type": "number",
|
|
138
|
+
"description": "Lower fault current limit - device may disable/disconnect",
|
|
139
|
+
"units": "A"
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}]
|
|
145
|
+
},
|
|
146
|
+
|
|
147
|
+
"temperature": {
|
|
148
|
+
"type": "object",
|
|
149
|
+
"description": "Temperature measured within or on the device",
|
|
150
|
+
"units": "K",
|
|
151
|
+
"title": "temperature",
|
|
152
|
+
"allOf": [{
|
|
153
|
+
"$ref": "../definitions.json#/definitions/numberValue"
|
|
154
|
+
}, {
|
|
155
|
+
"properties": {
|
|
156
|
+
"warnUpper": {
|
|
157
|
+
"type": "number",
|
|
158
|
+
"description": "Upper operational temperature limit",
|
|
159
|
+
"units": "K"
|
|
160
|
+
},
|
|
161
|
+
|
|
162
|
+
"warnLower": {
|
|
163
|
+
"type": "number",
|
|
164
|
+
"description": "Lower operational temperature limit",
|
|
165
|
+
"units": "K"
|
|
166
|
+
},
|
|
167
|
+
|
|
168
|
+
"faultUpper": {
|
|
169
|
+
"type": "number",
|
|
170
|
+
"description": "Upper fault temperature limit - device may disable/disconnect",
|
|
171
|
+
"units": "K"
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
"faultLower": {
|
|
175
|
+
"type": "number",
|
|
176
|
+
"description": "Lower fault temperature limit - device may disable/disconnect",
|
|
177
|
+
"units": "K"
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}]
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
|
|
185
|
+
"acQualities": {
|
|
186
|
+
"type": "object",
|
|
187
|
+
"title": "AC Qualities",
|
|
188
|
+
"description": "AC equipment common qualities",
|
|
189
|
+
"properties": {
|
|
190
|
+
"associatedBus": {
|
|
191
|
+
"type": "string",
|
|
192
|
+
"description": "Name of BUS device is associated with"
|
|
193
|
+
},
|
|
194
|
+
"lineNeutralVoltage": {
|
|
195
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
196
|
+
"description": "RMS voltage measured between phase and neutral",
|
|
197
|
+
"units": "V"
|
|
198
|
+
},
|
|
199
|
+
"lineLineVoltage": {
|
|
200
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
201
|
+
"description": "RMS voltage measured between phases",
|
|
202
|
+
"units": "V"
|
|
203
|
+
},
|
|
204
|
+
"current": {
|
|
205
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
206
|
+
"description": "RMS current",
|
|
207
|
+
"units": "A"
|
|
208
|
+
},
|
|
209
|
+
"frequency": {
|
|
210
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
211
|
+
"description": "AC frequency.",
|
|
212
|
+
"units": "Hz"
|
|
213
|
+
},
|
|
214
|
+
"reactivePower": {
|
|
215
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
216
|
+
"description": "Reactive power",
|
|
217
|
+
"units": "W"
|
|
218
|
+
},
|
|
219
|
+
"powerFactor": {
|
|
220
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
221
|
+
"description": "Power factor",
|
|
222
|
+
"unit": "ratio"
|
|
223
|
+
},
|
|
224
|
+
"powerFactorLagging": {
|
|
225
|
+
"description": "Lead/lag status.",
|
|
226
|
+
"example": "leading",
|
|
227
|
+
"type": "string",
|
|
228
|
+
"enum": [
|
|
229
|
+
"leading",
|
|
230
|
+
"lagging",
|
|
231
|
+
"error",
|
|
232
|
+
"not available"
|
|
233
|
+
]
|
|
234
|
+
},
|
|
235
|
+
"realPower": {
|
|
236
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
237
|
+
"description": "Real power.",
|
|
238
|
+
"units": "W"
|
|
239
|
+
},
|
|
240
|
+
"apparentPower": {
|
|
241
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
242
|
+
"description": "Apparent power.",
|
|
243
|
+
"units": "W"
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
},
|
|
247
|
+
|
|
248
|
+
"chargerQualities": {
|
|
249
|
+
"type": "object",
|
|
250
|
+
"title": "Charger Qualities",
|
|
251
|
+
"description": "Common charger qualities",
|
|
252
|
+
"properties": {
|
|
253
|
+
"chargingAlgorithm": {
|
|
254
|
+
"type": "object",
|
|
255
|
+
"description": "Algorithm being used by the charger",
|
|
256
|
+
"allOf": [
|
|
257
|
+
{
|
|
258
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"properties": {
|
|
262
|
+
"value": {
|
|
263
|
+
"type": "string",
|
|
264
|
+
"enum": [
|
|
265
|
+
"trickle",
|
|
266
|
+
"two stage",
|
|
267
|
+
"three stage",
|
|
268
|
+
"four stage",
|
|
269
|
+
"constant current",
|
|
270
|
+
"constant voltage",
|
|
271
|
+
"custom profile"
|
|
272
|
+
]
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
]
|
|
277
|
+
},
|
|
278
|
+
"chargerRole": {
|
|
279
|
+
"type": "object",
|
|
280
|
+
"description": "How is charging source configured? Standalone, or in sync with another charger?",
|
|
281
|
+
"allOf": [
|
|
282
|
+
{
|
|
283
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
284
|
+
},
|
|
285
|
+
{
|
|
286
|
+
"properties": {
|
|
287
|
+
"value": {
|
|
288
|
+
"type": "string",
|
|
289
|
+
"enum": [
|
|
290
|
+
"standalone",
|
|
291
|
+
"master",
|
|
292
|
+
"slave",
|
|
293
|
+
"standby"
|
|
294
|
+
]
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
]
|
|
299
|
+
},
|
|
300
|
+
"chargingMode": {
|
|
301
|
+
"type": "object",
|
|
302
|
+
"description": "Charging mode i.e. float, overcharge, etc.",
|
|
303
|
+
"allOf": [
|
|
304
|
+
{
|
|
305
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"properties": {
|
|
309
|
+
"value": {
|
|
310
|
+
"type": "string",
|
|
311
|
+
"enum": [
|
|
312
|
+
"bulk",
|
|
313
|
+
"acceptance",
|
|
314
|
+
"overcharge",
|
|
315
|
+
"float",
|
|
316
|
+
"equalize",
|
|
317
|
+
"unknown",
|
|
318
|
+
"other"
|
|
319
|
+
]
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
]
|
|
324
|
+
},
|
|
325
|
+
"setpointVoltage": {
|
|
326
|
+
"description": "Target regulation voltage",
|
|
327
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
328
|
+
"units": "V"
|
|
329
|
+
},
|
|
330
|
+
"setpointCurrent": {
|
|
331
|
+
"description": "Target current limit",
|
|
332
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
333
|
+
"units": "A"
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
"properties": {
|
|
341
|
+
"batteries": {
|
|
342
|
+
"description": "Data about the vessel's batteries",
|
|
343
|
+
"patternProperties": {
|
|
344
|
+
"(^[A-Za-z0-9]+$)": {
|
|
345
|
+
"type": "object",
|
|
346
|
+
"title": "Battery keyed by instance id",
|
|
347
|
+
"description": "Batteries, one or many, within the vessel",
|
|
348
|
+
"allOf": [{
|
|
349
|
+
"$ref": "#/definitions/identity"
|
|
350
|
+
},{
|
|
351
|
+
"$ref": "#/definitions/dcQualities"
|
|
352
|
+
}],
|
|
353
|
+
"properties": {
|
|
354
|
+
"chemistry": {
|
|
355
|
+
"type": "string",
|
|
356
|
+
"description": "Type of battery FLA, LiFePO4, etc."
|
|
357
|
+
},
|
|
358
|
+
"temperature": {
|
|
359
|
+
"type": "object",
|
|
360
|
+
"title": "temperature",
|
|
361
|
+
"description": "Additional / unique temperatures associated with a battery",
|
|
362
|
+
"properties": {
|
|
363
|
+
"limitDischargeLower": {
|
|
364
|
+
"type": "number",
|
|
365
|
+
"description": "Operational minimum temperature limit for battery discharge",
|
|
366
|
+
"units": "K"
|
|
367
|
+
},
|
|
368
|
+
|
|
369
|
+
"limitDischargeUpper": {
|
|
370
|
+
"type": "number",
|
|
371
|
+
"description": "Operational maximum temperature limit for battery discharge",
|
|
372
|
+
"units": "K"
|
|
373
|
+
},
|
|
374
|
+
|
|
375
|
+
"limitRechargeLower": {
|
|
376
|
+
"type": "number",
|
|
377
|
+
"description": "Operational minimum temperature limit for battery recharging",
|
|
378
|
+
"units": "K"
|
|
379
|
+
},
|
|
380
|
+
|
|
381
|
+
"limitRechargeUpper": {
|
|
382
|
+
"type": "number",
|
|
383
|
+
"description": "Operational maximum temperature limit for battery recharging",
|
|
384
|
+
"units": "K"
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
},
|
|
388
|
+
|
|
389
|
+
"capacity": {
|
|
390
|
+
"type": "object",
|
|
391
|
+
"description": "Data about the battery's capacity",
|
|
392
|
+
"title": "capacity",
|
|
393
|
+
"properties": {
|
|
394
|
+
"nominal": {
|
|
395
|
+
"type": "number",
|
|
396
|
+
"description": "The capacity of battery as specified by the manufacturer",
|
|
397
|
+
"units": "J"
|
|
398
|
+
},
|
|
399
|
+
|
|
400
|
+
"actual": {
|
|
401
|
+
"type": "number",
|
|
402
|
+
"description": "The measured capacity of battery. This may change over time and will likely deviate from the nominal capacity.",
|
|
403
|
+
"units": "J"
|
|
404
|
+
},
|
|
405
|
+
|
|
406
|
+
"remaining": {
|
|
407
|
+
"type": "number",
|
|
408
|
+
"description": "Capacity remaining in battery",
|
|
409
|
+
"units": "J"
|
|
410
|
+
},
|
|
411
|
+
|
|
412
|
+
"dischargeLimit": {
|
|
413
|
+
"type": "number",
|
|
414
|
+
"description": "Minimum capacity to be left in the battery while discharging",
|
|
415
|
+
"units": "J"
|
|
416
|
+
},
|
|
417
|
+
|
|
418
|
+
"stateOfCharge": {
|
|
419
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
420
|
+
"description": "State of charge, 1 = 100%",
|
|
421
|
+
"units": "ratio"
|
|
422
|
+
},
|
|
423
|
+
|
|
424
|
+
"stateOfHealth": {
|
|
425
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
426
|
+
"description": "State of Health, 1 = 100%",
|
|
427
|
+
"units": "ratio"
|
|
428
|
+
},
|
|
429
|
+
|
|
430
|
+
"dischargeSinceFull": {
|
|
431
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
432
|
+
"description": "Cumulative discharge since battery was last full",
|
|
433
|
+
"units": "C"
|
|
434
|
+
},
|
|
435
|
+
|
|
436
|
+
"timeRemaining": {
|
|
437
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
438
|
+
"description": "Time to discharge to discharge limit at current rate",
|
|
439
|
+
"units": "s"
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
},
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
"lifetimeDischarge": {
|
|
446
|
+
"type": "number",
|
|
447
|
+
"description": "Cumulative charge discharged from battery over operational lifetime of battery",
|
|
448
|
+
"units": "C"
|
|
449
|
+
},
|
|
450
|
+
|
|
451
|
+
"lifetimeRecharge": {
|
|
452
|
+
"type": "number",
|
|
453
|
+
"description": "Cumulative charge recharged into battery over operational lifetime of battery",
|
|
454
|
+
"units": "C"
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
},
|
|
460
|
+
"inverters": {
|
|
461
|
+
"description": "Data about the Inverter that has both DC and AC qualities",
|
|
462
|
+
"patternProperties": {
|
|
463
|
+
"(^[A-Za-z0-9]+$)": {
|
|
464
|
+
"type": "object",
|
|
465
|
+
"title": "Inverter",
|
|
466
|
+
"description": "DC to AC inverter, one or many, within the vessel",
|
|
467
|
+
"allOf": [{
|
|
468
|
+
"$ref": "#/definitions/identity"
|
|
469
|
+
}],
|
|
470
|
+
"properties": {
|
|
471
|
+
"dc": {
|
|
472
|
+
"$ref": "#/definitions/dcQualities"
|
|
473
|
+
},
|
|
474
|
+
"ac": {
|
|
475
|
+
"$ref": "#/definitions/acQualities"
|
|
476
|
+
},
|
|
477
|
+
"inverterMode": {
|
|
478
|
+
"type": "object",
|
|
479
|
+
"description": "Mode of inverter",
|
|
480
|
+
"allOf": [
|
|
481
|
+
{
|
|
482
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
483
|
+
},
|
|
484
|
+
{
|
|
485
|
+
"properties": {
|
|
486
|
+
"value": {
|
|
487
|
+
"type": "string",
|
|
488
|
+
"enum": [
|
|
489
|
+
"idle",
|
|
490
|
+
"inverting",
|
|
491
|
+
"disabled",
|
|
492
|
+
"standby",
|
|
493
|
+
"faulted",
|
|
494
|
+
"unknown",
|
|
495
|
+
"other"
|
|
496
|
+
]
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
]
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
}
|
|
505
|
+
},
|
|
506
|
+
"chargers": {
|
|
507
|
+
"description": "Data about AC sourced battery charger",
|
|
508
|
+
"patternProperties": {
|
|
509
|
+
"(^[A-Za-z0-9]+$)": {
|
|
510
|
+
"type": "object",
|
|
511
|
+
"title": "Charger",
|
|
512
|
+
"description": "Battery charger",
|
|
513
|
+
"allOf": [{
|
|
514
|
+
"$ref": "#/definitions/identity"
|
|
515
|
+
},{
|
|
516
|
+
"$ref": "#/definitions/dcQualities"
|
|
517
|
+
},{
|
|
518
|
+
"$ref": "#/definitions/chargerQualities"
|
|
519
|
+
}]
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
},
|
|
523
|
+
"alternators": {
|
|
524
|
+
"description": "Data about an Alternator charging device",
|
|
525
|
+
"patternProperties": {
|
|
526
|
+
"(^[A-Za-z0-9]+$)": {
|
|
527
|
+
"type": "object",
|
|
528
|
+
"title": "Alternator",
|
|
529
|
+
"description": "Mechanically driven alternator, includes dynamos",
|
|
530
|
+
"allOf": [{
|
|
531
|
+
"$ref": "#/definitions/identity"
|
|
532
|
+
},{
|
|
533
|
+
"$ref": "#/definitions/dcQualities"
|
|
534
|
+
},{
|
|
535
|
+
"$ref": "#/definitions/chargerQualities"
|
|
536
|
+
}],
|
|
537
|
+
"properties": {
|
|
538
|
+
"revolutions": {
|
|
539
|
+
"description": "Alternator revolutions per second (x60 for RPM)",
|
|
540
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
541
|
+
"units": "Hz"
|
|
542
|
+
},
|
|
543
|
+
"pulleyRatio": {
|
|
544
|
+
"description": "Mechanical pulley ratio of driving source (Used to back calculate engine RPMs)",
|
|
545
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
546
|
+
"units": "ratio"
|
|
547
|
+
},
|
|
548
|
+
"fieldDrive": {
|
|
549
|
+
"description": "% (0..100) of field voltage applied",
|
|
550
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
551
|
+
"units": "%"
|
|
552
|
+
},
|
|
553
|
+
"regulatorTemperature": {
|
|
554
|
+
"description": "Current temperature of critical regulator components",
|
|
555
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
556
|
+
"units": "K"
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
},
|
|
562
|
+
"solar": {
|
|
563
|
+
"description": "Data about Solar charging device(s)",
|
|
564
|
+
"patternProperties": {
|
|
565
|
+
"(^[A-Za-z0-9]+$)": {
|
|
566
|
+
"type": "object",
|
|
567
|
+
"title": "Solar",
|
|
568
|
+
"description": "Photovoltaic charging devices",
|
|
569
|
+
"allOf": [{
|
|
570
|
+
"$ref": "#/definitions/identity"
|
|
571
|
+
},{
|
|
572
|
+
"$ref": "#/definitions/dcQualities"
|
|
573
|
+
},{
|
|
574
|
+
"$ref": "#/definitions/chargerQualities"
|
|
575
|
+
}],
|
|
576
|
+
"properties": {
|
|
577
|
+
"controllerMode": {
|
|
578
|
+
"type": "object",
|
|
579
|
+
"description": "The current state of the engine",
|
|
580
|
+
"allOf": [
|
|
581
|
+
{
|
|
582
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
583
|
+
},
|
|
584
|
+
{
|
|
585
|
+
"properties": {
|
|
586
|
+
"value": {
|
|
587
|
+
"type": "string",
|
|
588
|
+
"enum": [
|
|
589
|
+
"off",
|
|
590
|
+
"idle",
|
|
591
|
+
"direct",
|
|
592
|
+
"PWM",
|
|
593
|
+
"MPPT"
|
|
594
|
+
]
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
]
|
|
599
|
+
},
|
|
600
|
+
"panelVoltage": {
|
|
601
|
+
"description": "Voltage being supplied from Solar Panels to controller",
|
|
602
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
603
|
+
"units": "V"
|
|
604
|
+
},
|
|
605
|
+
"panelCurrent": {
|
|
606
|
+
"description": "Amperage being supplied from Solar Panels to controller",
|
|
607
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
608
|
+
"units": "A"
|
|
609
|
+
},
|
|
610
|
+
"panelPower": {
|
|
611
|
+
"description": "Power being supplied from Solar Panels to controller",
|
|
612
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
613
|
+
"units": "W"
|
|
614
|
+
},
|
|
615
|
+
"panelTemperature": {
|
|
616
|
+
"description": "Temperature of panels",
|
|
617
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
618
|
+
"units": "K"
|
|
619
|
+
},
|
|
620
|
+
"yieldToday": {
|
|
621
|
+
"description": "Total energy generated by Solar Panels today",
|
|
622
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
623
|
+
"units": "J"
|
|
624
|
+
},
|
|
625
|
+
"load": {
|
|
626
|
+
"type": "object",
|
|
627
|
+
"description": "State of load port on controller (if applicable)",
|
|
628
|
+
"allOf": [
|
|
629
|
+
{
|
|
630
|
+
"$ref": "../definitions.json#/definitions/commonValueFields"
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"properties": {
|
|
634
|
+
"value": {
|
|
635
|
+
"type": "string",
|
|
636
|
+
"enum": [
|
|
637
|
+
"enabled",
|
|
638
|
+
"disabled"
|
|
639
|
+
]
|
|
640
|
+
}
|
|
641
|
+
}
|
|
642
|
+
}
|
|
643
|
+
]
|
|
644
|
+
},
|
|
645
|
+
"loadCurrent": {
|
|
646
|
+
"description": "Amperage being supplied to load directly connected to controller",
|
|
647
|
+
"$ref": "../definitions.json#/definitions/numberValue",
|
|
648
|
+
"units": "A"
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
},
|
|
654
|
+
|
|
655
|
+
|
|
656
|
+
|
|
657
|
+
|
|
658
|
+
|
|
659
|
+
|
|
660
|
+
|
|
661
|
+
|
|
662
|
+
"ac": {
|
|
663
|
+
"description": "AC buses",
|
|
664
|
+
"patternProperties": {
|
|
665
|
+
"(^[A-Za-z0-9]+$)": {
|
|
666
|
+
"type": "object",
|
|
667
|
+
"title": "AC Bus keyed by instance id",
|
|
668
|
+
"description": "AC Bus, one or many, within the vessel",
|
|
669
|
+
"allOf": [{
|
|
670
|
+
"$ref": "#/definitions/identity"
|
|
671
|
+
}],
|
|
672
|
+
"properties": {
|
|
673
|
+
"phase": {
|
|
674
|
+
"type": "object",
|
|
675
|
+
"description": "Single or A,B or C in 3 Phase systems ",
|
|
676
|
+
"patternProperties": {
|
|
677
|
+
"(single)|([A-C])": {
|
|
678
|
+
"$ref": "#/definitions/acQualities"
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
}
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
}
|
|
687
|
+
}
|
|
688
|
+
|