xs-dev 0.14.0 → 0.14.3
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/build/commands/scan.js +23 -5
- package/package.json +3 -2
package/build/commands/scan.js
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const serialport_1 = require("serialport");
|
|
4
|
+
const usb_1 = require("usb");
|
|
4
5
|
const parse_1 = require("../toolbox/scan/parse");
|
|
6
|
+
// eslint-disable-next-line
|
|
7
|
+
function sleep(timeout) {
|
|
8
|
+
return new Promise((resolve) => {
|
|
9
|
+
setTimeout(resolve, timeout);
|
|
10
|
+
});
|
|
11
|
+
}
|
|
5
12
|
const command = {
|
|
6
13
|
name: 'scan',
|
|
7
14
|
description: 'Look for available devices',
|
|
@@ -16,23 +23,34 @@ const command = {
|
|
|
16
23
|
}
|
|
17
24
|
const spinner = print.spin();
|
|
18
25
|
spinner.start('Scanning for devices...');
|
|
26
|
+
const hasPicotool = system.which('picotool') !== null;
|
|
27
|
+
if (hasPicotool) {
|
|
28
|
+
try {
|
|
29
|
+
await system.exec('picotool reboot -fa');
|
|
30
|
+
await sleep(1000);
|
|
31
|
+
}
|
|
32
|
+
catch (_a) { }
|
|
33
|
+
}
|
|
19
34
|
const ports = await serialport_1.SerialPort.list();
|
|
20
35
|
const result = await Promise.all(ports
|
|
21
36
|
.filter((port) => port.serialNumber !== undefined)
|
|
22
37
|
.map(async (port) => {
|
|
23
|
-
var _a;
|
|
38
|
+
var _a, _b;
|
|
24
39
|
try {
|
|
25
40
|
if (((_a = port.manufacturer) === null || _a === void 0 ? void 0 : _a.includes('Raspberry Pi')) === true &&
|
|
26
|
-
|
|
41
|
+
hasPicotool) {
|
|
42
|
+
const device = await (0, usb_1.findBySerialNumber)((_b = port.serialNumber) !== null && _b !== void 0 ? _b : '');
|
|
43
|
+
const bus = String(device === null || device === void 0 ? void 0 : device.busNumber);
|
|
44
|
+
const address = String(device === null || device === void 0 ? void 0 : device.deviceAddress);
|
|
27
45
|
return await system
|
|
28
|
-
.exec(`picotool info -fa`)
|
|
46
|
+
.exec(`picotool info --bus ${bus} --address ${address} -fa`)
|
|
29
47
|
.then((buffer) => [buffer, port.path]);
|
|
30
48
|
}
|
|
31
49
|
return await system
|
|
32
50
|
.exec(`esptool.py --port ${port.path} read_mac`)
|
|
33
51
|
.then((buffer) => [buffer, port.path]);
|
|
34
52
|
}
|
|
35
|
-
catch (
|
|
53
|
+
catch (_c) { }
|
|
36
54
|
return [undefined, port.path];
|
|
37
55
|
}));
|
|
38
56
|
const record = (0, parse_1.parseScanResult)(result);
|
|
@@ -50,4 +68,4 @@ const command = {
|
|
|
50
68
|
},
|
|
51
69
|
};
|
|
52
70
|
exports.default = command;
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tYW5kcy9zY2FuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkNBQXVDO0FBQ3ZDLDZCQUF3QztBQUd4QyxpREFBdUQ7QUFFdkQsMkJBQTJCO0FBQzNCLFNBQVMsS0FBSyxDQUFDLE9BQWU7SUFDNUIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQzdCLFVBQVUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUE7SUFDOUIsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxPQUFPLEdBQWlDO0lBQzVDLElBQUksRUFBRSxNQUFNO0lBQ1osV0FBVyxFQUFFLDRCQUE0QjtJQUN6QyxHQUFHLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ3JCLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxHQUFHLE9BQU8sQ0FBQTtRQUM3QyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN6QyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7WUFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtTQUNoQjtRQUVELElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDdkMsS0FBSyxDQUFDLE9BQU8sQ0FDWCwySkFBMkosQ0FDNUosQ0FBQTtTQUNGO1FBRUQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFBO1FBRTVCLE9BQU8sQ0FBQyxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQTtRQUV4QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksQ0FBQTtRQUVyRCxJQUFJ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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xs-dev",
|
|
3
|
-
"version": "0.14.
|
|
3
|
+
"version": "0.14.3",
|
|
4
4
|
"description": "CLI for automating the setup and usage of Moddable XS tools",
|
|
5
5
|
"types": "build/types/types.d.ts",
|
|
6
6
|
"bin": {
|
|
@@ -25,7 +25,8 @@
|
|
|
25
25
|
"serialport": "^10.3.0",
|
|
26
26
|
"serve-handler": "^6.1.3",
|
|
27
27
|
"tar-fs": "^2.1.1",
|
|
28
|
-
"unzip-stream": "^0.3.1"
|
|
28
|
+
"unzip-stream": "^0.3.1",
|
|
29
|
+
"usb": "^2.2.0"
|
|
29
30
|
},
|
|
30
31
|
"devDependencies": {
|
|
31
32
|
"@changesets/cli": "^2.19.0",
|