The "Hello, World" Of Things This example will connect to an Arduino, and toggle an LED every one second. var Cylon = require( " cylon " ); Cylon.robot({ connections : { arduino : { adaptor : ' firmata ' , port : ' /dev/ttyACM0 ' } }, devices : { led : { driver : ' led ' , pin : 13 } }, work : function (my) { every(( 1 ).second(), function () { my.led.toggle(); }); } }).start(); To run it: $ npm install cylon-firmata cylon-gpio cylon-i2c $ node script.js We've got lots more examples here to help you get started on your next IoT project.

Browser & Mobile Support Cylon.js can be run directly in-browser, using the browserify NPM module. You can also run it from within a Chrome connected app, or a PhoneGap mobile app. For more info on browser support, and for help with different configurations, you can find more info in our docs.

API Cylon.js features an API plugin system which enables you to send commands, stream real time data, and monitor the overall state of your robots. We currently support the following API plugins: http/https (REST)

socket.io

mqtt

and more coming soon! The Cylon.js HTTP plugin, for instance, allows you to interact with your robots over HTTP. You simply install the API plugin alongside Cylon.js with npm: $ npm install cylon-api-http Then, all you need to do is place the following command in your Cylon.js program: var Cylon = require( " cylon " ); Cylon.api( ' http ' ); Once your Cylon.js program is running, visit https://localhost:3000/ and you're ready to control your robots from a web browser! You can check out more information on the Cylon API in the docs here.

CLI Cylon uses the Gort toolkit, so you can access important features from the command line. You can scan, connect to devices, update firmware, and more! We call it "RobotOps", a.k.a. "DevOps for Robotics". Cylon also has it's own CLI tool to generate new modules, robots, and drivers. You can check out the Cylon CLI docs here.