Library to work with the arduino cli based on the inocli-js and arduino-node libraries.
✔️ Linux
✔️ Windows.
✔️ Mac.
npm instal electron-arduino-cli
// JavaScript
let arduinoCli = require('electron-arduino-cli');
// JavaScript
/**
* Init config
* @param {string} path - Path of custom .cli-config.yml
* @param {Object} config - path user & path data
* @returns {JSON} response
*/
arduinoCli.init(path, config = null);
// JavaScript
/**
* Dump config file
* @returns {string} dumped config JSON string
*/
arduinoCli.dump();
// JavaScript
/**
* return sketch directory
* @param {string} name -sketch name
* @returns {JSON} response
*/
arduinoCli.setSketch(name);
// JavaScript
/**
* Attaches a sketch to a board.
* @param {...any} arg <port>|<FQBN> [sketchPath]
* @returns {JSON} response
*/
arduinoCli.boardAttach(...arg);
// JavaScript
/**
* Print details about a board.
* @param {string} fqbn -Fully Qualified Board Name, e.g.: arduino:avr:uno
* @returns {JSON} response
*/
arduinoCli.boardDetails(fqbn);
// JavaScript
/**
* List connected boards.
* @returns {JSON} response
*/
arduinoCli.boardList();
// JavaScript
/**
* List all known boards and their corresponding FQBN
* @param {string} boardName boardname
* @returns {JSON} response
*/
arduinoCli.boardListall(boardName);
// JavaScript
/**
* Upload the bootloader on the board using an external programmer.
* @param {string} fqbn Fully Qualified Board Name, e.g.: arduino:avr:uno
* @param {string} port Upload port, e.g.: COM10 or /dev/ttyACM0
* @returns {JSON} response
*/
arduinoCli.burnBootloader(fqbn, port);
// JavaScript
/**
* Clean arduino cache.
* @returns {JSON} response
*/
arduinoCli.cacheClean();
// JavaScript
/**
* Compiles Arduino sketches.
* @param {string} fqbn Fully Qualified Board Name, e.g.: arduino:avr:uno
* @param {string} port Upload port, e.g.: COM10 or /dev/ttyACM0
* @param {string} sketch sketch name
* @returns {JSON} response
*/
arduinoCli.compile(fqbn, port, sketch);
// JavaScript
/**
* Generates completion scripts
* @param {...any} arg example 'bash','>','completion.sh'
* @returns {JSON} response
*/
arduinoCli.completion(...arg);
// JavaScript
/**
* Prints the current configuration
* @returns {JSON} response
*/
arduinoCli.configDump();
// JavaScript
/**
* Writes current configuration to a configuration file.
* @returns {JSON} response
*/
arduinoCli.configInit();
// JavaScript
/**
* Downloads one core and corresponding tool dependencies.
* @param {string} packet PACKAGER
* @param {string} arch ARCH
* @param {string} version VERSION
* @returns {JSON} response
*/
arduinoCli.coreDownload(packet, arch, version);
// JavaScript
/**
* Installs one core and corresponding tool dependencies.
* @param {string} packet PACKAGER
* @param {string} arch ARCH
* @param {string} version VERSION
* @returns {JSON} response
*/
arduinoCli.coreInstall(packet, arch, version);
// JavaScript
/**
* Shows the list of installed platforms.
* @returns {JSON} response
*/
arduinoCli.coreList();
// JavaScript
/**
* Search for a core in the package index.
* @param {string} search keywords
* @returns {JSON} response
*/
arduinoCli.coreSearch(search);
// JavaScript
/**
* Uninstall one core and corresponding tool dependencies if no longer used.
* @param {string} packet PACKAGER
* @param {string} arch ARCH
* @returns {JSON} response
*/
arduinoCli.coreUninstall(packet, arch);
// JavaScript
/**
* Updates the index of cores.
* @returns {JSON} response
*/
arduinoCli.coreUpdateIndex();
// JavaScript
/**
* Upgrade one installed platforms to the latest version.
* @param {string} packet PACKAGER
* @param {string} arch ARCH
* @returns {JSON} response
*/
arduinoCli.coreUpgrade(packet, arch);
// JavaScript
/**
* Run as a daemon on port
* @returns {JSON} response
*/
arduinoCli.daemon();
// JavaScript
/**
* Debug Arduino sketches.
* @param {string} fqbn Fully Qualified Board Name, e.g.: arduino:avr:uno
* @param {string} sketch sketch name
* @returns {JSON} response
*/
arduinoCli.debug(fqbn, sketch);
// JavaScript
/**
* Check dependencies status for the specified library.
* @param {string} library library name example AudioZero
* @param {string} version version example 1.0.0
* @returns {JSON} response
*/
arduinoCli.libDeps(library, version);
// JavaScript
/**
* Downloads one or more libraries without installing them.
* @param {...any} arg library name and version example 'AudioZero@1.0.0'
* @returns {JSON} response
*/
arduinoCli.libDownload(...arg);
// JavaScript
/**
* Installs one or more specified libraries into the system.
* @param {...any} arg library name and version example 'AudioZero@1.0.0'
* @returns {JSON} response
*/
arduinoCli.libInstall(...arg);
// JavaScript
/**
* Shows a list of all installed libraries.
* @returns {JSON} response
*/
arduinoCli.libList();
// JavaScript
/**
* Searches for one or more libraries data.
* @param {string} search LIBRARY_NAME
* @returns {JSON} response
*/
arduinoCli.libSearch(search);
// JavaScript
/**
* Uninstalls one or more libraries.
* @param {...any} arg library name example 'AudioZero'
* @returns {JSON} response
*/
arduinoCli.libUninstall(...arg);
// JavaScript
/**
* Updates the libraries index.
* @returns {JSON} response
*/
arduinoCli.libUpdateIndex();
// JavaScript
/**
* Upgrades installed libraries.
* @param {...any} arg library name example 'Audio','ArduinoJson'
* @returns {JSON} response
*/
arduinoCli.libUpgrade(...arg);
// JavaScript
/**
* Lists cores and libraries that can be upgraded
* @returns {JSON} response
*/
arduinoCli.outdated();
// JavaScript
/**
* Create a new Sketch
* @param {string} sketch sketch name
* @returns {JSON} response
*/
arduinoCli.sketchNew(sketch);
// JavaScript
/**
* Updates the index of cores and libraries
* @returns {JSON} response
*/
arduinoCli.update();
// JavaScript
/**
* Upgrades installed cores and libraries.
* @returns {JSON} response
*/
arduinoCli.upgrade();
// JavaScript
/**
* Upload Arduino sketches.
* @param {string} sketch sketch name
* @param {string} fqbn Fully Qualified Board Name, e.g.: arduino:avr:uno
* @param {string} port Upload port, e.g.: COM10 or /dev/ttyACM0
* @returns {JSON} response
*/
arduinoCli.upload(sketch, fqbn, port);
// JavaScript
/**
* Shows version number of Arduino CLI.
* @return {JSON} response
*/
arduinoCli.version();