incyclist-devices 1.4.102 → 1.5.1

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 (132) hide show
  1. package/LICENSE +0 -0
  2. package/lib/DeviceSupport.d.ts +36 -34
  3. package/lib/DeviceSupport.js +82 -78
  4. package/lib/ant/AntAdapter.d.ts +50 -50
  5. package/lib/ant/AntAdapter.js +109 -109
  6. package/lib/ant/AntScanner.d.ts +60 -60
  7. package/lib/ant/AntScanner.js +651 -651
  8. package/lib/ant/antfe/AntFEAdapter.d.ts +83 -83
  9. package/lib/ant/antfe/AntFEAdapter.js +652 -652
  10. package/lib/ant/antfe/ant-fe-adv-st-mode.d.ts +9 -9
  11. package/lib/ant/antfe/ant-fe-adv-st-mode.js +51 -51
  12. package/lib/ant/antfe/ant-fe-erg-mode.d.ts +6 -6
  13. package/lib/ant/antfe/ant-fe-erg-mode.js +14 -14
  14. package/lib/ant/antfe/ant-fe-st-mode.d.ts +5 -5
  15. package/lib/ant/antfe/ant-fe-st-mode.js +13 -13
  16. package/lib/ant/anthrm/AntHrmAdapter.d.ts +16 -16
  17. package/lib/ant/anthrm/AntHrmAdapter.js +130 -130
  18. package/lib/ant/antpwr/pwr-adapter.d.ts +49 -49
  19. package/lib/ant/antpwr/pwr-adapter.js +251 -251
  20. package/lib/ant/utils.d.ts +1 -1
  21. package/lib/ant/utils.js +23 -23
  22. package/lib/antv2/adapter-factory.d.ts +11 -0
  23. package/lib/antv2/adapter-factory.js +40 -0
  24. package/lib/antv2/ant-binding.d.ts +13 -0
  25. package/lib/antv2/ant-binding.js +27 -0
  26. package/lib/antv2/ant-device.d.ts +51 -0
  27. package/lib/antv2/ant-device.js +115 -0
  28. package/lib/antv2/ant-interface.d.ts +37 -0
  29. package/lib/antv2/ant-interface.js +239 -0
  30. package/lib/antv2/fe.d.ts +29 -0
  31. package/lib/antv2/fe.js +260 -0
  32. package/lib/antv2/hr.d.ts +18 -0
  33. package/lib/antv2/hr.js +93 -0
  34. package/lib/antv2/incyclist-protocol.d.ts +37 -0
  35. package/lib/antv2/incyclist-protocol.js +126 -0
  36. package/lib/antv2/pwr.d.ts +28 -0
  37. package/lib/antv2/pwr.js +163 -0
  38. package/lib/antv2/sensor-factory.d.ts +5 -0
  39. package/lib/antv2/sensor-factory.js +20 -0
  40. package/lib/ble/ble-device.d.ts +63 -63
  41. package/lib/ble/ble-device.js +444 -444
  42. package/lib/ble/ble-erg-mode.d.ts +18 -18
  43. package/lib/ble/ble-erg-mode.js +132 -132
  44. package/lib/ble/ble-interface.d.ts +100 -100
  45. package/lib/ble/ble-interface.js +721 -719
  46. package/lib/ble/ble-peripheral.d.ts +36 -36
  47. package/lib/ble/ble-peripheral.js +200 -200
  48. package/lib/ble/ble-st-mode.d.ts +15 -15
  49. package/lib/ble/ble-st-mode.js +95 -95
  50. package/lib/ble/ble.d.ts +129 -129
  51. package/lib/ble/ble.js +86 -86
  52. package/lib/ble/consts.d.ts +14 -14
  53. package/lib/ble/consts.js +17 -17
  54. package/lib/ble/fm.d.ts +125 -125
  55. package/lib/ble/fm.js +745 -745
  56. package/lib/ble/hrm.d.ts +48 -48
  57. package/lib/ble/hrm.js +134 -134
  58. package/lib/ble/incyclist-protocol.d.ts +31 -31
  59. package/lib/ble/incyclist-protocol.js +147 -147
  60. package/lib/ble/pwr.d.ts +89 -89
  61. package/lib/ble/pwr.js +321 -321
  62. package/lib/ble/tacx.d.ts +90 -90
  63. package/lib/ble/tacx.js +731 -731
  64. package/lib/ble/wahoo-kickr.d.ts +98 -98
  65. package/lib/ble/wahoo-kickr.js +496 -496
  66. package/lib/calculations.d.ts +13 -13
  67. package/lib/calculations.js +150 -150
  68. package/lib/{CyclingMode.d.ts → cycling-mode.d.ts} +76 -76
  69. package/lib/{CyclingMode.js → cycling-mode.js} +79 -79
  70. package/lib/daum/DaumAdapter.d.ts +66 -66
  71. package/lib/daum/DaumAdapter.js +396 -396
  72. package/lib/daum/DaumPowerMeterCyclingMode.d.ts +8 -8
  73. package/lib/daum/DaumPowerMeterCyclingMode.js +21 -21
  74. package/lib/daum/ERGCyclingMode.d.ts +26 -26
  75. package/lib/daum/ERGCyclingMode.js +201 -201
  76. package/lib/daum/SmartTrainerCyclingMode.d.ts +41 -41
  77. package/lib/daum/SmartTrainerCyclingMode.js +344 -344
  78. package/lib/daum/classic/DaumClassicAdapter.d.ts +18 -18
  79. package/lib/daum/classic/DaumClassicAdapter.js +146 -146
  80. package/lib/daum/classic/DaumClassicCyclingMode.d.ts +13 -13
  81. package/lib/daum/classic/DaumClassicCyclingMode.js +97 -97
  82. package/lib/daum/classic/DaumClassicProtocol.d.ts +27 -27
  83. package/lib/daum/classic/DaumClassicProtocol.js +185 -185
  84. package/lib/daum/classic/bike.d.ts +64 -64
  85. package/lib/daum/classic/bike.js +456 -456
  86. package/lib/daum/classic/utils.d.ts +13 -13
  87. package/lib/daum/classic/utils.js +143 -143
  88. package/lib/daum/constants.d.ts +19 -19
  89. package/lib/daum/constants.js +22 -22
  90. package/lib/daum/premium/DaumClassicCyclingMode.d.ts +14 -14
  91. package/lib/daum/premium/DaumClassicCyclingMode.js +86 -86
  92. package/lib/daum/premium/DaumPremiumAdapter.d.ts +12 -12
  93. package/lib/daum/premium/DaumPremiumAdapter.js +131 -131
  94. package/lib/daum/premium/DaumPremiumProtocol.d.ts +32 -32
  95. package/lib/daum/premium/DaumPremiumProtocol.js +207 -207
  96. package/lib/daum/premium/bike.d.ts +123 -123
  97. package/lib/daum/premium/bike.js +894 -894
  98. package/lib/daum/premium/tcpserial.d.ts +33 -33
  99. package/lib/daum/premium/tcpserial.js +123 -123
  100. package/lib/daum/premium/utils.d.ts +62 -62
  101. package/lib/daum/premium/utils.js +376 -376
  102. package/lib/{Device.d.ts → device.d.ts} +92 -92
  103. package/lib/{Device.js → device.js} +71 -71
  104. package/lib/kettler/comms.d.ts +59 -59
  105. package/lib/kettler/comms.js +242 -242
  106. package/lib/kettler/ergo-racer/ERGCyclingMode.d.ts +25 -25
  107. package/lib/kettler/ergo-racer/ERGCyclingMode.js +144 -144
  108. package/lib/kettler/ergo-racer/adapter.d.ts +101 -101
  109. package/lib/kettler/ergo-racer/adapter.js +639 -639
  110. package/lib/kettler/ergo-racer/protocol.d.ts +41 -41
  111. package/lib/kettler/ergo-racer/protocol.js +203 -203
  112. package/lib/modes/power-base.d.ts +20 -20
  113. package/lib/modes/power-base.js +70 -70
  114. package/lib/modes/power-meter.d.ts +20 -20
  115. package/lib/modes/power-meter.js +78 -78
  116. package/lib/modes/simulator.d.ts +29 -29
  117. package/lib/modes/simulator.js +140 -140
  118. package/lib/{DeviceProtocol.d.ts → protocol.d.ts} +74 -74
  119. package/lib/{DeviceProtocol.js → protocol.js} +41 -41
  120. package/lib/{DeviceRegistry.d.ts → registry.d.ts} +8 -8
  121. package/lib/{DeviceRegistry.js → registry.js} +33 -33
  122. package/lib/simulator/Simulator.d.ts +69 -69
  123. package/lib/simulator/Simulator.js +288 -288
  124. package/lib/types/command.d.ts +8 -8
  125. package/lib/types/command.js +2 -2
  126. package/lib/types/route.d.ts +24 -24
  127. package/lib/types/route.js +9 -9
  128. package/lib/types/user.d.ts +11 -11
  129. package/lib/types/user.js +9 -9
  130. package/lib/utils.d.ts +14 -14
  131. package/lib/utils.js +114 -114
  132. package/package.json +47 -46
