diff --git a/app/less/settings.less b/app/less/settings.less index 20b29be..872694b 100644 --- a/app/less/settings.less +++ b/app/less/settings.less @@ -43,6 +43,7 @@ padding: 6px 12px; font-size: 21px; min-width: 300px; + max-width: 300px; &.active{ border-color: @SELECTED; color: @SELECTED; diff --git a/app/lib/arduino/index.js b/app/lib/arduino/index.js index 431cd28..bbe51e4 100644 --- a/app/lib/arduino/index.js +++ b/app/lib/arduino/index.js @@ -108,7 +108,7 @@ class Arduino { async send(serial, cmd) { const device = this.alias[serial]; let results; - this.log.info(`${cmd} -> ${serial}`); + this.log.info(`send ${cmd} -> ${serial}`); if (this.locks[serial]) { this.log.warning(`Serial ${serial} is locked`); return false; @@ -173,17 +173,21 @@ class Arduino { }); }); } - async state(serial, confirm = false) { - const device = confirm ? this.alias['connect'] : this.alias[serial]; + async state(device, confirm = false) { + const serial = confirm ? this.alias['connect'] : this.alias[device]; let results; this.log.info(serial); this.log.info(device); - if (this.locks[serial]) { + console.dir(this.locks); + if (typeof this.locks[serial] !== 'undefined' && this.locks[serial] === true) { + this.log.info("Serial is locked"); return null; } this.timer = new Date().getTime(); this.locks[serial] = true; await delay_1.delay(cfg.arduino.serialDelay); + if (!confirm) + this.log.info("got here"); try { results = await this.stateAsync(device, confirm); } @@ -216,7 +220,7 @@ class Arduino { const end = new Date().getTime(); const ms = end - this.timer; let complete; - this.log.info(`${serial} -> ${data}`); + this.log.info(`end ${serial} -> ${data}`); if (this.queue[data] !== undefined) { this.locks[serial] = false; complete = this.queue[data](ms); //execute callback @@ -224,12 +228,15 @@ class Arduino { delete this.queue[data]; } else if (data[0] === cfg.arduino.cmd.state) { + this.locks[serial] = false; complete = this.queue[cfg.arduino.cmd.state](data); + eventEmitter.emit('arduino_end', data); delete this.queue[cfg.arduino.cmd.state]; return data; } else if (data[0] === cfg.arduino.cmd.error) { this.log.error(`Received error from device ${serial}`); + this.locks[serial] = false; //error state //stop sequence //throw error in ui diff --git a/app/lib/arduino/index.js.map b/app/lib/arduino/index.js.map index fa6ad86..c5761c9 100644 --- a/app/lib/arduino/index.js.map +++ b/app/lib/arduino/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/arduino/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/arduino/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/src/arduino/index.ts b/src/arduino/index.ts index 4d83bd8..3714479 100644 --- a/src/arduino/index.ts +++ b/src/arduino/index.ts @@ -117,7 +117,7 @@ class Arduino { async send (serial : string, cmd : string) { const device : any = this.alias[serial] let results : any - this.log.info(`${cmd} -> ${serial}`) + this.log.info(`send ${cmd} -> ${serial}`) if (this.locks[serial]) { this.log.warning(`Serial ${serial} is locked`) return false @@ -183,18 +183,20 @@ class Arduino { }) } - async state (serial : string, confirm : boolean = false) : Promise{ - const device : string = confirm ? this.alias['connect'] : this.alias[serial] + async state (device : string, confirm : boolean = false) : Promise{ + const serial : string = confirm ? this.alias['connect'] : this.alias[device] let results : string this.log.info(serial) this.log.info(device) - if (this.locks[serial]) { + console.dir(this.locks) + if (typeof this.locks[serial] !== 'undefined' && this.locks[serial] === true) { + this.log.info("Serial is locked") return null } this.timer = new Date().getTime() this.locks[serial] = true await delay(cfg.arduino.serialDelay) - this.log.info("got here") + if (!confirm) this.log.info("got here") try { results = await this.stateAsync(device, confirm) } catch (e) { @@ -229,19 +231,21 @@ class Arduino { const end : number = new Date().getTime() const ms : number = end - this.timer let complete : any - this.log.info(`${serial} -> ${data}`) + this.log.info(`end ${serial} -> ${data}`) if (this.queue[data] !== undefined) { this.locks[serial] = false complete = this.queue[data](ms) //execute callback eventEmitter.emit('arduino_end', data) delete this.queue[data] } else if (data[0] === cfg.arduino.cmd.state) { + this.locks[serial] = false complete = this.queue[cfg.arduino.cmd.state](data) + eventEmitter.emit('arduino_end', data) delete this.queue[cfg.arduino.cmd.state] return data } else if (data[0] === cfg.arduino.cmd.error) { this.log.error(`Received error from device ${serial}`) - + this.locks[serial] = false //error state //stop sequence //throw error in ui