Skip to content

cncjs/cncjs-controller

Repository files navigation

cncjs-controller codecov

NPM

A controller library for event-based communication between client and CNCjs server

Installation

npm install --save cncjs-controller@1.x npm install --save socket.io-client

Usage

import io from 'socket.io-client'; import Controller from 'cncjs-controller'; const controller = new Controller(io); const host = ''; // e.g. http://127.0.0.1:8000 const token = '<security-token>'; const options = { query: 'token=' + token }; controller.connect(host, options, () => { const port = '/dev/cu.wchusbserialfa130'; controller.openPort(port, { controllerType: 'Grbl', // Grbl|Smoothie|TinyG baudrate: 115200 }, (err) => { if (err) { console.error(err); return; } controller.writeln('$$'); // View Grbl Settings }); // Disconnect after 60 seconds setTimeout(() => { // Close port controller.closePort(); // Close connection controller.disconnect(); }, 60 * 1000); }); controller.addListener('serialport:open', (options) => { const { port, baudrate, controllerType } = options; console.log(`Connected to the port "${port}" with a baud rate of ${baudrate}.`, { port, baudrate }); }); controller.addListener('serialport:close', (options) => { const { port } = options; console.log(`The port "${port}" is disconnected.`); }); controller.addListener('serialport:write', (data, context) => { console.log('>', data); }); controller.addListener('serialport:read', (data) => { console.log('<', data); });

License

MIT

About

A controller library for event-based communication between client and CNCjs server.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •