brilliantsole 0.0.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 (158) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +21 -0
  3. package/build/brilliantsole.cjs +5957 -0
  4. package/build/brilliantsole.cjs.map +1 -0
  5. package/build/brilliantsole.js +5448 -0
  6. package/build/brilliantsole.js.map +1 -0
  7. package/build/brilliantsole.ls.js +4872 -0
  8. package/build/brilliantsole.ls.js.map +1 -0
  9. package/build/brilliantsole.min.js +6 -0
  10. package/build/brilliantsole.min.js.map +1 -0
  11. package/build/brilliantsole.module.d.ts +908 -0
  12. package/build/brilliantsole.module.js +5412 -0
  13. package/build/brilliantsole.module.js.map +1 -0
  14. package/build/brilliantsole.module.min.d.ts +908 -0
  15. package/build/brilliantsole.module.min.js +6 -0
  16. package/build/brilliantsole.module.min.js.map +1 -0
  17. package/build/brilliantsole.node.module.d.ts +908 -0
  18. package/build/brilliantsole.node.module.js +5906 -0
  19. package/build/brilliantsole.node.module.js.map +1 -0
  20. package/build/dts/BS.d.ts +25 -0
  21. package/build/dts/Device.d.ts +136 -0
  22. package/build/dts/DeviceInformationManager.d.ts +56 -0
  23. package/build/dts/DeviceManager.d.ts +67 -0
  24. package/build/dts/FileTransferManager.d.ts +84 -0
  25. package/build/dts/FirmwareManager.d.ts +71 -0
  26. package/build/dts/InformationManager.d.ts +66 -0
  27. package/build/dts/TfliteManager.d.ts +92 -0
  28. package/build/dts/connection/BaseConnectionManager.d.ts +59 -0
  29. package/build/dts/connection/ClientConnectionManager.d.ts +23 -0
  30. package/build/dts/connection/WebSocketClientConnectionManager.d.ts +23 -0
  31. package/build/dts/connection/bluetooth/BluetoothConnectionManager.d.ts +10 -0
  32. package/build/dts/connection/bluetooth/NobleConnectionManager.d.ts +42 -0
  33. package/build/dts/connection/bluetooth/WebBluetoothConnectionManager.d.ts +20 -0
  34. package/build/dts/connection/bluetooth/bluetoothUUIDs.d.ts +14 -0
  35. package/build/dts/connection/webSocket/ClientConnectionManager.d.ts +23 -0
  36. package/build/dts/connection/webSocket/WebSocketClientConnectionManager.d.ts +23 -0
  37. package/build/dts/devicePair/DevicePair.d.ts +60 -0
  38. package/build/dts/devicePair/DevicePairPressureSensorDataManager.d.ts +25 -0
  39. package/build/dts/devicePair/DevicePairSensorDataManager.d.ts +33 -0
  40. package/build/dts/scanner/BaseScanner.d.ts +66 -0
  41. package/build/dts/scanner/NobleScanner.d.ts +17 -0
  42. package/build/dts/scanner/Scanner.d.ts +3 -0
  43. package/build/dts/sensor/BarometerSensorDataManager.d.ts +16 -0
  44. package/build/dts/sensor/MotionSensorDataManager.d.ts +69 -0
  45. package/build/dts/sensor/PressureSensorDataManager.d.ts +36 -0
  46. package/build/dts/sensor/SensorConfigurationManager.d.ts +44 -0
  47. package/build/dts/sensor/SensorDataManager.d.ts +40 -0
  48. package/build/dts/server/BaseClient.d.ts +85 -0
  49. package/build/dts/server/BaseServer.d.ts +48 -0
  50. package/build/dts/server/ServerUtils.d.ts +23 -0
  51. package/build/dts/server/udp/UDPServer.d.ts +11 -0
  52. package/build/dts/server/udp/UDPUtils.d.ts +9 -0
  53. package/build/dts/server/websocket/WebSocketClient.d.ts +17 -0
  54. package/build/dts/server/websocket/WebSocketServer.d.ts +13 -0
  55. package/build/dts/server/websocket/WebSocketUtils.d.ts +9 -0
  56. package/build/dts/utils/ArrayBufferUtils.d.ts +7 -0
  57. package/build/dts/utils/ArrayUtils.d.ts +2 -0
  58. package/build/dts/utils/CenterOfPressureHelper.d.ts +15 -0
  59. package/build/dts/utils/Console.d.ts +34 -0
  60. package/build/dts/utils/EventDispatcher.d.ts +50 -0
  61. package/build/dts/utils/EventUtils.d.ts +6 -0
  62. package/build/dts/utils/MathUtils.d.ts +21 -0
  63. package/build/dts/utils/ParseUtils.d.ts +5 -0
  64. package/build/dts/utils/RangeHelper.d.ts +8 -0
  65. package/build/dts/utils/Text.d.ts +6 -0
  66. package/build/dts/utils/Timer.d.ts +14 -0
  67. package/build/dts/utils/TypeScriptUtils.d.ts +19 -0
  68. package/build/dts/utils/cbor.d.ts +6 -0
  69. package/build/dts/utils/checksum.d.ts +3 -0
  70. package/build/dts/utils/environment.d.ts +13 -0
  71. package/build/dts/utils/mcumgr.d.ts +88 -0
  72. package/build/dts/utils/stringUtils.d.ts +2 -0
  73. package/build/dts/vibration/VibrationManager.d.ts +45 -0
  74. package/build/dts/vibration/VibrationWaveformEffects.d.ts +2 -0
  75. package/build/index.d.ts +908 -0
  76. package/build/index.node.d.ts +908 -0
  77. package/examples/3d/index.html +109 -0
  78. package/examples/3d/scene.html +57 -0
  79. package/examples/3d/script.js +419 -0
  80. package/examples/balance/index.html +138 -0
  81. package/examples/balance/script.js +243 -0
  82. package/examples/basic/index.html +327 -0
  83. package/examples/basic/script.js +1093 -0
  84. package/examples/center-of-pressure/index.html +132 -0
  85. package/examples/center-of-pressure/script.js +207 -0
  86. package/examples/device-pair/index.html +72 -0
  87. package/examples/device-pair/script.js +187 -0
  88. package/examples/edge-impulse/index.html +94 -0
  89. package/examples/edge-impulse/script.js +1033 -0
  90. package/examples/graph/index.html +83 -0
  91. package/examples/graph/script.js +469 -0
  92. package/examples/machine-learning/index.html +366 -0
  93. package/examples/machine-learning/script.js +1774 -0
  94. package/examples/pressure/index.html +145 -0
  95. package/examples/pressure/script.js +201 -0
  96. package/examples/recording/index.html +187 -0
  97. package/examples/recording/script.js +736 -0
  98. package/examples/server/index.html +266 -0
  99. package/examples/server/script.js +925 -0
  100. package/examples/utils/aframe/fingertip-button-component.js +201 -0
  101. package/examples/utils/aframe/fingertip-collider-target-component.js +102 -0
  102. package/examples/utils/aframe/fingertip-colliders-component.js +147 -0
  103. package/examples/utils/three/three.module.min.js +24846 -0
  104. package/examples/webxr/index.html +221 -0
  105. package/examples/webxr/script.js +1127 -0
  106. package/package.json +83 -0
  107. package/src/BS.ts +68 -0
  108. package/src/Device.ts +734 -0
  109. package/src/DeviceInformationManager.ts +146 -0
  110. package/src/DeviceManager.ts +354 -0
  111. package/src/FileTransferManager.ts +452 -0
  112. package/src/FirmwareManager.ts +357 -0
  113. package/src/InformationManager.ts +283 -0
  114. package/src/TfliteManager.ts +450 -0
  115. package/src/connection/BaseConnectionManager.ts +255 -0
  116. package/src/connection/ClientConnectionManager.ts +120 -0
  117. package/src/connection/bluetooth/BluetoothConnectionManager.ts +34 -0
  118. package/src/connection/bluetooth/NobleConnectionManager.ts +302 -0
  119. package/src/connection/bluetooth/WebBluetoothConnectionManager.ts +269 -0
  120. package/src/connection/bluetooth/bluetoothUUIDs.ts +218 -0
  121. package/src/devicePair/DevicePair.ts +253 -0
  122. package/src/devicePair/DevicePairPressureSensorDataManager.ts +82 -0
  123. package/src/devicePair/DevicePairSensorDataManager.ts +90 -0
  124. package/src/scanner/BaseScanner.ts +189 -0
  125. package/src/scanner/NobleScanner.ts +195 -0
  126. package/src/scanner/Scanner.ts +16 -0
  127. package/src/sensor/BarometerSensorDataManager.ts +41 -0
  128. package/src/sensor/MotionSensorDataManager.ts +151 -0
  129. package/src/sensor/PressureSensorDataManager.ts +112 -0
  130. package/src/sensor/SensorConfigurationManager.ts +177 -0
  131. package/src/sensor/SensorDataManager.ts +166 -0
  132. package/src/server/BaseClient.ts +368 -0
  133. package/src/server/BaseServer.ts +344 -0
  134. package/src/server/ServerUtils.ts +93 -0
  135. package/src/server/udp/UDPServer.ts +229 -0
  136. package/src/server/udp/UDPUtils.ts +20 -0
  137. package/src/server/websocket/WebSocketClient.ts +179 -0
  138. package/src/server/websocket/WebSocketServer.ts +184 -0
  139. package/src/server/websocket/WebSocketUtils.ts +20 -0
  140. package/src/utils/ArrayBufferUtils.ts +88 -0
  141. package/src/utils/ArrayUtils.ts +15 -0
  142. package/src/utils/CenterOfPressureHelper.ts +39 -0
  143. package/src/utils/Console.ts +156 -0
  144. package/src/utils/EventDispatcher.ts +153 -0
  145. package/src/utils/EventUtils.ts +41 -0
  146. package/src/utils/MathUtils.ts +53 -0
  147. package/src/utils/ParseUtils.ts +46 -0
  148. package/src/utils/RangeHelper.ts +38 -0
  149. package/src/utils/Text.ts +30 -0
  150. package/src/utils/Timer.ts +72 -0
  151. package/src/utils/TypeScriptUtils.ts +22 -0
  152. package/src/utils/cbor.js +429 -0
  153. package/src/utils/checksum.ts +41 -0
  154. package/src/utils/environment.ts +46 -0
  155. package/src/utils/mcumgr.js +444 -0
  156. package/src/utils/stringUtils.ts +11 -0
  157. package/src/vibration/VibrationManager.ts +308 -0
  158. package/src/vibration/VibrationWaveformEffects.ts +128 -0
