@microbit/microbit-connection 0.9.0-apps.alpha.18 → 0.9.0-apps.alpha.19

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.
Files changed (57) hide show
  1. package/build/cjs/bluetooth/connection.d.ts +242 -1
  2. package/build/cjs/bluetooth/connection.js +52 -4
  3. package/build/cjs/bluetooth/connection.js.map +1 -1
  4. package/build/cjs/bluetooth/device-wrapper.d.ts +6 -0
  5. package/build/cjs/bluetooth/device-wrapper.js +27 -0
  6. package/build/cjs/bluetooth/device-wrapper.js.map +1 -1
  7. package/build/cjs/bluetooth/flashing/nordic-dfu.js +14 -3
  8. package/build/cjs/bluetooth/flashing/nordic-dfu.js.map +1 -1
  9. package/build/cjs/bluetooth/services/event-service.d.ts +48 -0
  10. package/build/cjs/bluetooth/services/event-service.js +273 -0
  11. package/build/cjs/bluetooth/services/event-service.js.map +1 -0
  12. package/build/cjs/bluetooth/services/event-service.test.d.ts +1 -0
  13. package/build/cjs/bluetooth/services/event-service.test.js +252 -0
  14. package/build/cjs/bluetooth/services/event-service.test.js.map +1 -0
  15. package/build/cjs/bluetooth/services/io-pin-service.d.ts +65 -0
  16. package/build/cjs/bluetooth/services/io-pin-service.js +173 -0
  17. package/build/cjs/bluetooth/services/io-pin-service.js.map +1 -0
  18. package/build/cjs/bluetooth/services/temperature-service.d.ts +14 -0
  19. package/build/cjs/bluetooth/services/temperature-service.js +80 -0
  20. package/build/cjs/bluetooth/services/temperature-service.js.map +1 -0
  21. package/build/cjs/index.d.ts +4 -3
  22. package/build/cjs/index.js +4 -1
  23. package/build/cjs/index.js.map +1 -1
  24. package/build/cjs/microbit-events.d.ts +67 -0
  25. package/build/cjs/microbit-events.js +55 -0
  26. package/build/cjs/microbit-events.js.map +1 -0
  27. package/build/cjs/service-events.d.ts +49 -1
  28. package/build/cjs/service-events.js.map +1 -1
  29. package/build/esm/bluetooth/connection.d.ts +242 -1
  30. package/build/esm/bluetooth/connection.js +53 -5
  31. package/build/esm/bluetooth/connection.js.map +1 -1
  32. package/build/esm/bluetooth/device-wrapper.d.ts +6 -0
  33. package/build/esm/bluetooth/device-wrapper.js +27 -0
  34. package/build/esm/bluetooth/device-wrapper.js.map +1 -1
  35. package/build/esm/bluetooth/flashing/nordic-dfu.js +14 -3
  36. package/build/esm/bluetooth/flashing/nordic-dfu.js.map +1 -1
  37. package/build/esm/bluetooth/services/event-service.d.ts +48 -0
  38. package/build/esm/bluetooth/services/event-service.js +269 -0
  39. package/build/esm/bluetooth/services/event-service.js.map +1 -0
  40. package/build/esm/bluetooth/services/event-service.test.d.ts +1 -0
  41. package/build/esm/bluetooth/services/event-service.test.js +250 -0
  42. package/build/esm/bluetooth/services/event-service.test.js.map +1 -0
  43. package/build/esm/bluetooth/services/io-pin-service.d.ts +65 -0
  44. package/build/esm/bluetooth/services/io-pin-service.js +169 -0
  45. package/build/esm/bluetooth/services/io-pin-service.js.map +1 -0
  46. package/build/esm/bluetooth/services/temperature-service.d.ts +14 -0
  47. package/build/esm/bluetooth/services/temperature-service.js +76 -0
  48. package/build/esm/bluetooth/services/temperature-service.js.map +1 -0
  49. package/build/esm/index.d.ts +4 -3
  50. package/build/esm/index.js +2 -1
  51. package/build/esm/index.js.map +1 -1
  52. package/build/esm/microbit-events.d.ts +67 -0
  53. package/build/esm/microbit-events.js +52 -0
  54. package/build/esm/microbit-events.js.map +1 -0
  55. package/build/esm/service-events.d.ts +49 -1
  56. package/build/esm/service-events.js.map +1 -1
  57. package/package.json +1 -1
@@ -1,11 +1,62 @@
1
1
  import { BackgroundErrorData, ConnectionStatusChange, DeviceConnection, FlashDataSource, FlashOptions } from "../device.js";
2
2
  import { Logging } from "../logging.js";
3
- import { AccelerometerData, ButtonData, LedMatrix, MagnetometerData, UartData } from "../service-events.js";
3
+ import { AccelerometerData, ButtonActionData, ButtonData, GestureData, LedMatrix, MagnetometerData, MicrobitEventData, PinData, PinValue, TemperatureData, UartData } from "../service-events.js";
4
4
  import { DeviceBondState } from "./device-bond-state.js";
5
5
  export interface MicrobitBluetoothConnectionOptions {
6
6
  logging?: Logging;
7
7
  deviceBondState?: DeviceBondState;
8
8
  }
9
+ /**
10
+ * A Bluetooth connection to a micro:bit device.
11
+ *
12
+ * Events and methods rely on specific BLE services being present in the
13
+ * micro:bit's firmware. Which services are available depends on the firmware
14
+ * build for C++ and for a MakeCode program depends on the service blocks added
15
+ * from the Bluetooth extension.
16
+ *
17
+ * The table below maps each event and method to the BLE service it requires.
18
+ * If a service is not present, the event will silently not fire (no error is
19
+ * raised) and methods that depend on it will throw.
20
+ *
21
+ * ### Accelerometer Service
22
+ * - `accelerometerdatachanged` event
23
+ * - {@link getAccelerometerData}, {@link getAccelerometerPeriod}, {@link setAccelerometerPeriod}
24
+ *
25
+ * ### Button Service
26
+ * - `buttonachanged`, `buttonbchanged` events
27
+ *
28
+ * ### Event Service
29
+ * - `gesturechanged` event — also requires the accelerometer hardware to be
30
+ * active; this happens automatically if the Accelerometer Service is present
31
+ * - `buttonaaction`, `buttonbaction`, `buttonabaction` events
32
+ * - `logoaction` event (V2 only)
33
+ * - `microbitevent` event
34
+ * - {@link subscribeToEvent}, {@link sendEvent}
35
+ *
36
+ * ### IO Pin Service
37
+ * - `pinchanged` event
38
+ * - {@link getAnalogPins}, {@link setAnalogPins}
39
+ * - {@link getInputPins}, {@link setInputPins}
40
+ * - {@link readPins}, {@link writePins}, {@link writePinPwm}
41
+ *
42
+ * ### LED Service
43
+ * - {@link setLedText}, {@link getLedScrollingDelay}, {@link setLedScrollingDelay}
44
+ * - {@link getLedMatrix}, {@link setLedMatrix}
45
+ *
46
+ * ### Magnetometer Service
47
+ * - `magnetometerdatachanged` event
48
+ * - {@link getMagnetometerData}, {@link getMagnetometerBearing}
49
+ * - {@link getMagnetometerPeriod}, {@link setMagnetometerPeriod}
50
+ * - {@link triggerMagnetometerCalibration}
51
+ *
52
+ * ### Temperature Service
53
+ * - `temperaturechanged` event
54
+ * - {@link getTemperature}, {@link getTemperaturePeriod}, {@link setTemperaturePeriod}
55
+ *
56
+ * ### UART Service
57
+ * - `uartdata` event
58
+ * - {@link uartWrite}
59
+ */
9
60
  export interface MicrobitBluetoothConnection extends DeviceConnection {
10
61
  readonly type: "bluetooth";
11
62
  addEventListener(type: "status", listener: (data: ConnectionStatusChange) => void): void;
@@ -13,9 +64,30 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
13
64
  addEventListener(type: "beforerequestdevice", listener: () => void): void;
14
65
  addEventListener(type: "afterrequestdevice", listener: () => void): void;
15
66
  addEventListener(type: "flash", listener: () => void): void;
67
+ /** Requires: Accelerometer Service. */
16
68
  addEventListener(type: "accelerometerdatachanged", listener: (data: AccelerometerData) => void): void;
69
+ /** Requires: Button Service. */
17
70
  addEventListener(type: "buttonachanged" | "buttonbchanged", listener: (data: ButtonData) => void): void;
71
+ /** Requires: Magnetometer Service. */
18
72
  addEventListener(type: "magnetometerdatachanged", listener: (data: MagnetometerData) => void): void;
73
+ /** Requires: Temperature Service. */
74
+ addEventListener(type: "temperaturechanged", listener: (data: TemperatureData) => void): void;
75
+ /** Requires: IO Pin Service. */
76
+ addEventListener(type: "pinchanged", listener: (data: PinData) => void): void;
77
+ /** Requires: Event Service. The accelerometer hardware must also be active (automatic if the Accelerometer Service is present). */
78
+ addEventListener(type: "gesturechanged", listener: (data: GestureData) => void): void;
79
+ /** Requires: Event Service. */
80
+ addEventListener(type: "buttonaaction" | "buttonbaction" | "buttonabaction", listener: (data: ButtonActionData) => void): void;
81
+ /** Requires: Event Service. V2 only. */
82
+ addEventListener(type: "logoaction", listener: (data: ButtonActionData) => void): void;
83
+ /**
84
+ * Requires: Event Service. Receives raw micro:bit message bus events
85
+ * registered via {@link subscribeToEvent}. Higher-level events supported
86
+ * by the event service, like `gesturechanged` and button actions, are not
87
+ * included here unless you subscribe to them using {@link subscribeToEvent}.
88
+ */
89
+ addEventListener(type: "microbitevent", listener: (data: MicrobitEventData) => void): void;
90
+ /** Requires: UART Service. */
19
91
  addEventListener(type: "uartdata", listener: (data: UartData) => void): void;
20
92
  removeEventListener(type: "status", listener: (data: ConnectionStatusChange) => void): void;
21
93
  removeEventListener(type: "backgrounderror", listener: (data: BackgroundErrorData) => void): void;
@@ -25,6 +97,12 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
25
97
  removeEventListener(type: "accelerometerdatachanged", listener: (data: AccelerometerData) => void): void;
26
98
  removeEventListener(type: "buttonachanged" | "buttonbchanged", listener: (data: ButtonData) => void): void;
27
99
  removeEventListener(type: "magnetometerdatachanged", listener: (data: MagnetometerData) => void): void;
100
+ removeEventListener(type: "temperaturechanged", listener: (data: TemperatureData) => void): void;
101
+ removeEventListener(type: "pinchanged", listener: (data: PinData) => void): void;
102
+ removeEventListener(type: "gesturechanged", listener: (data: GestureData) => void): void;
103
+ removeEventListener(type: "buttonaaction" | "buttonbaction" | "buttonabaction", listener: (data: ButtonActionData) => void): void;
104
+ removeEventListener(type: "logoaction", listener: (data: ButtonActionData) => void): void;
105
+ removeEventListener(type: "microbitevent", listener: (data: MicrobitEventData) => void): void;
28
106
  removeEventListener(type: "uartdata", listener: (data: UartData) => void): void;
29
107
  /**
30
108
  * Sets micro:bit name filter for device requesting.
@@ -35,6 +113,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
35
113
  /**
36
114
  * Gets micro:bit accelerometer data.
37
115
  *
116
+ * Requires: Accelerometer Service.
117
+ *
38
118
  * @returns accelerometer data.
39
119
  * @throws {DeviceError} with code `not-connected` if there is no connection.
40
120
  */
@@ -42,6 +122,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
42
122
  /**
43
123
  * Gets micro:bit accelerometer period.
44
124
  *
125
+ * Requires: Accelerometer Service.
126
+ *
45
127
  * @returns accelerometer period.
46
128
  * @throws {DeviceError} with code `not-connected` if there is no connection.
47
129
  */
@@ -49,6 +131,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
49
131
  /**
50
132
  * Sets micro:bit accelerometer period.
51
133
  *
134
+ * Requires: Accelerometer Service.
135
+ *
52
136
  * @param value The accelerometer period.
53
137
  * @throws {DeviceError} with code `not-connected` if there is no connection.
54
138
  */
@@ -56,6 +140,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
56
140
  /**
57
141
  * Sets micro:bit LED text.
58
142
  *
143
+ * Requires: LED Service.
144
+ *
59
145
  * @param text The text displayed on micro:bit LED.
60
146
  * @throws {DeviceError} with code `not-connected` if there is no connection.
61
147
  */
@@ -63,6 +149,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
63
149
  /**
64
150
  * Gets micro:bit LED scrolling delay.
65
151
  *
152
+ * Requires: LED Service.
153
+ *
66
154
  * @returns LED scrolling delay in milliseconds.
67
155
  * @throws {DeviceError} with code `not-connected` if there is no connection.
68
156
  */
@@ -70,6 +158,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
70
158
  /**
71
159
  * Sets micro:bit LED scrolling delay.
72
160
  *
161
+ * Requires: LED Service.
162
+ *
73
163
  * @param delayInMillis LED scrolling delay in milliseconds.
74
164
  * @throws {DeviceError} with code `not-connected` if there is no connection.
75
165
  */
@@ -77,6 +167,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
77
167
  /**
78
168
  * Gets micro:bit LED matrix.
79
169
  *
170
+ * Requires: LED Service.
171
+ *
80
172
  * @returns a boolean matrix representing the micro:bit LED display.
81
173
  * @throws {DeviceError} with code `not-connected` if there is no connection.
82
174
  */
@@ -84,6 +176,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
84
176
  /**
85
177
  * Sets micro:bit LED matrix.
86
178
  *
179
+ * Requires: LED Service.
180
+ *
87
181
  * @param matrix an boolean matrix representing the micro:bit LED display.
88
182
  * @throws {DeviceError} with code `not-connected` if there is no connection.
89
183
  */
@@ -91,6 +185,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
91
185
  /**
92
186
  * Gets micro:bit magnetometer data.
93
187
  *
188
+ * Requires: Magnetometer Service.
189
+ *
94
190
  * @returns magnetometer data.
95
191
  * @throws {DeviceError} with code `not-connected` if there is no connection.
96
192
  */
@@ -98,6 +194,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
98
194
  /**
99
195
  * Gets micro:bit magnetometer bearing.
100
196
  *
197
+ * Requires: Magnetometer Service.
198
+ *
101
199
  * @returns magnetometer bearing.
102
200
  * @throws {DeviceError} with code `not-connected` if there is no connection.
103
201
  */
@@ -105,6 +203,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
105
203
  /**
106
204
  * Gets micro:bit magnetometer period.
107
205
  *
206
+ * Requires: Magnetometer Service.
207
+ *
108
208
  * @returns magnetometer period.
109
209
  * @throws {DeviceError} with code `not-connected` if there is no connection.
110
210
  */
@@ -112,6 +212,8 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
112
212
  /**
113
213
  * Sets micro:bit magnetometer period.
114
214
  *
215
+ * Requires: Magnetometer Service.
216
+ *
115
217
  * @param value magnetometer period.
116
218
  * @throws {DeviceError} with code `not-connected` if there is no connection.
117
219
  */
@@ -119,12 +221,151 @@ export interface MicrobitBluetoothConnection extends DeviceConnection {
119
221
  /**
120
222
  * Triggers micro:bit magnetometer calibration.
121
223
  *
224
+ * Requires: Magnetometer Service.
225
+ *
122
226
  * @throws {DeviceError} with code `not-connected` if there is no connection.
123
227
  */
124
228
  triggerMagnetometerCalibration(): Promise<void>;
229
+ /**
230
+ * Gets the micro:bit temperature in degrees Celsius.
231
+ *
232
+ * Requires: Temperature Service.
233
+ *
234
+ * @returns temperature in degrees Celsius.
235
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
236
+ */
237
+ getTemperature(): Promise<number>;
238
+ /**
239
+ * Gets the micro:bit temperature sensor period.
240
+ *
241
+ * Requires: Temperature Service.
242
+ *
243
+ * @returns temperature period in milliseconds.
244
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
245
+ */
246
+ getTemperaturePeriod(): Promise<number>;
247
+ /**
248
+ * Sets the micro:bit temperature sensor period.
249
+ *
250
+ * Requires: Temperature Service.
251
+ *
252
+ * @param value period in milliseconds.
253
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
254
+ */
255
+ setTemperaturePeriod(value: number): Promise<void>;
256
+ /**
257
+ * Gets which pins are configured as analog.
258
+ * All other pins are digital (the default).
259
+ *
260
+ * Requires: IO Pin Service.
261
+ *
262
+ * @returns array of pin numbers (0-18) configured as analog.
263
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
264
+ */
265
+ getAnalogPins(): Promise<number[]>;
266
+ /**
267
+ * Sets which pins are configured as analog.
268
+ * All other pins become digital (the default).
269
+ *
270
+ * Requires: IO Pin Service.
271
+ *
272
+ * @param pins array of pin numbers (0-18) to configure as analog.
273
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
274
+ */
275
+ setAnalogPins(pins: number[]): Promise<void>;
276
+ /**
277
+ * Gets which pins are configured as inputs.
278
+ * Input pins are monitored and their values reported via notifications.
279
+ * All other pins are outputs (the default).
280
+ *
281
+ * Requires: IO Pin Service.
282
+ *
283
+ * @returns array of pin numbers (0-18) configured as inputs.
284
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
285
+ */
286
+ getInputPins(): Promise<number[]>;
287
+ /**
288
+ * Sets which pins are configured as inputs.
289
+ * Input pins are monitored and their values reported via notifications.
290
+ * All other pins become outputs (the default).
291
+ *
292
+ * Note: configuring a pin as input overrides any existing pin mode
293
+ * (e.g. touch sensing used by MakeCode "on pin pressed" blocks).
294
+ * The two cannot be used on the same pin simultaneously.
295
+ *
296
+ * Requires: IO Pin Service.
297
+ *
298
+ * @param pins array of pin numbers (0-18) to configure as inputs.
299
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
300
+ */
301
+ setInputPins(pins: number[]): Promise<void>;
302
+ /**
303
+ * Reads current values of input pins. Unlike the `pinchanged` event
304
+ * (which only includes pins whose values changed), this returns every
305
+ * pin configured as an input, up to a firmware limit of 10 pins
306
+ * (lowest-numbered first).
307
+ *
308
+ * Requires: IO Pin Service.
309
+ *
310
+ * @returns array of pin/value pairs.
311
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
312
+ */
313
+ readPins(): Promise<PinValue[]>;
314
+ /**
315
+ * Writes pin data for output pins.
316
+ *
317
+ * Requires: IO Pin Service.
318
+ *
319
+ * @param data array of pin/value pairs.
320
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
321
+ */
322
+ writePins(data: PinValue[]): Promise<void>;
323
+ /**
324
+ * Sets PWM output on a pin.
325
+ *
326
+ * Requires: IO Pin Service.
327
+ *
328
+ * @param pin Pin number (0-18).
329
+ * @param options PWM configuration.
330
+ * @param options.value Analog value (0-1024).
331
+ * @param options.period Period in microseconds.
332
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
333
+ */
334
+ writePinPwm(pin: number, options: {
335
+ value: number;
336
+ period: number;
337
+ }): Promise<void>;
338
+ /**
339
+ * Register interest in a specific micro:bit message bus event.
340
+ * Tells the micro:bit to forward matching message bus traffic over BLE.
341
+ * Matching events are dispatched as `microbitevent`.
342
+ * Use 0 as the value to match all events from a source.
343
+ *
344
+ * For common message bus events, consider the higher-level alternatives:
345
+ * `gesturechanged`, `buttonaaction`, `buttonbaction`, `buttonabaction`.
346
+ *
347
+ * Requires: Event Service.
348
+ *
349
+ * @param source Event source ID.
350
+ * @param value Event value to match, or 0 for any.
351
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
352
+ */
353
+ subscribeToEvent(source: number, value: number): Promise<void>;
354
+ /**
355
+ * Send an event to the micro:bit's message bus.
356
+ *
357
+ * Requires: Event Service.
358
+ *
359
+ * @param source Event source ID.
360
+ * @param value Event value.
361
+ * @throws {DeviceError} with code `not-connected` if there is no connection.
362
+ */
363
+ sendEvent(source: number, value: number): Promise<void>;
125
364
  /**
126
365
  * Write UART messages.
127
366
  *
367
+ * Requires: UART Service.
368
+ *
128
369
  * @param data UART message.
129
370
  * @throws {DeviceError} with code `not-connected` if there is no connection.
130
371
  */
@@ -35,18 +35,18 @@ exports.createBluetoothConnection = void 0;
35
35
  const bluetooth_le_1 = require("@capacitor-community/bluetooth-le");
36
36
  const core_1 = require("@capacitor/core");
37
37
  const nrf_intel_hex_1 = __importDefault(require("nrf-intel-hex"));
38
- const device_wrapper_js_1 = require("./device-wrapper.js");
39
- const profile_js_1 = require("./profile.js");
40
38
  const device_js_1 = require("../device.js");
41
39
  const events_js_1 = require("../events.js");
42
40
  const logging_js_1 = require("../logging.js");
41
+ const device_wrapper_js_1 = require("./device-wrapper.js");
43
42
  const flashing_full_js_1 = require("./flashing/flashing-full.js");
44
43
  const flashing_partial_js_1 = __importStar(require("./flashing/flashing-partial.js"));
44
+ const profile_js_1 = require("./profile.js");
45
+ const async_util_js_1 = require("../async-util.js");
45
46
  const availability_js_1 = require("../availability.js");
46
47
  const hex_util_js_1 = require("../hex-util.js");
47
- const device_bond_state_js_1 = require("./device-bond-state.js");
48
- const async_util_js_1 = require("../async-util.js");
49
48
  const ble_error_js_1 = require("./ble-error.js");
49
+ const device_bond_state_js_1 = require("./device-bond-state.js");
50
50
  let bleClientInitialized = false;
51
51
  /**
52
52
  * A Bluetooth connection factory.
@@ -358,6 +358,54 @@ class MicrobitBluetoothConnectionImpl extends events_js_1.TypedEventTarget {
358
358
  (0, device_js_1.assertConnected)(this.device);
359
359
  return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.magnetometer.triggerCalibration());
360
360
  }
361
+ async getTemperature() {
362
+ (0, device_js_1.assertConnected)(this.device);
363
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.temperature.getData());
364
+ }
365
+ async getTemperaturePeriod() {
366
+ (0, device_js_1.assertConnected)(this.device);
367
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.temperature.getPeriod());
368
+ }
369
+ async setTemperaturePeriod(value) {
370
+ (0, device_js_1.assertConnected)(this.device);
371
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.temperature.setPeriod(value));
372
+ }
373
+ async getAnalogPins() {
374
+ (0, device_js_1.assertConnected)(this.device);
375
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.getAnalogPins());
376
+ }
377
+ async setAnalogPins(pins) {
378
+ (0, device_js_1.assertConnected)(this.device);
379
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.setAnalogPins(pins));
380
+ }
381
+ async getInputPins() {
382
+ (0, device_js_1.assertConnected)(this.device);
383
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.getInputPins());
384
+ }
385
+ async setInputPins(pins) {
386
+ (0, device_js_1.assertConnected)(this.device);
387
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.setInputPins(pins));
388
+ }
389
+ async readPins() {
390
+ (0, device_js_1.assertConnected)(this.device);
391
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.readPins());
392
+ }
393
+ async writePins(data) {
394
+ (0, device_js_1.assertConnected)(this.device);
395
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.writePins(data));
396
+ }
397
+ async writePinPwm(pin, options) {
398
+ (0, device_js_1.assertConnected)(this.device);
399
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.ioPin.setPwm(pin, options.value, options.period));
400
+ }
401
+ async subscribeToEvent(source, value) {
402
+ (0, device_js_1.assertConnected)(this.device);
403
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.events.subscribeToEvent(source, value));
404
+ }
405
+ async sendEvent(source, value) {
406
+ (0, device_js_1.assertConnected)(this.device);
407
+ return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.events.sendEvent(source, value));
408
+ }
361
409
  async uartWrite(data) {
362
410
  (0, device_js_1.assertConnected)(this.device);
363
411
  return (0, ble_error_js_1.withBleErrorMapping)(() => this.device.uart.writeData(data));
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/bluetooth/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/bluetooth/connection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH,oEAAyE;AACzE,0CAA4C;AAC5C,kEAAsC;AACtC,4CAgBsB;AACtB,4CAAgD;AAChD,8CAAwD;AAgBxD,2DAI6B;AAC7B,kEAAwD;AACxD,sFAEwC;AACxC,6CAAuC;AAEvC,oDAAgD;AAChD,wDAAwD;AACxD,gDAAqD;AACrD,iDAAqD;AACrD,iEAGgC;AAIhC,IAAI,oBAAoB,GAAG,KAAK,CAAC;AAudjC;;GAEG;AACI,MAAM,yBAAyB,GAAG,CACvC,OAA4C,EACf,EAAE,CAAC,IAAI,+BAA+B,CAAC,OAAO,CAAC,CAAC;AAFlE,QAAA,yBAAyB,6BAEyC;AAE/E;;GAEG;AACH,MAAM,+BACJ,SAAQ,4BAAsE;IA4B9E,YAAY,UAA8C,EAAE;QAC1D,KAAK,EAAE,CAAC;QA1BD;;;;mBAAO,WAAoB;WAAC;QACrC;;;;mBAA2B,4BAAgB,CAAC,kBAAkB;WAAC;QAE/D;;;WAGG;QACK;;;;;WAAiC;QAEjC;;;;;WAAiB;QACjB;;;;;WAAiC;QACzC;;WAEG;QACK;;;;;WAA2C;QAEnD;;WAEG;QACK;;;;;WAA6C;QAE7C;;;;;WAA+B;QAC/B;;;;;WAA4D;QAC5D;;;;;WAA6D;QAInE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,2BAAc,EAAE,CAAC;QACvD,IAAI,CAAC,eAAe;YAClB,OAAO,CAAC,eAAe,IAAI,IAAI,6CAAsB,EAAE,CAAC;IAC5D,CAAC;IAES,cAAc,CAAC,IAAY;QACnC,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC,IAAyB,CAAC,CAAC;IAC7D,CAAC;IAES,gBAAgB,CAAC,IAAY;QACrC,IAAI,CAAC,MAAM,EAAE,iBAAiB,CAAC,IAAyB,CAAC,CAAC;IAC5D,CAAC;IAEO,GAAG,CAAC,CAAM;QAChB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,OAAe,EAAE,CAAW;QACxC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU,KAAmB,CAAC;IAEpC,OAAO,KAAI,CAAC;IAEZ,KAAK,CAAC,iBAAiB;QACrB,IAAI,gBAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC,6BAA6B,EAAE,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,6BAA6B;QACzC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YACzB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC;YAC9D,OAAO,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gCAAgC;QAC5C,IAAI,CAAC;YACH,mEAAmE;YACnE,uEAAuE;YACvE,oDAAoD;YACpD,IAAI,IAAA,6BAAS,GAAE,EAAE,CAAC;gBAChB,MAAM,iBAAiB,GAAG,MAAM,wBAAS,CAAC,iBAAiB,EAAE,CAAC;gBAC9D,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,OAAO,mBAAmB,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,qEAAqE;YACrE,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,MAAM,wBAAS,CAAC,UAAU,CAAC,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC9D,oBAAoB,GAAG,IAAI,CAAC;YAC9B,CAAC;YAED,iCAAiC;YACjC,MAAM,kBAAkB,GAAG,MAAM,wBAAS,CAAC,SAAS,EAAE,CAAC;YACvD,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,OAAO,WAAW,CAAC;QACrB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,yEAAyE;YACzE,qEAAqE;YACrE,+FAA+F;YAC/F,MAAM,YAAY,GAChB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,CAAoB,EAAE,OAAO,IAAI,EAAE,CAAC;YACxE,IAAI,CAAC,GAAG,CAAC,yCAAyC,YAAY,GAAG,CAAC,CAAC;YAEnE,IAAI,YAAY,KAAK,uBAAuB,EAAE,CAAC;gBAC7C,OAAO,mBAAmB,CAAC;YAC7B,CAAC;YACD,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;gBACvC,OAAO,aAAa,CAAC;YACvB,CAAC;YAED,+CAA+C;YAC/C,OAAO,mBAAmB,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,eAAe;QACb,IAAA,2BAAe,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEjD,8EAA8E;QAC9E,6EAA6E;QAC7E,QAAQ,CAAC,yBAAa,CAAC,YAAY,CAAC,CAAC;QACrC,IAAA,oCAAkB,EAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAEnD,uEAAuE;QACvE,2CAA2C;QAC3C,IAAI,CAAC,iCAAiC;YACpC,CAAC,MAAM,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAEjD,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACpC,QAAQ,CAAC,yBAAa,CAAC,aAAa,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,GAAG,IAAI,0CAAsB,CACtC,MAAM,EACN,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAC7B,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,EAA4C,EACtE;gBACE,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,UAAU,CAAC;gBAC/D,SAAS,EAAE,GAAG,EAAE;oBACd,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC;oBACpD,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,SAAS,CAAC,CAAC;gBAC7C,CAAC;gBACD,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,YAAY,CAAC;aAClE,CACF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACjC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBACjB,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,qBAAqB;aAC/B,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,YAAY,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBACjB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,cAAc;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,SAA2B;QAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,8BAA8B,GAAG,SAAS,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,6BAA6B,KAAK,SAAS,EAAE,CAAC;YACrD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAC3B,MAAM,EAAE,SAAS;gBACjB,cAAc;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,kBAAkB,CAAC,CAAC;IACtD,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,MAAoB;QAC9C,uEAAuE;QACvE,4EAA4E;QAC5E,+DAA+D;QAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU;YAClC,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,UAAU,GAAG,EAAE,SAAS,IAAI,CAAC,UAAU,GAAG,CAAC;YACrE,CAAC,CAAC,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QAE9B,4EAA4E;QAC5E,4CAA4C;QAC5C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,OAAO,IAAI,CAAC,SAAS,CAAC;YACxB,CAAC;YACD,IAAI,CAAC,GAAG,CACN,kBAAkB,IAAI,CAAC,SAAS,CAAC,IAAI,4BAA4B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CACtG,CAAC;YACF,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;QAC1C,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,GAAG,gBAAS,CAAC,gBAAgB,EAAE;gBAC3C,CAAC,CAAC,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC;gBACtD,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,kBAAkB,CAAC,CAAC;gBACpD,MAAM,IAAI,uBAAW,CAAC;oBACpB,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,oBAAoB;iBAC9B,CAAC,CAAC;YACL,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAa;QACxC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAC5C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,aAAqB;QAC9C,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAClD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAiB;QAClC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,KAAa;QACvC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,sBAAsB;QAC1B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,8BAA8B;QAClC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,YAAY,CAAC,kBAAkB,EAAE,CAC/C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAa;QACtC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAAc;QAChC,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAc;QAC/B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAgB;QAC9B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,WAAW,CACf,GAAW,EACX,OAA0C;QAE1C,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAC9D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAAa;QAClD,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CACpD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,KAAa;QAC3C,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAC9B,IAAI,CAAC,MAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAgB;QAC9B,IAAA,2BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7B,OAAO,IAAA,kCAAmB,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,KAAK,CACT,UAA2B,EAC3B,UAAwB,EAAE;QAE1B,MAAM,QAAQ,GAAqB,OAAO,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,mGAAmG;YACnG,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,MAAM,CAAC;YAEjD,IAAI,IAAI,CAAC,MAAM,KAAK,4BAAgB,CAAC,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAO,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;gBAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,MAAM,IAAI,uBAAW,CAAC;wBACpB,IAAI,EAAE,kBAAkB;wBACxB,OAAO,EAAE,wBAAwB;qBAClC,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,SAAS,GAAG,sBAAsB,CACtC,MAAM,UAAU,CAAC,YAAY,CAAC,CAC/B,CAAC;gBACF,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,0BAAc,CAAC,qCAAqC,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACpB,MAAM,IAAI,uBAAW,CAAC;wBACpB,IAAI,EAAE,kBAAkB;wBACxB,OAAO,EAAE,WAAW;qBACrB,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAC;gBAE9C,MAAM,kBAAkB,GAAG,MAAM,IAAA,6BAAY,EAC3C,UAAU,EACV,YAAY,EACZ,SAAS,EACT,QAAQ,CACT,CAAC;gBAEF,IAAI,kBAAkB,KAAK,wCAAkB,CAAC,gBAAgB,EAAE,CAAC;oBAC/D,MAAM,IAAA,4BAAS,EAAC,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;gBACjE,CAAC;gBAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAE5B,IACE,kBAAkB,KAAK,wCAAkB,CAAC,eAAe;oBACzD,kBAAkB,KAAK,wCAAkB,CAAC,OAAO,EACjD,CAAC;oBACD,IAAI,CAAC,iCAAiC,GAAG,CAAC,KAAK,IAAI,EAAE;wBACnD,IAAI,CAAC;4BACH,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gCACzB,IAAI,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;gCACtD,MAAM,UAAU,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;4BAC7C,CAAC;wBACH,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,IAAI,CAAC,YAAY,4BAAY,EAAE,CAAC;gCAC9B,IAAI,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;4BAChE,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,KAAK,CACR,iDAAiD,EACjD,CAAC,CACF,CAAC;4BACJ,CAAC;wBACH,CAAC;gCAAS,CAAC;4BACT,IAAI,CAAC,iCAAiC,GAAG,SAAS,CAAC;4BACnD,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;gCACzB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;4BAC1B,CAAC;wBACH,CAAC;oBACH,CAAC,CAAC,EAAE,CAAC;oBACL,IAAI,CAAC,SAAS,CAAC,4BAAgB,CAAC,YAAY,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACjC,MAAM,CAAC,CAAC;YACV,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;oBAC5C,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,cAAc,GAAG,IAAI,CAAC,6BAA8B,CAAC;YAC3D,IAAI,CAAC,6BAA6B,GAAG,SAAS,CAAC;YAC/C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;gBAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,cAAc;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAC5B,YAAsB;QAEtB,MAAM,gBAAgB,GAAG;YACvB,oBAAO,CAAC,aAAa,CAAC,EAAE;YACxB,oBAAO,CAAC,MAAM,CAAC,EAAE;YACjB,oBAAO,CAAC,iBAAiB,CAAC,EAAE;YAC5B,oBAAO,CAAC,UAAU,CAAC,EAAE;YACrB,oBAAO,CAAC,KAAK,CAAC,EAAE;YAChB,oBAAO,CAAC,KAAK,CAAC,EAAE;YAChB,oBAAO,CAAC,GAAG,CAAC,EAAE;YACd,oBAAO,CAAC,YAAY,CAAC,EAAE;YACvB,oBAAO,CAAC,WAAW,CAAC,EAAE;YACtB,oBAAO,CAAC,IAAI,CAAC,EAAE;SAChB,CAAC;QACF,0EAA0E;QAC1E,uEAAuE;QACvE,kEAAkE;QAClE,yEAAyE;QACzE,kDAAkD;QAClD,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACzE,IAAI,CAAC;YACH,SAAS,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,OAA8B,EAAE,EAAE,CACrE,IAAI,CAAC;gBACH,GAAG,OAAO;gBACV,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;aAC5D,CAAC,CAAC;YACL,OAAO,MAAM,wBAAS,CAAC,aAAa,CAAC;gBACnC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;gBAC3B,gBAAgB;aACjB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAC5D,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;gBAAS,CAAC;YACT,SAAS,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,mBAAmB,CAC/B,YAAsB,EACtB,MAAoB;QAEpB,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,uBAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,gBAAgB,GAAG,CAAC,IAAwB,EAAE,EAAE,CACpD,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzD,qCAAqC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAiB,EAAE,EAAE,CACjE,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAC9B,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,yBAAyB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,WAAW,GAAuB,IAAI,OAAO,CACjD,CAAC,OAAO,EAAE,EAAE;QACV,4CAA4C;QAC5C,KAAK,wBAAS,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YAChD,qEAAqE;YACrE,sEAAsE;YACtE,uEAAuE;YACvE,qCAAqC;YACrC,IACE,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;gBACpC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,EAClC,CAAC;gBACD,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM,wBAAS,CAAC,UAAU,EAAE,CAAC;gBAC7B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;QACH,CAAC,CAAC,CACL,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,EAAE,gBAAgB,CACtB,OAAO,EACP,KAAK,IAAI,EAAE;gBACT,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,wBAAS,CAAC,UAAU,EAAE,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBACvC,MAAM,CACJ,IAAI,uBAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CACpE,CAAC;YACJ,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAuB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACrE,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,wBAAS,CAAC,UAAU,EAAE,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBACxC,OAAO,CAAC,SAAS,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,EAAE,uCAAmB,CAAC,CACxB,CAAC;QACF,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAyC;QACxE,IAAI,CAAC,IAAA,6BAAS,GAAE,EAAE,CAAC;YACjB,iBAAiB;YACjB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,wBAAS,CAAC,gBAAgB,EAAE,CAAC;QACzD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CACN,MAAM,KAAK,SAAS;YAClB,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,8BAA8B,CACnC,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,MAAM,sBAAsB,GAAG,CAC7B,IAAqC,EAC1B,EAAE;IACb,IAAI,IAAI,YAAY,uBAAS,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,IAAI,YAAY,UAAU,EAAE,CAAC;QAC/B,OAAO,uBAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,uBAAS,CAAC,OAAO,CAAC,IAAA,iCAAmB,EAAC,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC"}
@@ -12,6 +12,9 @@ import { LedService } from "./services/led-service.js";
12
12
  import { Logging, LoggingEvent } from "../logging.js";
13
13
  import { MagnetometerService } from "./services/magnetometer-service.js";
14
14
  import { ServiceConnectionEventMap, TypedServiceEvent, TypedServiceEventDispatcher } from "../service-events.js";
15
+ import { EventService } from "./services/event-service.js";
16
+ import { TemperatureService } from "./services/temperature-service.js";
17
+ import { IoPinService } from "./services/io-pin-service.js";
15
18
  import { UARTService } from "./services/uart-service.js";
16
19
  import { DeviceBondState } from "./device-bond-state.js";
17
20
  /**
@@ -45,8 +48,11 @@ export declare class BluetoothDeviceWrapper implements Logging {
45
48
  accelerometer: AccelerometerService;
46
49
  buttons: ButtonService;
47
50
  deviceInformation: DeviceInformationService;
51
+ events: EventService;
52
+ ioPin: IoPinService;
48
53
  led: LedService;
49
54
  magnetometer: MagnetometerService;
55
+ temperature: TemperatureService;
50
56
  uart: UARTService;
51
57
  /**
52
58
  * Only defined after connection.
@@ -17,6 +17,9 @@ const led_service_js_1 = require("./services/led-service.js");
17
17
  const logging_js_1 = require("../logging.js");
18
18
  const magnetometer_service_js_1 = require("./services/magnetometer-service.js");
19
19
  const partial_flashing_service_js_1 = require("./services/partial-flashing-service.js");
20
+ const event_service_js_1 = require("./services/event-service.js");
21
+ const temperature_service_js_1 = require("./services/temperature-service.js");
22
+ const io_pin_service_js_1 = require("./services/io-pin-service.js");
20
23
  const uart_service_js_1 = require("./services/uart-service.js");
21
24
  const device_bond_state_js_1 = require("./device-bond-state.js");
22
25
  const profile_js_1 = require("./profile.js");
@@ -115,6 +118,18 @@ class BluetoothDeviceWrapper {
115
118
  writable: true,
116
119
  value: void 0
117
120
  });
121
+ Object.defineProperty(this, "events", {
122
+ enumerable: true,
123
+ configurable: true,
124
+ writable: true,
125
+ value: void 0
126
+ });
127
+ Object.defineProperty(this, "ioPin", {
128
+ enumerable: true,
129
+ configurable: true,
130
+ writable: true,
131
+ value: void 0
132
+ });
118
133
  Object.defineProperty(this, "led", {
119
134
  enumerable: true,
120
135
  configurable: true,
@@ -127,6 +142,12 @@ class BluetoothDeviceWrapper {
127
142
  writable: true,
128
143
  value: void 0
129
144
  });
145
+ Object.defineProperty(this, "temperature", {
146
+ enumerable: true,
147
+ configurable: true,
148
+ writable: true,
149
+ value: void 0
150
+ });
130
151
  Object.defineProperty(this, "uart", {
131
152
  enumerable: true,
132
153
  configurable: true,
@@ -174,14 +195,20 @@ class BluetoothDeviceWrapper {
174
195
  this.accelerometer = new accelerometer_service_js_1.AccelerometerService(bleDevice.deviceId, dispatchTypedEvent);
175
196
  this.buttons = new button_service_js_1.ButtonService(bleDevice.deviceId, dispatchTypedEvent);
176
197
  this.deviceInformation = new device_information_service_js_1.DeviceInformationService(bleDevice.deviceId);
198
+ this.events = new event_service_js_1.EventService(bleDevice.deviceId, dispatchTypedEvent, () => this.boardVersion);
199
+ this.ioPin = new io_pin_service_js_1.IoPinService(bleDevice.deviceId, dispatchTypedEvent);
177
200
  this.led = new led_service_js_1.LedService(bleDevice.deviceId);
178
201
  this.magnetometer = new magnetometer_service_js_1.MagnetometerService(bleDevice.deviceId, dispatchTypedEvent);
202
+ this.temperature = new temperature_service_js_1.TemperatureService(bleDevice.deviceId, dispatchTypedEvent);
179
203
  this.uart = new uart_service_js_1.UARTService(bleDevice.deviceId, dispatchTypedEvent);
180
204
  this.services = [
181
205
  this.accelerometer,
182
206
  this.buttons,
207
+ this.events,
208
+ this.ioPin,
183
209
  this.led,
184
210
  this.magnetometer,
211
+ this.temperature,
185
212
  this.uart,
186
213
  ];
187
214
  }