UNPKG

node-esp

Version:

Command line interface for the NodeMCU ESP8266 module. Manage the filesytem, monitor, flash firmware and more.

49 lines (41 loc) 1.27 kB
'use strict'; var fs = require('fs'); module.exports = function(filepath){ function getPort(){ return new Promise(function(resolve, reject){ var args = process.argv.slice(2), port; if (!fs.existsSync(filepath)) { //TODO: Remove message from here. reject(new Error('Port not set. Please set your port using "esp port set"')); } else port = '' + fs.readFileSync(filepath); resolve(port, 'get'); }); } function getPortSync(){ if(!fs.existsSync(filepath)) return false; return '' + fs.readFileSync(filepath); } function setPort(port){ return new Promise(function(resolve, reject){ fs.writeFile(filepath, port, function(err){ if(err) return reject(err); resolve(port, 'set'); }); }); } function listPorts(){ return new Promise(function(resolve, reject){ require('serialport').list(function(err, ports){ if(err) return reject(err); resolve(ports); }); }); } return { get: getPort, getSync: getPortSync, set: setPort, list: listPorts }; };