@@ -0,0 +1,327 @@
1
+ <html>
2
+ <head>
3
+ <title>Basic | BrilliantSole JavaScript SDK</title>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
5
+ <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
6
+ <script type="module" src="./script.js"></script>
7
+ </head>
8
+ <style>
9
+ label {
10
+ display: block;
11
+ }
12
+ div {
13
+ margin-top: 1rem;
14
+ }
15
+ ul,
16
+ ol {
17
+ margin-top: 0;
18
+ list-style: none;
19
+ }
20
+ .hidden {
21
+ display: none;
22
+ }
23
+ </style>
24
+ <body>
25
+ <nav>
26
+ <a href="../../">home</a>
27
+ </nav>
28
+
29
+ <h1>Basic | BrilliantSole JavaScript SDK</h1>
30
+
31
+ <div>
32
+ <h2>available devices</h2>
33
+ <div id="availableDevices">
34
+ <template id="availableDeviceTemplate">
35
+ <div class="availableDevice">
36
+ <ul>
37
+ <li><b>name: </b> <span class="name"></span></li>
38
+ <li><b>type: </b> <span class="type"></span></li>
39
+ <li><button class="toggleConnection">connect</button></li>
40
+ </ul>
41
+ </div>
42
+ </template>
43
+ </div>
44
+ </div>
45
+
46
+ <div>
47
+ <h2>connection</h2>
48
+ <button id="toggleConnection">connect</button>
49
+ <button id="reconnect" disabled>reconnect</button>
50
+ <label>reconnect on disconnection? <input id="reconnectOnDisconnection" type="checkbox" /></label>
51
+ <button id="resetDevice" disabled>reset</button>
52
+ </div>
53
+
54
+ <div>
55
+ <h2>device information</h2>
56
+ <pre id="deviceInformationPre"></pre>
57
+ </div>
58
+
59
+ <div>
60
+ <label><b>battery level:</b> <span id="batteryLevel"></span></label>
61
+ <label><b>is charging?</b> <span id="isCharging"></span></label>
62
+ <label><b>battery current:</b> <span id="batteryCurrent"></span></label>
63
+ <button id="updateBatteryCurrent" disabled>update batteryCurrent</button>
64
+ </div>
65
+
66
+ <div>
67
+ <label><b>name:</b> <span id="name"></span></label>
68
+ <label> <b>new name: </b> <input id="setNameInput" type="text" placeholder="type in a name" disabled /> </label>
69
+ <button id="setNameButton" disabled>set name</button>
70
+ </div>
71
+
72
+ <div>
73
+ <label><b>type:</b> <span id="type"></span></label>
74
+ <label>
75
+ <b>new type: </b>
76
+ <select id="setTypeSelect" disabled>
77
+ <optgroup label="select type"></optgroup>
78
+ </select>
79
+ <button id="setTypeButton" disabled>set type</button>
80
+ </label>
81
+ </div>
82
+
83
+ <div>
84
+ <label>
85
+ <b>sensor configuration: </b>
86
+ <pre id="sensorConfigurationPre"></pre>
87
+ </label>
88
+
89
+ <template id="sensorTypeConfigurationTemplate">
90
+ <label class="sensorTypeConfiguration">
91
+ <b class="sensorType"></b>
92
+ <input class="sensorRate" type="number" min="0" value="" disabled />ms
93
+ </label>
94
+ </template>
95
+ </div>
96
+
97
+ <div>
98
+ <h2>sensor data</h2>
99
+ <template id="sensorTypeDataTemplate">
100
+ <div class="sensorTypeData">
101
+ <b><span class="sensorType"></span></b>
102
+ <pre class="sensorData"></pre>
103
+ </div>
104
+ </template>
105
+ </div>
106
+
107
+ <div>
108
+ <h2>vibration</h2>
109
+ <button id="addVibration">add vibration</button>
110
+ <button disabled id="triggerVibrations">trigger vibrations</button>
111
+ <template id="vibrationTemplate">
112
+ <div class="vibration">
113
+ <label>
114
+ type
115
+ <select class="type">
116
+ <optgroup label="vibration type"></optgroup>
117
+ </select>
118
+ </label>
119
+ <div class="waveformEffect">
120
+ <button class="add">add segment</button>
121
+ <ol class="segments"></ol>
122
+ <label>
123
+ sequence loop count
124
+ <input class="sequenceLoopCount" type="number" min="0" value="0" step="1" />
125
+ </label>
126
+ </div>
127
+ <div class="waveform">
128
+ <button class="add">add segment</button>
129
+ <ol class="segments"></ol>
130
+ </div>
131
+ <label>trigger? <input class="shouldTrigger" type="checkbox" /></label>
132
+ <ul class="locations"></ul>
133
+ <button class="delete">delete vibration</button>
134
+ </div>
135
+ </template>
136
+ <template id="vibrationLocationTemplate">
137
+ <li class="vibrationLocation">
138
+ <label><span></span><input type="checkbox" /></label>
139
+ </li>
140
+ </template>
141
+ <template id="waveformEffectSegmentTemplate">
142
+ <li class="waveformEffectSegment">
143
+ <label>
144
+ type
145
+ <select class="type">
146
+ <optgroup label="segment type">
147
+ <option>effect</option>
148
+ <option>delay</option>
149
+ </optgroup>
150
+ </select>
151
+ </label>
152
+ <label>
153
+ effect
154
+ <select class="effect">
155
+ <optgroup label="waveformEffect"></optgroup>
156
+ </select>
157
+ </label>
158
+ <label>
159
+ delay
160
+ <input class="delay" type="number" min="0" value="0" step="10" />ms
161
+ </label>
162
+ <label>
163
+ loop count
164
+ <input class="loopCount" type="number" min="0" value="0" step="1" />
165
+ </label>
166
+ <button class="delete">delete segment</button>
167
+ </li>
168
+ </template>
169
+ <template id="waveformSegmentTemplate">
170
+ <li class="waveformSegment">
171
+ <label>
172
+ amplitude
173
+ <input class="amplitude" type="number" min="0" max="1" value="0.5" step="0.01" />
174
+ </label>
175
+ <label>
176
+ duration
177
+ <input class="duration" type="number" min="10" value="100" step="10" />ms
178
+ </label>
179
+ <button class="delete">delete segment</button>
180
+ </li>
181
+ </template>
182
+ </div>
183
+
184
+ <div>
185
+ <h2>file transfer</h2>
186
+ <label>
187
+ file transfer type
188
+ <select id="fileTransferTypes">
189
+ <optgroup label="file transfer type"></optgroup>
190
+ </select>
191
+ </label>
192
+ <label>file (max <span id="maxFileLength">0</span>kb) <input id="file" type="file" accept=".tflite" /></label>
193
+ <label>
194
+ file transfer direction
195
+ <select id="fileTransferDirection">
196
+ <optgroup label="file transfer direction">
197
+ <option>send</option>
198
+ <option>receive</option>
199
+ </optgroup>
200
+ </select>
201
+ </label>
202
+ <button disabled id="toggleFileTransfer">send file</button>
203
+ <progress value="0" id="fileTransferProgress"></progress>
204
+ </div>
205
+
206
+ <div>
207
+ <h2>tflite</h2>
208
+
209
+ <div>
210
+ <label><b>name:</b> <span id="tfliteName"></span></label>
211
+ <label>
212
+ <b>new name: </b>
213
+ <input id="setTfliteNameInput" type="text" placeholder="type in a name" disabled />
214
+ </label>
215
+ <button id="setTfliteNameButton" disabled>set name</button>
216
+ </div>
217
+
218
+ <div>
219
+ <label><b>task:</b> <span id="tfliteTask"></span></label>
220
+ <label>
221
+ <b>new task: </b>
222
+ <select id="setTfliteTaskSelect" disabled>
223
+ <optgroup label="select task"></optgroup>
224
+ </select>
225
+ <button id="setTfliteTaskButton" disabled>set task</button>
226
+ </label>
227
+ </div>
228
+
229
+ <div>
230
+ <label><b>sample rate:</b> <span id="tfliteSampleRate"></span></label>
231
+ <label>
232
+ <b>new sample rate: </b>
233
+ <input id="setTfliteSampleRateInput" type="number" min="5" value="20" max="1000" step="5" disabled />
234
+ </label>
235
+ <button id="setTfliteSampleRateButton" disabled>set sample rate</button>
236
+ </div>
237
+
238
+ <div>
239
+ <b>sensor types</b>
240
+
241
+ <div id="tfliteSensorTypes">
242
+ <template id="tfliteSensorTypeTemplate">
243
+ <label class="sensorType">
244
+ <b class="name"></b>
245
+ <input class="enabled" type="checkbox" />
246
+ </label>
247
+ </template>
248
+ </div>
249
+
250
+ <button disabled id="setTfliteSensorTypes">set sensor types</button>
251
+ </div>
252
+
253
+ <div>
254
+ <label><b>is ready?</b> <input type="checkbox" id="tfliteIsReady" disabled /></label>
255
+ </div>
256
+
257
+ <div>
258
+ <label><b>threshold:</b> <span id="tfliteThreshold"></span></label>
259
+ <label>
260
+ <b>new threshold: </b>
261
+ <input id="setTfliteThresholdInput" type="number" min="0" value="0" max="1" step="0.1" disabled />
262
+ </label>
263
+ <button id="setTfliteThresholdButton" disabled>set threshold</button>
264
+ </div>
265
+
266
+ <div>
267
+ <label><b>capture delay:</b> <span id="tfliteCaptureDelay"></span></label>
268
+ <label>
269
+ <b>new capture delay: </b>
270
+ <input id="setTfliteCaptureDelayInput" type="number" min="0" value="0" max="2000" step="1" disabled />
271
+ </label>
272
+ <button id="setTfliteCaptureDelayButton" disabled>set capture delay</button>
273
+ </div>
274
+
275
+ <div>
276
+ <label>
277
+ <b>inferencing enabled? </b>
278
+ <input id="tfliteInferencingEnabled" type="checkbox" disabled />
279
+ </label>
280
+ <button id="toggleTfliteInferencingEnabled" disabled>enable inferencing</button>
281
+ </div>
282
+
283
+ <div>
284
+ <label>
285
+ <b>inference classes (newline separated - ignore idle)</b>
286
+ <br />
287
+ <textarea id="inferenceClasses" rows="3"></textarea>
288
+ </label>
289
+ <button id="toggleTfliteInferencingEnabled" disabled>enable inferencing</button>
290
+ </div>
291
+
292
+ <div>
293
+ <label>
294
+ <b>inference: </b>
295
+ <pre id="tfliteInference"></pre>
296
+ </label>
297
+ <h1 id="topInferenceClass"></h1>
298
+ </div>
299
+ </div>
300
+
301
+ <div>
302
+ <h2>firmware update</h2>
303
+
304
+ <label><b>status:</b> <span id="firmwareStatus"></span></label>
305
+
306
+ <label>firmware <input id="firmwareInput" type="file" accept=".bin" /></label>
307
+ <button id="toggleFirmwareUpload" disabled>upload firmware</button>
308
+ <progress value="0" id="firmwareUploadProgress"></progress>
309
+ <span id="firmwareUploadProgressPercentage" style="display: none"></span>
310
+
311
+ <label>
312
+ <b>firmware images: </b>
313
+ <pre id="firmwareImages"></pre>
314
+ </label>
315
+
316
+ <select id="imageSelection" disabled>
317
+ <optgroup label="select image"></optgroup>
318
+ </select>
319
+
320
+ <button id="testFirmwareImage" disabled>test</button>
321
+ <button id="confirmFirmwareImage" disabled>confirm</button>
322
+ <br />
323
+ <button id="eraseFirmwareImage" disabled>erase</button>
324
+ <button id="reset" disabled>reset</button>
325
+ </div>
326
+ </body>
327
+ </html>