From 58320efbb3e535bbb5cdc05dac9a0a2e5068341d Mon Sep 17 00:00:00 2001 From: Robert Kossessa Date: Fri, 7 Jun 2024 14:29:34 +0200 Subject: [PATCH] =?UTF-8?q?FIX:=20Check=20for=20another=20VID/PID=20pair?= =?UTF-8?q?=20Nano=20shouldn't=20show=20up=20like=20this=20=F0=9F=98=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/nanoSerialApi.ts | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/src/main/nanoSerialApi.ts b/src/main/nanoSerialApi.ts index 516302a..c34fd2c 100644 --- a/src/main/nanoSerialApi.ts +++ b/src/main/nanoSerialApi.ts @@ -3,8 +3,10 @@ import { PortInfo } from '@serialport/bindings-interface' import { EventEmitter } from 'events' // JTAG interface, TODO: change me! -const NANO_PRODUCT_ID = '8010' -const NANO_VENDOR_ID = '239A' +const NANO_VID_PID_PAIRS = [ + { vid: '239A', pid: '8010' }, + { vid: '303A', pid: '1001' } +] const NANO_BAUD_RATE = 115200 class NanoSerialApi extends EventEmitter { @@ -18,9 +20,10 @@ class NanoSerialApi extends EventEmitter { const found_nano_devices: string[] = [] for (const port of ports) { if ( - port.productId?.toUpperCase() === NANO_PRODUCT_ID && - port.vendorId?.toUpperCase() === NANO_VENDOR_ID && - port.serialNumber + port.serialNumber && + NANO_VID_PID_PAIRS.some( + (pair) => pair.vid === port.vendorId && pair.pid === port.productId + ) ) { found_nano_devices.push(port.serialNumber) if (this.all_nano_devices[port.serialNumber] === undefined) { @@ -30,13 +33,6 @@ class NanoSerialApi extends EventEmitter { } } } - resolve(found_nano_devices) - for (const serialNumber in this.all_nano_devices) { - if (found_nano_devices.indexOf(serialNumber) === -1) { - delete this.all_nano_devices[serialNumber] - this.emit('nanoSerialApi:device-detached', serialNumber) - console.log('detached', serialNumber) - } } }) .catch((error) => {