package/lib/ble/consts.js CHANGED
@@ -1,17 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WAHOO_ADVANCED_TRAINER_CP_FULL = exports.WAHOO_ADVANCED_TRAINER_CP = exports.CSC_MEASUREMENT = exports.CSC = exports.CSP_FEATURE = exports.CSP_MEASUREMENT = exports.CSP = exports.INDOOR_BIKE_DATA = exports.FTMS_STATUS = exports.FTMS_CP = exports.FTMS = exports.TACX_FE_C_TX = exports.TACX_FE_C_RX = exports.TACX_FE_C_BLE = void 0;
4
- exports.TACX_FE_C_BLE = '6e40fec1';
5
- exports.TACX_FE_C_RX = '6e40fec2';
6
- exports.TACX_FE_C_TX = '6e40fec3';
7
- exports.FTMS = '1826';
8
- exports.FTMS_CP = '2ad9';
9
- exports.FTMS_STATUS = '2ada';
10
- exports.INDOOR_BIKE_DATA = '2ad2';
11
- exports.CSP = '1818';
12
- exports.CSP_MEASUREMENT = '2a63';
13
- exports.CSP_FEATURE = '2a65';
14
- exports.CSC = '1816';
15
- exports.CSC_MEASUREMENT = '2a5b';
16
- exports.WAHOO_ADVANCED_TRAINER_CP = 'a026e005';
17
- exports.WAHOO_ADVANCED_TRAINER_CP_FULL = 'A026E005-0A7D-4AB3-97FA-F1500F9FEB8B';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WAHOO_ADVANCED_TRAINER_CP_FULL = exports.WAHOO_ADVANCED_TRAINER_CP = exports.CSC_MEASUREMENT = exports.CSC = exports.CSP_FEATURE = exports.CSP_MEASUREMENT = exports.CSP = exports.INDOOR_BIKE_DATA = exports.FTMS_STATUS = exports.FTMS_CP = exports.FTMS = exports.TACX_FE_C_TX = exports.TACX_FE_C_RX = exports.TACX_FE_C_BLE = void 0;
4
+ exports.TACX_FE_C_BLE = '6e40fec1';
5
+ exports.TACX_FE_C_RX = '6e40fec2';
6
+ exports.TACX_FE_C_TX = '6e40fec3';
7
+ exports.FTMS = '1826';
8
+ exports.FTMS_CP = '2ad9';
9
+ exports.FTMS_STATUS = '2ada';
10
+ exports.INDOOR_BIKE_DATA = '2ad2';
11
+ exports.CSP = '1818';
12
+ exports.CSP_MEASUREMENT = '2a63';
13
+ exports.CSP_FEATURE = '2a65';
14
+ exports.CSC = '1816';
15
+ exports.CSC_MEASUREMENT = '2a5b';
16
+ exports.WAHOO_ADVANCED_TRAINER_CP = 'a026e005';
17
+ exports.WAHOO_ADVANCED_TRAINER_CP_FULL = 'A026E005-0A7D-4AB3-97FA-F1500F9FEB8B';
package/lib/ble/fm.d.ts CHANGED
@@ -1,125 +1,125 @@
1
- /// <reference types="node" />
2
- import { BleDevice } from './ble-device';
3
- import BleInterface from './ble-interface';
4
- import BleProtocol from './incyclist-protocol';
5
- import { BleDeviceClass, BleWriteProps } from './ble';
6
- import DeviceAdapter, { DeviceData } from '../Device';
7
- import { DeviceProtocol } from '../DeviceProtocol';
8
- import { EventLogger } from 'gd-eventlog';
9
- import CyclingMode from '../CyclingMode';
10
- import { IncyclistBikeData } from '../CyclingMode';
11
- import BlePeripheralConnector from './ble-peripheral';
12
- declare type PowerData = {
13
- instantaneousPower?: number;
14
- balance?: number;
15
- accTorque?: number;
16
- time: number;
17
- rpm: number;
18
- raw?: string;
19
- };
20
- export declare type IndoorBikeData = {
21
- speed?: number;
22
- averageSpeed?: number;
23
- cadence?: number;
24
- averageCadence?: number;
25
- totalDistance?: number;
26
- resistanceLevel?: number;
27
- instantaneousPower?: number;
28
- averagePower?: number;
29
- totalEnergy?: number;
30
- energyPerHour?: number;
31
- energyPerMinute?: number;
32
- heartrate?: number;
33
- metabolicEquivalent?: number;
34
- time?: number;
35
- remainingTime?: number;
36
- raw?: string;
37
- targetPower?: number;
38
- targetInclination?: number;
39
- status?: string;
40
- };
41
- declare type IndoorBikeFeatures = {
42
- fitnessMachine: number;
43
- targetSettings: number;
44
- };
45
- export default class BleFitnessMachineDevice extends BleDevice {
46
- static services: string[];
47
- static characteristics: string[];
48
- static detectionPriority: number;
49
- data: IndoorBikeData;
50
- features: IndoorBikeFeatures;
51
- hasControl: boolean;
52
- isCheckingControl: boolean;
53
- isCPSubscribed: boolean;
54
- crr: number;
55
- cw: number;
56
- windSpeed: number;
57
- wheelSize: number;
58
- constructor(props?: any);
59
- isMatching(characteristics: string[]): boolean;
60
- subscribeWriteResponse(cuuid: string): Promise<void>;
61
- subscribeAll(conn?: BlePeripheralConnector): Promise<void>;
62
- init(): Promise<boolean>;
63
- onDisconnect(): void;
64
- getProfile(): string;
65
- getServiceUUids(): string[];
66
- isBike(): boolean;
67
- isPower(): boolean;
68
- isHrm(): boolean;
69
- parseHrm(_data: Uint8Array): IndoorBikeData;
70
- setCrr(crr: number): void;
71
- getCrr(): number;
72
- setCw(cw: number): void;
73
- getCw(): number;
74
- setWindSpeed(windSpeed: number): void;
75
- getWindSpeed(): number;
76
- parseIndoorBikeData(_data: Uint8Array): IndoorBikeData;
77
- parseFitnessMachineStatus(_data: Uint8Array): IndoorBikeData;
78
- getFitnessMachineFeatures(): Promise<IndoorBikeFeatures>;
79
- onData(characteristic: string, data: Buffer): boolean;
80
- writeFtmsMessage(requestedOpCode: any, data: any, props?: BleWriteProps): Promise<number>;
81
- requestControl(): Promise<boolean>;
82
- setTargetPower(power: number): Promise<boolean>;
83
- setSlope(slope: any): Promise<boolean>;
84
- setTargetInclination(inclination: number): Promise<boolean>;
85
- setIndoorBikeSimulation(windSpeed: number, gradient: number, crr: number, cw: number): Promise<boolean>;
86
- startRequest(): Promise<boolean>;
87
- stopRequest(): Promise<boolean>;
88
- PauseRequest(): Promise<boolean>;
89
- reset(): void;
90
- }
91
- export declare class FmAdapter extends DeviceAdapter {
92
- device: BleFitnessMachineDevice;
93
- ignore: boolean;
94
- ble: BleInterface;
95
- protocol: DeviceProtocol;
96
- paused: boolean;
97
- logger: EventLogger;
98
- cyclingMode: CyclingMode;
99
- distanceInternal: number;
100
- prevDataTS: number;
101
- constructor(device: BleDeviceClass, protocol: BleProtocol);
102
- isBike(): boolean;
103
- isHrm(): boolean;
104
- isPower(): boolean;
105
- isSame(device: DeviceAdapter): boolean;
106
- getProfile(): string;
107
- getName(): string;
108
- getDisplayName(): string;
109
- getSupportedCyclingModes(): Array<any>;
110
- setCyclingMode(mode: string | CyclingMode, settings?: any): void;
111
- getCyclingMode(): CyclingMode;
112
- getDefaultCyclingMode(): CyclingMode;
113
- getPort(): string;
114
- setIgnoreBike(ignore: any): void;
115
- setIgnorePower(ignore: any): void;
116
- onDeviceData(deviceData: PowerData): void;
117
- mapData(deviceData: IndoorBikeData): IncyclistBikeData;
118
- transformData(bikeData: IncyclistBikeData): DeviceData;
119
- start(props?: any): Promise<any>;
120
- stop(): Promise<boolean>;
121
- sendUpdate(request: any): Promise<void>;
122
- pause(): Promise<boolean>;
123
- resume(): Promise<boolean>;
124
- }
125
- export {};
1
+ /// <reference types="node" />
2
+ import { BleDevice } from './ble-device';
3
+ import BleInterface from './ble-interface';
4
+ import BleProtocol from './incyclist-protocol';
5
+ import { BleDeviceClass, BleWriteProps } from './ble';
6
+ import DeviceAdapter, { DeviceData } from '../device';
7
+ import { DeviceProtocol } from '../protocol';
8
+ import { EventLogger } from 'gd-eventlog';
9
+ import CyclingMode from '../cycling-mode';
10
+ import { IncyclistBikeData } from '../cycling-mode';
11
+ import BlePeripheralConnector from './ble-peripheral';
12
+ declare type PowerData = {
13
+ instantaneousPower?: number;
14
+ balance?: number;
15
+ accTorque?: number;
16
+ time: number;
17
+ rpm: number;
18
+ raw?: string;
19
+ };
20
+ export declare type IndoorBikeData = {
21
+ speed?: number;
22
+ averageSpeed?: number;
23
+ cadence?: number;
24
+ averageCadence?: number;
25
+ totalDistance?: number;
26
+ resistanceLevel?: number;
27
+ instantaneousPower?: number;
28
+ averagePower?: number;
29
+ totalEnergy?: number;
30
+ energyPerHour?: number;
31
+ energyPerMinute?: number;
32
+ heartrate?: number;
33
+ metabolicEquivalent?: number;
34
+ time?: number;
35
+ remainingTime?: number;
36
+ raw?: string;
37
+ targetPower?: number;
38
+ targetInclination?: number;
39
+ status?: string;
40
+ };
41
+ declare type IndoorBikeFeatures = {
42
+ fitnessMachine: number;
43
+ targetSettings: number;
44
+ };
45
+ export default class BleFitnessMachineDevice extends BleDevice {
46
+ static services: string[];
47
+ static characteristics: string[];
48
+ static detectionPriority: number;
49
+ data: IndoorBikeData;
50
+ features: IndoorBikeFeatures;
51
+ hasControl: boolean;
52
+ isCheckingControl: boolean;
53
+ isCPSubscribed: boolean;
54
+ crr: number;
55
+ cw: number;
56
+ windSpeed: number;
57
+ wheelSize: number;
58
+ constructor(props?: any);
59
+ isMatching(characteristics: string[]): boolean;
60
+ subscribeWriteResponse(cuuid: string): Promise<void>;
61
+ subscribeAll(conn?: BlePeripheralConnector): Promise<void>;
62
+ init(): Promise<boolean>;
63
+ onDisconnect(): void;
64
+ getProfile(): string;
65
+ getServiceUUids(): string[];
66
+ isBike(): boolean;
67
+ isPower(): boolean;
68
+ isHrm(): boolean;
69
+ parseHrm(_data: Uint8Array): IndoorBikeData;
70
+ setCrr(crr: number): void;
71
+ getCrr(): number;
72
+ setCw(cw: number): void;
73
+ getCw(): number;
74
+ setWindSpeed(windSpeed: number): void;
75
+ getWindSpeed(): number;
76
+ parseIndoorBikeData(_data: Uint8Array): IndoorBikeData;
77
+ parseFitnessMachineStatus(_data: Uint8Array): IndoorBikeData;
78
+ getFitnessMachineFeatures(): Promise<IndoorBikeFeatures>;
79
+ onData(characteristic: string, data: Buffer): boolean;
80
+ writeFtmsMessage(requestedOpCode: any, data: any, props?: BleWriteProps): Promise<number>;
81
+ requestControl(): Promise<boolean>;
82
+ setTargetPower(power: number): Promise<boolean>;
83
+ setSlope(slope: any): Promise<boolean>;
84
+ setTargetInclination(inclination: number): Promise<boolean>;
85
+ setIndoorBikeSimulation(windSpeed: number, gradient: number, crr: number, cw: number): Promise<boolean>;
86
+ startRequest(): Promise<boolean>;
87
+ stopRequest(): Promise<boolean>;
88
+ PauseRequest(): Promise<boolean>;
89
+ reset(): void;
90
+ }
91
+ export declare class FmAdapter extends DeviceAdapter {
92
+ device: BleFitnessMachineDevice;
93
+ ignore: boolean;
94
+ ble: BleInterface;
95
+ protocol: DeviceProtocol;
96
+ paused: boolean;
97
+ logger: EventLogger;
98
+ cyclingMode: CyclingMode;
99
+ distanceInternal: number;
100
+ prevDataTS: number;
101
+ constructor(device: BleDeviceClass, protocol: BleProtocol);
102
+ isBike(): boolean;
103
+ isHrm(): boolean;
104
+ isPower(): boolean;
105
+ isSame(device: DeviceAdapter): boolean;
106
+ getProfile(): string;
107
+ getName(): string;
108
+ getDisplayName(): string;
109
+ getSupportedCyclingModes(): Array<any>;
110
+ setCyclingMode(mode: string | CyclingMode, settings?: any): void;
111
+ getCyclingMode(): CyclingMode;
112
+ getDefaultCyclingMode(): CyclingMode;
113
+ getPort(): string;
114
+ setIgnoreBike(ignore: any): void;
115
+ setIgnorePower(ignore: any): void;
116
+ onDeviceData(deviceData: PowerData): void;
117
+ mapData(deviceData: IndoorBikeData): IncyclistBikeData;
118
+ transformData(bikeData: IncyclistBikeData): DeviceData;
119
+ start(props?: any): Promise<any>;
120
+ stop(): Promise<boolean>;
121
+ sendUpdate(request: any): Promise<void>;
122
+ pause(): Promise<boolean>;
123
+ resume(): Promise<boolean>;
124
+ }
125
+ export {};